DNS logiranje u Windows Event Vieweru

DNS logovi bilježe svaki upit koji računalo upućuje prema DNS serveru. Prema zadanim postavkama, DNS logiranje u Windowsima nije aktivirano — treba ga ručno uključiti.

Aktivacija DNS logiranja

  1. Otvori Event Viewer
  2. Idi na Applications and Services Logs → Microsoft → Windows → DNS Client Events → Operational
  3. Desni klik → Enable Log

Ključni Event ID-jevi

  • Event ID 3010 — početni DNS upit (initial DNS query)
  • Type 1 — A zapis (IPv4 adresa)
  • Type 28 — AAAA zapis (IPv6 adresa)
  • ProcessID — identificira koji proces je postavio DNS upit
ProcessID: Svaki DNS događaj u Event Vieweru sadrži ProcessID koji identificira aplikaciju koja je pokrenula DNS upit. Ovaj podatak je ključan za otkrivanje zloćudnog procesa koji komunicira s C2/C&C poslužiteljem.

Detekcija beaconinga

Beaconing je tehnika gdje zloćudni softver periodički kontaktira C2 (Command & Control) poslužitelje kako bi primao naredbe ili slao ukradene podatke. Karakteristika beaconinga su ponavljajući DNS upiti u pravilnim intervalima (~20 sekundi).

Kako prepoznati beaconing

  • Ponavljajući DNS upiti prema istom FQDN-u u kratkim razmacima
  • Interval ~20 sekundi = tipičan znak C2 beaconinga
  • Nepoznata domena (npr. badsite.ru) kojoj se pristupa automatski
  • ProcessID ukazuje na zloćudni ili neočekivani proces

Simulirani DNS threat feed

  • Na KALI: curl 127.0.0.1/bad_DNS.feed
  • Prikazuje popis FQDN-ova označenih kao prijetnje
  • Svaki FQDN = potencijalni C2 poslužitelj ili zloćudna domena

Blokiranje DNS prijetnji skriptom

Jedna od metoda blokiranja zloćudnih domena je preusmjeravanje njihovog FQDN-a na 127.0.0.1 (localhost) u datoteci /etc/hosts, čime sustav ne može doseći stvarnu zloćudnu adresu.

block-DNS.sh skripta

  • Preuzima DNS threat feed
  • Za svaki FQDN dodaje zapis: 127.0.0.1 fqdn.primjer.com u /etc/hosts
  • awk '!x[$0]++' — deduplikacija (uklanja duplikate)
  • Izvršavanje: chmod +x block-DNS.sh && ./block-DNS.sh

Automatizacija s crontabom

echo "0 3 * * * /bin/bash /root/block-DNS.sh" | crontab -
  • Pokreće skriptu svaki dan u 3:00 ujutro
  • crontab -l — provjera aktivnih cron zadataka
  • Ograničenje: štiti samo sustav na kojemu je /etc/hosts modificiran

DNS rekognicija — nslookup i dig

nslookup — interaktivni način

  • Pokreni: nslookup (bez argumenata)
  • server — promjena DNS poslužitelja
  • set type=SOA — Start of Authority zapis
  • set type=a — A (IPv4) zapisi
  • set type=ns — Name Server zapisi
  • set type=mx — Mail Exchange zapisi
  • set type=cname — Canonical Name zapisi
  • exit — izlaz iz interaktivnog načina

dig — napredniji alat

  • dig -t SOA comptia.org — SOA zapis za domenu
  • dig -t A server — A zapis za host
  • dig @IP -t A www.domain.org — upit prema specifičnom DNS serveru
  • -t — odabir vrste zapisa (SOA, A, MX, NS, CNAME)

SOA zapis — tumačenje

  • origin — primarni autoritativni DNS poslužitelj za domenu
  • mail addr — email adresa admina (prva točka zamijenjena s @)
  • serial — verzija zone (povećava se pri svakoj promjeni)
  • refresh/retry/expire — parametri replikacije

