Windows LAN sniffer. Snifferi. Povolenie promiskuitného režimu

Analyzátory sieťových paketov alebo sniffery boli pôvodne vyvinuté ako prostriedok na riešenie sieťových problémov. Sú schopné zachytiť, interpretovať a uložiť pakety prenášané cez sieť na ďalšiu analýzu. Na jednej strane to umožňuje systémovým administrátorom a technikom technickej podpory monitorovať, ako sa dáta prenášajú cez sieť, diagnostikovať a opravovať vzniknuté problémy. V tomto zmysle sú paketové sniffery mocným nástrojom na diagnostiku sieťových problémov. Na druhej strane, podobne ako mnohé iné výkonné nástroje, ktoré boli pôvodne určené na správu, sa časom začali sniffery využívať na úplne iné účely. Sniffer v rukách útočníka je skutočne dosť nebezpečný nástroj a možno ho použiť na preberanie hesiel a iných dôverných informácií. Nemyslite si však, že sniffery sú nejakým magickým nástrojom, pomocou ktorého môže každý hacker ľahko zobraziť dôverné informácie prenášané cez sieť. A skôr, než dokážeme, že nebezpečenstvo, ktoré sniffery predstavujú, nie je také veľké, ako sa často prezentuje, pozrime sa bližšie na princípy ich fungovania.

Ako funguje program na sledovanie paketov

Ďalej v tomto článku sa budeme zaoberať iba softvérovými sniffermi určenými pre siete Ethernet. Sniffer je program, ktorý funguje na úrovni sieťového adaptéra NIC (Network Interface Card) (linková vrstva) a nenápadne zachytáva všetku komunikáciu. Keďže sniffery fungujú na vrstve dátového spojenia modelu OSI, nemusia hrať podľa pravidiel protokolov vyššej vrstvy. Sniffery obchádzajú mechanizmy filtrovania (adresy, porty atď.), ktoré ethernetové ovládače a zásobník TCP/IP používajú na interpretáciu údajov. Snímače paketov zachytávajú z drôtu všetko, čo ním prechádza. Snifferi môžu ukladať snímky v binárnom formáte a dešifrovať ich neskôr, aby odhalili informácie vyššej úrovne skryté vo vnútri (obrázok 1).

Aby mohol sniffer zachytiť všetky pakety prechádzajúce cez sieťový adaptér, musí ovládač sieťového adaptéra podporovať promiskuitný režim prevádzky (promiskuitný režim). Práve v tomto režime prevádzky sieťového adaptéra je sniffer schopný zachytiť všetky pakety. Tento režim činnosti sieťového adaptéra sa automaticky aktivuje pri spustení snifferu alebo je nastavený manuálne príslušnými nastaveniami sniffera.

Všetka zachytená prevádzka je odovzdaná dekodéru paketov, ktorý identifikuje a rozdelí pakety do príslušných úrovní hierarchie. V závislosti od schopností konkrétneho sniffera môžu byť prezentované informácie o paketoch následne ďalej analyzované a filtrované.

Obmedzenia snifferov

Sniffers predstavovali najväčšie nebezpečenstvo v tých časoch, keď sa informácie prenášali po sieti v čistom texte (bez šifrovania) a lokálne siete boli budované na báze koncentrátorov (hubov). Tieto časy sú však nenávratne preč a v súčasnosti nie je používanie snifferov na získanie prístupu k dôverným informáciám v žiadnom prípade jednoduchou úlohou.

Faktom je, že pri budovaní lokálnych sietí založených na rozbočovačoch existuje určité spoločné médium na prenos dát (sieťový kábel) a všetky uzly siete si vymieňajú pakety, súperiace o prístup k tomuto médiu (obr. 2), pričom paket odoslaný jednou sieťou uzol sa prenáša na všetky porty hubu a tento paket počúvajú všetky ostatné uzly siete, ale prijíma ho len ten uzol, ktorému je adresovaný. Navyše, ak je na jednom zo sieťových uzlov nainštalovaný sniffer paketov, môže zachytiť všetky sieťové pakety súvisiace s týmto segmentom siete (sieť tvorená rozbočovačom).

Prepínače sú inteligentnejšie ako vysielacie uzly a izolujú sieťovú prevádzku. Prepínač pozná adresy zariadení pripojených ku každému portu a preposiela pakety iba medzi požadovanými portami. To vám umožňuje zbaviť sa iných portov bez toho, aby ste im odovzdali každý paket, ako to robí rozbočovač. Paket odoslaný určitým sieťovým uzlom sa teda prenesie len na port prepínača, ku ktorému je pripojený príjemca paketu a všetky ostatné uzly siete nedokážu tento paket odhaliť (obr. 3).

Ak je teda sieť vybudovaná na báze prepínača, potom sniffer nainštalovaný na jednom zo sieťových počítačov dokáže zachytiť iba tie pakety, ktoré si tento počítač vymieňa s inými sieťovými uzlami. V dôsledku toho, aby bolo možné zachytiť pakety, ktoré si počítač alebo server, ktorý je predmetom záujmu útočníka, vymieňa s inými sieťovými uzlami, je potrebné na tento počítač (server) nainštalovať sniffer, čo v skutočnosti nie je také jednoduché. Treba však mať na pamäti, že niektoré sniffery paketov sa spúšťajú z príkazového riadku a nemusia mať grafické rozhranie. Takéto sniffery môžu byť v zásade inštalované a spúšťané na diaľku a neviditeľné pre používateľa.

Okrem toho musíte mať na pamäti, že hoci prepínače izolujú sieťovú prevádzku, všetky spravované prepínače majú funkciu presmerovania portov alebo zrkadlenia portov. To znamená, že port prepínača môže byť nakonfigurovaný tak, že všetky pakety prichádzajúce na iné porty prepínača sú na ňom duplikované. Ak je v tomto prípade k takémuto portu pripojený počítač so sledovačom paketov, môže zachytiť všetky pakety vymieňané medzi počítačmi v tomto segmente siete. Spravidla je však možnosť konfigurovať prepínač k dispozícii iba správcovi siete. To, samozrejme, neznamená, že nemôže byť narušiteľom, ale správca siete má mnoho iných spôsobov, ako kontrolovať všetkých používateľov lokálnej siete a je nepravdepodobné, že by vás takto sofistikovane sledoval.

Ďalším dôvodom, prečo už nie sú sniffery také nebezpečné ako kedysi, je, že v súčasnosti sa najdôležitejšie dáta prenášajú v šifrovanej podobe. Otvorené, nešifrované služby sa z internetu rýchlo vytrácajú. Napríklad pri návšteve webových stránok sa čoraz častejšie používa protokol SSL (Secure Sockets Layer); Namiesto otvoreného FTP sa používa SFTP (Secure FTP) a ďalšie služby, ktoré štandardne nepoužívajú šifrovanie, čoraz častejšie využívajú virtuálne privátne siete (VPN).

Takže tí, ktorí sa obávajú možnosti škodlivého použitia paketových snifferov, by mali mať na pamäti nasledujúce. Po prvé, aby snifferi predstavovali vážnu hrozbu pre vašu sieť, musia sa nachádzať v samotnej sieti. Po druhé, dnešné štandardy šifrovania mimoriadne sťažujú zachytávanie dôverných informácií. Preto v súčasnosti sniffery paketov postupne strácajú svoj význam ako nástroje pre hackerov, no zároveň zostávajú efektívnym a výkonným nástrojom na diagnostiku sietí. Okrem toho môžu byť sniffery úspešne použité nielen na diagnostiku a lokalizáciu problémov so sieťou, ale aj na audit bezpečnosti siete. Najmä použitie paketových analyzátorov vám umožňuje odhaliť neoprávnenú prevádzku, odhaliť a identifikovať neoprávnený softvér, identifikovať nepoužívané protokoly na ich odstránenie zo siete, generovať prevádzku na penetračné testovanie na testovanie systému ochrany, pracovať so systémami detekcie narušenia ( Intrusion Detection systém, IDS).

Prehľad softvérových balíkov Sniffers

Všetky softvérové ​​sniffery možno zhruba rozdeliť do dvoch kategórií: sniffery, ktoré podporujú spustenie z príkazového riadku, a sniffery, ktoré majú grafické rozhranie. Zároveň poznamenávame, že existujú sniffery, ktoré kombinujú obe tieto funkcie. Okrem toho sa snifferi navzájom líšia protokolmi, ktoré podporujú, hĺbkou analýzy zachytených paketov, schopnosťou konfigurovať filtre a možnosťou kompatibility s inými programami.

Okno každého sniffera s grafickým rozhraním sa zvyčajne skladá z troch oblastí. Prvý zobrazuje súhrn zachytených paketov. Táto oblasť zvyčajne zobrazuje minimum polí, konkrétne: čas zachytávania paketov; IP adresy odosielateľa a príjemcu paketu; Zdrojové a cieľové adresy MAC paketov, adresy zdrojových a cieľových portov; typ protokolu (sieťová, transportná alebo aplikačná vrstva); nejaké súhrnné informácie o zachytených údajoch. Druhá oblasť zobrazuje štatistické informácie o jednotlivom vybranom balíku a nakoniec tretia oblasť zobrazuje balík v hexadecimálnej alebo znakovej forme - ASCII.

Takmer všetky paketové sledovače umožňujú analýzu dekódovaných paketov (preto sa paketové sledovače nazývajú aj paketové analyzátory alebo analyzátory protokolov). Sniffer distribuuje zachytené pakety podľa vrstiev a protokolov. Niektoré analyzátory paketov sú schopné rozpoznať protokol a zobraziť zachytené informácie. Tento typ informácií sa zvyčajne zobrazuje v druhej oblasti okna snímania. Každý sniffer je napríklad schopný rozpoznať protokol TCP a pokročilí snifferi môžu určiť, ktorá aplikácia generovala tento prenos. Väčšina analyzátorov protokolov rozpoznáva viac ako 500 rôznych protokolov a dokáže ich opísať a dekódovať podľa názvu. Čím viac informácií dokáže sniffer dekódovať a zobraziť na obrazovke, tým menej ich musíte dekódovať manuálne.

Jedným z problémov, s ktorými sa môžu sledovače paketov stretnúť, je neschopnosť správne identifikovať protokol pomocou iného než predvoleného portu. Napríklad, aby sa zlepšila bezpečnosť, niektoré známe aplikácie môžu byť nakonfigurované tak, aby používali iné ako predvolené porty. Takže namiesto tradičného portu 80 vyhradeného pre webový server môže byť tento server nútený prekonfigurovať na port 8088 alebo akýkoľvek iný. Niektoré analyzátory paketov v tejto situácii nedokážu správne určiť protokol a zobrazia len informácie o protokole nižšej úrovne (TCP alebo UDP).

Existujú softvérové ​​sniffery, ktoré sa dodávajú so softvérovými analytickými modulmi ako zásuvné moduly alebo vstavané moduly, ktoré vám umožňujú vytvárať správy s užitočnými analytickými informáciami o zachytenej premávke.

Ďalšou charakteristickou črtou väčšiny analyzátorov softvérových paketov je schopnosť konfigurovať filtre pred a po zachytení prevádzky. Filtre oddeľujú určité pakety od všeobecnej prevádzky podľa daného kritéria, čo vám umožňuje zbaviť sa nepotrebných informácií pri analýze prevádzky.

