1.
Bevezetés
Ahogyan növekszik az Internet népszerűsége, úgy jelennek meg az újabbnál újabb szolgáltatások, alkalmazások. Ezek közül a legtöbb egyre komolyabb veszélyeket hordoz magában, a hétköznapi felhasználóknak is újabb fogalmakkal kell megismerkedniük. Vírusok, férgek, kéretlen levelek, túlterheléses támadások – ez mind az Internet árnyékos oldalához tartozik. Néhány éve pedig feltűnt egy új, minden eddiginél nagyobb veszélyeket magában hordozó entitás, amelyet botnet néven ismerünk. A cikk megpróbálja összefoglalni a veszélyforrásokat, számba venni az elkövetők motivációit és a lehetséges védekezési módokat.
2.
Bot, botnet
Az Internet fejlődésével, a felhasználók számának növekedésével párhuzamosan megsokasodtak az olyan rosszindulatú alkalmazások, amelyek segítségével az áldozat számítógépe távolról irányíthatóvá válik, a támadó átveheti az uralmat felette. Innentől kezdve az áldozat szerepét betöltő gép már nem - vagy nem csak - a tulajdonos akaratának engedelmeskedik, hanem a hálózatról beérkező parancsokat is elfogadja, divatos néven „zombi” lesz belőle (a horrorfilmek kedvelt élőhalottjai is tudattalanul, saját akarat nélkül cselekszenek). Kezdetben az ilyen funkcióval ellátott programok a tulajdonos jóhiszeműségét használták ki, magukat valami hasznos vagy érdekes alkalmazásnak adták ki, így érték el, hogy feltelepítsék őket a gépre. Telepítés után aztán egy titkos ajtót nyitottak a gazdaszámítógépre, amin keresztül a támadó elérhette azt. A viselkedésük miatt ragadt rajtuk a „trójai” elnevezés, mivel a monda szerint Odüsszeusz is egy ajándék falóba rejtett katonákkal vette be Tróját. A kezdeti trójai alkalmazások még főként csínytevésekre voltak alkalmasak, később azonban már teljes körű távelérést vagy jelszavak, hitelkártya adatok ellopásának lehetőségét nyújtották a támadó számára. A trójai programok evolúciójának, az elektronikus levelekben terjedő vírusok illetve a hálózaton önálló terjedésre képes férgek (worm) elszaporodásának köszönhetően hamarosan megjelentek jóval komplexebb rosszindulatú alkalmazások is. Kedvelt elnevezésük a „robot” szó rövidítéséből adódó „bot” 1, ami már enyhe utalást is tartalmaz a megfertőzött számítógép felhasználási területére, ugyanis a legtöbb esetben ezek a támadó számára végeznek el különböző feladatokat. A feladatok lehetnek békések, de jobbára inkább illegális célokat szolgálnak. Fontos megjegyezni, hogy bot önmagában még nem feltétlenül rosszindulatú. Léteznek békés célokat szolgáló bot alkalmazások is, ilyen például a Seti@home projekt is, amely idegen civilizációk után kutat a rendszerbe csatlakozott felhasználók számítógépeinek bevonásával. Sok lényeges különbség van azonban az ilyen elosztott alkalmazások és a rosszindulatú botok között. Egy rosszindulatú bot nem kér engedélyt a gazdagép tulajdonosától telepítés előtt, önállóan végez illegális tevékenységet és fertőz meg más potenciális áldozatként szóba jöhető számítógépeket. A továbbiakban a „bot” és a „botnet” szavak alatt a rosszindulatú céllal létrehozott elemeket és hálózatokat értjük.
1
A robot szó eredete 1920-ba nyúlik vissza, amikor Karel Čapek „Rossums Universal Robots” című színdarabjában a mesterséges dolgozókat nevezte így, a cseh és más szláv nyelvekben előforduló „robota” (munka) szóból származtatva. Érdekesség, hogy a szót – bár ő publikálta először - nem Karel Čapek találta ki, hanem bátyja, Josef. [1]
Egyetlen ilyen számítógép önmagában még nem képvisel komoly potenciált, ezért a kezdeti - főként kémkedési, adatszerzési céllal létrehozott – bot alkalmazásokat továbbfejlesztették, közös hálózatba kötötték, miáltal komoly számítási teljesítménnyel rendelkező elosztott rendszereket hoztak létre. Ezeket a hálózatba kötött számítógépeket „botnet” néven ismerjük. Egy ilyen botnet néhányszor tíz, de akár néhány ezer (sőt, millió) elemből áll2, és komoly kockázatot jelent az Internet összes végpontjára nézve. Természetesen az ilyen gépek irányítást igényelnek, ezért minden botnet fontos részét képezi a vezető és irányító (Command & Control, vagy rövidítve C2) rendszer, amin keresztül a botnet tulajdonosa kiosztja a feladatokat a hálózat számára. A tulajdonost szokás „botmaster” vagy „botherder” névvel illetni, mivel hasonló szerepet lát el, mint a nyájat terelgető juhász. Ezeket a C2 csatornákat úgy kell kialakítani, hogy a lebukás veszélye minimális legyen, de hatékonyan és gyorsan lehessen a botnet számára a feladatot kiadni. A hatékony működéshez az is hozzátartozik, hogy a frissen megfertőzött számítógépek automatikusan jelentkezzenek be egy találkozási pontra, és csatlakozzanak a botnethez.
3.
A botnetek alkalmazási területei
Ha egyszer a botnet irányítójának sikerült létrehoznia egy nagymennyiségű végpontból álló botnetet, akkor természetesen azt használni is szándékozik valamire. A hackerek3 egymás ellen vívott virtuális harcán felül néhány éve bűnözői körök is megjelentek a botnetek körül, komoly üzletet szimatolva az ilyen hálózatok által nyújtott potenciálban. Az információs infrastruktúra fejlődésével a militáns szervezetek is újfajta fegyvert láttak a számítógépes hálózatokban, amely nem igényel különösebben nagy anyagi ráfordítást, mégis komoly károkat képes okozni a szemben álló félnek. Néhány alkalmazási terület: - Adatlopás; - Elosztott túlterheléses támadás (DDoS); - Kéretlen levélküldés; - Reklám manipulációk; - Gépesített jelszófeltörés.
Adatlopás Régi közhely, de igaz: az információ érték. A megfertőzött és uralom alá vont számítógépeken rengeteg olyan személyes adat található, amit a tolvajok könnyen készpénzre is tudnak váltani. Ha eltekintünk a triviális lehetőségektől (hitelkártya adatainak megszerzése, internetes banki hozzáférés adatainak megszerzése), akkor is rengeteg módon profitálhat a támadó az adatokból. Az áldozat gépére telepített keylogger alkalmazás (ami a leütött billentyűket tárolja, majd a támadó számára
2
A Storm worm nevét a finn F-Secure nevű cég adta. A cég szerint a Storm botnetet a Zhelatin Gang nevű orosz csoport tartja kézben, és 1 milliónál több számítógépből áll. Más kutatók szerint ezt nem lehet pontosan meghatározni. http://www.networkworld.com/news/2007/092707-storm-largestbotnet.html 3 A hacker elnevezést előszeretettel aggatják a rosszindulatú számítógépes támadásokat elkövetőire. Az érintettek szerint a hacker lét nem egyenlő a betörésekkel, kizárólag a technológiai fejlődést szolgálja. Sok hacker száll csatába a rosszindulatú programokat fejlesztőkkel szemben is. A betöréseket véégrehajtókra talán szerencsésebb elnevezés a cracker szó.
elküldi) rengeteg hozzáférési adatot képes begyűjteni. Ezek a hozzáférési jogosultságok aztán akár direkt, akár indirekt módon készpénzzé tehetők. 2006-ban komoly csalássorozatot követtek el az online árveréseket bonyolító eBay.com weboldalon. Az eBay regisztrált felhasználói aukcióra bocsáthatnak különböző tárgyakat, amire más felhasználók licitálnak, majd a győztes megvásárolja a kikiáltott tárgyat. Természetesen a vásárlónak óvatosan kell eljárnia, mivel Interneten, felhasználói nevek mögé bújva zajlanak a tranzakciók. A megbízhatóság ellenőrzésére az eBay a „feedback score” nevű mérőszámot rendeli minden felhasználójához. Ez az érték a vásárlók és az eladók visszajelzései alapján generálódik egy algoritmus alapján, és két részből áll: a felhasználó tranzakcióinak számából és a visszajelzések pozitív vagy negatív voltából képzett százalékos értékből. Minél több tranzakcióval rendelkezik egy eladó, és minél nagyobb a vevőelégedettségi mutatója, annál valószínűbb, hogy a megvásárolt termék a hirdetett minőségben el is jut a vásárlóhoz. Ezzel éltek vissza a támadók: bot segítségével regisztráltak fiktív felhasználókat, majd 1 centes aukciókat hirdettek meg a nevükben, amiket szintén botok segítségével meg is vásároltak (lehetőség van azonnali áron elvinni a terméket), majd automatikusan pozitív visszajelzéseket adtak egymásról. A tapasztalt eBay felhasználók a 100 tranzakcióval rendelkező, 99% feletti pozitív visszajelzéssel rendelkező eladókat általában megbízhatónak tekintik. Amint a bot elérte ezt az értéket, aukcióra bocsátottak népszerű berendezéseket (általában MP3 lejátszókat) kedvező áron. A nyertes vásárló kifizette az ellenértéket, azonban sosem kapta meg a terméket. Az eBay természetesen letiltotta az ilyen eladókat, azonban a botnet segítségével néhány dollárból pillanatok alatt egy új azonosságot építhettek. Az eBay regisztrációhoz elektronikus levélcím is szükséges, azonban a begyűjtött bejelentkezési adatok segítségével tetszőleges számú postafiók állt a csalók rendelkezésére [2].
Elosztott túlterheléses támadások (DDoS) A DDoS (Distributed Denial of Service) támadás során a támadó egy időben nagyszámú internetes végpontot felhasználva olyan mennyiségű adatot küld az áldozat számára, amit az nem képes kezelni, így működésképtelenné válik. A működésképtelenség nem minden esetben jelent tényleges leállást, a funkcionális működésképtelenséghez elegendő a nagymértékű lassulás, a válaszidő elfogadhatatlan nagyságúra növekedése is. Mivel egy időben rengeteg végpont vesz részt a támadásban, hagyományos eszközökkel – csomagszűrés, támadó végpontok forgalmának letiltása - szinte lehetetlen a védekezés. Egy hatásos támadás lebonyolításához nem is szükséges hatalmas méretű botnet. Jelenleg egy átlagosnak mondható ADSL internet-előfizetés is 192kbit/s feltöltési sebességgel rendelkezik [3]. Egy 520 tagból álló botnet a teljes, gépenként rendelkezésre álló feltöltési sebességet kihasználva képes egy 100Mbit/s sebességű hálózatot túlterhelni. Az 520 tag egy jelentéktelennek tekinthető méretű botnetet jelent, figyelembe véve azt, hogy például a Storm botnet több millió tagból áll. Napjainkban az ilyen jellegű támadások szinte kizárólag botnetek művei, veszélyességét tekintve pedig talán az első számú veszélyforrás az Internet számára. A legtöbb DDoS támadást nem a pénzszerzés motivál, de az alvilág számára is jövedelmező üzletág lehet egy ilyen támadásokat végrehajtani képes hálózat. Felmerül persze a kérdés, hogy egy ilyen támadás milyen módon váltható át valódi pénzre, ki hajlandó fizetni érte? Néhány ismertebb módszer:
-
Konkurencia működésének ellehetetlenítése Zsarolás; Támadó kapacitás bérbeadása.
Konkurencia működésének ellehetetlenítése Az elektronikus – és azon belül is az internetes - kereskedelem egyre nagyobb forgalmat bonyolít le. Az internetes tartalomszolgáltatás reklámokból képződő árbevételében már megközelítette, sőt el is hagyta a rádiós piacét. Az internetes piac szereplői kiélezett versenyben próbálják részesedésüket megőrizni vagy mások kárára tovább növelni. Az ügyfelekért vívott harcban komoly, pénzben is mérhető hátrányt jelenthet egy hosszabb időre működésképtelenné váló weboldal. A hosszabb kiesést a konkurencia saját javára fordíthatja. Egy DDoS támadás mögött álló megrendelőt még az elkövetőnél is sokkal nehezebb azonosítani.
Zsarolás Az előző pontban felsorolt veszélyek ellen nem könnyű védekezni, a komolyabb támadásokat is sikeresen kiálló informatikai háttér megteremtése nem kevés pénzbe kerül. Egy ilyen támadással megfenyegetett cég két dolgot tehet: vagy megpróbálja túlélni a támadást a megfelelő óvintézkedések megtétele mellett, vagy pedig kifizeti a támadó által kért váltságdíjat. 2003 októberében a Canbet Sports Bookmakers nevű online fogadóirodát zsarolták meg, majd amikor a cég megtagadta a 10 000$ „védelmi pénz” kifizetését, a Breeder’s Cup idejére működésképtelenné tették weboldalát. A céget ez idő alatt körülbelül 200 000$ kár érte. A feljelentést követően megindult nyomozás 2003 novemberére elvezetett egy 10 tagú lettországi bandához, akik vallomása alapján a nyomozóknak sikerült három orosz fiatalembert letartóztatniuk [4]. A bűntett bizonyítási eljárása után 2006 októberében mindhárman fejenként 8 év börtönbüntetést kaptak [5]. A fenti példa jól mutatja, hogy mekkora veszélyt jelenthet egy kisebb cég számára a túlterheléses támadás, szélsőséges esetben akár a cég csődjét is okozhatja. Nagyméretű botnetekkel akár több hétig is folyamatosan működésképtelenné tehető egy cég teljes internetes szolgáltatási képessége, így sokan inkább engednek a zsarolásnak.
Támadó kapacitás bérbeadása A zsarolások végrehajtása mindig jelentős kockázattal bír, az áldozat és a tettes között pénzügyi kapcsolatnak kell lennie, ami nyomozói eszközökkel felderíthető. Ennél sokkal kényelmesebb módszer az, amikor a botmaster csak a botnet képességeit árulja. Ekkor a tényleges támadást végrehajtó és az áldozat között nincs közvetlen kapcsolat, így a lebukás veszélye is csökken. Léteznek olyan megrendelők is, akik nem kívánnak pénzt szerezni az áldozattól. Az ő esetükben teljesen más motivációt kell keresni: a terroristákat a nyilvánosság figyelmének felkeltése, egyes államok katonai erőit a szembenálló fél informatikai infrastruktúrájának meggyengítése, a hacktivistáknak nevezett szélsőségeseket pedig az ügyük számára a széles körű nyilvánosság biztosítása hajtja. Az ilyen akciók minimális kockázattal járnak a botnet üzemeltetői számára.
Egy DDoS támadás kivitelezésére alkalmas botnet bérleti díja nem túl magas, az Internetet böngészve könnyen és gyorsan ráakadhat az ember egy megfelelő hirdetésre:
1. ábra DDoS szolgáltatás hirdetése egy orosz weboldalon
A forum.xaknet.ru oldalon egy divinorum nevű felhasználó garanciával hirdeti DDoS szolgáltatását, óránként 20$ vagy napi 100$ költséggel. A vevőelégedettség garantálása érdekében egy 10 perces tesztperiódust is biztosít, így a megrendelő nem vesz zsákbamacskát. A DDoS támadások kiemelt szerepet játszottak 2007. április és május hónapban az észtországi zavargások nyomán egyes észt szervereket működésképtelenné tevő akciókban, illetve 2008. júliusi Grúzia elleni orosz katonai akció során. A grúziai katonai akció alatt botnetekről kiinduló DDoS támadások a grúz kormányzati szervereket szinte leradírozták az Internetről. Az orosz internetes alvilág fórumain megjelentek a DDoS támadásokat végrehajtani képes önkéntes botmaster toborzások, az eredményeket látva kijelenthető, hogy sikerrel. Az elkövetők személye minden valószínűség szerint örökre ismeretlen marad (az egy évvel korábbi észt incidens kapcsán egyetlen észt – orosz ajkú - egyetemistát ítéltek el, holott egyértelmű, hogy nem ő volt felelős az összes támadásért). A történések azt bizonyítják, hogy hamarosan az interneten elkövetett DDoS támadások bevonulnak az állami hadseregek fegyvertárába is. Charles W. Williamson, az Egyesült Államok Légierejének ezredese egy írásában [6] amellett száll síkra, hogy az USA hadseregének is szüksége van botnetekre, amivel az Interneten képes lehetne „szőnyegbombázást” végezni. Szerinte a hagyományos hadviseléshez hasonlóan a virtuális hadszíntéren is ideje lenne az erődbe zárkózott haderő szemléletmódja helyett korszerűbb alapokra helyezni a hadviselést.
Kéretlen levélküldés Egyes becslések szerint az Internet elektronikus levélforgalmának 70%-a [7], mások szerint közel 95%-a [8] tartozik a kéretlen levél (népszerűbb nevén SPAM) fogalmába.
2. ábra Kéretlen levelek aránya a Symantec felmérése szerint
3. ábra Kéretlen levelek alakulása a Barracuda Networks szerint
Bár az átlag számítógépes felhasználót irritálja a kéretlen levél, mégis vannak olyanok, akik számára hasznosnak bizonyul a levél tartalma. A hírek szerint minden 10000 kiküldött kéretlen elektronikus levélre jut egy vásárlás, ami ugyan kevésbé hatékony, mint a fizetett webes hirdetések 0,1-2% értéke, de sokkal olcsóbb is. Bizonyos üzleti körök számára más reklámlehetőség nincs is, lévén a forgalmazott termék vagy szolgáltatás a legtöbb országban illegális. Ugyanez fordítva is igaz, a legtöbb cég számára a kéretlen levelekben reklámozni veszélyeket hordoz, így a közmondással élve a zsák megtalálta a foltját. Illegális levelekben nagyrészt hamisított vagy tiltott termékeket (potencianövelő szerek, hamis luxuscikkek) illetve legalábbis megkérdőjelezhető szolgáltatásokat (egyetemi diploma, PhD fokozat) hirdetnek.
4. ábra Férfiasságot növelő terméket reklámozó SPAM
A kéretlen levelek nem csak termékeket reklámoznak, előszeretettel használják őket csalások elkövetésére is. Néhány éve különösen elterjedtek voltak az úgynevezett „Nigériai” levelek, amelyekben valamilyen jól hangzó ajánlattal vették rá az áldozatot a pénzküldésre. A tevékenységet büntető jogszabály száma után 419 néven is ismert csalássorozat keretében kéretlen levelekkel árasztották el a potenciális áldozatokat, amelyben egy kevéssé hihető történetet adtak elő bebörtönzött nigériai gazdag emberekről, akiket az áldozatnak kellene kiváltania egy kevés pénz küldésével. Szolgálatait a gazdag bebörtönzött személy szabadulása után természetesen busásan megjutalmaznák. Bár a történetek igencsak bárgyúak voltak, mégis sok áldozat bedőlt nekik [9]. Egy időben annyira jelentős volt ez a tevékenység, hogy külön weboldal is alakult a csalók átverésére. [10]
5. ábra Nigériai csaló (forrás: 419eater.com)
Egy-két éve kezdték el a „pump-and-dump” vagy „hype and dump” [11] néven ismert csalásokat komolyabb méretekben alkalmazni. Az eljárás a tőzsdei árfolyamok
manipulálásán alapszik. A csaló bevásárol egy tőzsdei cég papírjaiból (jellemzően kis, viszonylag ismeretlen cégekről van szó), majd SPAM áradatban bennfentes információkként feltüntetett hamis adatokat küld szét. A leveleknek köszönhetően sokan kezdik vásárolni a részvényeket, emiatt az árfolyam is felszökik, a csaló pedig jelentős haszonnal adhat túl a birtokában álló mennyiségen. A kezdeti időkben egzotikus országokban üzemelő levelezőszerverek ontották a kéretlen leveleket, azonban a különböző feketelistákkal ezt a módszert le lehetett tiltani. A második generációban megindult a rosszul konfigurált – és így áldozattá váló – szerverek használata, azonban a botnetek jelentették a legmegbízhatóbb megoldást. Mivel a levelek küldését hatalmas mennyiségű számítógép végzi, ezért a DDoS támadásokhoz hasonlóan, ezek sem helyezhetők egyenként tiltólistára. Ha egy küldő végpont „elesik”, tiltólistára kerül, rögtön aktivizálható helyette másik. A kéretlen levelek köre kibővült egy nagyon fontos elemmel: az elektronikus levélben terjedő vírusokhoz hasonlóan a botnetek is igyekeznek újabb tagokat szerezni a hálózatba. Az új tagok fertőzését is a levélhez mellékelt futtatható állománnyal, vagy speciálisan beállított weboldalakra mutató linkekkel végzik.
Reklám manipulációk Az Interneten fontos bevételi forrás az online reklámok megjelentetése, a weboldalak reklámbevételeik nagy részét ebből szerzik. Az offline médiában megjelenő reklámokkal szemben az online reklámok hatékonyságának mérése egzakt módszerrel mérhető. A reklámokat megjelenítő szerver képes mérni a reklám megjelenési számát, illetve az erre kattintók számát is, így a hatékonyság szinte azonnal mérhető. Kezdetben az olyan weboldalak, amelyek alacsony átkattintási értéket produkáltak hátrányban voltak, mivel a hirdető szempontjából kevésbé voltak hatékonyak. Ez a tény az egy reklám megjelenésére fizetett összeget lecsökkentette. A médium érdeke tehát az volt, hogy ezt az átkattintási arányt minél magasabbra tornássza. A „kattintás vadászatot” a később megjelenő üzleti modellek – mint a Google AdSense – is tovább erősítették, hiszen ezek a rendszerek a médium számára nem a hirdetés megjelentetéséért fizettek, hanem a hirdetésre kattintók után adtak jutalékot. Természetesen az egy számítógépről többször kattintókat statisztikai módszerekkel kiszűrték. Az ilyen modellekre is alkalmas a botnetek által nyújtott elosztott felépítés. Egy alkalmas program segítségével a botnet valamennyi tagja képes a hirdetést tartalmazó oldalak letöltésére, majd a hirdetésre „kattintani”, így a médium tulajdonosa számára bevételt generálni. Egy lebukás után sincs különösebb gond, a botnet segítségével egyszerűen újrakezdhető más néven az egész folyamat.
Gépesített jelszófeltörés Egy védett számítógépes rendszerbe bejelentkezni csak a megfelelő jogosultsággal lehet. Ez a legtöbb esetben egy felhasználói név és a hozzátartozó jelszó megadásával történik (noha rendelkezésre állnak fejlettebb hitelesítő eszközök is, használatuk nem általános). Egy támadónak tehát csak annyi dolga van, hogy valamilyen módszerrel meghatározza ezeket. Ehhez segítségül hívhat kész szótárakat (a leggyakrabban használt jelszavak gyűjteményei), megpróbálhatja a felhasználótól kicsalni a kívánt adatot (amennyiben képes kapcsolatba kerülne vele) vagy egyszerűen végig próbálhatja az összes lehetséges kombinációt (brute force). A botnetekkel sokkal egyszerűbbé válik az akció: a feltört gépekre telepített keyloggerrel begyűjthetők a gazdagép tulajdonosának jelszavai. Ha olyan
rendszerről van szó, aminek jelszavai nem találhatók meg a botnet által begyűjtött adatok között, akkor pedig a botnet tagjainak segítségével automatizált szótáras támadást (dictionary attack) lehet indítani. A leggyakrabban használt jelszavak szótárai ingyenesen letölthetők a legkülönbözőbb nyelvekhez. Az utóbbi időkben egy új, aggodalomra okot adó tendencia kezd kibontakozni, mely segítségével a titkosított jelszavak nagyságrendekkel gyorsabban feltörhetők. A korszerű operációs rendszerek a felhasználók jelszavait kódolva tárolják, legtöbbször valamilyen egyirányú hash algoritmus segítségével. A hash algoritmus (például MD5, SHA-1) a bemeneti adatokból – jelen esetben a jelszóból – egy fix hosszúságú bináris számot állít elő, amely ugyanazon jelszóból minden futás esetén mindig ugyanazt a hash értéket állítja elő, azonban csak a hash érték ismeretében a kiinduló érték nem állítható vissza. Az elnevezés a darált húsos ételre (hasé) utal, egy hash értékből ugyanúgy nem lehet visszaállítani a jelszót, mint a haséból az alapul szolgáló állatot. Egy támadó a rendszerbe egyszerű hozzáférést szerezve és különböző konfigurálási hibákat kihasználva hozzáférhet a többi felhasználó (köztük a rendszeradminisztrátor) jelszavainak hash értékeit tartalmazó állományokhoz. A hash értékek visszafejtésére sokáig csak a nyers erő (brute force) módszerét használták, vagyis az összes létező jelszóra lefuttatták a hash algoritmust, majd a kapott értékeket összevetették a listában található értékekkel. Ahol egyezést találtak, ott a hash képzés alapjául használt szöveg volt a jelszó. Ez a folyamat meglehetősen időt rabló, mivel rengeteg jelszót kell egyenként kipróbálni. A folyamat jelentősen felgyorsítható az úgynevezett Rainbow táblák segítségével, amelyek előre generált hash értékeket tartalmaznak nagy mennyiségben (értelemszerűen egy Rainbow táblázat csak egyféle hash algoritmushoz használható). Minél nagyobb egy Rainbow tábla, annál gyorsabban törhető fel a jelszó, viszont egy ilyen táblázat előállítása rengeteg időbe kerül, azonban ilyen táblázatok készen elérhetők az Interneten [12]. Az előállításhoz szükséges idő a munkában részt vevő számítógépek számának növelésével csökkenthető, így egy botnet komoly segítséget jelent, ráadásul a használatáért sem kell fizetni.
4.
Botnetek kialakulása, fejlődéstörténete
Egyes források [13] az 1993-ban megjelent Robey Pointer EggDrop Bot nevű programot tekintik az első bot alkalmazásnak. Ez egy C programozási nyelven írt program volt, ami az Interneten igen népszerű IRC (Internet Relay Chat) szolgáltatáshoz készült. Lehetőséget nyújtott a felhasználók számára saját scripteket, egyszerű programokat készíteni, amivel a funkcionalitást lehetett bővíteni. Emellett képes volt több kliens összehangolt működésére is, ami a mai botnetek egyik fontos feladata. Bár már a későbbi botok sok jegyét magán viselte, az EggDrop nem rosszindulatú alkalmazás volt. Az első ilyen megjelenése 5 évet váratott magára, az 1998-ban terjedő Global Threat Bot (vagy GT Bot) a mIRC nevű programra épült. Képes volt nyitott TCP portokra vadászni, DDoS támadást indítani. Az ezredforduló környékén megjelent PrettyPark már a pszichológiára is támaszkodott (a felhasználók naivitására, tipikus reagálásukra építő eljárást szokás social engineering néven is emlegetni), a South Park kedvelt figuráját hívta segítségül az áldozatok bizalmának elnyeréséhez, a fertőzést terjesztő programhoz ikonként társítva. Ez a bot már a legtöbb mai funkcióval rendelkezett: - képes volt lekérni a gazdagép felhasználóinak információit, a gép operációs rendszerének verzióját; - tartalmazta a kód frissítésének lehetőségét; - alkalmas volt állományok fel- és letöltésére;
- különböző típusú DDoS támadásokat tudott indítani; - saját IRC chat kliensprogramot tartalmazott. A következő fejlődési lépést az önmaguk önálló terjesztésére képes férgek (worm) megjelenése jelentette. Ezek az operációs rendszer hibáinak kihasználásával már a felhasználó tudta nélkül voltak képesek megfertőzni az áldozatot. A Code Red nevű féreg által alkalmazott támadási módszer, a Microsoft IIS indexelő szolgáltatásában található programhibájának kihasználására támaszkodó TK worm jelentős fertőzést okozott. A Thr34t Krew által készített bot több tízezer gépet fertőzött meg, az FBI által indított nyomozás a banda több tagját is rács mögé juttatta [14]. A TK Bot is IRC szervereket használt a botnet feladatainak kiosztására, amely IRC szerverekhez dinamikus DNS címeket rendeltek. 2002-ben jelentek meg az első nyílt forrású bot programok, egy orosz programozó által készített SDBot és az AgoBot. A nyílt forrású program forráskódja bárki számára elérhető és így könnyen módosítható is, vagyis bárki készíthet saját igényei szerint kialakított rosszindulatú alkalmazást. 2003-tól egyre-másra készültek az AgoBot kódjára támaszkodó egyedek, ráadásul az AgoBot már moduláris kialakítású volt, ami a különböző feladatokra specializált példányok gyors fejlesztését tette lehetővé, ráadásul egy grafikus felhasználói interfészt is készítettek hozzá, amivel a szakértelemmel nem rendelkező támadók is elkészíthették saját programjukat. A botnetek éve 2005-ben jött el, amikortól előtérbe került az „üzleti” felhasználás. Ettől kezdve már nem csak elszigetelt számítógépes kalózok alkalmazták, hanem az alvilág is komoly lehetőséget látott benne, és nekiállt a lehetőségek kiaknázásának. Hosszú ideig az IRC alapú C2 csatorna volt az egyeduralkodó, azonban az ilyen csatornák viszonylag könnyen felderíthetők és a botnet semlegesíthető. Ezért 2007ben megjelentek a webes felületen keresztül vezérelhető botok, majd pedig a fájlcserélők technikáját adaptáló peer-to-peer (P2P) hálózatot alkalmazó megoldások. Ez utóbbi esetben a botnet bármelyik tagja képes a vezérlő feladatot ellátni, így a botmaster személyét szinte lehetetlen felderíteni. A legnagyobb fenyegetést napjainkban a Storm nevű bot jelenti, aminek méretéről a szakértőknek csak elképzeléseik vannak, méretét néhány tízezer és néhány millió tagúra becsülik.
5.
Botnet struktúrák
Amikor egy számítógép megfertőződik, a következő folyamatok zajlanak le: - a bot beépül a rendszerleíró állományokba, általában olyan módon, hogy a felderítésére a legkisebb esély legyen; - a kódban található találkozási pontra (rendezvous point) csatlakozik, így regisztrálva magát a botnetbe; - letölti a feladatok végrehajtásához szükséges programkódokat, „frissíti” magát; - megkezdi a megfigyelési és egyéb tevékenységeket. Egy botnet működésének talán legfontosabb része az irányítási csatorna, amelyen keresztül a „pásztor” képes a hálózat tagjainak feladatokat kiadni, és más adminisztrációs feladatokat ellátni. Jelenleg három fő irányzat ismert: - IRC alapú Command&Control; - Web alapú Command&Control; - P2P struktúra.
IRC alapú Command&Control Az ilyen botnetek tagjai egy közös IRC szerverre csatlakoznak, és innen kapják a feladatokat [15]. A tagok úgy viselkednek a csatornában (szobában) mint a passzív
emberi kliensek, azonban a megfelelő parancsokat beírva aktivizálhatók. A chatszerver minden beérkező üzenetet szétküld az összes, a szobába bejelentkezett kliensnek, így kiválóan alkalmas nagyobb mennyiségű bot irányítására. Az IRC szerver lehet publikus, bárki által használható, vagy pedig a botmaster által üzemeltetett. Az IRC szerver mellett általában része a botnetnek egy olyan külső szerver is, amely a botnet által begyűjtött adatokat tartalmazza. Ezek a Drop szervernek nevezett egységek általában ftp (File Transfer Protocol, állományok átvitelére szolgáló protokoll) vagy http (Hypertext Transfer Protocol, a weboldalak lekérésére alkalmas protokoll, ami megfelelően használva állományfeltöltésre is alkalmas) kiszolgálók. Az ilyen C2 csatorna előnye az, hogy egyszerűen kivitelezhető, és könnyen kezelhető. Hátránya viszont sok van: - az IRC szerverre jelentkezve a botmaster is a lebukást kockáztatja; - szükséges egy IRC szerver, ami ha saját üzemeltetésű, akkor megnő a lebukás kockázata; - a botnet tagjainak folyamatosan az IRC szerveren bejelentkezett állapotban kell lenniük, így a keletkezett hálózati többletforgalom könnyen elárulhatja őket; - az IRC szolgáltatást a legtöbb hálózati tűzfal letiltja, így a bot nem éri el a C2 csatornát; - a folyamatos bejelentkezett állapot miatt egy IRC szerver csak korlátozott (34000) számú klienst képes kiszolgálni. Főként ezek a hátrányok voltak a fejlettebb C2 módszerek kialakításának okai. IRC szerver Drop szerver
Botmaster
Botnet
6. ábra IRC alapú botnet
Web alapú Command&Control Az IRC-vel ellentétben egy webszerverre a kliensek nem állandó kapcsolattal csatlakoznak, a weboldalak lekérésére szolgáló http protokoll szerint a kliens a kívánt oldal letöltéséhez felcsatlakozik a szerverre, majd a tranzakció befejezése után bontja a kapcsolatot. A botnet tagjai rendszeres időközönként csatlakoznak a webszerverhez, és lekérik az aktuális feladatot, egyúttal elküldik a saját adataikat. Webszerver
Botmaster
Botnet
7. ábra Web alapú botnet
A módszer több előnnyel is jár: - a botnet által generált http kérések elvegyülnek a normál webes forgalomban; - a webszolgáltatást szinte minden hálózati tűzfal engedélyezi; - megfelelő méretezés mellett egyetlen webes C2 szerver több százezer klienst is képes kiszolgálni. A hátrány ebben az esetben is a C2 szerver üzemeltetése, a botok forgalmának figyelésével meghatározhatók a C2 szerverek elérhetőségei (hálózati címei), és így az üzemeltető botmaster is könnyen lebukhat.
Peer-to-peer C2 csatorna A fájlcserélő szolgáltatások (Kazaa, BitTorrent, eDonkey) egyre nagyobb népszerűségnek örvendenek. Ezek egyenrangú hálózati struktúrát használnak, vagyis a résztvevők közvetlenül egymásnak küldik az adatokat, nem a kiszolgálón keresztül, mint a hagyományos, központosított kliens-szerver architektúra esetén. Emiatt a hálózat decentralizált, így működésének megakadályozása is jóval
nehezebb. Ez feltűnt a bot alkalmazások készítőinek, a legújabb változatok már P2P alapon végzik a feladatok kiosztását, így a botnet bármely eleme képes a megfelelő információk birtokában a botnet vezetésére. Természetesen ebben az esetben a kliensek közti kapcsolatot érdemes titkosítani, mivel ennek hiányában igen könnyen átvehető a botnet tulajdonjoga. A botmaster a botnet bármelyik tagjára képes távolról, az Interneten keresztül rácsatlakozni és a szükséges feladatokat elindítani. Ennél a struktúránál nincs központosított C2 szerver, így a küzdelem meglehetősen nehéz, ráadásul a nagyobb elterjedtségnek örvendő bot alkalmazások normál fájlcserélő protokollokat használnak, tehát a hálózati forgalomban elvegyül a többi, nem botnet által generált forgalomban. Manapság a legnagyobb veszélyt a Storm nevű bot jelenti, amely az eDonkey fájlcserélő protokollját használja, ráadásul a kódfrissítéseket tartalmazó szerverek iránti túlzott érdeklődést egy DDoS támadással torolja meg. Drop szerver
Botmaster
Botnet
8. ábra P2P alapú botnet
6.
Botnetek felderítése, megsemmisítése
A botnetek felderítése fontos feladat, mivel jelenlegi méretük mellett az egész Internetre potenciális veszélyforrást jelentenek. A rengeteg kéretlen levél továbbítása hatalmas összegeket emészt fel a szolgáltatók – és így az előfizetők – kasszájából, a DDoS támadások segítségével pedig bármely kritikus infrastruktúrát (amely bármilyen kapcsolattal rendelkezik az Internet irányába) rövidebb-hosszabb időre működésképtelenné lehet tenni. Amikor egy DDoS támadás elindul, már általában késő a beavatkozás, ilyen esetben már csak a károk mérséklése a cél. Lehet bármekkora erőforrása egy hálózatnak, mindig lehet akkora forgalmat generálni, ami
felőrli ezeket is. A megoldás a „békeidőben” végzett felderítés és semlegesítés lehet, amely sajnos egy véget nem érő folyamat: mindig jelennek meg új fenyegetések, amikre fel kell készülni. A felderítés módja többféle lehet, a legígéretesebb a botnet viselkedésére alapuló megfigyelés. Amikor egy botnet létrejön, akkor mindig megtörténnek a szokásos cselekmények: bejelentkezés, feladatok letöltése. Ha ezeket megfelelő monitorozó folyamatokkal figyeljük, akkor még kellő időben le lehet számolni a fenyegetéssel. A viselkedés figyelése kiterjedhet magára a megfertőződött számítógépre (egy feltelepített vírus és trójai irtó programra), a bot által generált hálózati forgalomra vagy pedig a feladat végrehajtásának eredményére. A számítógépre telepített vírusirtók nagyon hasznosak, azonban csak az Internetet használók egy része alkalmazza őket. Emellett még egy folyamatosan frissített vírusirtó is átengedhet olyan káros tartalmakat, amikre az adatbázisa még nem tartalmaz mintákat. Egy megfertőzött gépre utólag pedig már nem egyszerű ilyen alkalmazást telepíteni, mivel a fejlett vírusok és férgek észlelik a telepítési kísérletet és megakadályozzák azt. Internet-szolgáltatók esetén már csak a bot tevékenységének figyelése jöhet szóba, a keletkezett hálózati forgalom figyelésével. Minden C2 módszerre megállapíthatók viselkedési minták, amelyeket aztán egy megfelelő monitorprogram ki tud szűrni. Például az IRC alapú C2 csatornák esetén statisztikai, öntanuló algoritmusokkal kiszűrhető a normál forgalomból a botok által végzett tevékenység [16]. Egy másik felderítési mód abból a feltételezésből indul ki, hogy egy botnet egyik legfőbb célja a pénzkereset, amire az egyik leghatékonyabb mód a kéretlen levelek küldése. A kéretlen levelek nagy részét botnetek küldik, a hatalmas levélszemét miatt pedig a levelezőszerverek nagy részén működik SPAM szűrés. Ha a szerver egy levelet SPAM-ként azonosít, akkor a küldő IP címét képes feljegyezni, mint egy potenciális veszélyforrást. Ez az IP cím általában csak ideiglenesen a fertőzött számítógépé, tehát a tényleges tulajdonos azonosítására csak rövid idő áll rendelkezésre. Egy IP cím alapján a gazdahálózat üzemeltetője képes a tulajdonos azonosítására és a káros tevékenység korlátozására, akár adminisztratív (felszólítás) akár operatív (hozzáférés korlátozása) úton. Azt, hogy a botnetek ellen küzdeni kell, talán a fentiek alapján nem kell bizonygatni. A közelmúlt nagyobb támadásai bebizonyították, hogy mekkora veszteségeket képesek okozni az informatikai infrastruktúrában, a küzdelem hatékonyabbá tételéhez pedig összefogásra van szükség az állami, nyomozói szervezetek és az infrastruktúrát szolgáltató magáncégek között.
7.
Hivatkozások
[1]
Who did actually invent the word "robot" and what does it mean? http://capek.misto.cz/english/robot.html Greg Keizer: New Bot-Powered eBay Scam Uncovered http://www.techweb.com/showArticle.jhtml?articleID=191600603 DSL Classic Easy dícsomag A T-Home weboldaláról Paul Roberts: Online Extortion Ring Broken Up http://www.pcworld.com/article/116975/online_extortion_ring_broken_up.html Online Russian blackmail gang jailed for extorting $4m from gambling websites
[2] [3] [4] [5]
http://www.sophos.com/pressoffice/news/articles/2006/10/extort-ddos-blackmail.html
[6] [7]
Carpet bombing in cyberspace http://www.armedforcesjournal.com/2008/05/3375884 Symantec SPAM Report http:// www.symantec.com/avcenter/reference/Symantec_Spam_Report_-_February_2007.pdf
[8] [9] [10] [11] [12] [13] [14] [15] [16]
Matt Asay: Study: 95 percent of all e-mail sent in 2007 was spam http://news.cnet.com/8301-13505_3-9831556-16.html Harvardi professzort vertek át a nigériai csalók http://index.hu/tech/jog/419es0401/ 419eaters.com Trophy Room http://forum.419eater.com/forum/album_cat.php?cat_id=1 Pump and Dump Schemes http://www.sec.gov/answers/pumpdump.htm Free Rainbow Tables http://www.freerainbowtables.com/ Ken Dunham, Jim Melnick: Malicious Bots p: 41-44; Auerbach Publications; Boca Raton FL; 2008. Ken Dunham, Jim Melnick: Malicious Bots p: 7-32; Auerbach Publications; Boca Raton FL; 2008. Illési Zsolt: A botnetek kialakulása, használatuk, trendjeik http://www.zmne.hu/hadmernok/2008_2_illesi.php Wenke Lee, Cliff Wang, Dvid Dagon: Botnet Detection p: 1-24; Springer Science+Business Media, New York; 2008.
Valamennyi internetes hivatkozás 2008. szeptember 21-én elérhető volt.