Hacker Geek: OS Fingeravtrykk med TTL og TCP Window størrelser

Innholdsfortegnelse:

Hacker Geek: OS Fingeravtrykk med TTL og TCP Window størrelser
Hacker Geek: OS Fingeravtrykk med TTL og TCP Window størrelser
Anonim
Visste du at du kan finne ut hvilket operativsystem en nettverksenhet kjører bare ved å se på hvordan den kommuniserer på nettverket? La oss ta en titt på hvordan vi kan finne ut hvilket operativsystem våre enheter kjører.
Visste du at du kan finne ut hvilket operativsystem en nettverksenhet kjører bare ved å se på hvordan den kommuniserer på nettverket? La oss ta en titt på hvordan vi kan finne ut hvilket operativsystem våre enheter kjører.

Hvorfor ville du gjøre dette?

Å avgjøre hvilket operativsystem en maskin eller en enhet kjører kan være nyttig av mange grunner. Først kan vi se på et dagligdagsperspektiv, forestill deg at du vil bytte til en ny Internett-leverandør som tilbyr ubegrenset internett for $ 50 i måneden, slik at du tar en prøve på tjenesten deres. Ved å bruke OS fingeravtrykk vil du snart oppdage at de har søppelruter og tilbyr en PPPoE-tjeneste som tilbys på en rekke Windows Server 2003-maskiner. Høres ikke ut som en god avtale lenger, va?

En annen bruk for dette, om enn ikke så etisk, er det faktum at sikkerhetshullene er OS-spesifikke. For eksempel gjør du en portskanning og finner port 53 åpen og maskinen kjører en utdatert og sårbar versjon av Bind, du har en SINGLE sjanse til å utnytte sikkerhetshullet siden et mislykket forsøk ville krasje demonen.

Hvordan virker OS fingeravtrykk?

Når du gjør passiv analyse av nåværende trafikk eller ser på gamle pakkefangster, er en av de enkleste og mest effektive måtene å gjøre OS Fingerprinting ved å bare se på TCP-vinduets størrelse og Time To Live (TTL) i IP-headeren til den første pakke i en TCP-økt.

Her er verdiene for de mer populære operativsystemene:

Operativsystem Tid til å leve TCP Window Size
Linux (Kernel 2.4 og 2.6) 64 5840
Google Linux 64 5720
FreeBSD 64 65535
Windows XP 128 65535
Windows Vista og 7 (Server 2008) 128 8192
iOS 12.4 (Cisco Routers) 255 4128

Hovedårsaken til at operativsystemene har forskjellige verdier skyldes at RFCs for TCP / IP ikke fastsetter standardverdier. En annen viktig ting å huske er at TTL-verdien ikke alltid samsvarer med en i tabellen, selv om enheten kjører et av de oppførte operativsystemene, ser du når du sender en IP-pakke over nettverket, sendingsenhetens operativsystem setter TTL til standard TTL for det operativsystemet, men når pakken krysser rutere, senkes TTL med 1. Derfor, hvis du ser en TTL på 117, kan dette forventes å være en pakke som ble sendt med en TTL på 128 og har traversert 11 rutere før de ble fanget.

Bruke tshark.exe er den enkleste måten å se verdiene på, så når du har fått en pakkeopptak, må du sørge for at Wireshark er installert, og deretter navigere til:

C:Program Files

Hold nede skift-knappen og høyreklikk på wireshark-mappen og velg åpent kommandovindu her fra kontekstmenyen

Skriv nå:
Skriv nå:

tshark -r 'C:UsersTaylor GibbDesktoplah.pcap' 'tcp.flags.syn eq 1' -T fields -e ip.src -e ip.ttl -e tcp.window_size

Pass på at du erstatter "C: Users Taylor Gibb Desktop blah.pcap" med den absolutte banen til pakkeopptaket. Når du har tastet inn, vil du bli vist alle SYN-pakker fra opptaket ditt, en lettere å lese tabellformat

Nå er dette en tilfeldig pakkeopptak jeg laget av meg som koblet til How-To Geek-websiden, blant alle de andre snakkene Windows gjør, jeg kan fortelle deg to ting sikkert:
Nå er dette en tilfeldig pakkeopptak jeg laget av meg som koblet til How-To Geek-websiden, blant alle de andre snakkene Windows gjør, jeg kan fortelle deg to ting sikkert:
  • Mitt lokale nettverk er 192.168.0.0/24
  • Jeg er på en Windows 7-boks

Hvis du ser på den første linjen i tabellen, vil du se at jeg ikke lyver, min IP-adresse er 192.168.0.84 min TTL er 128 og min TCP Window Size er 8192, som matcher opp til verdiene for Windows 7.

Den neste tingen jeg ser er en 74.125.233.24 adresse med en TTL på 44 og en TCP Window Size på 5720, hvis jeg ser på bordet mitt, er det ikke noe OS med en TTL på 44, men det sier at Linux som Googles servere kjøre har en TCP-vindustørrelse 5720. Etter å ha gjort et raskt websøk av IP-adressen, ser du at det faktisk er en Google Server.

Anbefalt: