logó
Friss hírekFórum témákApróhirdetőÁlláskeresőSzoftverek
 Szavazógép
Mennyit vagy online egy nap?
1 óránál kevesebbet
1-5 óra között
5-10 óra között
10 óránál többet
egész nap
Szavazok!
Eddigi eredmények

 Keresés
Írd be a keresendő kifejezést vagy szótöredéket:


Keresés indítása

 Legfrissebb
 Tartalomkövető
Tartalom
Hozzászólások

Gyakorlat: támadások Linux alatt

Gyakorlat · 2005. május 15., 11:38 · yorkshop · Nyomtatás ·

Mondani sem kell, a számítógépes hálózatok védelme élet-halál kérdése. Mindkét oldalon kiváló szakemberek küzdenek egymással. Az alapvető fegyvereik általában Linux alatt érhetőek el, így most mi is ezen az operációsrendszeren mutatunk be pár gyakorlatban is működő támadási formát - szigorúan tanító-nevelő szándékkal.

Először is nyomatékosan figyelmeztetnénk mindenkit, hogy a következő módszerek büntetőjogi eseménynek minősülnek, így senki ne próbálgassa esztelenül. Az alábbi írást a lehetőségek megismertetése céljából követtük el. Az információk nyilvánosan elérhetőek, saját hálózat tesztelésére és tanulás céljából kiválóan használhatók.

DoS (Denial of Service) támadás

A DoS bizonyos szempontból a legalapvetőbb támadási forma, amelyet a károkozók előszeretettel alkalmaznak. Nem igényel mély hálózati protokoll, vagy operációs rendszer szintű ismereteket. A név magyarul szolgáltatás megtagadást jelent, ami annyit tesz, hogy egy hálózati túlterheléses támadás hatására a kiszolgáló szerver annyira leterhelődik, hogy képtelen kiszolgálni az újabb kéréseket. A leterheltséget két szempontból nézhetjük. Egyik hatás a szerver processzorának túlterhelése, a másik pedig a hálózat túlterheltsége, amire a szerver kapcsolódik. Mindkettőt egyre nehezebb elérni, hisz a szerverek manapság leggyakrabban gigabites hálózatokra kapcsolódnak és általában izmos procival ketyegnek. Azért van "megoldás".

A legkönnyebb olyan gépeket túlterhelni elárasztásos csomagküldéssel, amik egy nagyobb LAN egyik hosztját képezik, lehetőleg kisebb sebességű hálózaton. Ilyen lehet egy kisebb internet szolgáltató belső hálózata. Tehát adott egy LAN hálózat több hoszt géppel. Tegyük fel, hogy a támadó is ezen a hálózaton lóg, tehát nem kell megküzdenie a szerver kívülről jövő többesküldés szűrési funkciójával. Már csak egy olyan programra van szükség, ami korlátlan számban, 0 másodperces időközönként bármilyen felépítésű IP csomag küldésére képes. Erre mi a Sing programot használtuk. A manuált a "man sing" parancsal érhetjük el.
A támadás elve a következő: küldünk egy broadcast (adatszórásos) üzenetet gépünkről a hálózatba. Ez az üzenet egy ICMP protokollbeli request (kérés). A protokollba most nem megyünk bele, a szerepe most csupán annyi, hogy erre az üzenetre kötelező a válasz. Tehát ha ezt az üzenetet mindenkinek elküldjük a hálózatba, mindenki válaszolni fog nekünk rá. Ezzel persze magunkat hekkelnénk, ezért a forrás címét átállítjuk a támadott gép címére. Ezzel még nem vagyunk elégedettek, így rögtön ezer ilyen üzenetet küldünk kifelé, így egy rakás üzenetet generálunk és mindegyik a megtámadott gépre zúdul. A használt parancssor:

sing -T 0 -s max -S -l 1000

Mit is csináltunk?
-T 0: a csomagok között eltelt idő másodpercben. Ez természetesen 0, így úgy nyomjuk ki a csomagokat, ahogy a csövön kifér.
-s max: az IP csomagok adatának nagysága. Ez lehetőleg legyen maximális, dolgozzon minél többet a szerencsétlen áldozat.
-S : a forráshoszt címének kéne itt szerepelnie, ám mi azt akarjuk, hogy minden üzenetre a célgépre érkezzen a válasz, így itt most a forráscímnél a célgép IP címe szerepel.
-l 1000: 1000 darab üzenet egymás után
: a hálózat broadcast címe. Ha erre a címe küldünk üzenetet, minden hoszt megkapja.

SYN támadás (SYN flood)