Snifferi- to sú programy, ktoré zachytávajú
všetku sieťovú prevádzku. Sniffery sú užitočné na diagnostiku siete (pre správcov) a
odchytávať heslá (je jasné pre koho :)). Napríklad, ak máte prístup k
jeden sieťový stroj a nainštalovaný tam sniffer,
potom čoskoro všetky heslá z
ich podsiete budú vaše. Sniffers dal
sieťovej karte k počúvaniu
(PROMISC) To znamená, že prijímajú všetky pakety. V sieti LAN môžete odpočúvať
všetky odoslané pakety zo všetkých strojov (ak nie ste oddelení žiadnymi hubmi),
Takže
ako sa tam praktizuje vysielanie.
Sniffery dokážu zachytiť všetko
balíky (čo je veľmi nepohodlné, súbor denníka sa strašne rýchlo preplní,
ale pre podrobnejšiu analýzu siete je to najviac)
alebo iba prvé bajty z ľubovoľného
ftp, telnet, pop3 atď. (toto je najzábavnejšie, zvyčajne v prvých 100 bajtoch
obsahuje užívateľské meno a heslo. Teraz čuchaj
rozvedený ... Je veľa čuchačov
aj pod Unixom aj pod Windowsom (aj pod DOSom existuje :)).
Snifferi môžu
podporujú iba konkrétnu os (napríklad linux_sniffer.c, ktorá
podporuje Linux :)) alebo niekoľko (napríklad Sniffit,
pracuje s BSD, Linux, Solaris). Snifferi tak zbohatli, pretože
že heslá sa prenášajú cez sieť ako čistý text.
Takéto služby
veľa. Sú to telnet, ftp, pop3, www atď. Tieto služby
užíva veľa
ľudia :). Po rozmachu snifferov rôzne
algoritmy
šifrovanie týchto protokolov. Objavil sa SSH (alternatíva
telnet, ktorý podporuje
šifrovanie), SSL (Secure Socket Layer - vývoj od Netscape schopný šifrovania
www relácia). Všetky druhy Kerberous, VPN (Virtual Private
sieť). Boli použité niektoré AntiSniff, ifstatus atď. Ale v zásade to tak nie je
zmenili pozície. Služby, ktoré využívajú
prenos hesla vo forme obyčajného textu
yuzayutsya vo všetkých:). Preto čuchanie bude na dlho :).

Windows implementácie snifferov

linsniffer
Toto je jednoduchý sniffer na zachytenie
prihlasovacie údaje/heslá. Štandardná kompilácia (gcc -o linsniffer
linsniffer.c).
Log zapisuje na tcp.log.

linux_sniffer
Linux_sniffer
požadované, keď chcete
podrobne si preštudujte sieť. Štandardné
kompilácia. Rozdáva akýkoľvek shnyag navyše,
like is, ack, syn, echo_request (ping) atď.

ňufák
Sniffit - pokročilý model
sniffer napísal Brecht Claerhout. Nainštalovať (potrebné
libcap):
#./configure
#urobiť
Teraz spúšťame
sniper:
#./snifffit
použitie: ./sniffit [-xdabvnN] [-P proto] [-A char] [-p
port] [(-r|-R) záznamový súbor]
[-l sniflen] [-L logparam] [-F snifdevice]
[-M plugin]
[-D tty] (-t | -s ) |
(-i|-I) | -c ]
Dostupné pluginy:
0 - Figurína
zapojiť
1 -- Doplnok DNS

Ako môžete vidieť, sniffit podporuje veľa
možnosti. Sniffak môžete používať interaktívne.
Čuchať predsa
celkom užitočný program, ale nepoužívam ho.
prečo? Pretože Sniffit má
veľké bezpečnostné problémy. Pre Sniffit "a, vzdialený root a dos pre
Linux a Debian! Toto si nedovolí každý oňuchávač :).

LOV
Toto
môj obľúbený ňufák. Manipulácia s ním je veľmi jednoduchá
podporuje veľa cool
čipy a momentálne nemá žiadne bezpečnostné problémy.
Navyše nie veľa
náročný na knižnice (ako linsniffer a
Linux_sniffer). On
dokáže zachytiť aktuálne spojenia v reálnom čase a pod
vyčistiť výpis zo vzdialeného terminálu. V
vo všeobecnosti Hijack
rulezzz :). Odporučiť
všetko pre lepšie využitie :).
Inštalácia:
#urobiť
spustiť:
#lov-i

PREČÍTAJTE MB
Sniffer READSMB vystrihnutý z LophtCrack a prenesený na
Unix (napodiv :)). Readsmb zachytáva SMB
balíkov.

TCPDUMP
tcpdump je pomerne známy sniffer paketov.
Napísané
ešte známejší je Van Jacobson, ktorý vynašiel VJ kompresiu pre
PPP a napísal traceroute (a ktovie čo ešte?).
Vyžaduje knižnicu
libpcap.
Inštalácia:
#./configure
#urobiť
Teraz spúšťame
ona:
#tcpdump
tcpdump: počúvanie na ppp0
Všetky vaše pripojenia vystupujú do
terminál. Tu je príklad výstupu ping

ftp.technotronic.com:
02:03:08.918959
195.170.212.151.1039 > 195.170.212.77.doména: 60946+ A?
ftp.technotronic.com.
(38)
02:03:09.456780 195.170.212.77.doména > 195.170.212.151.1039: 60946*
1/3/3 (165)
02:03:09.459421 195.170.212.151 > 209.100.46.7: icmp: echo
žiadosť
02:03:09.996780 209.100.46.7 > 195.170.212.151: icmp: echo
odpovedať
02:03:10.456864 195.170.212.151 > 209.100.46.7: icmp: echo
žiadosť
02:03:10.906779 209.100.46.7 > 195.170.212.151: icmp: echo
odpovedať
02:03:11.456846 195.170.212.151 > 209.100.46.7: icmp: echo
žiadosť
02:03:11.966786 209.100.46.7 > 195.170.212.151: icmp: echo
odpovedať

Vo všeobecnosti je sniff užitočný na ladenie sietí,
riešenie problémov a
atď.

Dsniff
Dsniff vyžaduje libpcap, ibnet,
libnids a OpenSSH. Zaznamenáva iba zadané príkazy, čo je veľmi pohodlné.
Tu je príklad protokolu pripojenia
na unix-shells.com:

02/18/01
03:58:04 tcp my.ip.1501 ->
handi4-145-253-158-170.arcor-ip.net.23
(telnet)
stalsen
asdqwe123
ls
pwd
SZO
posledný
východ

Tu
dsniff zachytil prihlásenie s heslom (stalsen/asdqwe123).
Inštalácia:
#./configure
#urobiť
#urobiť
Inštalácia

Ochrana pred čuchaním

Najistejší spôsob ochrany pred
čuchači -
použiť ŠIFROVANIE (SSH, Kerberous, VPN, S/Key, S/MIME,
SHTTP, SSL atď.). Dobre
a ak nechcete odmietnuť služby čistého textu a vytvoriť ďalšie
balíčky :)? Potom je čas použiť anti-sniffer balíčky...

AntiSniff pre Windows
Tento produkt vydala známa skupina
loft. Bol to prvý výrobok svojho druhu.
AntiSniff, ako je uvedené v
popis:
„AntiSniff je nástroj poháňaný grafickým používateľským rozhraním (GUI).
detekciu promiskuitných kariet sieťového rozhrania (NIC) vo vašej lokálnej sieti
segment". Vo všeobecnosti chytí karty v promisc režime.
Podporuje obrovské
počet testov (DNS test, ARP test, Ping Test, ICMP Time Delta
Test, Echo Test, PingDrop test). Dá sa naskenovať ako jedno auto,
tak isto aj mriežka. existuje
podpora logov. AntiSniff funguje na win95/98/NT/2000,
hoci odporúčané
platforma NT. Ale jeho vláda bola krátkodobá a čoskoro
časom sa objavil sniffer s názvom AntiAntiSniffer :),
napísal Mike
Perry (Mike Perry) (nájdete ho na www.void.ru/news/9908/snoof.txt).
založené na LinSniffer (diskutované neskôr).

Detekcia unixového snifferu:
Sniffer
možno nájsť pomocou príkazu:

#ifconfig -a
lo Odkaz encap:Miestne
spätná slučka
inet addr:127.0.0.1Mask:255.0.0.0
U.P.
LOOPBACK RUNNING MTU:3924 Metrika:1
RX pakety:2373 chýb:0
vypadnuté:0 prekročenia:0 snímka:0
TX pakety:2373 chýb:0 zahodených:0
prekročenia:0 nosič:0
kolízie:0 txqueuelen:0

Odkaz ppp0
encap: Protokol Point-to-Point
inet addr:195.170.y.x
P-t-P:195.170.y.x Maska:255.255.255.255
UP POINT POINT PROMISC
RUNNING NOARP MULTICAST MTU:1500 Metrika:1
RX pakety: 3281
chyby:74 vypadnuté:0 prekročenia:0 snímka:74
TX pakety: 3398 chýb: 0
poklesol:0 prekročenia:0 nosič:0
kolízie:0 txqueuelen:10

Ako
vidíte, že rozhranie ppp0 je v režime PROMISC. Ktorýkoľvek operátor
nahrané sniff for
skontroluje sieť, alebo už máte... Ale pamätajte,
že ifconfig môže byť bezpečný
swap, takže na zistenie použite tripwire
zmeny a najrôznejšie programy
skontrolovať šnupanie.

AntiSniff pre Unix.
Pracuje pre
BSD, Solaris a
linux. Podporuje ping/icmp časový test, arp test, echo test, dns
test, etherping test, vo všeobecnosti analóg AntiSniff "a pre Win len pre
Unix :).
Inštalácia:
#make linux-all

Sentinel
Tiež užitočné pre
chytanie čuchačov. Podporuje veľa testov.
Len dovnútra
použitie.
Nainštalujte: #make
#./sentinel
./sentinel [-t
]
metódy:
[-test ARP]
[ -d DNS test
]
[ -i Test latencie ping ICMP ]
[ -e Test ICMP Etherping
]
možnosti:
[-f ]
[ -v Zobraziť verziu a
východ]
[-n ]
[-I
]

Možnosti sú také jednoduché, že nie
komentáre.

VIAC

Tu je niekoľko ďalších
nástroje na testovanie vašej siete (napr
Unix):
packetstorm.securify.com/UNIX/IDS/scanpromisc.c -remote
Detektor režimu PROMISC pre ethernetové karty (pre red hat 5.x).
http://packetstorm.securify.com/UNIX/IDS/neped.c
- Network Promiskuit Ethernet Detector (vyžaduje sa libcap a Glibc).
http://packetstorm.securify.com/Exploit_Code_Archive/promisc.c
-Skenuje systémové zariadenia, aby zistil šnupanie.
http://packetstorm.securify.com/UNIX/IDS/ifstatus2.2.tar.gz
- ifstatus testuje sieťové rozhrania v režime PROMISC.

Keď bežný používateľ počuje výraz „sniffer“, okamžite sa začne zaujímať o to, čo to je a prečo je to potrebné.

Pokúsime sa všetko vysvetliť jednoducho.

Tento článok však bude určený nielen pre začínajúcich používateľov, ale aj pre.

Definícia

Sniffer je analyzátor dopravy. Návštevnosť sú zase všetky informácie, ktoré prechádzajú počítačovými sieťami.

Tento analyzátor sleduje, aké informácie sa prenášajú. Aby to bolo možné, musí byť zachytený. V skutočnosti ide o nezákonnú vec, pretože ľudia sa tak často dostanú k údajom iných ľudí.

Dá sa to prirovnať k vlakovej lúpeži – klasickej zápletke väčšiny westernov.

Prenášate niektoré informácie inému používateľovi. Poháňa ju „vlak“, teda sieťový kanál.

Hlupáci z gangu krvavého Joea zadržia vlak a okradnú ho do kože. V našom prípade ide informácia ďalej, to znamená, že ju útočníci nekradnú v pravom zmysle slova.

Ale povedzme, že tieto informácie sú heslá, osobné záznamy, fotografie a podobne.

Útočníci to všetko môžu jednoducho prepísať a odfotografovať. Týmto spôsobom budú mať prístup k citlivým údajom, ktoré by ste chceli skryť.

Áno, všetky tieto informácie budete mať, dostanú sa k vám.

Ale budete vedieť, že to isté vedia aj úplne neznámi ľudia. V 21. storočí sa však najviac cení informácie!

V našom prípade sa používa tento princíp. Niektorí ľudia zastavujú premávku, čítajú z nej dáta a posielajú ich ďalej.

Je pravda, že v prípade snifferov nie je vždy všetko také strašidelné. Používajú sa nielen na získanie neoprávneného prístupu k údajom, ale aj na analýzu samotnej prevádzky. Toto je dôležitá súčasť práce správcov systému a práve správcov rôznych zdrojov. Stojí za to hovoriť o aplikácii podrobnejšie. Predtým sa však dotkneme toho, ako fungujú tie isté čichadlá.

Princíp činnosti

V praxi môžu byť sniffery prenosné zariadenia, ktoré sú doslova umiestnené na kábli a čítajú z neho dáta a programy.

V niektorých prípadoch je to jednoducho súbor inštrukcií, to znamená kódov, ktoré musia byť zadané v určitom poradí a v určitom programovacom prostredí.

Ak podrobnejšie, že odpočúvanie dopravy takýmito zariadeniami možno čítať jedným z nasledujúcich spôsobov:

1 Inštaláciou rozbočovačov namiesto prepínačov. V princípe je možné počúvanie sieťového rozhrania vykonávať aj inými spôsobmi, všetky sú však neúčinné.

2 Pripojením doslova sniffera k prerušeniu kanála. To je presne to, čo bolo diskutované vyššie - a je nainštalované malé zariadenie, ktoré číta všetko, čo sa pohybuje pozdĺž kanála.

3 Inštalácia odbočky z premávky. Táto vetva je smerovaná na iné zariadenie, prípadne dešifrovaná a odoslaná používateľovi.

4 Útok zameraný na úplné presmerovanie prevádzky na sniffer. Samozrejme, po vstupe informácie do čítačky sa opäť odošle koncovému užívateľovi, ktorému bola pôvodne určená. vo svojej najčistejšej forme!

5 Analýzou elektromagnetického žiarenia ktoré vznikajú v dôsledku pohybu dopravy. Toto je najkomplexnejšia a zriedka používaná metóda.

Tu je príklad toho, ako funguje druhý spôsob.

Pravda, tu sa ukazuje, že čítačka je jednoducho pripojená ku káblu.

V skutočnosti je to takmer nemožné.

Faktom je, že koncový používateľ si stále všimne, že na určitom mieste je prerušenie kanála.

Samotný princíp fungovania bežného snifferu je založený na tom, že v rámci jedného segmentu sú posielané do všetkých pripojených strojov. Dosť hlúpe, ale zatiaľ neexistuje alternatívna metóda! A medzi segmentmi sa dáta prenášajú pomocou prepínačov. Tu sa objavuje možnosť zachytiť informácie jednou z vyššie uvedených metód.

V skutočnosti sa tomu hovorí kybernetické útoky a hackovanie!

Mimochodom, ak správne nainštalujete rovnaké prepínače, môžete segment úplne chrániť pred všetkými druhmi kybernetických útokov.

Existujú aj iné spôsoby ochrany, o ktorých si povieme na samom konci.

Užitočné informácie:

Venujte pozornosť programu. Používa sa na analýzu sieťovej prevádzky a analýzu dátových paketov, na ktoré sa používa knižnica pcap. To výrazne zužuje počet balíkov dostupných na analýzu, pretože možno analyzovať iba tie balíky, ktoré sú podporované touto knižnicou.

Aplikácia

Samozrejme, v prvom rade má tento koncept vyššie diskutovanú aplikáciu, teda hackerské útoky a nelegálne získavanie užívateľských dát.

Okrem toho sa však sniffery používajú aj v iných oblastiach, konkrétne v práci systémových administrátorov.

Najmä takéto zariadenia Programy vám pomôžu urobiť nasledovné:

Ako vidíte, zariadenia alebo programy, o ktorých uvažujeme, môžu výrazne uľahčiť prácu systémových administrátorov a iných ľudí, ktorí používajú siete. A to sme všetci.

Teraz prejdime k tomu najzaujímavejšiemu – prehľadu sniffer programov.

Vyššie sme zistili, že môžu byť vyrobené vo forme fyzických zariadení, ale vo väčšine prípadov sa používajú špeciálne.

Poďme si ich naštudovať.

Sniffer programy

Tu je zoznam najpopulárnejších takýchto programov:

commview. Program je platený, rovnako ako všetky ostatné v našom zozname. Jedna minimálna licencia stojí 300 dolárov. Funkcionalita softvéru je však najbohatšia. Prvá vec, ktorá stojí za zmienku, je možnosť vlastného nastavenia pravidiel. Môžete to napríklad urobiť tak, že (tieto protokoly) budú úplne ignorované. Je tiež pozoruhodné, že program vám umožňuje zobraziť podrobnosti a protokol všetkých preposlaných paketov. Existuje bežná verzia a verzia Wi-Fi.

Spynet. Toto je v skutočnosti Trójsky kôň, z ktorého sme všetci tak unavení. Ale dá sa použiť aj na ušľachtilé účely, o ktorých sme hovorili vyššie. Program zachytáva a ktoré sú v premávke. Existuje veľa nezvyčajných funkcií. Môžete napríklad znovu vytvoriť stránky na internete, ktoré „obeť“ navštívila. Je pozoruhodné, že tento softvér je zadarmo, ale je dosť ťažké ho nájsť.

BUTTSniffer. Toto je sniffer vo svojej najčistejšej forme, ktorý pomáha analyzovať sieťové pakety a nezachytávať heslá iných ľudí a históriu prehliadača. Aspoň to si myslel autor. V skutočnosti sa používa jeho výtvor, viete čo. Toto je bežný dávkový program, ktorý funguje cez príkazový riadok. Na začiatok sa stiahnu a spustia dva súbory. "Zachytené" pakety sú uložené na pevnom disku, čo je veľmi výhodné.

Existuje mnoho ďalších programov na sniffer. Známe sú napríklad fsniff, WinDump, dsniff, NatasX, NetXRay, CooperSniffer, LanExplorer, Net Analyzer a mnohé ďalšie. Vyberte si ľubovoľné! Ale pre spravodlivosť treba poznamenať, že najlepší je CommView.

Takže sme analyzovali, čo sú sniffery, ako fungujú a čo sú.

Presuňme sa teraz z miesta hackera či správcu systému na miesto bežného používateľa.

Sme si dobre vedomí toho, že naše údaje môžu byť odcudzené. Čo robiť, aby sa to nestalo? (tu). Funguje to mimoriadne jednoducho – prehľadá sieť, či sa v nej nenachádzajú všetky druhy špiónov a ak sa nejakí nájdu, hlási. Ide o najjednoduchší a najzrozumiteľnejší princíp, ktorý vám umožňuje chrániť sa pred kybernetickými útokmi.

3 Použite PromScan. Z hľadiska jeho vlastností a úloh je tento program veľmi podobný AntiSniff pre Windows, preto si jeden vyberte. Na internete je tiež veľa odkazov na stiahnutie (tu je jeden z nich). Ide o inovatívny program, ktorý vám umožňuje na diaľku ovládať počítače pripojené k rovnakej sieti. Princípom jeho fungovania je určiť uzly, ktoré by v sieti nemali byť. V skutočnosti sú to s najväčšou pravdepodobnosťou tí pátrači. Program ich rozpozná a signalizuje to veľavravnou správou. Veľmi pohodlne!.

4 Používať kryptografiu, a ak je nasadený, kryptografický systém s verejným kľúčom. Ide o špeciálny systém šifrovania alebo elektronického podpisu. Jeho „trik“ spočíva v tom, že kľúč je verejný a každý ho vidí, ale nie je možné zmeniť údaje, pretože to musí byť vykonané na všetkých počítačoch v sieti súčasne. Úžasná metóda je ako návnada na zlodeja. V časti si môžete prečítať o blockchaine, kde sa takýto systém používa.

5 Nesťahujte podozrivé programy, nenavštevujte podozrivé stránky atď. Každý moderný používateľ o tom vie, a predsa je to práve táto cesta, ktorá je hlavnou cestou na získanie trójskych koní a iných špinavých trikov do vášho operačného systému. Preto buďte zásadne veľmi zodpovední pri používaní internetu!

Ak máte ďalšie otázky, opýtajte sa ich v komentároch nižšie.

Dúfame, že sa nám všetko podarilo vysvetliť jednoduchým a zrozumiteľným jazykom.

V tomto článku sa pozrieme na vytvorenie jednoduchého sniffera pre OS Windows.
Koho to zaujíma, vitaj pod kat.

Úvod

Cieľ: napíšte program, ktorý bude zachytávať sieťovú prevádzku (Ethernet, WiFi) prenášanú cez IP protokol.
Vybavenie: Visual Studio 2005 alebo vyššie.
Prístup, ktorý je tu popísaný, nepatrí autorovi osobne a je úspešne používaný v mnohých komerčných, ale aj kategoricky voľných programoch (ahoj, GPL).
Táto práca je určená predovšetkým začiatočníkom v sieťovom programovaní, ktorí však majú aspoň základné znalosti o socketoch vo všeobecnosti a najmä o windows socketoch. Sem budem často písať známe veci, pretože predmetná oblasť je špecifická, ak vám niečo chýba, bude vám v hlave neporiadok.

Dúfam, že vás to zaujme.

Teória (čítanie je voliteľné, ale žiaduce)

V súčasnosti je veľká väčšina moderných informačných sietí založená na základe zásobníka protokolov TCP/IP. Zásobník protokolov TCP/IP (Transmission Control Protocol/Internet Protocol) je súhrnný názov pre sieťové protokoly rôznych úrovní používaných v sieťach. V tomto článku nás bude zaujímať najmä IP protokol - smerovateľný sieťový protokol slúžiaci na negarantované doručovanie dát rozdelených do takzvaných paketov (správnejší výraz je datagram) z jedného sieťového uzla do druhého.
Pre nás sú obzvlášť zaujímavé IP pakety určené na prenos informácií. Ide o dostatočne vysokú úroveň dátového modelu siete OSI, kedy je možné abstrahovať od zariadenia a média na prenos dát, pracujúcich len s logickou reprezentáciou.
Je celkom logické, že skôr či neskôr by sa mali objaviť nástroje na odpočúvanie, kontrolu, účtovanie a analýzu sieťovej prevádzky. Takéto nástroje sa zvyčajne nazývajú analyzátory prevádzky, analyzátory paketov alebo sniffer (z angličtiny do sniff - sniff). Ide o analyzátor sieťovej prevádzky, program alebo hardvérové ​​a softvérové ​​zariadenie určené na zachytenie a následnú analýzu alebo iba analýzu sieťovej prevádzky určenej pre iné uzly.

Cvičte (hovorte k veci)

V súčasnosti je vytvorených množstvo softvéru na počúvanie premávky. Najznámejší z nich: Wireshark. Prirodzene, cieľ nestojí za to, aby zbieral vavríny - zaujíma nás úloha zachytávania prevádzky obvyklým „počúvaním“ sieťového rozhrania. Je dôležité pochopiť, že sa nebudeme zaoberať hackovaním a odpočúvaním cudzinec premávky. Stačí si pozrieť a analyzovať návštevnosť, ktorá prechádza cez nášho hostiteľa.

Prečo to môže byť potrebné:

  1. Pozrite si aktuálny tok prevádzky cez sieťové pripojenie (prichádzajúce/odchádzajúce/celkové).
  2. Presmerujte prevádzku na ďalšiu analýzu na iného hostiteľa.
  3. Teoreticky ho môžete skúsiť použiť na hacknutie WiFi siete (toto neurobíme, však?).
Na rozdiel od Wireshark, ktorý je založený na knižnici libpcap/WinPcap, náš analyzátor nebude používať tento ovládač. Čo tam je, nebudeme mať vôbec vodiča a nebudeme písať vlastný NDIS (horor!) Môžete si o tom prečítať v tomto vlákne. Bude len pasívnym pozorovateľom iba Knižnica WinSock. Používanie ovládača je v tomto prípade zbytočné.

Ako to? Veľmi jednoduché.
Kľúčovým krokom pri premene jednoduchej sieťovej aplikácie na sieťový analyzátor je prepnutie sieťového rozhrania do promiskuitného režimu, ktorý mu umožní prijímať pakety adresované iným rozhraniam v sieti. Tento režim núti sieťovú kartu akceptovať všetky rámce bez ohľadu na to, komu sú v sieti adresované.

