Ablakok.  Vírusok.  Jegyzetfüzetek.  Internet.  hivatal.  Segédprogramok.  Drivers


Ez a lecke az elfogáson alapuló hálózati hackelési technológiákat írja le hálózati csomagok. A hackerek ilyen technológiákat használnak a hálózati forgalom szippantására, hogy értékes információkat lopjanak el, adatokat lefoglaljanak egy ember a közepén támadás céljából, hogy elfogják a TCP-kapcsolatokat, lehetővé téve például az adatok meghamisítását, és más, hasonlóan érdekes műveleteket hajtsanak végre. . Sajnos a legtöbb ilyen támadás a gyakorlatban csak Unix hálózatokon valósul meg, amelyekhez a hackerek mindkettőt használhatják speciális közművek, és Unix rendszereszközök. Úgy tűnik, hogy a Windows hálózatokat megkerülik a hackerek, és kénytelenek vagyunk az adatelfogó eszközök leírását a hálózati csomagok triviális szippantására tervezett programokra korlátozni. Mindazonáltal nem szabad figyelmen kívül hagyni az ilyen támadások legalább elméleti leírását, különösen a hacker-elhárítók esetében, mivel az alkalmazott hackelési technológiák ismerete sok bajt megelőz.

Hálózati szippantás

Az Ethernet hálózat szippantása általában figyelési módba állított hálózati kártyákat használ. Az Ethernet hálózat hallgatásához egy szippantó programot futtató számítógépet csatlakoztatni kell egy hálózati szegmenshez, ami után az ebben a hálózati szegmensben lévő számítógépek által küldött és fogadott összes hálózati forgalom elérhetővé válik a hacker számára. A rádiós hálózatok forgalmát még egyszerűbb lehallgatni vezeték nélküli hálózati közvetítők segítségével – ebben az esetben nem is kell keresni a kábel csatlakozási helyét. Vagy a támadó csatlakozhat a számítógépet az internetkiszolgálóhoz összekötő telefonvonalhoz, és ehhez megfelelő helyet találhat (a telefonvonalakat általában pincékben és más, nem védett helyeken helyezik el).

A szippantás technológiájának bemutatására egy nagyon népszerű szippantó programot fogunk használni SpyNet amely számos weboldalon megtalálható. A program hivatalos honlapja SpyNet található http://members.xoom.com/layrentiu2/, ahol letöltheti a program demó verzióját.

Program SpyNet két összetevőből áll - CaptureNetÉs PipeNet. Program CaptureNet lehetővé teszi az Ethernet hálózaton átvitt csomagok hálózati szintű elfogását, pl. mint Ethernet keretek. Program PipeNet lehetővé teszi az Ethernet-keretek alkalmazási rétegbeli csomagokba gyűjtését, például az üzenetek helyreállítását Email, HTTP protokoll üzeneteket (információcsere webszerverrel), és egyéb funkciókat is ellát.

Sajnos a demó SpyNet lehetőségeket PipeNet a HTTP csomag összeállítási demójára korlátozódnak, így nem tudjuk bemutatni a munkát SpyNet teljesen. Azonban bemutatjuk a hálózati szippantás lehetőségeit SpyNet kísérleti hálózatunk példáján átadás szöveges fájl a házigazdától Kard-2000 gazdánként Alex-Z a szokásos használatával Windows Intéző. Egyidejűleg a számítógépen A1ex-1 futtatjuk a programot CaptureNet, amely elfogja a továbbított csomagokat, és lehetővé teszi a továbbított fájl tartalmának Ethernet keretekben történő olvasását. ábrán Az 1 a titkos üzenet szövegét mutatja a fájlban titkos.txt; megpróbáljuk megtalálni ezt a szöveget az elfogott Ethernet-keretekben.

Rizs. 1. A titkos üzenet szövege a Jegyzettömb ablakában

Kövesse ezeket a lépéseket az Ethernet keretek rögzítéséhez.

A számítógépen Alex-Z futtassa a programot CaptureNet. A program megjelenített munkaablakában válassza ki a menüparancsot Capture *Start(Capture * Start) és indítsa el a hálózati keretek rögzítésének folyamatát.

Használja a Windows Intézőt a security.txt fájl másolásához a számítógépről Kard-2000 tovább A1ex-3.

A secret.txt fájl átvitele után válassza ki a menüparancsot Capture*Stop(Rögzítés * Leállítás), és állítsa le a rögzítési folyamatot.

A rögzített Ethernet keretek a programablak jobb oldalán jelennek meg CaptureNet(2. ábra), ahol a felső lista minden sora egy Ethernet-keretet jelent, a lista alatt pedig a kiválasztott keret tartalmát.

Rizs. 2. Az Ethernet keret tartalmazza a titkos üzenet szövegét

Az elfogott képkockák listáját átnézve könnyen megtaláljuk azt, amelyik az általunk továbbított szöveget tartalmazza. Ez egy nagyon nagy titok (Ez egy nagyon nagy titok).

Hangsúlyozzuk, hogy ez a legegyszerűbb példa, amikor az összes elfogott hálózati forgalmat rögzítették. Program CaptureNet Lehetővé teszi bizonyos protokollokon és a gazdagépek bizonyos portjaira küldött csomagok elfogását, bizonyos tartalmú üzenetek kiválasztását, és a rögzített adatok fájlba gyűjtését. Az ilyen műveletek végrehajtásának technikája egyszerű, és a program súgórendszerével elsajátítható. SpyNet.

A primitív hálózati figyelés mellett a hackerek számára kifinomultabb eszközök állnak rendelkezésre az adatok elfogására. Az alábbiakban azonban rövid áttekintést adunk ezekről a módszerekről, elméleti vonatkozásban. Ennek az az oka, hogy a Windows hálózatok esetében az adatlehallgatási támadások gyakorlati megvalósítása rendkívül korlátozott, a lehallgatási támadások megbízható eszközkészlete pedig meglehetősen szegényes.

A hálózati forgalom elfogásának módszerei

Hálózat hallgatása a fentihez hasonló hálózati elemző programokkal CaptureNet, az első, a legtöbb egyszerű módon adatlehallgatás. Kivéve SpyNet A hálózati szippantáshoz nagyon sok olyan eszközt használnak, amelyeket eredetileg a hálózati tevékenység elemzésére, a hálózatok diagnosztizálására, a forgalom meghatározott szempontok szerinti kiválasztására és egyéb hálózati adminisztrációs feladatokra fejlesztettek ki. Ilyen program például az tcpdump (http://www.tcpdump.org), amely lehetővé teszi a hálózati forgalom rögzítését egy speciális naplóba későbbi elemzés céljából.

A hálózati lehallgatás elleni védelem érdekében alkalmazza speciális programok, Például, AntiSniff (http://www.securitysoftwaretech.com/antisniff), amelyek képesek észlelni a hálózaton lévő számítógépeket, amelyek figyelik a hálózati forgalmat. Problémáik megoldása érdekében a szippantásgátló programok speciális jelet használnak a lehallgató eszközök hálózaton való jelenlétére - a szippantó számítógép hálózati kártyájának speciális hallgatási módban kell lennie. Hallgatás üzemmódban hálózati számítógépek speciális módon válaszol a tesztelt gazdagép címére küldött IP-datagramokra. Például a figyelő gazdagépek általában az összes bejövő forgalmat feldolgozzák, nem csak a gazdagép címére küldött datagramokat. Vannak más jelek is, amelyek gyanús host-viselkedésre utalnak, amelyet a program képes felismerni. AntiSniff.

Kétségtelen, hogy a hallgatás nagyon hasznos a támadó szempontjából, mivel segítségével sok hasznos információhoz juthat - a hálózaton keresztül továbbított jelszavak, hálózati számítógépek címei, bizalmas adatok, levelek stb. Az egyszerű lehallgatás azonban megakadályozza, hogy a hacker megzavarja a két gazdagép közötti hálózati kommunikációt, hogy módosítsa és megrongálja az adatokat. A probléma megoldásához kifinomultabb technológiára van szükség.

Hamis ARP kérések

A két A és B gazdagép közötti hálózati kommunikációs folyamat lehallgatása és áthaladása érdekében a támadó lecserélheti az interakcióban lévő gazdagépek IP-címét saját IP-címére úgy, hogy hamis ARP (Address Resolution Protocol) üzeneteket küld az A és B gazdagépnek. . Az ARP-protokoll a D függelékben található, amely leírja, hogyan lehet egy gazdagép IP-címét gépcímmé (MAC-címmé) feloldani (fordítani) a gazdagép hálózati kártyájába vezetékesen. Nézzük meg, hogyan használhatja a hacker az ARP protokollt az A és B gazdagép közötti hálózati kommunikáció elfogására.

Az A és B hosztok közötti hálózati forgalom elfogásához a hacker rákényszeríti az IP-címét ezekre a gazdagépekre, így A és B ezt a hamis IP-címet használja üzenetváltáskor. Az IP-címük megadásához a hacker a következő műveleteket hajtja végre.

A támadó például a parancs segítségével meghatározza az A és B gazdagép MAC-címét nbtstat a csomagból W2RK.

A támadó üzeneteket küld az A és B gazdagép azonosított MAC-címére, amelyek hamisított ARP-válaszok a gazdagépek IP-címének a számítógépek MAC-címére történő feloldására irányuló kérésekre. Az A gazdagépnek azt mondják, hogy a B gazdagép IP-címe megegyezik a támadó számítógépének MAC-címével; A B hoszt megkapja, hogy az A gazdagép IP-címe megegyezik a támadó számítógépének MAC-címével.

Az A és B gazdagép beírja a kapott MAC-címeket az ARP-gyorsítótárukba, majd azokkal üzeneteket küldenek egymásnak. Mivel az A és B IP-címek a támadó számítógépének MAC-címének felelnek meg, az A és B gazdagépek, semmit sem tudva, egy közvetítőn keresztül kommunikálnak, amely képes bármit megtenni az üzeneteikkel.

Az ilyen támadások elleni védelem érdekében a hálózati rendszergazdáknak egy adatbázist kell fenntartaniuk a hálózati számítógépeik MAC-címei és IP-címei közötti leképezési táblázattal. Továbbá speciális szoftver segítségével, például a segédprogram segítségével arpwatch (ftp://ftp.ee.lbl.gov/arpwatch-2.lab.tar.gz) időszakonként ellenőrizheti a hálózatot, és azonosíthatja az inkonzisztenciákat.

UNIX hálózatokon ez a fajta ARP-hamisítási támadás megvalósítható a hálózati forgalom figyelésére és kezelésére szolgáló rendszersegédprogramokkal, például, arpredirect. Sajnos be Windows hálózatok 2000/XP, úgy tűnik, ilyen megbízható segédprogramok nincsenek megvalósítva. Például az NTsecurity webhelyén ( http://www.ntsecurity.nu) letöltheti a segédprogramot Grabit AI a forgalom hálózati gazdagépek közötti átirányításának eszközeként jelenik meg. Azonban a segédprogram teljesítményének elemi ellenőrzése Grabit AI azt mutatja, hogy funkcióinak teljes sikere még messze van.

Hamis útválasztás

A hálózati forgalom elfogásához a támadó lecserélheti a hálózati útválasztó valós IP-címét a saját IP-címére, például hamisított ICMP átirányítási üzenetekkel. Az RFC-1122 szerint az A gazdagépnek a kapott átirányítási üzenetet egy másik gazdagépnek küldött datagramra adott válaszként kell értelmeznie, például B. A gazdagép a kapott átirányítási üzenet tartalma alapján határozza meg az átirányítási üzenettel kapcsolatos műveleteit, és Ha az átirányítás úgy van beállítva, hogy a datagramokat A-ból B-be irányítsa át egy új útvonalon, akkor az A gazdagép pontosan ezt fogja tenni.

A hamis útválasztás végrehajtásához a támadónak ismernie kell néhány részletet a szervezetről helyi hálózat, ahol az A gazdagép található, különösen annak az útválasztónak az IP-címe, amelyen keresztül a forgalmat A gazdagéptől B-be továbbítják. Ennek ismeretében a támadó egy IP-datagramot hoz létre, amelyben a forrás IP-címe a gép IP-címeként van meghatározva. a router, a címzett pedig az A gazdagép. A datagramban egy ICMP átirányítási üzenet is található, amelyben az új útválasztó címmezője a támadó számítógépének IP-címe. Miután megkapta az ilyen üzenetet, az A gazdagép minden üzenetet a támadó számítógépének IP-címére küld.

Az ilyen támadások elleni védelem érdekében le kell tiltani (például tűzfal használatával) az A gazdagépen az ICMP átirányítási üzenetek feldolgozását, és a parancsot nyomkövető(Unixon ez a tracerout parancs). Ezek a segédprogramok képesek találni egy további útvonalat, amely a helyi hálózaton megjelent, és nem biztosított a telepítés során, ha természetesen a hálózati rendszergazda éber.

A fenti lehallgatási példák (amelyek korántsem korlátozódnak a támadókra) meggyőzik a hálózaton keresztül továbbított adatok védelmének szükségességét, ha az adatok bizalmas információkat tartalmaznak. A hálózati forgalom lehallgatása elleni védekezés egyetlen módja olyan programok használata, amelyek kriptográfiai algoritmusokat és titkosítási protokollokat valósítanak meg, és megakadályozzák a titkos információk felfedését és helyettesítését. Az ilyen problémák megoldására a kriptográfia lehetőséget biztosít a biztonságos protokollokon keresztül továbbított üzenetek titkosítására, aláírására és hitelesítésére.

A 4. fejezetben leírt információcsere-védelem valamennyi kriptográfiai módszerének gyakorlati megvalósítását biztosítja VPN hálózatok(Virtuális magánhálózat – Virtuális magánhálózatok). Rövid áttekintés A kriptográfiai védelem alapelvei és módszerei megtalálhatók az E. függelékben, és a Részletes leírás az alkalmazás által biztosított kriptográfiai védelem PGP Desktop Security (http://www.pgp.com).

TCP kapcsolat elfogása

A legkifinomultabb hálózati forgalom-elfogó támadásnak a TCP-kapcsolat-eltérítést (TCP-hijacking) kell tekinteni, amikor a hacker a TCP-csomagok generálásával és a megtámadott gazdagépnek való elküldésével megszakítja az aktuális kommunikációs munkamenetet a gazdagéppel. Továbbá, a TCP-protokoll képességeit felhasználva a megszakadt TCP-kapcsolat helyreállítására, a hacker elfogja a megszakadt kommunikációs munkamenetet, és folytatja azt a megszakadt kliens helyett.

Számos hatékony segédprogram készült a TCP-eltérítő támadások végrehajtására, de ezek mindegyike Unix platformra való, és ezek a segédprogramok csak forráskód formájában érhetők el a webhelyeken. Így nekünk, mint a hackelés nemes ügyének meggyőződéses gyakorlóinak, kevés hasznunk van a TCP-kapcsolatok elfogásával indított támadásoknak. (Azok a rajongók, akik megértik valaki más programkódját, felkereshetik a webhelyet http://www.cri.cz/~kra/index.html ahonnan letöltheti forrás jól ismert TCP kapcsolatelfogó segédprogram Vadászatírta Pavel Krauz.

A gyakorlati eszközök hiánya ellenére sem hagyhatjuk figyelmen kívül ezeket érdekes téma, mint a TCP-kapcsolatok elfogása, és foglalkozzon az ilyen támadások néhány aspektusával. A TCP-csomagok szerkezetéről és a TCP-kapcsolatok létrehozásáról a könyv D. függelékében található néhány információ, de itt arra a kérdésre fogunk összpontosítani, hogy pontosan mi teszi lehetővé a hackerek számára a TCP-kapcsolat-elfogási támadások végrehajtását? Vizsgáljuk meg ezt a témát részletesebben, elsősorban a és a vita alapján.

A TCP (Transmission Control Protocol) az egyik alapvető szállítási protokoll. OSI réteg, amely lehetővé teszi a logikai kapcsolatok létrehozását egy virtuális kommunikációs csatornán keresztül. Ezen a csatornán történik a csomagok továbbítása és vétele sorrendjük regisztrálásával, a csomagfolyam vezérlése, a torz csomagok újraküldésének megszervezése, és a munkamenet végén a kommunikációs csatorna megszakad. A TCP protokoll az egyetlen olyan alapvető protokoll a TCP/IP családban, amely fejlett üzenet- és kapcsolatazonosító rendszerrel rendelkezik.

A TCP-csomag azonosításához a TCP-fejlécben két 32 bites azonosító található, amelyek egyben a csomagszámláló szerepét is betöltik, sorozatszámnak és nyugtázási számnak nevezik. Érdeklődni fogunk a TCP-csomag másik mezője, az úgynevezett vezérlőbitek iránt is. Ez a 6 bites mező a következő vezérlőbiteket tartalmazza (balról jobbra haladva):

URG - sürgős zászló;

ACK - megerősítő zászló;

PSH - hordozási zászló;

RST - kapcsolat visszaállítás jelzője;

SYN - szinkronizálási jelző;

FIN - kapcsolatlezáró jelző.

Fontolja meg a TCP-kapcsolat létrehozásának eljárását.

1. Ha az A gazdagépnek TCP-kapcsolatot kell létrehoznia a B gazdagéppel, akkor az A gazdagép a következő üzenetet küldi a B gazdagépnek:

A -> B: SYN, ISSA

Ez azt jelenti, hogy az A gazdagép által küldött üzenetben be van állítva a SYN (sorszám szinkronizálása) jelző, és a sorszám mező a kezdeti 32 bites ISSa (kezdeti sorozatszám) értékre van állítva.

2. Az A gazdagéptől kapott kérésre válaszul a B gazdagép egy üzenettel válaszol a SYN bit beállítva és az ACK bit beállítása. A sorszám mezőben a B gazdagép beállítja a kezdeti számlálóértékét, az ISSb-t; a nyugtázási szám mező ezután az A gazdagéptől az első csomagban kapott ISSa értéket fogja tartalmazni plusz egy. Tehát a B gazdagép ezzel az üzenettel válaszol:

B -> A: SYN, ACK, ISSb, ACK (ISSa+1)

3. Végül az A gazdagép üzenetet küld a B hosztnak, amelyben: bit be van állítva ASC; a sorszám mező értéket tartalmaz ISS + 1; a nyugtázási szám mező tartalmazza az értéket ISSb+1. Ezt követően TCP kapcsolat a gazdagépek között AÉs BAN BEN megalapozottnak tekinthető:

A -> B: ACK, ISSA+1, ACK(ISSb+1)

4. Most a gazda A adatcsomagokat küldhet a gazdagépnek BAN BEN az újonnan létrehozott TCP virtuális csatornán keresztül:

A -> B: ACK, ISSA+1, ACK(ISSb+1); ADAT

Itt ADAT az adatokat jelenti.

A fent tárgyalt TCP-kapcsolat létrehozásának algoritmusából látható, hogy a TCP-előfizetők és a TCP-kapcsolat egyetlen azonosítója egy sorszám és egy nyugtázási szám két 32 bites paramétere. ISSaÉs ISSb. Ezért, ha a hackernek sikerül kiderítenie a mezők aktuális értékeit ISSaÉs ISSb, akkor semmi sem akadályozza meg abban, hogy hamisított TCP-csomagot hozzon létre. Ez azt jelenti, hogy egy hackernek elegendő felvennie a paraméterek aktuális értékeit ISSaÉs ISSb TCP-csomag ehhez a TCP-kapcsolathoz, küldjön egy csomagot bármely internetes gazdagépről a TCP-kapcsolat kliense nevében, és Jelenlegi csomag igaznak fogadják el!

Az ilyen TCP csomaghamisítás veszélye azért is fontos, mert a magas szintű FTP és TELNET protokollok a TCP protokoll alapján valósulnak meg, az FTP kliensek és TELNET csomagok azonosítása pedig teljes mértékben a TCP protokollon alapul.

Továbbá, mivel az FTP és a TELNET protokollok nem ellenőrzik az üzenetküldők IP-címét, a hamisított csomag fogadásakor az FTP vagy TELNET szerverek válaszüzenetet küldenek a meghamisított csomagban megadott hacker gazdagép IP-címére. Ezt követően a hacker gazdagép az FTP vagy TELNET szerverrel az IP-címéről, de a legálisan csatlakozó felhasználó jogaival kezdi meg a munkát, aki viszont a számláló eltérése miatt megszakítja a kapcsolatot a szerverrel.

Így a fent leírt támadás végrehajtásához szükséges és elégséges feltétel a két jelenlegi 32 bites paraméter ismerete ISSaÉs ISSb, amely azonosítja a TCP-kapcsolatot. Fontolgat lehetséges módjai fogadni őket. Abban az esetben, ha a hacker gazdagép csatlakozik a támadott hálózati szegmenshez, akkor az értékek lekérése a feladata ISSaÉs ISSb triviális, és a hálózati forgalom elemzésével oldható meg. Ezért világosan meg kell érteni, hogy a TCP-protokoll elvileg csak akkor teszi lehetővé a kapcsolat védelmét, ha a támadó nem tudja elfogni a hálózaton továbbított üzeneteket. ezt a kapcsolatot, azaz csak akkor, ha a hacker gazdagép a TCP-kapcsolat előfizetői szegmensétől eltérő hálózati szegmenshez csatlakozik.

Ezért a szegmensek közötti támadások akkor érdekelnek leginkább egy hackert, ha a támadó és célpontja különböző hálózati szegmensekben található. Ebben az esetben az értékek megszerzésének feladata ISSaÉs ISSb nem triviális. A probléma megoldására eddig mindössze két módszert találtak ki.

A TCP kapcsolati paraméterek kezdeti értékének matematikai előrejelzése az előző értékek extrapolálásával ISSaÉs ISSb.

Sebezhetőségek kihasználása a TCP kapcsolat előfizetőinek azonosítása során Unix rsh szervereken.

Az első feladatot a TCP-protokoll különféle operációs rendszerekben történő megvalósításának mélyreható tanulmányozása oldja meg, és most már pusztán elméleti értékkel bír. A második problémát a Unix rendszer biztonsági rései segítségével oldják meg a megbízható gazdagépek azonosítására. (Megbízható a házigazdával kapcsolatban A hálózati gazdagépnek hívják BAN BEN, amelynek felhasználója csatlakozhat a gazdagéphez A hoszt r-szolgáltatással történő hitelesítés nélkül A). A TCP-csomagok paramétereinek manipulálásával a hacker megpróbálhat megszemélyesíteni egy megbízható gazdagépet, és elfoghatja a TCP-kapcsolatot a megtámadott gazdagéppel.

Mindez nagyon érdekes, de az ilyen jellegű kutatások gyakorlati eredményei még nem láthatók. Ezért azt tanácsoljuk mindenkinek, aki elmélyülni szeretne ebben a témában, hogy hivatkozzon a könyvre, ahonnan általában a fenti információk származnak.

Következtetés

A hálózati lehallgatás a leghatékonyabb hálózati hackelési technika, amely lehetővé teszi a hacker számára, hogy gyakorlatilag minden, a hálózaton keringő információt megszerezzen. A szippantó eszközök kapták a legnagyobb gyakorlati fejlődést, i.e. hálózatok hallgatása; azonban nem lehet figyelmen kívül hagyni azokat a hálózati lehallgatási technikákat, amelyeket a hálózat normál működésének megzavarásával hajtanak végre annak érdekében, hogy a forgalmat egy hacker gazdagépre irányítsák át, különösen a TCP-kapcsolat lehallgatási technikákat. A gyakorlatban azonban az utoljára említett módszerek még nem értek el kellő fejlesztést és fejlesztésre szorulnak.

A hacker-elhárítónak tudnia kell, hogy az adatok lehallgatását csak titkosítással lehet megakadályozni, pl. kriptográfiai védelmi módszerek. A hálózaton keresztüli üzenetküldésnél előre feltételezni kell, hogy a hálózat kábelrendszere abszolút sérülékeny, és a hálózathoz csatlakozó hacker minden onnan továbbított titkos üzenetet elkaphat. Két technológia létezik a probléma megoldására - VPN-hálózat létrehozása és maguknak az üzeneteknek a titkosítása. Mindezek a feladatok nagyon egyszerűen megoldhatók a szoftvercsomag segítségével. PGP Desktop Security(leírása megtalálható pl. in).

Ennek az anyagnak a megírásának ötlete – ahogy az a legtöbb esetben meg is történt – az olvasók és más ismerősök kérdéseinek köszönhetően született meg a hálózati forgalom lehallgatására és elemzésére szolgáló technológiákkal kapcsolatban. Ezeket a kérdéseket feltételesen 3 kategóriába soroljuk: elvileg lehetséges-e a hálózaton mozgó adatok elfogása és dekódolása, hogyan és milyen szoftverrel. A kérdések harmadik csoportja némi zavart tükröz a terminológiában, különösen a következő lehetőségek lehetségesek: egy személy ismeri a technológia lényegét, de nem tudja, mi a neve. Ezért, ha mondjuk egy szippantóról van szó, ő lenézve azt válaszolja, hogy nem tudja, mi az. Nem lenne itt az ideje, hogy az i-t pontozzuk ebben a rendkívül fontos kérdésben kezdők és haladók számára egyaránt? Kezdjük el...

elmélet

Kezdjük egy kis terminológiával.

A sniffer szó (szó szerint fordítható: "sniffer" vagy "sniffer") a legáltalánosabb értelemben egyfajta lehallgató eszköz, amely a hálózatba van beépítve a rajta keresztül továbbított adatok lehallgatására. Szűkebb értelemben a szippantó olyan szoftver, amely interakcióba lép a következővel (a gyakran mondott „ülj le” a Network Associates bejegyzett védjegye, ami a „Sniffer (r) Network Analyzer” termékre utal, de később a szó is ugyanerre a sorsra jutott. mint a PC , xerox, kleenex - a szippantó egyre inkább háztartási fogalommá válik, amely a hasonló termékek teljes osztályát jelöli.

Egyes irodalomban és dokumentációban, valamint az elektronikus szótárakban, mint például a Lingvo, a szippantó (hálózati szippantó) kifejezést olyan fogalmakkal azonosítják, mint a "hálózati forgalomelemző", "csomagelemző", "protokollelemző", "hálózatelemző". Ezzel a megközelítéssel azonban egy kicsit nem értek egyet.

Mégis logikusabb lenne azt mondani, hogy a szippantás a forgalom elfogására szolgáló intézkedések összessége. Egy adott termék keretein belül a következő dolgokat lehet megvalósítani: csomagrögzítés. Ebben a szakaszban egyfajta nyers (géppel olvasható) adatkiíratást kapunk, amelyet általában a keret (csomag) határai mentén darabokra osztanak. És hogy mit kezdünk vele, az a mi problémánk. De általában, mivel valamilyen oknál fogva elindítottuk a szippantót, arra vagyunk kíváncsiak, hogy ember által olvasható formátumban kapjunk eredményt, amelyhez csomagdekódolást vagy protokollelemzést használnak;

Valójában ez a szemétdombunk "gereblyézésének" folyamata. Nálunk például volt ilyen alapanyag.

Amint láthatja, ez a fájl három oszlopból áll: az egyes sorok eltolásából, az adatokból hexadecimális formátumban és az ASCII megfelelőjükből. Ez a csomag tartalmaz egy 14 bájtos Ethernet-fejlécet, egy 20-bájtos IP-fejlécet, egy 20-bájtos TCP-fejlécet, egy HTTP-fejlécet, amely két egymást követő CRLF-re végződik (0D 0A 0D 0A), majd esetünkben a tényleges alkalmazási réteg adatait. , a webforgalom.

Néha egy ilyen ábrázolás elegendő a szükséges információ megszerzéséhez, de még mindig kényelmesebb a csomag dekódolása és elemzése a protokollverem minden szintjén. Végül is valóban kellemesebb egy ilyen kép?

ETHER: Cél cím: 0000BA5EBA11 ETHER: Forrás címe: 00A0C9B05EBD ETHER: Keret hossza: 1514 (0x05EA) ETHER: Ethernet Típus: 0x0800 (IP) IP: Verzió = 4 (0x4) IP: Fejléc 0 IPx4 = Szolgáltatás Típus = 0 (0x0) IP: Precedencia = Rutin IP:...0.... = Normál késleltetés IP:....0... = Normál átviteli IP:.....0.. = Normál megbízhatóság IP: Teljes hossz = 1500 (0x5DC) IP: Azonosítás = 7652 (0x1DE4) IP: Flags Summary = 2 (0x2) IP:.......0 = Utolsó töredék a datagramban IP:......1 . = A datagram nem töredezhető fel IP: Töredékeltolás = 0 (0x0) bájt IP: Élőidő = 127 (0x7F) IP: Protokoll = TCP - Átviteli vezérlés IP: Ellenőrző összeg = 0xC26D IP: Forrás címe = 10.0.0.2 IP: Cél cím = 10.0.1.201 TCP: forrásport = hiperszöveg átviteli protokoll TCP: célport = 0x0775 TCP: sorszám = 97517760 (0x5D000C0) TCP: nyugtázási szám = 78544373 ed = 0 ( 0x0000) TCP: Flags = 0x10:.A.... TCP:..0..... = Nincsenek sürgős adatok TCP:...1.... = Nyugtázási mező jelentős TCP:...0. .. = Nincs Push funkció TCP:.....0.. = Nincs TCP visszaállítása:......0. = Nincs TCP szinkronizálás:.......0 = Nincs Fin TCP: Ablak = 28793 (0x7079) TCP: Ellenőrző összeg = 0x8F27 TCP: Sürgős mutató = 0 (0x0) HTTP: Válasz (az 1909-es portot használó ügyfélnek) HTTP: Protokoll verzió = HTTP/1.1 HTTP: Állapotkód = OK HTTP: Ok = OK ....

A fentieken kívül további "szolgáltatások" is megvalósíthatók, mint például a futó csomagok valós idejű megtekintése, adott forgatókönyv szerinti szűrés, különféle típusú forgalmi statisztikák - a hibák száma, intenzitása stb.

A szippantó típusai és a szippantás

Mindennek, amit ebben a bekezdésben leírunk, természetesen van némi konvencionális árnyalat, mivel még senki sem írta le teljesen a hivatalos "Szaglás elméletét". Ki kell találnunk egy besorolást "menet közben";)

Tehát a "hely" szerint (ha ez a kifejezés itt alkalmazható) a szippantó működhet:

A routeren (átjárón)

Ebben a forgatókönyvben elfoghatja az átjáró felületein áthaladó forgalmat. Például a helyi hálózatról egy másik hálózatra és fordítva. Ennek megfelelően, ha egy internetszolgáltató routerére szippantót telepítünk, akkor nyomon tudjuk követni a felhasználói forgalmát, és így tovább...

A hálózat végpontján

Az Ethernettel kapcsolatban két fő lehetőségünk lesz a lehallgatásra. A klasszikus, kapcsolatlan Ethernet feltételezi, hogy minden hálózati interfész elvileg "hallja" szegmensének teljes forgalmát. A hálózati kártya normál működése során azonban a keretfejléc első 48 bitjének beolvasása után az állomás összehasonlítja a MAC-címét a keretben megadott célcímmel. Ha valaki másé a cím, akkor az állomás „szégyenletesen becsukja a fülét”, vagyis abbahagyja valaki más keretének olvasását. Így normál módban csak a saját forgalmát tudja elfogni és elemezni. A szegmens összes állomásának csomagjainak elfogásához le kell fordítania a saját hálózati kártya egy promiszkuális módnak nevezett módba, hogy "szégyentelenül" továbbra is olvassa azokat a csomagokat, amelyeket nem neki szántak. Szinte minden sniffer-megvalósítás lehetővé teszi, hogy a kártya promiszkuális módba váltson.

Megjegyzés: a kapcsolt Ethernet használata olyan helyzetet teremt, amikor még a kártya promiszkuális módba állítása is szinte lehetetlenné teszi a nem az Ön állomásának szánt forgalom hallgatását. Létezik azonban egy technológia az ilyen hallgatás megszervezésére az úgynevezett ARP hamisításon keresztül. A lényeg a lényeg: a kapcsoló létrehoz egy úgynevezett "broadcast tartományt", és a telepített snifferrel rendelkező gazdagép úgy tesz, mintha például egy border router lenne ARP üzenethamisítás segítségével (folyamatosan ARP üzeneteket küld, ahol a hálózati cím az útválasztó MAC-címe megfelel a hallgatóállomás MAC-címének). Így a szomszédok forgalma kényszerből a „kém” irányába kanyarodik.

Ellenkező esetben a szippantó készülékek főként funkciójukban különbözhetnek egymástól, például:

Támogatott fizikai interfészekés kapcsolati réteg protokollok;

A dekódolás minősége és a "felismerhető" protokollok száma;

Felhasználói felület és megjelenítési kényelem;

További funkciók: statisztikák, valós idejű megtekintés, csomagok generálása vagy módosítása és így tovább...

A szippantó (és egyébként bármilyen más szoftver) kiválasztásakor érdemes a következő szempontokat követni: az operációs rendszered alatt létezők közül vagy azt választjuk ki, ami pontosan megfelel a feladataidnak (akkor van értelme akár egyszeri esemény tervezése, akár ugyanazon művelet folyamatos végrehajtása), vagy a legkifinomultabb megoldás, ha úgy érzed, hogy a szippantó hasznos lesz számodra, de még nem tudod, milyen helyzetben :) különböző ...

Miért van szükségünk szippantóra?

Hagyományosan a szippantás gondolata kétféle formában élt: legális és illegális felhasználásban. Beszédes, hogy a "szippantó" szót gyakrabban használják az illegális szférában, a "hálózatelemző" pedig a legálisban. Kezdjük a jogi alkalmazással ;)

Hibaelhárítás (problémák és hálózati szűk keresztmetszetek észlelése). Haladó módban, amikor a szippantó nem kapcsolt szegmensben vagy átjárón működik, szinte teljes képet kaphatunk a hálózatunkban zajló eseményekről: forgalom intenzitása idő szerint, munkaállomások szerint, protokollok szerint, hibák száma. különböző típusok. Ráadásul mindkét módban konkrétabb problémákat is "gereblyézhetünk", amikor mondjuk egy adott állomásnak nem sikerül valamilyen interakciót megszerveznie a hálózaton keresztül, és ez annak ellenére, hogy a hálózat kívülről egészen működőképesnek tűnik. A szippantó különösen hasznos olyan esetekben, amikor a hálózati szoftverek rosszul dokumentáltak, vagy saját zárt (nem dokumentált), gyakran gyanús technológiákat (protokollokat) használnak.

Például: ICQ, Europe Online. Gyanús technológiák/szoftverek alatt olyan helyzeteket kell érteni, amikor azt gyanítja, hogy egy program lapot vagy más, nem dokumentált funkcionalitást tartalmaz. Például arról szóltak a pletykák, hogy a híres cDc Back Orifice kliens része is egy trójai faló, és néhány információt küld a tulajdonosoknak - a szoftver szerzőinek. A BO ​​kliens „hallgatásra” beállítása megmutatta, hogy a pletykák nem igazak.

Nem kevésbé hasznos egy szippantó a saját szoftverének hibakereséséhez. Soha nem felejtem el azt a pillanatot, amikor a proxyszerver megtagadta a kapcsolat létrehozását, ha a GET kérés \n\n-nel végződött a szükséges \r\n\r\n helyett. Csak a "legitim" böngésző által küldött csomagok vizsgálata és az "upstart" szkriptem által küldött csomagokkal való összehasonlítása mutatott rá egy sajnálatos hibára. A napi adminisztrátori gyakorlatom során nagyon-nagyon gyakran kell TCP / UDP szintű elemzésekkel is foglalkoznom.

Oktatás. A különböző protokoll csomagfejléc-formátumok és interakciós módszerek (mondjuk 3-utas TCP-kézfogás, DNS, traceroute terv alkalmazási módok) memorizálásától félig elájulhatsz, de ez a tudás halott addig, amíg meg nem próbálod "megérinteni a kezével" - egyszer írt program vagy ... belenéz a szippantóba! Miután elolvasta egy ismeretlen vagy rosszul értelmezett protokoll dokumentációját, próbálja meg szimulálni az interakciót, elfogja a csomagokat és elemezni azokat – biztosíthatom, minden rendkívül világos lesz, ráadásul ez a tudás reálisabb, és sokáig lerakódik a fejében. idő. A zárt technológiák esetében a szippantó lehet szinte az egyetlen eszköz a tanulmányozásukra.

Hálózati forgalom naplózása. Sok vita lehet a felhasználói forgalom adminisztrátor általi naplózásának jogszerűségéről és etikájáról további felülvizsgálat céljából, de tény, hogy sok szervezet beépíti ezt a technológiát biztonsági szabályzatába. Személyes véleményem az, hogy a mester a tulajdonos, vagyis ha a cég biztosítja dolgozóit felszereléssel, csatlakozással a helyi ill globális hálózatok jogában áll követelni ezen erőforrások megfelelő felhasználását. Második fontos ok forgalomnaplózáshoz - jogosulatlan hozzáférési kísérletek és egyéb rosszindulatú tevékenységek észleléséhez - például DoS támadások. Az ilyen naplók birtokában az adminisztrátor 100%-os pontossággal tudhatja, mi történik a hálózati birtokában.

Most beszéljünk a szippantás illegális oldaláról. Nos, először is, ez banális.

Hallgatózás. A szippantó helyes telepítése után kémkedhet a szomszédok és a távoliak - ellenségek, barátok, házastársak - után;) Érdekelhetik az ilyen kérdések: miért használja az ember a hálózatot, milyen webes erőforrásokat keres fel, milyen adatokat keres továbbítja, kivel és miről kommunikál? Bocsássák meg az állambiztonsági hatóságok, de a hírhedt SORM-ot, aminek létjogosultsága a totális forgalomnaplózás formájában nagy kérdés, mégis erre a részre hivatkozom, bár lehet, hogy a "jogi szippantás" utolsó bekezdésében is szerepelhet; )

Több kereskedelmi lehallgatás. A "hacker" közösség jelentős része azonban nem cseréli fel tehetségét a hűtlen házastársak és egyéb mindennapi élet kémkedésére. A támadót leggyakrabban olyan anyagok érdeklik, amelyek segítségével előreléphet mások rendszereibe és hálózataiba való behatolás nehéz feladatában. Hogyan is sejthetnéd beszélgetünk, főként a hálózaton titkosítatlan (sima szöveges) formában áthaladó felhasználónevek és jelszavak elfogásáról. Ez különösen vonatkozik a telnet, POP, IMAP, NNTP, IRC, titkosítást nem használó webalkalmazások, SNMP v1 közösségi karakterláncok stb. jelszavaira.

Megvalósítások

Most, hogy többé-kevésbé foglalkoztunk az elméleti résszel, térjünk vissza a bűnös földhöz – beszéljünk a szippantó eszközök konkrét megvalósításairól különböző platformokon. Valójában nagyon sok ilyen szoftver létezik, a különbség funkcionalitásés az árcédula (főleg az utolsónál) kolosszális. A "Sniffing (hálózati lehallgatás, szippantó) GYIK" fordítója Robert Graham a következő termékek kipróbálását javasolja:

WinNT szerver
A Microsoft WinNT Server egy beépített "Network Monitor" nevű programmal érkezik. Menjen a hálózati vezérlőpultra, válassza a "Szolgáltatások" lehetőséget, kattintson a "Hozzáadás..." gombra, majd válassza a "Network Monitor Tools and Agent" lehetőséget. A telepítés után a program elérhető lesz a Start menüben az "Adminisztrációs eszközök" részben.

A BlackICE valójában egy behatolásészlelő rendszer (IDS), de egyik funkciója a nyers csomagkiíratások írása olyan formában, amely elfogadható a protokollelemzők általi visszafejtéshez. Egy dolog: a program csak azt a forgalmat nézi, amely annak a gazdagépnek a helyi felületein halad át, amelyen működik, vagyis non-promiscuous. A programot letöltheti a webhelyről

Ez a program éppen ellenkezőleg, csak a BlackICE Pro-hoz hasonló szippantó által rögzített csomagokat képes elemezni.

Ingyenes protokollelemző.

Természetesen ez a lista korántsem teljes, bármelyiket felmászik keresőmotor vagy a letölthető szoftverek gyűjteményében, és a bal oldali menüben találhat megfelelőt. Sőt, az ismertető nem említi a legtöbbet, véleményem szerint a legkiemelkedőbb ilyen jellegű terméket a Win32 számára - a NetXRay-t, amelyet most Sniffer Basic névre kereszteltek. Kicsit később beszélünk róla.

Horkant
Egy libpcap alapú szippantó fejlett szűrési képességekkel.

A lista megint korántsem tökéletes, lehet keresni mást is. Másik dolog, hogy a *NIX közösségben nem különösebben szokás "szétoszlatni" - vannak jól bevált, folyamatosan fejlődő vezető termékek, és a többség pontosan ezeket részesíti előnyben, anélkül, hogy alternatívát keresne. Az abszolút vezetők itt a tcpdump és a sniffit.

tcpdump és windump

(a Ghost//Necrosoft)

Mint fentebb említettük, a TcpDump a leggyakrabban használt szippantó a *nix rendszerek alatt. Megtalálhatja a használt operációs rendszer bármelyik legújabb disztribúciójában. A tcpdump leírásának legjobb módja az, ha egyszerűen felsorolja az összes lehetőséget. parancs sor- így kap egy listát a képességeiről és egy közvetlen útmutatót a cselekvéshez - "egy palackban".

A WinDump a *nix rendszerek TcpDump portja, ugyanazokat a funkciókat és szintaxist használja, mint a TcpDump, de van néhány további parancssori opció, amelyekről az alábbiakban lesz szó.

Egy kis megjegyzés a TcpDump használatához különféle rendszerek. Nit vagy bpf eszközöket használó SunOS rendszeren: A tcpdump futtatásához olvasási hozzáféréssel kell rendelkeznie a /dev/nit vagy a /dev/bpf* fájlokhoz. A dlpi-vel rendelkező Solaris alatt el kell érnie a pszeudo hálózati adaptereket, például a /dev/le fájlt. HP-UX alatt dlpi-vel: root-nak kell lennie, vagy a tcpdump uid-jét root-ra kell állítani. IRIX alatt snoop-pal és Linux alatt: HP-UX-hoz hasonló követelmények. Ultrix és Digital UNIX alatt: csak a szuperfelhasználók férhetnek hozzá a pfconfig segítségével a promiscuous-mode műveletekhez (8) engedélyt kaphat a tcpdump futtatására BSD alatt: hozzá kell férnie a /dev/bpf* fájlhoz Win32 alatt: telepítenie kell az NDIS csomagrögzítő illesztőprogramot.

Most nézzük meg közelebbről a parancssori opciókat.

TcpDump [ -adeflnNOpqSvx ] [ -c count ] [ -F file ] [ -i interface ] [ -r file ] [ -s snaplen ] [ -T type ] [ -w file ] [ kifejezés ]. Windump specifikus opciók [-D] [ -B méret ].

-a lehetővé teszi a hálózati és szórási címek nevekké alakítását.

-c kilépés a count csomagok feldolgozása után.

-d kiírja a csomag tartalmát ember által olvasható formában.

A -dd a csomag tartalmát egy C program töredékeként adja ki.

A -ddd a csomag tartalmát decimális formában jeleníti meg.

-e minden új sorra kiírja a hivatkozási réteg fejléceit.

Az -f kiírja a távoli és helyi gazdagépek címeit nevekre átalakítás nélkül.

-F használjon fájlt a szűrési beállítások leírásával (a parancssori további kifejezéseket figyelmen kívül hagyja).

- Interfész felületet használok a nyomkövetéshez. Ha nincs megadva, a tcpdump megkeresi a legalacsonyabb számú aktív hálózati interfészt (kivéve a visszahurkolást). Windows felületen - név hálózati adapter vagy a számát (a WinDump -D futtatásával találhatja meg).

-l pufferelt kimenetet használ az stdouthoz. Az olyan konstrukciók, mint a "tcpdump -l | tee dat"" vagy a "tcpdump -l > dat & tail -f dat"" hasznosak lehetnek.

-n Ne alakítsa át a címeket (azaz gazdagép címét, portszámát stb.) nevekké.

-N ne nyomtasd Domain név a gazdagépnévben. Azok. ha ezt a jelzőt használjuk, a tcpdump a "nic.ddn.mil" helyett a "nic"-t írja ki.

-O Ne futtassa a csomagoptimalizálót. Ez az opció akkor hasznos, ha saját maga kezeli a csomagokat.

-p ne állítsa a hálózati interfészt "promiscuous mode"-ra.

-q rövidített kimenet. Az információkat rövidített formában jeleníti meg.

-r beolvassa a csomagokat a fájlból (amelyek a -w kapcsolóval jönnek létre). Ha a konzolt szeretné bemenetként használni, akkor a fájl "-" legyen.

-s minden csomagból kiír egy snaplen byte-ot (a SunOS NIT-jében a minimális szám 96) IP, ICMP, TCP és UDP protokollokhoz elég 68 bájt, de levágja a magasabb szintekről érkező információkat, mondjuk a DNS és NFS csomagokat.

-T erőltetni a csomagok értelmezését típus illeszkedik a "kifejezés" maszkhoz. Tovább Ebben a pillanatban ismert típusai az rpc (Remote Procedure Call), rtp (valós idejű alkalmazások protokoll), rtcp (valós idejű alkalmazások vezérlőprotokoll), vat (Visual Audio Tool) és wb (distributed White Board).

-S kiírja az abszolút TCP csomag számát.

-t nem írja ki az időt minden sorra.

-tt minden sorra kiírja a formázatlan időt.

-v bőbeszédű kimenet. Például a csomag élettartama és a szolgáltatás típusa.

-vv bőbeszédű kimenet. Például további mezők megjelenítése NFS válaszcsomagok.

-w nyers csomagokat ír a fájlba, amelyeket később az -r kapcsolóval visszafejthet. Ha a konzolt szeretné kimenetként használni, akkor a fájl "-" lesz.

-x minden csomagot hexadecimálisan nyomtat (nincs fejléc). A Snaplen bájtok a kimenetre kerülnek.

További beállítások szélkamra:

-B beállítja az illesztőprogram pufferének méretét kilobájtban megadott méretre. Az alapértelmezett pufferméret 1 megabájt. Ha néhány csomag nem jelenik meg működés közben, próbálja meg növelni a puffer méretét. Ha PPP kapcsolattal vagy 10 Mbit Ethernettel rendelkezik, akkor a puffer mérete felére vagy háromszorosára csökkenthető.

-D felsorolja a rendszeren lévő hálózati eszközöket. A lista így néz ki: szám - szám hálózati eszköz a rendszeren a név a neve, majd az eszköz leírása. Később ezeket az adatokat felhasználhatja arra, hogy a rendszer összes, jelenleg elérhető hálózati interfészével működjön. És kiválaszthat egy eszközt a -I kapcsolóval - "WinDump -i név" vagy "WinDump -i szám".

kifejezés - valójában egy kifejezés, amely beállítja a csomagszűrési feltételt. Ha a kifejezésmező hiányzik, akkor az összes csomag megjelenik. Ellenkező esetben csak azok a csomagok jelennek meg, amelyek megfelelnek a kifejezésmaszknak.

A kifejezés egy vagy több primitívből állhat. A primitívek gyakran a minősítő azonosítójából (név vagy szám) állnak. A minősítőknek három fő típusa van:

type egy minősítő, amely az általános szabályzatot határozza meg. Lehetséges típusok: host, net és port. Azok. "host foo", "net 128.3", "port 20". Ha a típus nincs megadva, az alapértelmezett a host.

A dir egy minősítő, amely jelzi a csomagok küldésének irányát. Lehetséges lehetőségek src, dst, src vagy dst és src és dst. Azaz "src foo", "dst net 128.3", "src vagy dst port ftp-data". Ha a dir nincs megadva, akkor alapértelmezés szerint az src vagy a dst. "Null" kapcsolatok esetén (azaz ppp vagy slip) használja a bejövő és kimenő specifikációt a kívánt irány jelzésére.

proto - a minősítő lehetővé teszi a csomagok szűrését egy adott protokoll szerint. Lehetséges protokollok: ether, fddi, ip, arp, rarp, decnet, lat, sca, moprc, mopdl, tcp és udp. Azok. "ether src foo", "arp net 128.3", "tcp port 21". Ha a minősítő hiányzik, akkor a rendszer nem szűri a csomagokat. (Az "fddi" valójában az "ether" álneve, mert a legtöbb esetben az FDDI-csomagok tartalmazzák a küldő és a cél Ethernet-címét, és gyakran tartalmazzák a csomagok Ethernet-típusát. Az FDDI-fejlécek más mezőket is tartalmaznak, amelyek nem szerepelnek a szűrőlista.)

A fentieken kívül néhány speciális primitívnek nincs sablonja, ezek a következők: átjáró, sugárzott, kisebb, nagyobb és aritmetikai kifejezések. Erről egy kicsit tovább.

Sok összetett szűrőkifejezés az és, vagy, és szavakat használja a primitívek kombinálására. Például "host foo és nem port ftp és nem port ftp-data". Néhány minősítő elhagyható a bevitel egyszerűsítése érdekében. Például a „tcp dst port ftp vagy ftp-data vagy domain” ugyanaz, mint a „tcp dst port ftp vagy tcp dst port ftp-data vagy tcp dst port domain”.

A következő kifejezések megengedettek:

A dst host host értéke igaz, ha a csomag IP-cél mezője a host, amely lehet cím vagy gazdagépnév.

Az src host host értéke igaz, ha a csomag IP forrás mezője host.

host host igaz, ha a csomag forrása vagy rendeltetési helye host. Az ip, arp vagy rarp előtagok is használhatók: ip host host, amely egyenértékű az ether proto \ip és hosthost kifejezésekkel. Ha a gazdagép több IP-címmel rendelkező név, akkor minden cím egyezést keres.

ether dst ehost Igaz, ha a cél Ethernet címe ehost. Ehost - az /etc/ethers fájl bármelyik neve vagy egy szám (lásd ethers(3N).

ether src ehost igaz, ha a forrás ethernet címe ehost.

ether host ehost igaz, ha a cél vagy a forrás Ethernet címe ehost.

gateway host igaz, ha a gazdagép átjáró. Azok. A forrás vagy a cél Ethernet-címe gazdagép, de sem a forrás IP-címe, sem a cél IP-címe nem gazdagép. A gazdagép lehet név, és megtalálható az /etc/hosts és /etc/ethers fájlokban is. (Ez egyenértékű az ether host ehost-tal, és nem a host host-val, amely bármilyen névvel vagy számmal használható a gazdagép/ehost számára.)

dst net net igaz, ha a cél IP-címe net. Hálózat – bármely bejegyzés az /etc/networks fájlból vagy hálózati címből.

src net net igaz, ha a küldő IP-címe net.

net net Igaz, ha a cél vagy a forrás IP-címe net.

net net mask mask Igaz, ha az IP-cím megegyezik a megfelelő hálózati maszk c-jével. Megadható az src vagy a dst paranccsal.

net net/len igaz, ha az IP net és az alhálózati maszk len bitenkénti (CIDR formátum). Megadható az src vagy a dst paranccsal.

A dst port port igaz, ha a csomag ip/tcp vagy ip/udp, és van egy célportja. A port lehet szám, vagy jelen lehet az /etc/services fájlban (lásd tcp(4P) és udp(4P)). Ha a név két vagy több porthoz használatos, akkor a portszámok és a protokollok is ellenőrzésre kerülnek. Ha érvénytelen portszámot vagy nevet használnak, akkor csak a portszámok kerülnek ellenőrzésre (azaz a dst 513-as port a tcp/login és az udp/who forgalmat adja ki, a porttartomány pedig a tcp/domain és az udp/domain értékeket).

src port port igaz, ha a küldő port port.

port port igaz, ha a forrás- vagy célport port. Néhány kifejezés kombinálható, például: tcp src port port - csak a port -port tcp csomagok.

a kisebb hossz igaz, ha a csomag hossza kisebb vagy egyenlő, mint a len hosszúság<= length.

nagyobb hossz akkor igaz, ha a csomag hossza nagyobb vagy egyenlő, mint a hosszúság, ami megegyezik a len >=hosszúsággal.

Az ip protokoll protokoll igaz, ha a csomag egy IP-csomag protokollal. A protokoll lehet számozott vagy az icmp, igrp, udp, nd vagy tcp nevek egyike.

ether broadcast akkor igaz, ha a csomag Ethernet szórási csomag. Az éter kifejezés nem kötelező.

Az ip broadcast akkor igaz, ha a csomag egy IP broadcast csomag.

ether multicast akkor igaz, ha a csomag Ethernet multicast csomag. Az éter kifejezés nem kötelező. Ez az "éter és 1!= 0" rövidítése.

Az ip multicast akkor igaz, ha a csomag IP multicast csomag.

az ether protokoll protokoll igaz, ha a csomag Ethernet típusú. A protokoll lehet szám vagy név: ip, arp vagy rarp.

A decnet src host értéke igaz, ha a cél DECNET-cím gazdagép, amely lehet egy cím, például "10.123"" vagy egy DECNET-gazdanév. (A DECNET-gazdanév csak Ultrix rendszereken támogatott).

decnet dst host Igaz, ha a cél DECNET-cím gazdagép.

decnet host host Igaz, ha a cél vagy a forrás DECNET-címe gazdagép.

proto[kifejezés: méret]

A Proto a következő protokollok egyike: ether, fddi, ip, arp, rarp, tcp, udp vagy icmp, és jelzi a művelet protokollszintjét. Byte offset for adott szint protokoll a kif. Méret - opcionális, egy adott eltolásnál az érdeklődésre számot tartó bájtok számát mutatja, lehet 1, 2 vagy 4, az alapértelmezett 1.

Példák a tcpdump használatára

Az összes bejövő és kimenő csomag listázása a naplementétől: tcpdump host sundown

Forgalom kibocsátása helios és a két hot vagy ace egyike között: tcpdump host helios és \(hot or ace \)

Az ász és más gazdagépek közötti összes praket listázása, kivéve a heliokat: tcpdump ip host ász és nem helios

Forgalom dömpingje a helyi gép és a Berkeley gép között: tcpdump net ucb-ether

Az ftp forgalom dömpingje a snup átjárón keresztül: tcpdump "gateway snup and (port ftp vagy ftp-data)"

Olyan forgalom kiadása, amely nem a helyi hálózat gépeihez tartozik (ha a gép egy másik hálózat átjárója, a tcpdump nem tud forgalmat kibocsátani a helyi hálózaton). tcpdump ip és nem net helyi hálózat

Régi és stop csomagok (SYN és FIN csomagok) kiadása, amelyek nem tartoznak a helyi hálózathoz. tcpdump "tcp & 3!= 0 és nem src és dst net localnet"

576 bájtnál hosszabb IP-csomagok kiíratása snup átjárón keresztül: tcpdump "gateway snup and ip > 576"

IP broadcast vagy multicast csomagok kiadása, amelyeket nem Ethernet broadcast vagy multicast útján küldenek: tcpdump "ether & 1 = 0 és ip >= 224"

Minden olyan ICMP-csomag kiíratása, amely nem echo kérés/válasz (azaz nem ping csomag): tcpdump "icmp!= 8 és icmp!= 0"

NetXRay

Írta: Alice D. Saemon

Az, akit szeretek...

Nagyon régen... A NetXRay volt az első szippantó, amelyre felfigyeltem. Aztán 1997-ben ez az angol program feltűnést keltett a windows-orientált hálózatépítők körében. Évek teltek el, de a NetXRay régi verziója (3.0.1) még mindig szolgálatban van, napi munkám során munkaállomás. A mai napig a terméket Sniffer Basic névre keresztelték át, néhány új funkcióval bővült, de nagyobb szempontból a fő funkcionalitás a 3.0.1 óta változatlan maradt. Ez az első ok, amiért a NetXRay 3.0.1-et ismertetjük a cikkben. A második ok... (a kalózellenes rendőrségen körülnézve) az, hogy a termék nagyon drága (1643 font, ami sterling), és a kipróbálási korlátozások nagyon komolyak.. Szóval kezdjük.

A csomag különböző funkciók halmazából áll, és valóban inkább hálózati elemzőnek nevezhető, mint szippantónak. Minden funkció (modul) az "Eszközök" menüben van csoportosítva, és ott találhatók a különféle beállítások is. Kezdjük velük. Kiválaszthatja azt az adaptert, amelyhez az aktuális tesztet végzik (szonda). Az adapternek támogatnia kell az NDIS 3.0/3.1 szabványt.

Figyelem, bug! Ha a NetXRay-t véleménye szerint "rossz" adapterre állítja, vagy olyan csomagokat rögzít, amelyeket nem tud dekódolni link-hálózati szinten (például kihasználja a forgalmat, amely ferdén töredezett csomagokat küld) - a dekódolási szakaszban (protokollelemzés), a program szorosan lefagy .

Egyszerre több felületen is lehet tesztelni, amelyekhez több programinkarnáció (próba) jön létre. Egy új szondában átmásolhatja a meglévők összes beállítását.

Az opciókban a következő dolgokat állíthatja be: kinézet asztal, szabványos portszámok különböző protokollokhoz (3 lehetőség - nagyon hasznos olyan esetekben, amikor a hálózati alkalmazások nem szabványos portokon működnek), válasz egy eseményre, küszöbértékek különféle típusú statisztikákhoz stb.

Nos, most térjünk rá a csomag funkcionális moduljaira.

rögzítés (csomag rögzítés)

A NetXRay lényege valójában az, hogy a közfelfogás szerint van egy szippantó. Ezért hadd írjam le a lehető legrészletesebben.

Amikor ez a modul aktiválva van, egy kis ablak jelenik meg előttünk a " Irányítópult" és néhány gomb. Minden művelet, amit ebben az ablakban végrehajthatunk, megkettőződik a Capture menüben. És ezt megtehetjük: csomagok rögzítésének megkezdése, leállítás, leállítás + a puffer tartalmának megtekintése és egyszerűen a puffer, feltéve, hogy a rögzítést leállították. Ott tudjuk végrehajtani finomhangolás szűrők:

A feladó és a címzett címe. Ennek a feladatnak a megkönnyítésére van egy címjegyzék és néhány előre beállított címkészlet, például "Bármilyen".

Sablonok alapján. Ha olyan csomagokat kell elkapnia, amelyek a csomagban bárhol tartalmaznak bizonyos adatokat, írhat egy díszes mintát. Sőt, ami különösen kedves, sablonokat tervezhet bármilyen számodra megfelelő megjelenítésben: bináris, hexadecimális, ASCII és EBCDIC.

A program által ismert protokollok szerint. Ez:

Hálózat: AppleTalk, AppleTalk ARP, APOLLO, DECNET, IP, IP ARP, IPX, LAT, NetBEUI, OSI, SNA, VINES, VINES Loopback, VINES Echo, XNS

Magasabb az IP-veremben: szállítás, szolgáltatás és útválasztás - ICMP, IGMP, GGP, EGP, IGP, ISO-TP4, HELLO, IP-VINES, IGRP, OSPF, TCP, UDP; alkalmazási réteg - FTP, REXEC, RLOGIN, RSH, NYOMTATÓ, SMTP, TELNET, DNS(TCP), GOPHER, HTTP, POP, SUNRPC(TCP), NNTP, NETBIOS, X-WINDOW, DNS(UDP), BOOTP, TFTP, SUNRPC(UDP), SNMP, SNMPTRAP, BIFF, WHO, SYSLOG, RIP, GDP, NFS.

Magasabb az IPX-veremben: NCP, SAP, NRIP, NBIOS, DIAGNOSZTIKA, SERIALIZÁCIÓ, NMPI, NLSP, NSNMP, NSNMPTRAP, SPX.

Amint látja, nem is olyan kevés, mondhatnám – még a való életben is felesleges.

Figyelem! A protokollszűrő kissé furcsa felülettel rendelkezik: feltételezzük, hogy ha egy szint határain belül nincs bejelölve minden jelölőnégyzet, akkor az összes ilyen szintű protokollcsomagot és minden felette lévőt (lent, ha megnézi felhasználói felület;). Így, ha nem állított be egyetlen "madarat" - abszolút mindent elkapnak. Természetesen ebben az esetben az ismeretlen alkalmazási réteg protokollokat is elkapják, de nem dekódolják ember által olvasható formába, ami természetes, hiszen ismeretlenek :))

Ezenkívül beállíthatja a puffer méretét, vagy megadhatja a fájlt, ahová a csomagrögzítés eredményét el kell dobni.

A szűrőbeállítások egy úgynevezett profilba írhatók, elnevezhetők, majd a listából kiválaszthatók.

A szükséges számú csomag rögzítésének kidolgozása után a megtekintés aktiválásakor kiesünk az úgynevezett "eredményablakba", amely alapértelmezés szerint XRay1, XRay2 és így tovább az aktuális pufferek számának megfelelően. A képernyőképen egy ilyen ablak látható: fent - a csomagok listája egy rövid "annotációval", középen - dekódolt adatok (na jó, dekódolni tudtam;) és lent - egy nyers csomag. Érdekes, hogy amikor a dekódolt részben az érdeklődési területre kattint, a nyers csomag megfelelő helye kiemelésre kerül - ellenőrizheti a protokollelemző minőségét;)

Az "eredményablak" felhasználói felülete az előnyök mellett rendelkezik (a fentebb tárgyalt szűrők bármelyikének alkalmazása a megjelenített pufferre, bármilyen csomag vagy puffer küldése a hálózatra egyetlen egérkattintással vagy számos másolás csomagokat külön pufferbe helyezni, dekódolt adatok nagyon szép megjelenítése, még az átlagfelhasználót kevéssé érdeklő mezők beágyazásával is), valamint nyilvánvaló hátrányok (nem lehet pár csomagot törölni a pufferből, nincs vágólap- működőképesség, vagyis az eredmények például nem másolhatók és menthetők szöveges formátumban).

A csomagok pufferben vagy fájlban a későbbi dekódoláshoz való felhalmozása mellett lehetőség van a forgalom valós idejű megtekintésére is.

Igaz a) vizuálisan borzasztóan néz ki b) ez az opció olyan logikátlan helyen van bekapcsolva, hogy még egy ilyen öreg NetXRay felhasználó is elfelejti, hol van ez a "madár". A madár az Eszközök | menüben van telepítve Opciók... Általános lap, Valós idejű megjelenítés jelölőnégyzet, és nem a Capture beállításoknál, ahol logikus lenne rákeresni;-/