Ehhez a támadási formához már kissé jobban kell ismerni a TCP protokoll felépítését, de jelen esetben a TCP protokollnak csak a kapcsolat felépítési mechanizmusa érdekel minket (ún. 3 utas kézfogásos módszer). Ez nagyon leegyszerűsítve a következőképpen zajlik: a kapcsolat kezdeményezője küld a célgépnek egy olyan TCP csomagot, amiben a SYN bit nevezetű bitet beállítja 1-be, ezzel jelezve a célgépnek, hogy kapcsolatot szeretne kezdeményezni, majd egy véletlen számot is beletesz a csomagba. A vevő miután megkapta a csomagot, küldd egy válaszüzenetet, amiben ő is beállítja a SYN bitet, majd egy másik bitet, amit ACK-nak nevezünk, ezzel adja tudtára a küldőnek, hogy oké a dolog. Az üzenetbe belemásolja a küldő véletlen számát, így hitelesítve magát. Erre válaszul a kezdeményező már csak egy ACK bites csomagot küld vissza és kezdődhet az adatforgalom. Persze más adatok is elküldésre kerülnek, de ez jelen esetben minket nem érdekel. A protokollban van egy várakozási idő definiálva, amíg várni lehet a kapcsolat felépítése alatt a válaszüzenetekre. Ha ezalatt nem érkezik válasz, törli a kapcsolat kezdeményezést. Ez az érték egy perc körül szokott lenni. Ha a kezdeményező küldd egy kapcsolatfelépítési kérdést a SYN bittel jelezve, a vevő eltárolja ezt a kérést egy véges memóriában, amíg le nem rendeződik a kapcsolatfelvétel. Hangsúlyozottan véges ez a memória. Annyi a teendő ezek után, hogy annyi ilyen felkérő csomagot küldünk a célgépnek, amennyit csak tudunk, minél rövidebb idő alatt. Így annak megtelik ez a véges pufferje, amiben a félkapcsolatokat tárolja, tehát új kapcsolatot már nem tud felépíteni, feldobja a talpát. Ennek megvalósítására szükség lesz a packit csomagra. A használt kód:

packit -t TCP -c 10000 -d -D 80 -S 80 -F S -sR -w0

Mit csináltunk?
-t TCP: protokoll megadása.
-c 10000: ne sajnáljuk a csomagokat, ki tudja, mennyi nyitott kapcsolatot tud kezelni az áldozat. 10000 csomag.
- d: áldozat IP címe
- D: cél portja (TCP portszáma 80)
- S: tőlünk is a 80-as porton menjen ki, bár ez lényegtelen
- F S: ez állítja 1-be a csomagok SYN bitjét
-sR: random forrás IP-t állítunk be. Ez nagyon fontos, mert a célgépnek azt kell látnia, hogy rengeteg különböző kezdeményező akar vele kapcsolatba lépni.
-w0: Végül a csomagok közötti idő 0 másodperc. Ahogy a csövön kifér.

Meg kell jegyezni, ha gépünk egy helyi hálózat egyik gépe (legtöbb esetben ez fordul elő egy netszolgáltató helyi hálójában), akkor ha hálózaton kívüli gépet támadunk, a forrás IP-ket illik olyanra választani, ami létezik a helyi hálózaton, különben csomagjaink ki sem jutnak a hálózatból. Kivéve, ha DHCP-vel osztják ki a helyi hálózati címeket (192.168.x.x).

A cikk következő részében szó lesz olyan támadásokról, ahol már a gépen is kutakodhatunk. Végezetül ismét csak hangsúlyoznunk kell, nem tippeket szeretnénk adni, csupán felhívni a figyelmet, hogy ilyen van, ezt meg lehet csinálni, ezek ellen kell védekezni. Éppen ezért nem vállalunk felelősséget a cikkben található információk felhasználásáért.

Kapcsolódó írások

Tűzfallal a támadások ellen - bemutatjuk a ZoneAlarm-ot
2007 nyolc legjobb Linuxos játéka
Ubuntu Linux kerül a Dell gépekre
Vendégünk volt: az UHU Linux csapata
Rövid mese a Linux-disztribúciókról

Új hozzászólás írása

Tölts ki minden mezőt! E-mail címed nem jelenik meg az oldalon és nem adjuk ki harmadik fél számára. A webcímek automatikusan linkké konvertálódnak!

Név:
E-mail cím:
Hozzászólás:
5 + 4 =   (Írd be a két szám összegét, hogy biztosan tudjuk, nem robot vagy!)
 Hozzászólás elküldése



A vélhetően nem valós e-mail címmel érkező hozzászólásokat előfordulhat, hogy töröljük. Egyes felhasználóknak saját képük is van a nevük előtt, ők Gravatart használnak. Ha nem tudod mi ez, de te is szeretnél, itt olvashatsz róla.


 Kapcsolódó cikkek
 Új hozzászólások
 A hét linkje
 Fórum legfrissebb
 Friss szoftverek
 Apróhirdető
 Partnereink

© 2004-2008. jox.hu informatikai magazin - Minden jog fenntarva.
Cikkeink átvétele kizárólag előzetes egyeztetést követően lehetséges.
Hirdetési ajánlat | Impresszum | Adatvédelem | Kapcsolat

emgmedia@emgmedia.hu | +36.20.2538602