"Hacker Geek": "OS" pirštų atspaudai su TTL ir TCP langų dydžiais

Turinys:

"Hacker Geek": "OS" pirštų atspaudai su TTL ir TCP langų dydžiais
"Hacker Geek": "OS" pirštų atspaudai su TTL ir TCP langų dydžiais

Video: "Hacker Geek": "OS" pirštų atspaudai su TTL ir TCP langų dydžiais

Video:
Video: Hidden Easter Egg: Google Text Adventure (CC) - YouTube 2024, Balandis
Anonim
Ar žinote, kad galite sužinoti, kokia operacinė sistema veikia tinklo įrenginį, tiesiog žiūrėdami, kaip ji bendrauja tinkle? Pažiūrėkime, kaip mes galime sužinoti, kokia operacinė sistema veikia mūsų įrenginiuose.
Ar žinote, kad galite sužinoti, kokia operacinė sistema veikia tinklo įrenginį, tiesiog žiūrėdami, kaip ji bendrauja tinkle? Pažiūrėkime, kaip mes galime sužinoti, kokia operacinė sistema veikia mūsų įrenginiuose.

Kodėl tu tai darytum?

Nustatant, kokia operacinės sistemos OS ar įrenginys veikia, gali būti naudinga dėl daugelio priežasčių. Pirmiausia leiskite pažvelgti į kasdienę perspektyvą, įsivaizduokite, kad norite pereiti prie naujojo interneto tiekėjo, kuris siūlo neribotą internetą per mėnesį 50 JAV dolerių, kad galėtumėte išbandyti savo paslaugas. Naudodamiesi "OS fingerprinting", jūs netrukus pastebėsite, kad jie turi šiukšlių maršrutizatorių ir siūlo PPPoE paslaugą, siūlomą daugelyje "Windows Server 2003" mašinų. Nejau tarsi toks geras dalykas, ar ne?

Dar vienas, nors ir ne taip etiškas, panaudojimas yra tai, kad saugumo skylės yra konkrečios OS. Pavyzdžiui, atliekate uosto nuskaitymą ir atverkite 53 prievadą ir mašina naudoja pasenusią ir pažeidžiamą "Bind" versiją; jūs turite vienintelę galimybę išnaudoti saugumo skylę, nes nesėkmingas bandymas gali sugadinti demoną.

Kaip veikia "Fingerprinting" sistema?

Atliekant pasyvią dabartinio srauto analizę arba netgi žiūrint į senus paketų fiksavimus, vienas iš paprasčiausių ir veiksmingesnių "OS Fingerprinting" būdų yra tiesiog pažvelgus į TCP lango dydį ir "Time To Live" (TTL) pirmojo IP antraštėje paketą TCP sesijoje.

Štai populiariausių operacinių sistemų vertes:

Operacinė sistema Laikas gyventi TCP lango dydis
Linux (branduolys 2.4 ir 2.6) 64 5840
Google Linux 64 5720
FreeBSD 64 65535
Windows XP 128 65535
"Windows Vista" ir 7 ("Server 2008") 128 8192
"iOS 12.4" ("Cisco" maršrutizatoriai) 255 4128

Pagrindinė priežastis, kodėl operacinės sistemos turi skirtingas vertes, yra ta, kad TCP / IP RFC nenustato numatytųjų verčių. Kitas svarbus dalykas, kurį reikia atsiminti, yra tai, kad TTL vertė ne visada atitiks iki lentelėje pateiktą, net jei jūsų įrenginyje veikia viena iš išvardytų operacinių sistemų, matysite, kai siunčiate IP paketą tinkle siunčiančiojo įrenginio operacine sistema nustato TTL į tos OS numatytąjį TTL, tačiau, kadangi paketas perkelia maršrutus, TTL sumažėja iki 1. Taigi, jei matysite TTL 117, tai gali būti paketas, kuris buvo išsiųstas su TTL 128 ir Prieš užfiksuojant, jis persikėlė 11 maršrutizatorių.

Naudojant tshark.exe yra lengviausias būdas pamatyti vertes, taigi, kai jūs gaunate paketų surinkimą, įsitikinkite, kad turite įdiegti "Wireshark", tada eikite į:

C:Program Files

Dabar laikykite pamainos mygtuką ir dešiniuoju pelės klavišu spustelėkite wireshark aplanką ir pasirinkite kontekstinio meniu čia atidarytą komandų langą

Dabar įveskite:
Dabar įveskite:

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

Būtinai pakeiskite "C: Vartotojai Taylor Gibb Desktop blah.pcap" su absoliučiu keliu jūsų paketų surinkimui. Kai paspausite įvesti, bus rodomas visas SYN paketas iš jūsų užfiksuoti lengviau skaityti lentelės formatą

Dabar tai yra atsitiktinis paketų surinkimas, kurį aš padariau, prisijungdamas prie "How-To Geek" svetainės, tarp visų kitų "Windows" veikėjų, galiu tiksliai pasakyti du dalykus:
Dabar tai yra atsitiktinis paketų surinkimas, kurį aš padariau, prisijungdamas prie "How-To Geek" svetainės, tarp visų kitų "Windows" veikėjų, galiu tiksliai pasakyti du dalykus:
  • Mano vietinis tinklas yra 192.168.0.0/24
  • Aš esu "Windows 7" dėžutėje

Jei pažvelgsite į pirmąją lentelės eilutę, pamatysite, kad nemiegau, mano IP adresas yra 192.168.0.84, mano TTL yra 128, o mano TCP lango dydis yra 8192, kuris atitinka iki Windows 7 vertybes.

Kitas dalykas, kurį aš matau, - tai 74.125.233.24 adresas su TTL 44 ir TCP lango dydis 5720, jei žiūrėsiu į mano stalą, nėra OS su TTL 44, tačiau tai sako, kad Linux, kad "Google" serveriai paleiskite TCP lango dydį 5720. Po to, kai atliksite greitą interneto paiešką IP adresu, pamatysite, kad tai iš tikrųjų yra "Google" serveris.

Rekomenduojamas: