Igor Gulev
Mondanom sem kell, hogy a számítógépek váltak igazi segítők személy és ezek nélkül nem tud semmilyen kereskedelmi cég vagy kormányzati ügynökség. Azonban ebben a tekintetben, különösen az akut probléma az informatikai biztonság.
Vírusok széles körben használják a számítástechnika keverjük az egész világon. Sok számítógép-felhasználók aggódnak pletykák, hogy segítségével a számítógépes vírus támadók betörni a hálózatba, rob banks, lopni szellemi tulajdon ...
Egyre gyakrabban a médiában vannak tudósít a különböző kalóz bohóckodás számítógép huligánok, a megjelenése egyre kifinomultabb önreprodukáló programok. Legutóbb fertőzött szöveges fájlokat vírus ítélték abszurd - ma ez nem meglepő. Elég csak felidézni a megjelenése az „első fecske”, ami miatt nagy a zaj - vírus WinWord.Concept, feltűnő dokumentumok formátumának szövegszerkesztő Microsoft Word for Windows 6.0 és 7.0.
Csak azt szeretném megjegyezni, hogy a túl sok félni vírusok nem szükséges, különösen, ha a számítógépet vásárolt a közelmúltban, és rengeteg információt a merevlemez még nem halmozódott fel. Virus számítógép nem robban. Most már ismert, csak egy vírus (Win95.CIH), amely képes elrontani a „hardver” a számítógép. Mások csak pusztítani információkat, semmi több.
A szakirodalom igen erősen javasolta, hogy megszabaduljon a vírus csak akkor lehetséges a segítségével kifinomult (és drága) anti-vírus programokat, és állítólag csak védelmük alatt, akkor biztonságban érzik magukat. Ez nem egészen igaz - ismeri a sajátosságok a szerkezet és módszerek bevezetésének vírusok időben, hogy segítsen nekik kimutatására és lokalizálására is, ha nincs kéznél lesz a legjobb anti-vírus program.
A számítógépes vírusok „fészek” a legváratlanabb helyeken, mint például az MBR boot record (master boot record), a futtatható fájlok, például a COM és az EXE, DLL fájl a megosztott könyvtárban, és még a dokumentumokban a szövegszerkesztő Microsoft Word for Windows. Ez a rész a vírus szerkezete az érintő COM-fájlokat.
A szerkezet és a folyamat tölti be a COM-programot
Mi a COM-program betöltődik a memóriába, és futni?
A szerkezet a COM-program nagyon egyszerű - amely csak a kód és az adatok a program, anélkül, hogy akár egy címet. COM-felbontású korlátozza a mérete egy program szegmens (64 KB).
És a két fogalom, hogy lesz gyakran előfordul:
Program Segment Prefix (PSP) - memória nagysága 256 (0100h) bájt megelőző programot, amikor betöltődik. PSP tartalmazza a parancssori információk és a kapcsolódó programok változókat.
COM-berakodás programokat a memóriába, és elkezdi az alábbiak szerint történik:
2. Létrehoz és kitölti a blokk memória környezeti változókat.
3. Készítsen egy blokk memória a PSP és a program (szegmens: 0000 - PSP; szegmens: 0100 - program). A PSP mező megfelelő rögzített értékek.
6. Az érték a regiszter AX összhangban van beállítva a parancssori paramétereket.
7. A regiszterek DS, ES és SS vannak beállítva a PSP szegmens és programok (PSP: 0000h).
8. Az SP regiszter be van állítva a végén a szegmens, amely után a köteg van írva 0000h.
COM-program mindig áll egy szegmens indul 0100h ellensúlyozni.
A letöltés után a fertőzött fájlt, a vírus átveszi az irányítást. Amikor kész, a vírus visszaállítja az eredeti JMP és átadja a vezérlést a program, ábrán látható. 1.2.
Mi teszi a szóban forgó vírus? A rajt után, amit keresett az aktuális könyvtár COM-programot. Erre a célra 4Eh funkció (megtalálja az első fájl):
; Keresünk az első fájl neve minta
mov dx, offset fname - offset magam
A vírus ezután ellenőrzi (az első byte a fájl), ha nem találta a COM-programot megközelítés:
; Írjuk be az első három byte (az átmenet a vírus szervezetben)
mov dx, offset jmpvir eltolt magam
Miután a vírus már befejezte a munkát, akkor visszaállítja az eredeti állapotába, az első három bájt a program (a memóriában), és átadja a vezérlést a program elején. Továbbá, ha egy fertőzött fájlt, a vírus lesz kontroll az első, majd - forrás programot. Ennek köszönhetően a rendszer jelentési vírus könnyen létezik, miután egyszer megjelent a vadonba.
Ennek eredménye egy LEO.COM tartalmazó fájl kész-COM-vírus. A teszt a vírus, akkor létrehozhat egy külön könyvtárba és másoljuk bele a fájlt, valamint számos más COM-fájlokat. Megkezdése után LEO.COM vírus be az összes többi COM-fájlokat. Ne félj, hogy fertőzött számítógéppel egyszerre - a vírus terjed csak az aktuális könyvtárban. Az alábbiakban a forráskód a vírus:
286; Set processzor típusát
CheckByte bere 0F0h
Rámutat arra, hogy a nyilvántartások tartalmazzák a CS és DS
vállalnak cs: kód, ds: kód
; Kód szegmens kezdetét. Végén a program kódot szegmensben kell
; Close - "kód végződik"
; Az előfeszültség a kódot szegmensben.
; Ez a vonal van szükség
; A COM-programot (összes COM-programot
; Szimulálja a COM-fertőzött fájlt.
, A vírus test kezdődik tag la
db 0E9h; JMP parancskódot
dw ofszet la-eltolás valós
Módszerek bevezetése a COM-vírus
Tekinthető a vírus hozzáfűzi, hogy a végén a fájlt, és a fájl elején lépett az átmenet is. Vannak más módszerek bevezetésének vírusok.
Vegyünk két lehetőség bevezetése a COM-vírus a fájl elején. Az első változat. A vírus felülírja a program elején, hogy a végén a fájlt, hogy legyen hely a maga számára. Ezt követően a vírus szervezetben van írva a fájl elején, és egy kis rész biztosítja a közlekedést elfojtott program részletben a helyén - a végén. Amikor helyreállítása az eredeti megjelenését a program szervezetet a vírustól törlődik, így a vírus kódját, visszaállítva a programot kell lennie egy biztonságos helyen, külön a fő szerve a vírus. Ez a módszer a végrehajtás ábrán látható. 1.3.
A második kiviteli alak abban különbözik az elsőtől, hogy a vírus, felszabadítva magának helyet, mozgatja az egész test a program, és nem visz át egy részét a fájlt. Ez a módszer a végrehajtás ábrán látható. 1.5.
Vannak fajták vírusok, amelyek nem részei a testét az iratokhoz csatolt. Például a vírus be a fájl közepén. Ebben az esetben az algoritmus a vírus keveréke algoritmusok egyike a két újonnan leírt vírus és a vírus fejezetben leírt „Egy egyszerű COM-vírus”.
COM-fájlok (kis írt programok többnyire assembly nyelven) lassan, de biztosan elavult. Ezek helyébe az ijesztő méreteket EXE- «szörnyek». Voltak vírusok képesek megfertőzni EXE-fájlt.
A szerkezet és a folyamat letöltése EXE-programot
Ellentétben COM programok, EXE programot állhat több szegmensből (kód, az adatok stack). Ők tovább tarthat 64Kbayt.
Induláskor EXE-program rendszert betöltő (függvényhívás DOS 4BH) végrehajtja a következő lépéseket:
2. Létrehoz és kitölti a blokk memória környezeti változókat.
3. Készítsen egy blokk memória a program és a PSP (szegmens: 0000H - PSP; szegmens + 0010h: 0000h - program). A PSP mező megfelelő rögzített értékek.
5. A munkaterület rakodó szól formázott fejrész EXE-fájlt.
6. hosszúság kiszámítása a betöltő modul, amelyet a képlet: Size = ((PageCnt * 512) - (HdrSize * 16)) - PartPag.
7. Határozza meg az elmozdulás a terhelés modul fájlt, azonos HdrSize * 16.
10. Minden beviteli táblázat beállításokat:
a) Olvasd el a Word és I_OFF I_SEG;
b) számított RELO_SEG = START_SEG + I_SEG;
11. memóriát kiosztani a program összhangban MAXMEM és MinMem.
12 inicializálja a nyilvántartásban, a program fut:
b) AX = eredmény ellenőrzéséhez vezető személyazonosságát megadva a parancssorban;
c) SS = START_SEG + ReloSS, SP = ExeSP;
d) CS = START_SEG + ReloCS, IP = ExeIP.
EXE-vírusok oszthatók csoportban, mint a jellemzője, hogy ossza adott algoritmus.
Vírusok cseréje kód (felülírás)
Az ilyen vírusok váltak ritkaság. A fő hátránya - túl durva munka. A fertőzött programok nem hajtják végre, mivel a vírus felülírja a programkód mentés nélkül. Indításakor, a vírus megkeresi a következő áldozat (vagy áldozat), megnyitja a fájlt talált szerkeszteni és írja a szervezet a program kezdete mentés nélkül az eredeti kódot. Ezekkel a vírusokkal fertőzött nincsenek alávetve a kezelési program.
Ezek a vírusok nevüket, mert a szorzás algoritmus: Minden fertőzött fájlt, a fájl-műhold. Nézzük meg részletesebben kétféle vírus ennek a csoportnak:
Vírusok szaporítják első típus a következő. Minden megfertozödjön EXE-fájl ugyanabban a könyvtárban hozzon létre egy fájlt a vírus kódját, amelynek neve megegyezik és EXE-fájlt, de a kiterjesztés COM. A vírus akkor aktiválódik, amikor a program indításakor a parancssorban, csak a neve a futtatható fájlt. A tény az, hogy ha nem adja meg a fájl kiterjesztését, a DOS első néz ki egy fájlt az aktuális könyvtárban a megadott névvel és kiterjesztéssel COM. Ha a COM-fájlt, hogy a név nem található, a keresés folyik EXE-fájlt az azonos nevet. Ha nem talált, és EXE-fájlt, DOS megpróbálja megtalálni BAT (batch) fájlt. Ennek hiányában az aktuális könyvtárban a futtatható fájlt a megadott névvel keresés folyik összes katalógusban megtalálható a PATH változót. Más szóval, ha a felhasználó akarja indítani a programot, és egyre csak a nevét (alapvetően minden do) a parancssorban, az első vírus megkapja a vezérlést, a kód, amelynek a COM-fájlokat. Ez létrehoz egy COM-vissza a fájl egy vagy több EXE-fájl (spread), majd futtatható EXE-fájlt a megadott néven a parancssorban. A felhasználó is azt hiszi, hogy csak futó EXE-programot. Vírus műholdas semlegesíteni egészen egyszerűen - ahhoz, hogy távolítsa el a COM-fájlt.
Vírusok A második típusú finomabban. Név megfertozödjön EXE-fájl ugyanaz marad, és a kiterjesztést helyébe egy másik, eltérő végrehajtható (COM, EXE és BAT). Például a fájl kaphat kiterjesztése DAT (adat file) vagy OVL (overlay szoftver). Aztán a helyére EXE-fájl másolása a vírus kódját. Amikor egy olyan programot futtat, vírussal fertőzött kódot megkapja a vezérlést, található EXE-fájlt. Megfertőző egy vagy több EXE-fájlokat ugyanúgy egy vírus visszatér az eredeti futtatható fájl kiterjesztését (de nem EXE, COM, és mint EXE-fájlt ugyanazzal a névvel által elfoglalt vírus), majd végrehajtja azt. Amikor egy fertőzött programot a munka befejeződött, visszatér a futtatható fájl nem futtatható kiterjesztése. Kezelése fájlokat fertőzött meg a vírus típusától, nehéz lehet, ha a műholdas vírus titkosítja egy részét vagy egészét a test válik a fertőzött fájlt, de még mielőtt a végrehajtás visszanyeri.
Vírusok kerülnek be a program (parazita)
Vírusok az ilyen típusú a leginkább feltűnő: a kód van írva, hogy megfertőződnek egy program, amely megnehezíti kezelését a fertőzött fájlokat. A végrehajtás módszereit az EXE-vírusok az EXE-fájlt.
Ways fertőzésének EXE-fájl
A következő módon - a bevezetése a vírus a fájl elején a shift kódot. A mechanizmus a fertőzés: a test megfertozödjön program olvasni a memóriába, a helyén van rögzítve vírus kódját, azt követően, hogy - a program kódját megfertőződnek. Így a program kódot, ahogy „mozog” a fájl hossza a vírus kódját. Innen a neve a módszer - „oly módon, hogy váltani.” Amikor fut a fertőzött fájlt, a vírus megfertőz egy vagy több fájlt. Utána szól a program memória a kódot, írd be egy speciálisan létrehozott ideiglenes kiterjesztésű fájl futtatható fájl (COM vagy EXE) a lemezen, majd végrehajtja a fájlt. Amikor a program befejeződött, az ideiglenes fájl törlésre kerül. Ha létrehoz egy vírus nem vonatkozik a kiegészítő védelmi technikák gyógyítani a fertőzött fájl mérete nagyon egyszerű - csak eltávolítani a vírus kódját a fájl elején, és a program működőképes lesz újra. A hátránya ennek a módszernek, hogy el kell olvasni a memóriába az összes kódot megfertőződés a programmal (és valójában vannak olyan esetek nagyobb 1Mbayt).
A következő módon fertőzni fájlok - átviteli módszer - úgy tűnik, hogy a legtökéletesebb az összes fent. A vírus a következő módon: ha egy fertőzött program indításakor a vírus szervezetben azokból olvasni a memóriába. Akkor kérik fertőzött programot. A memória olvasni az elején, a hossza megegyezik a vírus szervezetben. Ez a hely rögzíti a vírus szervezetben. Indítsuk el a programot a memóriából az iratokhoz csatolt. Innen a neve a módszer - „átviteli módot”. Miután a vírus fertőzött egy vagy több fájlt, akkor továbblép a program végrehajtásához, ahonnan elindult. Ehhez beolvassa a kezdete a fertőzött tárolt program a fájl alján, és kiírja, hogy a tetején a fájl helyreállítása a program működése. Ezután a vírus törli az elején a programkód a fájl végére, visszaállítva az eredeti file hosszát, és végrehajtja a programot. Befejezése után a program a vírus újra írja a kódot, hogy az elején a fájlt, és az eredeti program elején - a végén. Ez a módszer lehet fertőzött akár anti-vírus szoftver, amely ellenőrzi a kód integritását, mivel a vírus váltotta ki a program pontosan ugyanazt a kódot, a fertőzés előtt.
Vírusok cseréje kód (felülírás)
Mint már említettük, az ilyen típusú vírus már régóta halott. Esetenként több ilyen vírusok létre assembly nyelven, hanem ez egy verseny írásban a legkisebb felülírás-vírus. Abban a pillanatban, a legkisebb ismert vírus felülírja megírt ReminderW (Halál Virii Crew csoport), és úgy 22 bájt.
Az algoritmus a felülírás-vírus következő:
1. Nyissa meg a fájlt, amelyből a vírus kerül kontroll.
2. Olvassa el a puffer a vírus kódját.
4. Keresse meg a maszk alkalmas a fertőzött fájlokat.
5. Ha a fájl már nem tapasztalható, ugorjon a 11.
6. Nyissa meg a fájlt talált.
7. Ellenőrizze, hogy a fertőzött fájlt talált a vírussal.
8. Ha a fájl fertőzött, folytassa a 10. lépéssel.
9. Mentse a fájlt az elején a vírus kódját.
10. Zárja le a fájlt (ha szükséges meg lehet fertőzni egy mind a fájlokat egy könyvtárban, vagy a lemezen).
11. Probléma, hogy a képernyőn hibaüzenet, pl «abnormális program megszűnése» vagy «Nincs elég memória», - akkor is, ha a felhasználó nem is meglepett, hogy a program nem indul el.
12. A program befejezése.
Az alábbiakban egy lista a program, amelyik fájlokat fertőz ezen a módon.
Vírusok műholdak már elterjedt - az arány társa vírusok és paraziták körülbelül 1-2.
Fertőzést, hogy műholdas COM-fájl
Az mit jelent ez a módszer -, hogy ne érjen az „idegen macska» (EXE-program), hozzon létre „saját» - COM-nevű fájlt EXE-programot. Az algoritmus működik ez a vírus rendkívül egyszerű, mivel nincs szükség további intézkedésekre (pl menteni a vírus testhossza összeállított EXE-fájl vírusos kódolvasó a szervezetben a vírus puffer, futtassa a fájlt, amelyből a vírus kezelése). Nincs szükség arra, hogy még a címke határozza meg a fájl fertőzés.
Fertőzés végezzük a shell:
1. Ha a parancssori paraméterek vannak megadva, kivéve azokat egy string változó továbbítására a fertőzött programot.
2. Keresse meg az EXE-file-áldozatot.
3. Ellenőrizze, hogy nincs a könyvtárban talált EXE-fájlt, a COM-fájl neve megegyezik a kívánt fájlt.
4. Ha egy COM-fájl jelen, akkor a fájl már fertőzött, folytassa a 6. lépéssel.
5. A héj másolni a fájlt, amelyből átveheti az irányítást, a fájl nevét az áldozat és a kiterjesztés COM.
6. Eljárás Exec letölteni és futtatni a fájl neve kezdet, de a kiterjesztése EXE - azaz futtatni egy fertőzött programot.
7. Tegye vissza a vezérlést DOS.
Az alábbi felsorolás mutatja a fájl fertőzés ezzel a módszerrel.