2007:ARP mérgezés
Tartalomjegyzék
Technikai információ
Egy Ethernet hálózatban a számítógépek Ethernet címek alapján kommunikálnak egymással. Minden gépnek van egy ilyen egyedi Ethernet címe, amit MAC (Media Acess Control) címnek is szokás hívni. Van egy mechanizmus, ami az Ethernet címeket párosítja össze az IP címekkel, ez az ARP (Address Resolution Protocol). Az ARP is pontosan azt csinálja amit mi emberek, amikor egyvalakit keresünk a tömegben. Kiabálunk méghozzá úgy, hogy mindenki hallja, de egyedül az az ember fog válaszolni, akit keresünk, feltéve, hogy a tömegben van. Innentől kezdve már tudjuk, hogy jelen van.
Amikor az ARP tudni akarja, hogy az adott IP címhez milyen Ethernet cím is tartozik, egy egyszerű eljárással kiderítheti azt. Ez az eljárás a BROADCASTING. A broadcasting során összeállított adatcsomagot – ami tartalmazza a keresett számítógép címét – az egy hálózatban lévő gépek mind megkapják. Minden egyes számítógép összehasonlítja a csomagban található címet a sajátjával és ha a két cím egyforma, akkor az adott gép egy válaszcsomagot küld a kezdeményező számítógépnek. A kezdeményező számítógép ekkor már tudja, hogy hol van az általa keresett másik gép. Hogy ne kelljen újra és újra megkeresni, a másik számítógép címét eltárolja egy úgynevezett ARP-táblában. Az ARP-tábla egy gyorsítótár, amit az Ethernet- és IP címek átmeneti tárolására használnak. Nyilvánvaló, hogy a benne tárolt adatok örökké nem elérhetőek, hiszen az IP- Ethernet címpárok állandóan változhatnak, így logikus, hogy egy bizonyos időintervallum után a címek törlődnek az átmeneti tárolóból.
Különbség a switch és a hub között
A hubok nem csak töblet hozzáférést nyújtanak egy adott hálózathoz, hanem továbbítják is a jeleket. Az érdemleges különbség a switch és a hub között az az, hogy a hub a bejövő portról az összes többi portra továbbítja az adatot, míg a switch nem. Normális esetben a hubbal felszerelt hálózatokon, a hálózatban szereplő számítógépek egy egyszerű címegyeztetéssel megnézik, hogy az adott csomag nekik szól-e vagy sem. Amennyiben a csomagban található cím megegyezik a számítógép címével, a csomag elfogadásra kerül. Amennyiben nem, egyszerűen eldobja. A switch-ek kicsit elegánsabban csinálják. A switch rendelkezik egy úgynevezett CAM-táblával (Channel Access Method) ami hasonló a hálózati adapterek ARP-táblájukhoz. Szintén címek tárolására szolgál. Amikor egy csomag érkezik a switch egyik portján, akkor a switch egyszerűen eltárolja a címeket, így mindig az kapja meg a csomagot, akinek az valójában szól. A CAM-tábla (amennyiben nincs Port Security) automatikusan frissül. Lehetséges a CAM-tábla kézi frissítése is. Ilyenkor egy másik Ethernet cím tartozik a mi portunkhoz. Ezt port lopásnak nevezik.
Maga a mérgezés
A legtöbb operációs rendszer már az indítás során képes ARP válaszcsomagok fogadására. Ez a bejegyzéscsere teszi lehetővé a MITM (Man In The Middle) végrehajtását.
Vegyünk egy példát. Van két számítógépünk gép 1 és gép 2. A gép 1 IP címe 10.0.0.1, MAC címe: AA:AA:AA:AA:AA:AA. A gép 2 IP címe: 10.0.0.2, MAC címe BB:BB:BB:BB:BB:BB. Most végre akarunk hajtani egy MITM támadást. Mi vagyunk a gép 3 (IP: 10.0.0.3, MAC: CC:CC:CC:CC:CC:CC).
Szóval, mi küldünk egy ARP választ a gép 1-nek, hogy mi vagyunk a 10.0.0.2-es számítógép. Ekkor a gép 1 frissíteni fogja az ARP-tábláját. Innentől kezdve a gép 1-es ARP-táblájában a 10.0.0.2-es IP címhez nem a gép 2 MAC címe fog tartozni, hanem a miénk. Amikor a gép 1 küldeni akar a gép 2-nek egy csomagot, akkor látni fogja, hogy az ARP-táblájában már szerepel a 10.0.0.2-es IP cím így értelemszerűen a csomagot nekünk fogja címezni, nem pedig a gép 2-nek. Az 1-es gép már mérgezett. Most ugyanezt eljátszuk a gép 2-vel. Közöljük a gép 2-vel, hogy a 10.0.0.1-es IP címhez nem az AA:AA:AA:AA:AA:AA MAC cím tartozik, hanem a CC:CC:CC:CC:CC:CC. Ő is frissíti a saját ARP-tábláját és ő is mérgezett lett. Most már mind a két géptől érkező csomagokat a mi gépünk fogja megkapni. Ahhoz, hogy a gép 1 és a gép 2 között lévő kapcsolat látszólag sértetlennek tűnjön, továbbítani kell a csomagokat az eredeti címűkre.
Képzeljük el úgy, mint a levelezésnél a Posta (ez vagyunk mi). Rajta keresztül mennek a házak (a másik két számítógép) közötti a levelezések.
Van néhány olyan operációs rendszer, amik addig nem fogadnak el ARP válaszcsomagot addig, amíg ők maguk körbe nem járták a hálózatot.
Megjegyzés
A Port Security-vel ellátott switchek nem állítják meg az ARP mérgezést, mivel mi nem a MAC címmel ügyeskedünk, hanem az IP-vel.