Autoritativni vs. ne-autoritativni odgovor

  • Autoritativni odgovor — dolazi izravno od DNS poslužitelja koji je zadužen za zonu
  • "Non-authoritative answer" — odgovor dolazi iz cache DNS poslužitelja, nije s autoritativnog izvora
  • nslookup često pokazuje non-authoritative odgovore jer komunicira s caching resolverom
0 / 14
Odgovori na pitanja da vidiš rezultat.

1. Gdje se u Windows Event Vieweru aktivira DNS logiranje?

DNS Client Events log se nalazi pod Applications and Services Logs → Microsoft → Windows → DNS Client Events → Operational. Desnim klikom aktiviramo "Enable Log".

2. Koji Event ID označava početni DNS upit u Windows Event Vieweru?

Event ID 3010 bilježi svaki početni DNS upit (initial DNS query). Ovaj ID je specifičan za DNS Client Events Operational log.

3. Koji DNS tip zapisa (Type) odgovara IPv4 adresi?

Type 1 = A zapis (IPv4 adresa). Type 28 = AAAA zapis (IPv6 adresa). Type 5 = CNAME, Type 15 = MX.

4. Što je karakteristična oznaka DNS beaconinga?

Beaconing = ponavljajući DNS upiti u pravilnim intervalima (~20 sekundi) prema C2/C&C poslužitelju. Zloćudni softver "beacon-a" natrag kući kako bi primio naredbe.

5. Koji podatak u DNS Event ID 3010 zapisu pomaže identificirati koji proces šalje upite?

ProcessID u DNS Event zapisu identificira koji proces (aplikacija) je pokrenuo DNS upit. Ključno za otkrivanje zloćudnog softvera koji se beacon-a prema C2 poslužitelju.

6. Kojom naredbom na KALI sustavu možemo pregledati simulirani DNS threat feed?

Naredba curl 127.0.0.1/bad_DNS.feed dohvaća simulirani DNS threat feed koji sadrži popis zloćudnih FQDN-ova.

7. Gdje block-DNS.sh skripta upisuje zloćudne FQDN-ove radi blokiranja?

Skripta dodaje zapise u obliku 127.0.0.1 zloćudna-domena.com u /etc/hosts. Time se DNS razrješavanje preusmjerava na localhost umjesto na stvarni C2 poslužitelj.

8. Što radi awk '!x[$0]++' unutar block-DNS.sh skripte?

awk '!x[$0]++' je klasična awk tehnika deduplikacije — svaki redak se pojavljuje samo prvi puta u izlazu, duplikati se preskaču.

9. Cron izraz 0 3 * * * znači pokretanje skripte...

Cron format: minuta sat dan-u-mjesecu mjesec dan-u-tjednu. 0 3 * * * = svaki dan (* * *) u 3:00 ujutro (0 3).

10. Koje je glavno ograničenje DNS blokiranja putem /etc/hosts?

Modifikacija /etc/hosts djeluje samo lokalno — štiti samo sustav na kojemu je primijenjena. Za zaštitu cijele mreže potrebno je koristiti mrežni DNS resolver ili firewall.

11. Što znači "Non-authoritative answer" u ispisu nslookup-a?

Non-authoritative answer znači da je odgovor dobiven od caching DNS resolvera koji je podatke pohranio iz prethodnog upita. Autoritativni odgovor dolazi direktno s DNS poslužitelja koji "posjeduje" zonu.

12. Koji podatak u SOA zapisu predstavlja primarni autoritativni DNS poslužitelj?

U SOA zapisu, polje origin sadrži FQDN primarnog autoritativnog DNS poslužitelja za tu zonu. Polje mail addr je email adresa administratora (s točkom umjesto @).

13. Kojom dig naredbom upitamo specifični DNS server (npr. 10.1.16.5) za A zapis domene www.primjer.hr?

U dig-u, @IP specificira koji DNS server se koristi za upit, a -t određuje vrstu zapisa. Format: dig @DNS_IP -t TIP domena.

14. U nslookup interaktivnom načinu, kojom naredbom izlazimo iz programa?

U interaktivnom nslookup načinu rada (pokrenutom bez argumenata), izlazi se naredbom exit. Unosom server mijenjamo DNS server, a set type= mijenja vrstu zapisa.
0 / 14
Riješi kviz da vidiš rezultat.