Počnúc systémom Windows 2000 (NT 5.0) je vytvorenie programu na počúvanie v segmente siete veľmi jednoduché, pretože jeho sieťový ovládač umožňuje uviesť soket do režimu prijímania všetkých paketov.

Povolenie promiskuitného režimu
dlhá vlajka = 1; zásuvka SOCKET; #define SIO_RCVALL 0x98000001 ioctlsocket(socket, SIO_RCVALL, &RS_Flag);
Náš program funguje na IP paketoch a používa knižnicu Windows Sockets verzie 2.2 a raw sockety. Na priamy prístup k IP paketu musí byť soket vytvorený nasledovne:
Vytvorenie surovej zásuvky
s = socket(AF_INET, SOCK_RAW, IPPROTO_IP);
Tu namiesto konštanty SOCK_STREAM(protokol TCP) príp SOCK_DGRAM(UDP protokol), používame hodnotu SOCK_RAW. Vo všeobecnosti je práca s raw socketmi zaujímavá nielen z pohľadu zachytávania návštevnosti. V skutočnosti získame plnú kontrolu nad tvorbou balíka. Alebo skôr, vytvoríme ho manuálne, čo umožňuje napríklad odoslať konkrétny ICMP paket ...

Pokračuj. Je známe, že IP paket pozostáva z hlavičky, servisných informácií a v skutočnosti dát. Odporúčam vám pozrieť sa sem, aby ste si obnovili svoje vedomosti. Popíšme hlavičku IP ako štruktúru (vďaka výbornému článku o RSDN):

