2024. április 19., péntek

Gyorskeresés

Útvonal

Cikkek » Számtech rovat

EthicalHacking-6. Rész

  • (f)
  • (p)
Írta: |

Üdvözöllek EthicalHacking cikksorozatom 6. részében! Eme cikkben egy kis kitérőt teszünk a szoftverhibák,...

[ ÚJ TESZT ]

Üdvözöllek EthicalHacking cikksorozatom 6. részében!

Eme cikkben egy kis kitérőt teszünk a szoftverhibák, biztonsági rések világába. Azok, akik szeretik, ha csak meg kell nyomniuk a nagy HACK IT! gombot, jól figyeljenek, mert ez ma az ő napjuk lesz.

A szoftverhibák:
Az emberek által készített programokban természetesen mindig akad egy vagy több hiba. Hiszen mi nem vagyunk tökéletesek, nem tudunk hibátlant alkotni. Még a profi programozók is elkövetnek néha alapvető hibákat, és mivel rutinjukból kifolyólag ezek nem szintaktikai hibák, a fordítóprogramok nem is veszik őket észre. Egy hibának sokféle oka lehet, kezdve a kompatibilitás megőrzésétől (szándékosan hibás kód, mert ez az egyetlen megoldás az adott esetre) a véletlen, figyelmetlenségből fakadó tévesztésig.

A programokat a hibák ellen sokat tesztelik, debugolják, de már egy egyszerűbb programnak is lehet annyiféle kimenete, hogy nem tudnak minden esetet kipróbálni, kielemezni. Gondoljunk pl. egy olyan programra, mint az Audio/Video to MP3 Converter. Ez egy egszerű program, egyszerű kezelőfelülettel, beállításai nincsenek, mégis annyiféle bemeneti formátumot támogat, hogy szinte lehetetlen kitesztelni.

De mire jó nekem egy hiba..?
Egy hiba, ha felfedezik, végzetes következményekkel járhat, pl. lehetővé teheti egy rosszindulatú behatolónak, hogy Administrátori jogokat szerezzen a gépen. Vagy lehetővé teheti más káros folyamatoknak a működést, mint pl. az elhíresült Kaminsky esetben ahol a DNS szerverprogramok közös nagy hibáin keresztül DNS cache poisoningot lehetett megvalósítani. (A témában írt értekező hírlevelem túl gyors elavulása miatt nem ment ki, de kérésre elérhetővé teszem. mod: A kérés megesett, INNEN tölthető az adott fájl.)

Egy hiba kihasználása...:
Egy hiba általában memória problémát szokott jelenteni: a programok minden adatnak, amivel dolgoznak lefglalnak egy adott memória teret (hogy melyiket, azt az operáció rendszer kernele mondja meg). Egy egyszerű program mondjuk lefoglal 4kb-ot 2 string-szöveg változónak, meg mondjuk még 4-et 2 darab integer típusú egész számnak. Ha el tudjuk érni speciális adatok bevitelével, hogy az adat túllépje a neki megszabott memóriamennyiséget, akkor úgynevezett puffer/buffer overflow, vagyis puffer/buffer túlcsordulást idézhetünk elő. Ez egy kellemetlen állapot a programnak, lévén nem tudja pontosan hol is van az az adat, amit neki most kezelnie kéne. Szóval ez egy olyan helyzet, mintha, hasonlattal élve, főbe kólintották volna valami tompa tárggyal a programot, és most kezdene feltápászkodni. Eközben a tápászkodás közben mindenbe belekapaszkodik, ami csak segíthet neki, és a támadó természetesen segédkezet nyújt neki manipulált utasítások formájában. Ilyenkor tud olyan dolgokat csinálni, amikről fentebb olvastatok, és lejjebb még találtok bővebb infót.

Mégis, hogyan lehet egyszerűen kihasználni egy hibát, látványos eredményt akarok, biztonságos tesztkörnyezetben...!
Hohó, itt már beleütközünk a cikksorozatom köré kiszabott korlátokba, de ne csüggedjetek, majd megpróbálok általános lenni.

Tehát létezik egy keretrendszer (MSF 3.1), amelynek nagy előnye, hogy egyszerű kezelőfelülettel és moduláris felépítéssel rendelkezik. Ez annyit tesz, hogy egyszerűen demonstrálható vele egy támadás, amely egy szoftverhibára épül, valamint a naprakészség érdekében aktuális modulokkal bővíthető. Ez egy igazi svájci bicska, mondhatnánk, de ami még ennél is masszívabb: bizonyos programmal együttműködve (Fast-Track) képes teljesen automatikus támadásra. Tehát: automatikusan keres egy nyitott portot a célgépen, automatikusan kiválasztja a megfelelő exploitokat (hibákat) a felderített operációs rendszer alapján, alkalmazza őket az áldozat ellen, valamint beállíthatod a kívánságlistádat, amit szintén végrehajt a program automatikusan.
A kívánságlista főbb elemei:
- Command Prompt a célgépen admin jogokkal, akár tűzfalon keresztül is
- Fájlok feltöltése a célgépre, ezek injektálása (DLL-ek) vagy futtatása (EXÉ-k) admin jogokkal

Ezzel a két elemmel máris kiegyezhetünk, hiszen egy személyreszabott trójai már otthon is készíthető, szép GUI felületen keresztül. Ha ezt aztán feltöltjük az áldozat gépére egy szoftverhibán keresztül, majd futtatjuk ott, akkor már nyeregben vagyunk, nem igaz?

Pontosan hogyan zajlik az automatikus támadás..?
Először is meg kell adni a célgép IP-címét. Egy enter után indul is a próbálkozás: elsőként egy port scanner vizsgálja át az adott gépet, nyitott portok, valamint plusz információk (operációs rendszer, MAC cím) kutatva. Ezekután a keretrendszer betölti a megfelelő exploitokat, és elkezdi őket sorban kipróbálni. Az áldozat gépén ebből semmit nem lehet észrevenni. Ha sikerül egy hibát kihasználva bejutnia akkor egy ún. session-t hoz létre, amelyre később rákapcsolódva egyszerre csak bent találjuk magunkat a támadott gépen, admin jogokkal, és egy cmd shellel felruházva. Mindezt egyetlen IP-cím, egy enter gomb, meg némi szerencse segítségével!
Ezekután létrehozhatunk egy megfelelő admin felhasználót, saját használatra, aztán elhelyezhetünk egy backdoort is, hogy később is vissza tudjunk térni, indíthatunk spameket, kidumpolhatjuk a felhasználók jelszavait, product key-eket lophatunk, rejtett szolgáltatásokat indíthatunk, valamint pajzsként használva a gépet rajta keresztül tovább támadhatunk.

Aki próbálkozni szeretne, annak ajánlom a már régebben említett LinuxLiveCDt, abból is az újabb 3.0-ás verziót, valamint egy Windows 2000 telepítőlemezt és egy Microsoft Virtual PC 2004-et. Ezeket összekombinálva szép eredményeket lehet felmutatni. (Virtual PC-ben az F8 gomb a Win2000 licenszszerződésének elfogadásához így nyomható le: Ctrl+F8)

Fórumtémába várok véleményeket, csak abban reménykedem, hogy a script kiddieknek is eljutott a füléig az EthicalHacking alapeszménye, és nem fogják rosszra felhasználni a nagy HACK IT! gomb előnyeit. Ha pedig ennyit sem tudtak megérteni, legalább reményeim szerint elolvassák a vázlatos technikai hátterét annak, amit csinálnak, így is kicsit feljebb emelkedhetnek a szokásos script kiddie színvonalon.

Maradok üdvözlettel:
DOMy


Hírlevél-író

Ja, és igen, nem alszom, jól látod a cikk írásásnak idejét.

Azóta történt

Előzmények

  • EthicalHacking-5. Rész

    Üdvözöllek az EthicalHacking sorozatom rendhagyó, 5. részéhez! Ezt a részt nem is nevezhetném igazi...

  • EthicalHacking-4. Rész

    Üdvözlök mindenkit EthicalHacking cikksorozatom 4. részében! Mivel már régebben írtam,...

  • EthicalHacking-3. Rész

    Üdvözlök mindenkit EthicalHacking cikksorozatom 3. részében! Előzményekért még mindig...

  • EthicalHacking-2. Rész

    A WEP és a WPA: teljes biztonság a levegőben? Nem hinném… Üdvözlök mindenkit az EthicalHacking...

Hirdetés

Copyright © 2000-2024 PROHARDVER Informatikai Kft.