Ezenkívül az "eredményablak" könyvjelzőket is tartalmaz a rögzítési munkamenet statisztikai adataihoz, de ezeken nem térünk ki.

csomaggenerátor

Ez valóban csodálatos dolog: a semmiből "vázolhat" és bármilyen csomagot küldhet a hálózatra. A felület a fő ablakból és az úgynevezett csomagtervezőből áll, két részre osztva - Konfigurálás és Dekódolás.

Az elsőben egy szabványos szemétlerakás portréja van (lásd a cikk elméleti részét), nullákkal kitöltve. Elkezdjük a hexadecimális számok beírását - a dekódolási részben, amely pontosan úgy néz ki, mint a dekódolt csomag a Capture "eredményablakában", megjelenik a csomagunk elemzése.

De ebben az esetben nem csak a dekódolt csomagot nézhetjük meg, hanem az egérrel a kívánt mezőre kattintva módosíthatunk is. Az értékek megváltoztatása azonban minden esetben csak hexadecimális formában történik, és a beviteli mezők feltűnőek a kényelmetlenségükben: (Több lehetőség van a csomagok generálására és küldésére: küldje el az aktuális csomagot, küldje el az aktuális puffert, írjon egy csomagot a semmiből, vagy küldjön egy szerkesztett csomagot az összegyűjtöttekből.

Megjegyzés az interfészhez: ha a Capture "eredményablakából" hívják meg az "aktuális csomag küldése" opciót, akkor a csomag azonnal elküldésre kerül a csomagkonstruktor meghívása nélkül, azonban az aktuális "send bufferben" marad és javítható ott később.

Ha a Csomaggenerátor ablakból meghívjuk a "send the current packet" parancsot, akkor a csomagkonstruktor automatikusan meghívásra kerül.

A csomagkonstruktorban a Dekódolás részben a program ad néhány tippet, konkrétan új ellenőrző összeget számol a csomag módosításakor (a megfelelő változtatásokat akkor is maga végezné el, lusta alkotás;). Az AI azonban abban különbözik az emberi elmétől, hogy nem tudja, hogyan kell megfelelően gondolkodni. Tehát amikor például megváltoztatja a címzett IP-címét, fontolja meg, hogy egyidejűleg módosítsa-e a MAC-címét?;)