Popis štruktúry IP paketu
typedef struct _IPHeader ( unsigned char ver_len; // verzia a dĺžka hlavičky unsigned char tos; // typ služby unsigned short length; // dĺžka celého paketu unsigned short id; // Id unsigned short flgs_offset; // príznaky a offset unsigned char ttl ; // doživotný nepodpísaný char protokol; // protokol nepodpísaný krátky xsum; // kontrolný súčet nepodpísaný dlhý zdroj; // zdrojová IP adresa nepodpísaná dlhý cieľ; // cieľová IP adresa nepodpísaná krátke *paramy; // parametre (až 320 bitov) unsigned char *data; // dáta (až 65535 oktetov) )IPHeader;
Hlavná funkcia algoritmu počúvania bude vyzerať takto:
Funkcia zachytávania jedného paketu
IPHeader* RS_Sniff() ( IPHeader *hdr; počet int = 0; počet = recv(RS_SSocket, (char*)&RS_Buffer, sizeof(RS_Buffer), 0); if (count >= sizeof(IPHeader)) (hdr = (LPIPHeader )malloc(MAX_PACKET_SIZE); memcpy(hdr, RS_Buffer, MAX_PACKET_SIZE); RS_UpdateNetStat(počet, hdr); return hdr; ) inak vráti 0; )
Všetko je tu jednoduché: časť údajov získame pomocou štandardnej funkcie socket recv a potom ich skopírujte do štruktúry ako IPHeader.
A nakoniec začneme nekonečnú slučku zachytávania paketov:
Zachytenie všetkých paketov, ktoré zasiahnu naše sieťové rozhranie
while (true) ( ​​​​IPHeader* hdr = RS_Sniff(); // spracovať IP paket if (hdr) ( // vytlačiť hlavičku v konzole ) )
Trochu offtopic
Ďalej autor predpísal niektoré dôležité funkcie a premenné RS_ (z Raw Sockets). Projekt bol hotový pred 3-4 rokmi a vznikol bláznivý nápad napísať plnohodnotnú knižnicu pre prácu s raw socketmi. Ako to už často býva, po získaní akýchkoľvek významných (pre autora) výsledkov nadšenie opadlo a záležitosť nezašla ďalej ako k príkladu školenia.

V zásade môžete ísť ďalej a popísať hlavičky všetkých nasledujúcich protokolov vyššie. Na to je potrebné pole analyzovať protokol v štruktúre IPHeader. Pozrite sa na príklad kódu (áno, mal by tam byť prepínač, sakra!), kde je hlavička zafarbená v závislosti od protokolu, ktorý má paket zapuzdrený IP:

/* * Zvýraznenie paketu */ void ColorPacket(const IPHeader *h, const u_long haddr, const u_long whost = 0) ( if (h->xsum) SetConsoleTextColor(0x17); // ak balík nie je prázdny inak SetConsoleTextColor(0x07 ); // prázdny balík if (haddr == h->src) ( SetConsoleTextColor(BACKGROUND_BLUE | /*BACKGROUND_INTENSITY |*/ FOREGROUND_RED | FOREGROUND_INTENSITY); // "native" vrátiť balík ) else if (haddr == h->dest ) ( SetConsoleTextColor(BACKGROUND_BLUE | /*BACKGROUND_INTENSITY |*/ FOREGROUND_GREEN | FOREGROUND_INTENSITY); // "natívne" prijímanie paketu ) if (h->protocol == PROT_ICMP || h->protocol == PROT_IGMP) (Nastaviť Console // ICMP paket ) else if(h->protokol == PROT_IP || h->protokol == 115) ( SetConsoleTextColor(0x4F); // paket IP-in-IP, L2TP ) else if(h- >protokol = = 53 || h->protokol == 56) ( SetConsoleTextColor(0x4C); // TLS, IP so šifrovaním ) if(whost == h->dest || whost == h->src) ( SetConsoleTextColor (0x0A) ;))

To však podstatne presahuje rámec tohto článku. Pre náš tréningový príklad bude úplne stačiť pozrieť sa na IP adresy hostiteľov, z ktorých a na ktoré ide prevádzka, a vypočítať jej množstvo za jednotku času (hotový program je v archíve na konci článok).

Na zobrazenie údajov hlavičky IP musí byť implementovaná funkcia na konverziu hlavičky (ale nie údajov) datagramu na reťazec. Ako príklad implementácie môžeme ponúknuť nasledujúcu možnosť:

Konverzia hlavičky IP na reťazec
inline char* iph2str(IPHeader *iph) ( const int BUF_SIZE = 1024; char *r = (char*)malloc(BUF_SIZE); memset((void*)r, 0, BUF_SIZE); sprintf(r, "ver=% d hlen=%d tos=%d dĺžka=%d id=%d príznakov=0x%X offset=%d ttl=%dms prot=%d crc=0x%X src=%s dest=%s", BYTE_H (iph->ver_len), BYTE_L(iph->ver_len)*4, iph->tos, ntohs (iph->length), ntohs (iph->id), IP_FLAGS(ntohs(iph->flgs_offset)), IP_OFFSET (ntohs(iph->flgs_offset)), iph->ttl, iph->protocol, ntohs(iph->xsum), nethost2str(iph->src), nethost2str(iph->dest)); return r; )
Na základe vyššie uvedených základných informácií dostaneme taký malý program (strašný názov ss, skratka z anglického simple sniffer), ktorý implementuje lokálne odpočúvanie IP prevádzky. Jeho rozhranie je znázornené nižšie na obrázku.

Zdrojový a binárny kód poskytujem tak, ako je, ako pred niekoľkými rokmi. Teraz sa na to bojím pozerať, no je to celkom čitateľné (samozrejme, človek nemôže byť taký sebavedomý). Na kompiláciu postačí aj Visual Studio Express 2005.

S čím sme skončili:

  • Sniffer beží v užívateľskom režime, ale vyžaduje administrátorské práva.
  • Pakety nie sú filtrované, zobrazujú sa tak, ako sú (možno pridať vlastné filtre - v prípade záujmu navrhujem, aby sme sa tejto téme podrobne venovali v ďalšom článku).
  • Zachytáva sa aj WiFi prevádzka (všetko závisí od konkrétneho modelu čipu, nemusí vám to fungovať, ako mne pred niekoľkými rokmi), aj keď existuje AirPcap, ktorý to dokáže úžasne, ale stojí peniaze.
  • Celý tok datagramov sa zaznamenáva do súboru (pozri archív priložený na konci článku).
  • Program funguje ako server na porte 2000. Pomocou nástroja telnet sa môžete pripojiť k hostiteľovi a monitorovať toky prevádzky. Počet spojení je obmedzený na dvadsať (kód nie je môj, našiel som ho na internete a použil som ho na experimenty; nezmazal som ho - škoda)
Ďakujem za pozornosť, blahoželám Chabrovitom a Chabrovitom a všetkým všetkým k nastávajúcim Vianociam!

Sniffer nie je vždy zlomyseľný. V skutočnosti sa tento typ softvéru často používa na analýzu sieťovej prevádzky s cieľom odhaliť a opraviť anomálie a zabezpečiť nepretržitú prevádzku. Sniffer však môže byť použitý so zlým úmyslom. Sniffery analyzujú všetko, čo cez ne prechádza, vrátane nešifrovaných hesiel a poverení, takže hackeri s prístupom k snifferom môžu získať osobné informácie používateľov. Sniffer je navyše možné nainštalovať na akýkoľvek počítač pripojený k lokálnej sieti, bez nutnosti inštalácie na samotné zariadenie – inými slovami, nedá sa zistiť počas celej doby pripojenia.

Odkiaľ pochádzajú sniffery?

Hackeri používajú sniffery na ukradnutie cenných údajov monitorovaním sieťovej aktivity a zhromažďovaním osobných informácií o používateľoch. Útočníkov spravidla najviac zaujímajú používateľské heslá a prihlasovacie údaje, aby pomocou nich získali prístup k účtom online bankovníctva a online nakupovania. Hackeri najčastejšie inštalujú sniffery na miesta, kde sú distribuované nezabezpečené Wi-Fi pripojenia, napríklad v kaviarňach, hoteloch a na letiskách. Snifferi sa môžu maskovať ako zariadenie pripojené k sieti v rámci takzvaného spoofingového útoku s cieľom ukradnúť cenné dáta.

Ako rozpoznať čuchača?

Neautorizované sniffery je veľmi ťažké virtuálne rozpoznať, pretože ich možno nainštalovať takmer kdekoľvek, čo predstavuje veľmi vážnu hrozbu pre bezpečnosť siete. Bežní používatelia často nemajú šancu rozpoznať, že sniffer monitoruje ich sieťovú prevádzku. Teoreticky je možné nainštalovať vlastný sniffer, ktorý sníma všetku komunikáciu DNS pre iné sniffery, ale pre bežného používateľa je oveľa jednoduchšie nainštalovať antisniffovací softvér alebo antivírusové riešenie, ktoré zahŕňa ochranu sieťovej aktivity na zastavenie akéhokoľvek neoprávneného prieniku resp. skryť svoje sieťové aktivity.

Ako odstrániť sniffer

Môžete použiť vysoko účinný antivírus na detekciu a odstránenie všetkých typov malvéru nainštalovaného vo vašom počítači na sniffovanie. Ak však chcete úplne odstrániť sniffer z počítača, musíte odstrániť absolútne všetky priečinky a súbory, ktoré s ním súvisia. Dôrazne sa odporúča použiť aj antivírus so sieťovým skenerom, ktorý dôkladne skontroluje zraniteľnosť lokálnej siete a v prípade zistenia dá pokyn na ďalší postup.

Ako sa nestať obeťou čuchača
  • Zašifrujte všetky informácie, ktoré odosielate a prijímate
  • Skontrolujte zraniteľnosť vašej lokálnej siete
  • Používajte iba dôveryhodné a zabezpečené siete Wi-Fi
Chráňte sa pred sniffermi

Prvá vec, ktorú môže používateľ urobiť, aby sa ochránil pred sniffermi, je použitie kvalitného antivírusu, ako je bezplatný antivírus Avast, ktorý dokáže dôkladne preskenovať celú sieť, či neobsahuje bezpečnostné problémy. Ďalším a vysoko efektívnym spôsobom ochrany informácií pred sniffovaním je šifrovanie všetkých údajov odoslaných a prijatých online vrátane e-mailov. pošty. Avast SecureLine vám umožňuje bezpečne šifrovať všetku výmenu údajov a vykonávať online akcie v podmienkach 100% anonymity.