Nerika. Trojsky kun je takovy program, ktery po spusteni (at uz uzivatelem, nebo nejak elegantneji) umozni pristup do infikovaneho pocitace. S tim, jak byl spusten to nesouvisi.
Trojsky kun je program, ktery se tvari jako neco jineho, aby utajil svou skodlivou cinnost. Typicky predstavitel muze treba byt textovy editor, ktery potaji odesila informace o pocitaci a souborech, kde je spusten, nebo zamerne poskozuje soubory nejakeho druhu. Jeho hlavnim znakem je, ze ho instaluje i spousti uzivatel v domeni, ze jde o neco uzitecneho.
Virus je kus programoveho kodu, ktery se instaluje sam do programu jiz v systemu existujicich tak, aby pri jejich spusteni byl (nejdrive) spusten i on. Siri se tim, ze napada i programy na prenosnych mediich (nebo primo tato media - boot viry) a nechava se prenest na jine pocitace.
Cerv je program/kus kodu, ktery aktivne vyhledava pocitace pripojene k tomu kde bezi a snazi se jejich system primet k tomu, aby jej do sebe vpustil a predal mu rizeni. Rozmnozuje se samostatne bez pomoci uzivatele.
Virus ci trojan neni virem ci trojanem proto, ze zaskodi. On je jim proto, ze se umi sirit. Kdyz uz se siri, pak teprve je zajimave jestli a jak zaskodi a jak si k tomu zajisti potrebne prostredky (neboli jaky je rozsah platnosti).
Trojan se nemusi sirit. Siri se virus, proto je virus. Trojan se jmenuje podle trojskeho kone, jinymi slovy je to skodlivy program, ktery se vydava za neco jineho nez ve skutesnosti je ...
To s tím vire je IMHO špatně. Virus je něco, co se přibalí do jiného spustitelného souboru a umí takto infikovat souboru, čímž se šíří. Ale vyžaduje, aby tento soubor byl nějakým způsobem přemístěn jinam a podobně.
Ale prdlajz. Virus se za nic nevydává, virus se snaží nebýt viděn. Trojský kůň svou existenci nemaskuje, uživatel ale neví, co všechno dělá, resp. že dělá ve skutečnosti něco jiného.
Co je to za nesmysl? Preci, kdyz si uzivatel mysli, ze program dela neco jineho, tak je to proto, ze se nejakym zpusobem maskuje! Treba jako systemovy soubor. BTW. takovych souboru, o kterych nevite co delaji, nebo delaji neco jineho, nez si myslite, mate plnej system, a neoznacujou se trojsky kone :)
Trojsky kun je oznaceni pro program, ktery bez vedomi uzivatele UMOZNI PRISTUP DO POCITACE UTOCNIKOVI. Nedela jen tak cokoliv. Dela prave tohle.
Trojské koně existovaly už v dobách, kdy u nás panoval antivir Tři psi a internet bylo něco kolem počítačů na Západě. Takže sotva mohl umožňovat někomu někam nějaký přístup.
To co píšete se sice na první pohled může zdát logické, ale není to tak.
Pozrel som si odkaz v spravice, a trochu pogooglovat, ale nic viac ako tu nebolo napisane. Teda co vlasne je to za virus, ako sa siri, alebo pre ktore distribucie (jadra) je infekcny?
Mozno som len malo pozeral, ale taketo info by malo byt hned v prvej varke linkov.
Podle popisu jde o kus kodu, ktery dokaze modifikovat (nakazit) jak soubory typu exe, tak elf (pricemz rozpozna, kterou metodu pouzit). IMHO zajimave cviceni, ale malokdy na jedne platforme potka oba tyto typy souboru dostatecne volne dostupne, aby jeho cinnost mela smysl ...
Musim rict, ze takovy virus ktery "bezi" i na Windows i na Linuxu bych si predstavoval jinak. Presnejsi popis chovani zmineneho viru je totiz ze "umi infikovat jak windowsowske soubory, tak linuxove". Infikovany soubor uz totiz na obou platformach nebezi, proste proto, ze (pokud pomineme wine, cygwin apod.) infikovany exac nespustite na Linuxu, a naopak linuxovou binarku na Windows.
Myslim, ze je to mysleno trochu jinak - ze pokud najde jak ELF, tak EXE soubory, tak dokaze nakazit oboji takovym zpusobem, ze jeho kopie ma opet tuto vlastnost ...
Tedy treba ho spustis na Windows, on tam nakazi ruzne EXE, ale take treba nejaky volne lezici ELF, ktery kdyz spustis na Linuxu, tak nakazi jedna vsechny dostupne ELF, jednak i EXE, ktere po spusteni ve Win nakazi ... atd atd ....
Svuj smysl to ma treba na souborovych serverech, kde muzou byt ulozeny soubory i pro jiny, nez aktualni system. (At uz ke stazeni, nebo ke spousteni po siti).
Taky by to mohlo mit jisty puvab na dualboot systemech ...
Je nemozne napsat program, ktery vyhovuje soucasne formatu EXE (tedy zacina MZ) a formatu ELF (tedy druhy az ctvrty znak je ELF a ten prvni je taky 7Fh skoro porad ...)
Necital som podrobnosti o implemntacii toho riesenia, ale nevidim dovod preco by to neslo. Ono subor nemusi vyhovovat sucasne obom formatom. Ak sa jedna o virus, staci aby bol schopny rozpoznat a infikovat cielovy subor podla jeho formatu (EXE/ELF). Je predpoklad, ze dany subor sa potom bude spustat len na v prislusom prostredi (Win, Linux, ...).
Co sa tyka podstaty trojana, myslim ze dobre vysvetlenie tu napisal Gilhad. Kto neveri, nech si pozrie nejaku knizku, ktora sa virusmi zaobera. :-)
Nie som nijaky odbornik cez malware, posledne co som hooodne davno pisal bol nejaky rezidentny polymorfny virus pod M$ DOS, vedel napadat len .COM subory. Nikdy som ho nevypustil, pisal som to len tak ako sa to obcas robi - aby clovek skusil, ci to dokaze. To boli casy ...
Nesledujes diskuzi. To co popisujes ten virus skutecne dela (coz dokazuje ze to jde). Oproti tomu to co pozadoval junix (neregistrovaný) na zacatku tohoto threadu je ono vyhovovani oboum formatum a proto jsem reagoval ze je to nemozne.
To ja se k polymorfizmu nedostal. Napsal jsem si virus obycejny (jeden na com, jeden i na exe) a pote se zabyval necim zajimavejsim - chraneny mod a hackovani memory manageru (EMM386 a QEMM). Kdyby ty casy vydrzeli dele, asi bych napsal rezidentni virus v chranenem modu (chci videt jak by ho antiviry nasli - problem by byl v sireni, ale to jsem stejne nemel v umyslu tak co) .... jenze prisli windows a linux a ja si vybral linux.
Docela by me zajimal zdrojak toho viru, nevite o nem nekdo? Protoze me zarazi tohle:
To infect ELF files, the virus uses INT 80 system calls and injects its body into the file immediately after the ELF file header...
The virus uses the Kernel32.dll function to infect systems running Win32...
To by znamenalo, ze pokud virus narazi na ELF (cil), pouzije INT 80 systemove volani Linuxu. Jenze on muze prave bezet na Windows, protoze mel nekto infikovany soubor na windows, kde ma nejake elfy (treba sdilene). To by asi nefungovalo, protoze pocitam, ze na Windows nebudou syscally (volani Win32 API) pres stejne preruseni a pokud ano, pak tezko budou stejne identifikovana, pripadne se stejnymi parametry.
Stejne je to i v opacnem pripade, pokud infikovany ELF zkusi napadnout nalezeny PE, protoze chce spustit funkci Windows.
K protected modu a podobnym veciam som sa zase uz ja nedostal... :-(
I tak, co sa tyka virov si myslim, ze najvacsiu buducnost maju asi modularne navrhnute krizence cervu a viru. Mozu trebars mat casti, ktore si zistia info o cielovej platforme/systeme, ktoru chcu infikovat, na ich zaklade mozu posudit zranitelnosti, vybrat vhodny typ utoku, atd. Takmer vsetky casti by mohli byt samostatne moduly, ktore by si cerv stahoval v aktualnej verzii (a trebars aj podpisane :-))
Vdaka modularnemu rieseniu by kludne mohol napadat rozne platformy, staci ked najde zranitelne miesto a ma modul, ktory vie bezat na danej platforme.
Viem, ze taketo dake koncepty existuju dlhsi cas, len nikto asi nieco podobne vo vacsom rozsahu nezrealizoval. Zrejme je s tym spojene mnozstvo dalsich problemov, moc som nad tym neuvazoval. Uz len spolahlive vyhladanie a aktualizacia modulov moze byt vcelku zapeklity problem.
Na to jsem prave narazel. Nejde napsat "program", ktery bude spustitelny na Linuxu i Windows (pokud nepocitame wine/cygwin apod.), ale lze napsat kod v ASM, ktery bezi na obou systemech. Muzete ho tedy vlozit jak do PE, tak do ELF spustitelneho souboru. Musi to byt ale na stejnem typu procesoru, aby se jednalo o stejne instrukce (takze i386). To je tento pripad.