User login

SecIT na Facebooku

SecIT.sk na Facebooku

Reply to comment

3
Average: 3 (3 votes)
Your rating: None

Tento článok sa zaoberá problematikou sieťových (internetových) červov. Hranicou, ktorá priraďuje infiltrácii túto kategóriu, hlavnými časťami, z ktorých červ pozostáva a spôsobu jeho šírenia bez pričinenia používateľa.

Čo je to červ?

V definícií počítačového červa existuje mnoho rozporov a rôznych názorov medzi odborníkmi. Niektorí úplne tento pojem združujú s počítačovými vírusmi. Ja osobne s týmto tvrdením nesúhlasím, a tiež väčšina odborníkov vníma pojem počítačový červ ako samostatnú kategóriu. Základným rozdielom medzi vírusom a červom je jeho šírenie, aplikovanie a sebestačnosť. Červ je samostatný program, ktorý sa samostatne aktívne šíri (teda k jeho šíreniu nie je potrebná aktivita zo strany používateľa). Čo sa týka aplikovania tu už musíme brať v úvahu hlavne rozdelenie do dvoch hlavným skupín a to: e-mailové červy a sieťové (internetové) červy. E-mailové červy sa šíria samostatne ale k ich spusteniu a aplikovaniu už je väčšinou potrebná akcia zo strany používateľa, ako spustenie súboru v prílohe, či kliknutie na link, ktorý obsahuje. Niekedy však nie (napr. zneužitie bezpečnostnej chyby e-mailového programu). Tieto prípady sú však známe hlavne z minulosti. E-mailové červy teda nie sú v súčasnosti úplné sebestačné. Ďalším pravidlom je definícia červ ako "samostatný program", červ nie je primárne infektorom, neinfikuje ďalšie súbory, no ani toto pravidlo už dnes úplne neplatí. Niekedy v sebe môže červ "niesť" ďalší malware, či ho začať sťahovať po jeho aplikovaní. Červy sa ďalej môžu šíriť aj vymeniteľnými zariadeniami ako USB kľúče či P2P sieťami, zdieľanými adresármi alebo v súčasnosti stále populárnejšími sociálnymi sieťami... Zabúdať nemôžme ani na XSS červy, využívajúce PHP či iné programovacie jazyky na tvorbu webu. Dnes je teda najdôležitejší charakteristický znak práve spôsob šírenia. Trocha inak je to však pri sieťových červoch a na tie je prioritne tento článok zameraný.

Čo obsahuje červ?

V podstate každý počítačový červ (väčšinou aj e-mailové), má určité časti (moduly), ktoré tvoria jeho základnú štruktúru. Prvou časťou je zvyčajne nejaký systém vyhľadávania obetí. E-mailové červy napríklad vyhľadávajú e-mailové adresy, sieťové červy majú zabudovaný systém vyhľadávania obetí na úrovni siete, niekedy červ používa aj techniku "odtlačku" - fingerprint, či už daný PC je alebo nieje infikovaný. Ďalšou časťou je spôsob šírenia. Červ potrebuje pre svoju existenciu určité špecifické prostredie (je závislý na operačnom systéme, na aplikácií kde sa objavila bezpečnostná zraniteľnosť...), e-mailové červy napríklad na masové šírenie môžu vytvoriť na PC obete SMTP server pre ďalšie šírenie. Dôležitou časťou je aj vzdialené ovládanie, aby autor červa nestratil nad svojim výtvorom kontrolu a mohol zadávať nové úlohy. Týmto spôsobom môže autor využiť červa na vytvorenie botnetu, či zadať príkaz na hromadný DDos útok alebo masovo rozosielať spam, existujú aj ďalšie spôsoby využitia napríklad ako "dokonalé proxy" pri rôznych útokoch, či hľadanie dôležitých údajov na počítačoch obetí... Taktiež môže "za chodu" meniť primárny spôsob šírenia červa. Videli sme to napríklad pri Conficker-ovi. Červy môžu mať v sebe aj časové obmedzenie, ako dlho ostanú funkčné, po uplynutí tejto doby môže dôjsť k ich samočinnej dekativácií, zvyčajne však "starú verziu" červa nahradí nová. Ako príklad nám tiež môže poslúžiť Conficker. Určité úlohy môže mať červ v sebe naprogramované na istý dátum, tkzv. payload - aktivačná rutina, (ako napríklad Conficker a panika okolo 1. apríla). Červ môže napríklad v presne stanovenú dobu spustiť masívny DDos útok, či zmeniť primárny spôsob svojej aktualizácie alebo šírenia.

Ako funguje šírenie po sieti?

Sieťové červy sa šíria sieťou (internetom), zneužívajú zraniteľnosti aplikácii a systému, pre svoje šírenie využívajú infikované pakety. Sieťové červy po infikovaní počítača obete hľadajú ďalšie obete scanovaním ďalších systémov, aby zistili, či na vzdialenom systéme beží daná služba (resp. či obsahuje zraniteľný software, špecifický systém...). Každý červ volí iný spôsob a systém pre hľadanie nových obetí (tieto systémy sú samozrejme podobné). Je možné, aby červ využitím kombinatoriky prescanoval všetky IP adresy v rámci internetu a mnoho červov v minulosti takto aj fungovalo, čo malo za následok ich masívne rozšírenie. Lenže tento spôsob nepatrí medzi najefektívnejšie. Niektoré červy scanujú najskôr lokálnu sieť, (najčastejšie rozsah 192.168...) a hľadajú možnosť zneužitia chýb tam, iné postupujú pri generovaní IP adries v podobných rozsahoch ako je IP adresa už infikovaného počítača. Tiež existuje mnoho spôsobov náhodného generovania IP adries pri použití preddefinovanej tabuľky tried, červ si samozrejme môže vytvárať databázy IP adries, ktoré je možné infikovať a využiť ich aj neskôr v budúcnosti.

Každý červ zväčša útočí na istý konkrétny port, kde očakáva beh konkrétnej služby (aplikácie). Niektoré červy robia pred samotným útokom "prieskum". Vysielajú napríklad HTTP požiadavky a očakávajú reakaciu, na základe ktorej môžu zistiť verziu postihnutej aplikácie, či verziu systému na základe čoho sa rozhodnú, či má útok význam a pokiaľ áno ešte viac ho špecifikovať. Niektoré červy môžu dostupnosť obete aj preveriť napríklad pomocou ICMP echo. Mnoho červov však neoveruje ani korektnosť IP adries, či nezískava ďalšie podrobnosti o aplikáciach alebo systéme a len posiela pakety na určitý port, kde by mala bežať zraniteľná služba a očakáva úspech. Červy pomerne často otvárajú na určitom porte aj HTTP server. Napríklad červ Conficker útočil na porty 445 a 139 a snažil sa zneužiť chybu služby Server Service. Administrátor zväčša ľahko zistí, že v jeho sieti vyvíja aktivitu sieťový červ, niekedy môže dôjsť aj k úplnému zahlteniu lokálnej siete.

Ďalší postup v systéme

Po úspešnom identifikovaní zraniteľnej služby, ktorá využíva daný port, červ využije jeden zo spôsobov infikovania. Veľmi častý je spôsob pretečenia zásobníka - buffer overflow, tejto téme sa viac venoval Lodusov článok. Medzi ďalšie techniky patrí injektáž kódu do PC obete prostredníctvom siete. Červ teda môže injektovať svoj kód do zraniteľného procesu v systéme obete. Túto techniku používal napr. červ Win32/Slammer ale aj CodeRed. Červ môže využiť aj interpret príkazov na PC obete. Červ teda injektuje kód do procesu a prepojí s ním určitý port, ku ktorému sa pokúsi pripojiť. Infikovaný interpret následne môže spustiť príkazový riadok (Windows) alebo shell (Linux) a prepojí proces s portom útočníka, následne môže začať posielať vlastné príkazy. Tento spôsob využíval napríklad Win32/Blaster.

Záver

Sieťový červ je práve ten typ infiltrácie, kde nepomôže žiadny "zdravý rozum" používateľa a veľa krát nepomôže ani antivírus, záleží hlavne na častých aktualizáciách systému a aplikácií a tiež na kvalitnom firewalle s IDS systémom, ktorý môže čiastočne útok detegovať a zabrániť mu. V minulosti sme boli svedkami niekoľkých masívne rozšírených červov ako Blaster či CodeRed... Aj nedávno ukázal Conficker, že éra týchto hrozieb ešte neskončila a v budúcnosti môžeme očakávať po objavení sa bezpečnostných dier ďalšie masovo sa šíriace sieťové červy, idúce hlavne za ziskom, vytvárajúce veľké botnety. V takýchto prípadoch je dôležitá hlavne čo najskôr vydaná záplata a jej aplikovanie na strane používateľa, pretože kameňom úrazu často býva práve pomalé používateľské aplikovanie.

Reply

The content of this field is kept private and will not be shown publicly.
  • Lines and paragraphs break automatically.

More information about formatting options

CAPTCHA
This question is for testing whether you are a human visitor and to prevent automated spam submissions.
Image CAPTCHA
Enter the characters shown in the image.

Links

SecIT.sk fórum

IRC kanál: #secit
IRC server: irc.secit.sk
Porty (SSL): 6696, 9998
Porty (bez SSL): 6667, 6670

Freeweb by WebSupport.sk

© SecIT.sk - info(at)secit.sk - Všetky práva vyhradené. Žiaden obsah umiestnený na našom portáli a fóre sa nesmie kopírovať!