A csomagokat a címre lehet küldeni különböző módok: egy kattintás - egy csomag, meghatározott számú csomag vagy hurkolt. Így forgalmat generálhat. Általánosságban elmondható, hogy a csomaggenerátorhoz rengeteg alkalmazást találhatsz, ez a fantáziádon és a találékonyságon múlik.

mindenfélét

A program a fentieken kívül még rengeteg hasznos és nem túl (mint bárki;) csengőt és sípot tartalmaz. Röviden róluk:

Irányítópult. hálózati terhelési statisztikák, pontosabban azt részei, amelyeket láthat. Csomagok száma, bájtok, minden típusú hiba, kihasználtság számítás. Mindig is megzavart ez a funkció, mert életemben nem láttam hibaüzenetet – hát az nem lehet, hogy nincs!;)

fogadóasztal. Különféle információkat rögzít a szippantó számára látható gazdagépekről és tevékenységeikről (a csomagok teljes rögzítése és elemzése nélkül)

mátrix. Majdnem ugyanaz, mint a Host Table, de kissé eltérő formátumban jelenik meg.

történelem. Grafikonokat és diagramokat rajzol a hálózat viselkedéséről egy adott időszakban.

protokoll elosztás. Ahogy a neve is sugallja, statisztikát vezet a különféle protokollok használatáról.

statisztika. Statisztikák a kihasználtságról és a létszámról.

Riasztási napló. Az Ön által meghatározott események naplója.

Nos, dióhéjban ennyi. (wow, "röviden kiderült % -()) Töltsd le és teszteld az egészséged - saját örömödre és ellenségeid ellenére :)

Következtetés

Nos, mára véget ért a szippantós mese. Aki hallgatott (olvass a végéig) - jól sikerült, remélem a legtöbb kérdésedre választ kaptál. Az igazságosság kedvéért megjegyzem: nem MINDEN kérdést vettünk figyelembe e cikk keretein belül. Legalább két nagy téma kimaradt: a szimatolók belső felépítése, beleértve az ilyen szoftverek írásának módszereit és megközelítéseit, valamint a szippantás elleni védekezés módjait.

Ami az elsőt illeti, a következőt gondolom: a téma érdekes, külön anyagot igényel, de főleg programozóknak lesz szánva. Találjunk ki ezzel kapcsolatban valamit. Ami a második kérdést illeti, a válasz nagyjából ugyanaz: titkosítás, titkosítás és még egyszer titkosítás, ami nyilvánvaló. Természetesen vannak módszerek a szippantó jelenlétének felismerésére a hálózaton, sőt, akár ellenállni is, de ezek meglehetősen privátak és nem fájdalmasan hatékonyak.

Elfogó egy többfunkciós hálózati eszköz, amely lehetővé teszi a forgalomból származó adatok (jelszavak, azonnali üzenetküldőben lévő üzenetek, levelezés stb.) lekérését és különféle MiTM támadások megvalósítását.


Intercepter interfész
Fő funkció

  • Messenger üzenetek lehallgatása.
  • Cookie-k és jelszavak elfogása.
  • Tevékenység elfogása (oldalak, fájlok, adatok).
  • Lehetőség a letöltött fájlok hozzáadásával cseréjére rosszindulatú fájlok. Más közművekkel együtt használható.
  • A HTTP-tanúsítványok lecserélése Http-re.
Üzemmódok
Messenger mód- lehetővé teszi a titkosítatlan formában elküldött levelezés ellenőrzését. Az üzenetek lehallgatására használták olyan hírvivőkben, mint az ICQ, AIM, JABBER üzenetek.

Helyreállítási mód– hasznos adatok visszanyerése a forgalomból, a forgalmat tisztán továbbító protokollokból. Amikor az áldozat megtekinti a fájlokat, oldalakat, adatokat, lehetőség van azok részleges vagy teljes lehallgatására. Ezenkívül megadhatja a fájlok méretét, hogy ne kis részekben töltse le a programot. Ezek az információk elemzésre használhatók.

Jelszó mód– mód a sütikkel való munkavégzéshez. Így lehetőség nyílik az áldozat meglátogatott aktáihoz való hozzáféréshez.

szkennelési mód– a fő tesztelési mód. Kattintson a jobb gombbal a Smart Scan gombra a szkennelés elindításához. A szkennelés után az ablakban megjelenik az összes hálózati tag, azok operációs rendszerés egyéb lehetőségek.

Ezenkívül ebben a módban portokat is szkennelhet. Használnia kell a Portok szkennelés funkciót. Természetesen sokkal több funkcionális segédprogram létezik erre, de ennek a funkciónak a megléte fontos szempont.

Ha a hálózatot célzott támadás érdekli, akkor a szkennelés után az (Add to Nat) paranccsal hozzá kell adnunk a cél IP-t a Nat-hez. Egy másik ablakban más támadások végrehajtására lesz lehetőség.

Nat mód. A fő mód, amely lehetővé teszi számos ARP támadás végrehajtását. Ez a fő ablak, amely lehetővé teszi a célzott támadásokat.

DHCP mód. Ez egy olyan mód, amely lehetővé teszi, hogy felemelje DHCP szerver hogy középen DHCP-támadásokat hajtson végre.

Néhány végrehajtható támadás
Weboldal hamisítás

Az áldozat webhelyének meghamisításához a Target-re kell lépnie, majd meg kell adnia a webhelyet és annak helyettesítését. Így sok webhelyet lecserélhet. Minden attól függ, mennyire jó a hamisítvány.

Weboldal hamisítás

Példa a VK.com-ra

MiTM támadás kiválasztása

A befecskendezési szabály módosítása
Ennek eredményeként az áldozat hamis webhelyet nyit meg, amikor felkérik a vk.com-ot. A jelszó módban pedig az áldozat bejelentkezési nevének és jelszavának kell lennie:


Célzott támadás végrehajtásához ki kell választania egy áldozatot a listáról, és hozzá kell adnia a célponthoz. Ezt a jobb egérgombbal lehet megtenni.


A MiTm támadás kiegészítései
Mostantól különféle adatokat állíthat vissza a forgalomból Resurection módban.


Fájlok és információk az áldozatról MiTm támadáson keresztül
Forgalomhamisítás



Beállítások megadása
Ezt követően az áldozat a „bizalom” kérést „vesztesre” változtatja.

Ezenkívül leállíthatja a cookie-kat, hogy az áldozat kijelentkezzen minden fiókból, és újra engedélyezze. Ez elfogja a bejelentkezéseket és jelszavakat.


A cookie-k megsemmisítése

Hogyan lehet látni egy potenciális sniferrt a hálózaton az Intercepter segítségével?

A Promisc Detection (Promisc Detection) opció használatával észlelheti a helyi hálózaton vizsgáló eszközt. A beolvasás után az állapotoszlop „Sniffer” lesz. Ez az első mód, amely lehetővé teszi a szkennelés meghatározását a helyi hálózaton.


Szippantó észlelés
SDR HackRF eszköz


Hack RF
Az SDR egyfajta rádióvevő, amely lehetővé teszi, hogy különböző rádiófrekvenciás paraméterekkel dolgozzon. Így lehetőség van a Wi-Fi, GSM, LTE stb. jeleinek lehallgatására.

A HackRF egy teljes, 300 dolláros SDR-eszköz. A projekt szerzője, Michael Ossman sikeres eszközöket fejleszt ebben az irányban. Korábban az Ubertooth Bluetooth szippantót fejlesztették és sikeresen implementálták. A HackRF egy sikeres projekt, amely több mint 600 000 összeget gyűjtött össze a Kickstarteren. 500 ilyen eszközt már implementáltak béta tesztelésre.

A HackRF a 30 MHz-től 6 GHz-ig terjedő frekvenciatartományban működik. A mintavételi frekvencia 20 MHz, ami lehetővé teszi a lehallgatást wifi jelekés LTE hálózatok.

Hogyan védekezhet helyi szinten?

Először is használjuk a SoftPerfect WiFi Guard szoftvert. Létezik egy hordozható verzió, amely legfeljebb 4 MB-ot vesz igénybe. Lehetővé teszi a hálózat átvizsgálását és a rajta megjelenő eszközök megjelenítését. Olyan beállításokkal rendelkezik, amelyek lehetővé teszik a hálózati kártya és a szkennelt eszközök maximális számának kiválasztását. Ezenkívül beállíthatja a keresési intervallumot.


Lehetőség megjegyzések hozzáadására a felhasználók számára


Értesítési ablak az ismeretlen eszközökhöz minden megadott keresési intervallum után

Következtetés
Így a gyakorlatban láttuk, hogyan kell használni szoftver adatok elfogására a hálózaton belül. Több olyan konkrét támadást is figyelembe vettünk, amelyek lehetővé teszik a bejelentkezési adatok és egyéb információk megszerzését. Ezenkívül figyelembe vettük a SoftPerfect WiFi Guard-ot, amely lehetővé teszi, hogy megvédje a helyi hálózatot a forgalom primitív szintű meghallgatásától.

Sok felhasználó nem is veszi észre, hogy a bejelentkezési név és a jelszó megadásával egy zárt internetes erőforráson történő regisztrációkor vagy engedélyezéskor és az ENTER lenyomásával ezek az adatok könnyen lehallgathatók. Nagyon gyakran nem biztonságos formában továbbítják a hálózaton. Ezért, ha a webhely, amelyen megpróbál bejelentkezni, a HTTP protokollt használja, akkor nagyon könnyű rögzíteni ezt a forgalmat, elemezni a Wireshark segítségével, majd speciális szűrők és programok segítségével megtalálni és visszafejteni a jelszót.

A jelszavak lehallgatásának legjobb helye a hálózat magja, ahol az összes felhasználó forgalma zárt erőforrásokra (például levelezésre) vagy a router elé kerül, hogy hozzáférjen az internethez, amikor külső erőforrásokon regisztrál. Felállítunk egy tükröt, és készen állunk, hogy hackernek érezzük magunkat.

1. lépés Telepítse és futtassa a Wiresharkot a forgalom rögzítéséhez

Néha ehhez elegendő csak azt a felületet kiválasztani, amelyen keresztül a forgalmat rögzíteni kívánjuk, és a Start gombra kattintani. Esetünkben vezeték nélkül rögzítünk.

Megkezdődött a forgalom rögzítése.

2. lépés: A rögzített POST-forgalom szűrése

Megnyitjuk a böngészőt, és megpróbálunk bejelentkezni bármely erőforrásba felhasználónévvel és jelszóval. Az engedélyezési folyamat befejezése és az oldal megnyitása után leállítjuk a Wireshark forgalmának rögzítését. Ezután nyissa meg a protokollanalizátort, és nézze meg nagyszámú csomagokat. Ez az a szakasz, amikor a legtöbb informatikus feladja, mert nem tudja, mit tegyen. De ismerjük és érdekelnek bennünket azok a POST-adatokat tartalmazó csomagok, amelyek a helyi gépünkön generálódnak, amikor kitöltenek egy űrlapot a képernyőn, és elküldik egy távoli szerverre, amikor a böngészőben a "Bejelentkezés" vagy az "Engedélyezés" gombra kattint. .

Adjon meg egy speciális szűrőt az ablakban a rögzített csomagok megjelenítéséhez: http.kérés.módszer == "PONT”

És ezer csomag helyett csak egyet látunk a keresett adatokkal.

3. lépés Keresse meg a felhasználónevet és a jelszót

Gyors kattintás jobb gomb egérrel, és válassza ki a menüből Kövesd a TCPSteamet


Ezt követően egy új ablakban megjelenik egy szöveg, amely a kódban visszaállítja az oldal tartalmát. Keressük meg a jelszónak és felhasználónévnek megfelelő "password" és "user" mezőket. Egyes esetekben mindkét mező könnyen olvasható és nem is titkosított lesz, de ha a forgalmat próbáljuk rögzíteni, amikor olyan jól ismert forrásokhoz férünk hozzá, mint például: Mail.ru, Facebook, Vkontakte stb., akkor a jelszó a következő lesz: kódolva:

HTTP/1.1 302 Talált

Szerver: Apache/2.2.15 (CentOS)

X-Powered-By: PHP/5.3.3

P3P: CP="NOI ADM DEV PSAi COM NAV OUR OTRo STP IND DEM"

Set-Cookie:password= ; lejár=Cs, 07-november 2024 23:52:21 GMT; útvonal =/

Helyszín: loggedin.php

Tartalom hossza: 0

Csatlakozás: zárható

Tartalom típusa: szöveg/html; charset=UTF-8

Tehát a mi esetünkben:

Felhasználónév: networkguru

Jelszó:

4. lépés Határozza meg a kódolás típusát a jelszó visszafejtéséhez

Felmegyünk például a http://www.onlinehashcrack.com/hash-identification.php#res webhelyre, és beírjuk jelszavunkat az azonosítási ablakba. Kaptam egy listát a kódolási protokollokról prioritási sorrendben:

5. lépés: A felhasználói jelszó visszafejtése

Ebben a szakaszban használhatjuk a hashcat segédprogramot:

~# hashcat -m 0 -a 0 /root/wireshark-hash.lf /root/rockyou.txt

A kimeneten egy dekódolt jelszót kaptunk: simplepassword

Így a Wireshark segítségével nem csak az alkalmazások és szolgáltatások működésével kapcsolatos problémákat oldhatjuk meg, hanem hackerként is kipróbálhatjuk magunkat a felhasználók által a webes űrlapokon beírt jelszavak elfogásával. A jelszavakat is megtudhatja postafiókok A felhasználók egyszerű szűrőket használnak a megjelenítéshez:

  • A POP protokoll és a szűrő így néz ki: pop.request.command == "USER" || pop.request.command == "PASS"
  • IMAP protokollés a szűrő a következő lesz: Az imap.request tartalmazza a "login" kifejezést
  • SMTP protokollés a következő szűrőt kell megadnia: smtp.req.command == "AUTH"

és komolyabb segédprogramok a kódolási protokoll visszafejtésére.

6. lépés: Mi van, ha a forgalom titkosított és HTTPS-t használ?

A kérdés megválaszolására több lehetőség is kínálkozik.

1. lehetőség: Csatlakozzon a felhasználó és a szerver közötti kapcsolat megszakítójához, és rögzítse a forgalmat a kapcsolat létrehozásának pillanatában (SSL kézfogás). A kapcsolat létrehozásakor a munkamenet kulcsa elfogható.

2. lehetőség: A HTTPS-forgalmat a Firefox vagy a Chrome által írt munkamenetkulcs-naplófájl segítségével dekódolhatja. Ehhez a böngészőt úgy kell beállítani, hogy ezeket a titkosítási kulcsokat egy naplófájlba írja (FireFox alapú példa), és meg kell kapnia ezt a naplófájlt. Lényegében el kell lopnia a munkamenet kulcsfájlját merevlemez egy másik felhasználó (ami illegális). Nos, akkor rögzítse a forgalmat, és használja a kapott kulcsot a visszafejtéshez.

Pontosítás. Egy olyan személy webböngészőjéről beszélünk, akinek a jelszavát ellopják. Ha a saját HTTPS-forgalmunk visszafejtésére gondolunk, és gyakorolni szeretnénk, akkor ez a stratégia működni fog. Ha más felhasználók HTTPS-forgalmát próbálja megfejteni anélkül, hogy hozzáférne a számítógépükhöz, ez nem fog működni – erre való a titkosítás és az adatvédelem.

Miután megkapta a kulcsokat az 1. vagy 2. lehetőség szerint, regisztrálnia kell azokat a WireSharkban:

  1. Lépjen a Szerkesztés - Beállítások - Protokollok - SSL menübe.
  2. Állítsa be a „Több TCP-szegmensre kiterjedő SSL-rekordok összeállítása” jelzőt.
  3. „RSA kulcsok listája”, majd kattintson a Szerkesztés gombra.
  4. Írja be az adatokat minden mezőbe, és írja be az elérési utat a fájlba a kulccsal

A WireShark képes visszafejteni az RSA algoritmussal titkosított csomagokat. Ha a DHE / ECDHE, FS, ECC algoritmusokat használjuk, a szippantó nem segít nekünk.

3. lehetőség: Hozzáférjen a felhasználó által használt webszerverhez, és szerezze meg a kulcsot. De ez még nehezebb feladat. BAN BEN vállalati hálózatok alkalmazások hibakeresése vagy tartalomszűrés céljából ez a lehetőség jogi alapon valósul meg, de nem a felhasználói jelszavak lehallgatása céljából.

BÓNUSZ

VIDEÓ: Wireshark Packet Sniffing felhasználónevek, jelszavak és weboldalak

A hálózati forgalom elfogásának módszerei

A hálózat hallgatása hálózati elemző programokkal az első, legegyszerűbb módja az adatok lehallgatásának.

A hálózati lehallgatás elleni védelem érdekében speciális programokat használnak, például az AntiSniff-et, amelyek képesek észlelni a hálózaton lévő számítógépeket, amelyek figyelik a hálózati forgalmat.

Problémáik megoldása érdekében a szippantásgátló programok speciális jelet használnak a lehallgató eszközök hálózaton való jelenlétére - a szippantó számítógép hálózati kártyájának speciális hallgatási módban kell lennie. Hallgatás módban a hálózatba kapcsolt számítógépek speciális módon reagálnak a tesztelt gazdagépnek küldött IP-datagramokra. Például a figyelő gazdagépek általában az összes bejövő forgalmat feldolgozzák, nem csak a gazdagép címére küldött datagramokat. Vannak más jelek is a gyanús gazdagép viselkedésre, amelyeket az AntiSniff felismer.

Kétségtelen, hogy a hallgatás nagyon hasznos a támadó szempontjából, mivel segítségével sok hasznos információhoz juthat - a hálózaton keresztül továbbított jelszavak, hálózati számítógépek címei, bizalmas adatok, levelek stb. Az egyszerű lehallgatás azonban megakadályozza, hogy a hacker megzavarja a két gazdagép közötti hálózati kommunikációt, hogy módosítsa és megrongálja az adatokat. A probléma megoldásához kifinomultabb technológiára van szükség.

A két A és B gazdagép közötti hálózati kommunikációs folyamat lehallgatása és áthaladása érdekében a támadó lecserélheti az interakcióban lévő gazdagépek IP-címét saját IP-címére úgy, hogy hamis ARP (Address Resolution Protocol) üzeneteket küld az A és B gazdagépnek. .

Rizs. 1 hamis ARP-kérés

Nézzük meg, hogyan használhatja a hacker az ARP protokollt az A és B gazdagép közötti hálózati kommunikáció elfogására.

Az A és B hosztok közötti hálózati forgalom elfogásához a hacker rákényszeríti az IP-címét ezekre a gazdagépekre, így A és B ezt a hamis IP-címet használja üzenetváltáskor. Az IP-címük megadásához a hacker a következő műveleteket hajtja végre.

  • A támadó például a W2RK csomag nbtstat parancsával határozza meg az A és B gazdagép MAC-címét.
  • A támadó üzeneteket küld az A és B gazdagép azonosított MAC-címére, amelyek hamisított ARP-válaszok a gazdagépek IP-címének a számítógépek MAC-címére történő feloldására irányuló kérésekre. Az A gazdagépnek azt mondják, hogy a B gazdagép IP-címe megegyezik a támadó számítógépének MAC-címével; A B hoszt megkapja, hogy az A gazdagép IP-címe megegyezik a támadó számítógépének MAC-címével.
  • Az A és B gazdagép beírja a kapott MAC-címeket az ARP-gyorsítótárukba, majd azokkal üzeneteket küldenek egymásnak. Mivel az A és B IP-címek a támadó számítógépének MAC-címének felelnek meg, az A és B gazdagépek, semmit sem tudva, egy közvetítőn keresztül kommunikálnak, amely képes bármit megtenni az üzeneteikkel.

Az ilyen támadások elleni védelem érdekében a hálózati rendszergazdáknak egy adatbázist kell fenntartaniuk a hálózati számítógépeik MAC-címei és IP-címei közötti leképezési táblázattal.

UNIX hálózatokon ez a fajta hamis ARP támadás megvalósítható a rendszer hálózati forgalom figyelő és vezérlő segédprogramjaival, mint például az arpredirect. Sajnos úgy tűnik, hogy az ilyen megbízható segédprogramok nem valósulnak meg a Windows hálózatokban. Például az NTsecurity webhelyről letöltheti a GrabitAII segédprogramot, amely a forgalom hálózati gazdagépek közötti átirányításának eszközeként jelenik meg. A GrabitAII segédprogram alapvető teljesítmény-ellenőrzése azonban azt mutatja, hogy még mindig messze van a teljes sikertől a funkcióinak megvalósításában.

A hálózati forgalom elfogásához a támadó lecserélheti a hálózati útválasztó valós IP-címét a saját IP-címére, például hamisított ICMP átirányítási üzenetekkel. Az RFC-1122 szerint az A gazdagépnek a kapott átirányítási üzenetet egy másik gazdagépnek küldött datagramra adott válaszként kell értelmeznie, például B. A gazdagép a kapott átirányítási üzenet tartalma alapján határozza meg az átirányítási üzenettel kapcsolatos műveleteit, és Ha az átirányítás úgy van beállítva, hogy a datagramokat A-ból B-be irányítsa át egy új útvonalon, akkor az A gazdagép pontosan ezt fogja tenni.

Rizs. 2 Hamis útválasztás

A csaló-routing végrehajtásához a támadónak ismernie kell néhány részletet annak a helyi hálózatnak a felépítéséről, amelyben A gazdagép található, különösen annak az útválasztónak az IP-címét, amelyen keresztül a forgalmat A gazdagéptől B-be továbbítják. Ennek tudatában a támadó egy IP-datagramot képez, amelyben az IP - A forráscím az útválasztó IP-címeként van megadva, a cél pedig az A gazdagép. A datagramban egy ICMP átirányítási üzenet is található, amelyben az új útválasztó címmezője az IP-címre van állítva. a támadó számítógépéről. Miután megkapta az ilyen üzenetet, az A gazdagép minden üzenetet a támadó számítógépének IP-címére küld.

Az ilyen támadások elleni védelem érdekében le kell tiltani (például tűzfal használatával) az A gazdagépen az ICMP átirányítási üzenetek feldolgozását, és a tracert parancs (Unixban ez a tracerout parancs) felfedheti a támadó számítógépének IP-címét. . Ezek a segédprogramok képesek találni egy további útvonalat, amely a helyi hálózaton megjelent, és nem biztosított a telepítés során, ha természetesen a hálózati rendszergazda éber.

A fenti lehallgatási példák (amelyek korántsem korlátozódnak a támadókra) meggyőzik a hálózaton keresztül továbbított adatok védelmének szükségességét, ha az adatok bizalmas információkat tartalmaznak. A hálózati forgalom lehallgatása elleni védekezés egyetlen módja olyan programok használata, amelyek kriptográfiai algoritmusokat és titkosítási protokollokat valósítanak meg, és megakadályozzák a titkos információk felfedését és helyettesítését. Az ilyen problémák megoldására a kriptográfia lehetőséget biztosít a biztonságos protokollokon keresztül továbbított üzenetek titkosítására, aláírására és hitelesítésére.

Az információcsere védelmét szolgáló összes kriptográfiai módszer gyakorlati megvalósítását a VPN hálózatok (Virtual Private Network - Virtual Private Networks) biztosítják.

TCP kapcsolat elfogása

A legkifinomultabb hálózati forgalom-elfogó támadásnak a TCP-kapcsolat-eltérítést (TCP-hijacking) kell tekinteni, amikor a hacker a TCP-csomagok generálásával és a megtámadott gazdagépnek való elküldésével megszakítja az aktuális kommunikációs munkamenetet a gazdagéppel. Továbbá, a TCP-protokoll képességeit felhasználva a megszakadt TCP-kapcsolat helyreállítására, a hacker elfogja a megszakadt kommunikációs munkamenetet, és folytatja azt a megszakadt kliens helyett.

Számos hatékony segédprogram készült a TCP-eltérítő támadások végrehajtására, de ezek mindegyike Unix platformra való, és ezek a segédprogramok csak forráskód formájában érhetők el a webhelyeken. Így nincs sok haszna a TCP-kapcsolat elfogásával történő támadásoknak.

A TCP (Transmission Control Protocol) protokoll az egyik alapvető OSI szállítási réteg protokoll, amely lehetővé teszi logikai kapcsolatok létrehozását egy virtuális kommunikációs csatornán. Ezen a csatornán történik a csomagok továbbítása és vétele sorrendjük regisztrálásával, a csomagfolyam vezérlése, a torz csomagok újraküldésének megszervezése, és a munkamenet végén a kommunikációs csatorna megszakad. A TCP protokoll az egyetlen olyan alapvető protokoll a TCP/IP családban, amely fejlett üzenet- és kapcsolatazonosító rendszerrel rendelkezik.

A szoftvercsomag szippantói áttekintése

Az összes szoftveres szippantó nagyjából két kategóriába sorolható: a parancssorból történő indítást támogató szippantókra és a grafikus felülettel rendelkező szippantókra. Ugyanakkor megjegyezzük, hogy vannak olyan szippantó készülékek, amelyek mindkét tulajdonságot kombinálják. Ezen túlmenően a snifferek különböznek egymástól az általuk támogatott protokollokban, az elfogott csomagok elemzési mélységében, a szűrők konfigurálhatóságában és a más programokkal való kompatibilitásban.

Általában minden grafikus felülettel rendelkező szippantó ablaka három területből áll. Az első a rögzített csomagok összegzését jeleníti meg. Általában ez a terület minimális mezőt jelenít meg, nevezetesen: csomagrögzítési idő; a csomag feladójának és címzettjének IP-címe; Csomagforrás és cél MAC-címek, forrás- és célportcímek; protokoll típusa (hálózati, szállítási vagy alkalmazási réteg); néhány összefoglaló információ az elfogott adatokról. A második terület statisztikai információkat jelenít meg az egyes kiválasztott csomagokról, végül a harmadik terület hexadecimális vagy karakteres formában mutatja be a csomagot - ASCII.

Szinte minden csomagszimuláló lehetővé teszi a dekódolt csomagok elemzését (ezért a csomagszimulálókat csomagelemzőknek vagy protokollelemzőknek is nevezik). A sniffer rétegenként és protokollonként osztja szét az elfogott csomagokat. Egyes csomagelemzők képesek felismerni a protokollt és megjeleníteni a rögzített információkat. Az ilyen típusú információk általában a szippantó ablak második területén jelennek meg. Például bármely szippantó képes felismerni a TCP protokollt, és a haladó szippantó képes meghatározni, hogy melyik alkalmazás generálta ezt a forgalmat. A legtöbb protokollanalizátor több mint 500 különböző protokollt ismer fel, és név szerint le tudja írni és dekódolni. Minél több információt tud a szippantó dekódolni és megjeleníteni a képernyőn, annál kevésbé kell manuálisan dekódolnia.

Az egyik probléma, amelybe a csomagszimulálók belefuthatnak, az, hogy nem tudnak megfelelően azonosítani egy protokollt az alapértelmezett porttól eltérő port használatával. Például a biztonság javítása érdekében néhány jól ismert alkalmazás beállítható az alapértelmezett portoktól eltérő portok használatára. Tehát a hagyományos, webszerver számára fenntartott 80-as port helyett adott szerverújrakonfigurálható a 8088-as vagy bármely más porton. Egyes csomagelemzők ebben a helyzetben nem tudják megfelelően meghatározni a protokollt, és csak az alacsonyabb szintű protokollról (TCP vagy UDP) vonatkozó információkat jelenítenek meg.

Vannak olyan szoftverelemző modulok, amelyek beépülő modulként vagy beépített modulként szoftverelemző modulokat tartalmaznak, amelyek lehetővé teszik az elfogott forgalomról hasznos analitikai információkat tartalmazó jelentések készítését.

A legtöbb szoftvercsomag-szagoló másik jellemző tulajdonsága a szűrők konfigurálása a forgalom rögzítése előtt és után. A szűrők adott kritérium szerint különítenek el bizonyos csomagokat az általános forgalomtól, ami lehetővé teszi, hogy a forgalom elemzése során megszabaduljon a felesleges információktól.

Ha hibát észlel, jelöljön ki egy szövegrészt, és nyomja meg a Ctrl + Enter billentyűket
OSSZA MEG: