28Aug

Hacker Geek: OS ujjlenyomat TTL és TCP ablakméretekkel

click fraud protection

Tudta, hogy a hálózatba kapcsolt eszköz melyik operációs rendszere fut, csak a hálózati kommunikáció módját vizsgálva? Vessünk egy pillantást arra, hogyan lehet felfedezni, hogy milyen operációs rendszerünk működik.

Miért csinálná ezt?

A gép vagy eszköz operációs rendszerének meghatározása számos okból hasznos lehet. Először nézzük meg a mindennapi szempontokat, képzeljük el, hogy új internetszolgáltatóra szeretne váltani, aki havonta 50 dollárt kínál fel nem kapható interneten, így próbára teheti szolgáltatását. Az operációs rendszer ujjlenyomatainak használatával hamarosan felfedezheti, hogy szemét routerek és PPPoE szolgáltatást kínálnak egy csomó Windows Server 2003 gépen. Már nem úgy hangzik, mint egy ilyen jó üzlet, mi?

Ennek egy másik, bár nem annyira etikus, felhasználása az a tény, hogy a biztonsági lyukak OS specifikusak. Például portolvasást végez, és az 53-as port megnyílik, és a gép a Bind elavult és sérülékeny verzióját futtatja, egy SINGLE esélye van a biztonsági lyuk kihasználására, mivel egy sikertelen kísérlet összeomlana a démont.

instagram viewer

Hogyan működik az operációs rendszer ujjlenyomatozása?

Az aktuális forgalom passzív elemzésénél, vagy akár a régi csomagok rögzítésekor az egyik legegyszerűbb, leghatékonyabb módja az OS Fingerprinting egyszerűen a TCP ablakméretének és a Time To Live( TTL) megtekintésének az IP fejlécébenaz első csomag egy TCP munkamenetben.

A népszerűbb operációs rendszerek értékei:

Operációs rendszer Időtartam TCP ablakméret
Linux( kernel 2.4 és 2.6) 64 5840
Google Linux 64 5720
FreeBSD 64 65535
Windows XP 128 65535
Windows Vista és 7( kiszolgáló 2008) 128 8192
iOS12.4( Cisco útválasztók) 255 4128

Az operációs rendszerek eltérő értékeinek köszönhető, hogy a TCP / IP RFC-k nem tartalmaznak alapértelmezett értékeket. Más fontos megjegyezni, hogy a TTL-érték nem mindig egyezik meg a táblázatban, még akkor sem, ha az eszköz a felsorolt ​​operációs rendszerek egyikét futtatja, akkor látja, amikor IP-csomagot küld a hálózaton keresztül a küldő eszköz operációs rendszerebeállítja a TTL-t az adott operációs rendszer alapértelmezett TTL-értékére, de ahogy a csomag átirányítja az útválasztókat, a TTL-értéket 1-re csökkentik. Ezért ha 117 TTL-t lát, akkor ez várhatóan 128 TTL11 forgalomirányítót keresztezte, mielőtt elfogták.

A tshark.exe használata a legegyszerűbb módja annak, hogy az értékeket láthassuk, így miután megkaptuk a csomagok rögzítését, győződjön meg arról, hogy telepítve van a Wireshark, majd navigáljon:

C: \ Program Files \

Most tartsa lenyomva a shift gombot, és kattintson a jobb egérgombbala wireshark mappában és a helyi menüből válaszd ki a nyitott parancsablakot

Most írja be:

tshark -r "C: \ Felhasználók \ Taylor Gibb \ Desktop \ blah.pcap" "tcp.flags.syn eq 1" -T mezők -e ip.src -e ip.ttl -e tcp.window_size

Győződjön meg arról, hogy a "C: \ Felhasználók \ Taylor Gibb \ Desktop \ blah.pcap" helyére cserélje a csomagkészlet elfogadásának abszolút elérési útját. Miután megnyomta az Enter-t, akkor minden szinkroncsomagot megmutat a beolvasásról. Egy könnyebben olvasható formátumú

formátumot. Most ez egy véletlenszerű csomag-fogás, amelyet nekem készítettem a How-To Geek webhelyre, és a többi csevegő Windows között isKét dolog biztos lehet benne:

  • A helyi hálózatom 192.168.0.0/24
  • Windows 7 boxon vagyok

Ha megnézed a táblázat első sorát, látni fogod, hogy nem hazudok, az IP címem192.168.0.84 az én TTL 128, és a TCP ablakméret 8192, ami megfelel a Windows 7 értékeinek.

A következő dolog, amit látok egy 74.125.233.24 cím, TTL 44-es és TCP ablakméret 5720,ha megnézem az asztalomat, nincs olyan operációs rendszere, amelynek 44-es TTL-je van, de azt mondja, hogy a Linux, amelyen a Google szerverei futtatnak TCP Window Size 5720 méretűek. Az IP-cím gyors internetes keresés után látni fogja, hogyvalójában egy Google Szerver.

Mi másként használja a tshark.exe-t, mondja meg nekünk a megjegyzéseket.