Tīkla vīrusu piemēri. Makrovīrusi, tīkla vīrusi - vīrusi un antivīrusi. Kas ir "tārpu vīruss"

Šajā biļetena daļā tiek izmantota informācija no Kaspersky Lab http://www.avp.ru - slavenākā un populārākā Krievijas uzņēmuma, kas ražo pretvīrusu programmatūru.

Tīkla vīrusi
Tīkla vīrusi ietver vīrusus, kas to izplatīšanai aktīvi izmanto vietējo un globālo tīklu protokolus un iespējas. Tīkla vīrusa galvenais princips ir iespēja patstāvīgi pārsūtīt savu kodu uz attālo serveri vai darbstaciju. "Pabeigts" tīkla vīrusi tajā pašā laikā viņiem ir arī iespēja palaist savu kodu attālais dators vai vismaz "piespiest" lietotāju palaist inficēto failu.
Pastāv maldīgs uzskats, ka jebkurš datortīklā izplatījies vīruss ir tīkla vīruss. Bet šajā gadījumā gandrīz visi vīrusi būtu tīkla vīrusi, pat primitīvākie no tiem: galu galā visizplatītākais nerezidentu vīruss, inficējot failus, nesaprot - vai tas ir tīkla (attālais) disks vai lokālais. . Rezultātā šāds vīruss spēj inficēt failus tīklā, taču to nevar klasificēt kā tīkla vīrusu.
Visslavenākie kļuva 80. gadu beigu tīkla vīrusi, tos sauc arī par tīkla tārpiem (tārpiem). Tie ietver Morisa vīrusu, "Cristmas Tree" un "Wank Worm" vīrusus. To izplatīšanai viņi izmantoja tā laika globālo tīklu kļūdas un nedokumentētās funkcijas - vīrusi pārsūtīja savas kopijas no servera uz serveri un palaida tās izpildei. Morisa vīrusa gadījumā epidēmija ir pārņēmusi pat vairākus globālos tīklus Amerikas Savienotajās Valstīs.
Pagātnes tīkla vīrusi izplatījās datortīklā un, kā likums, tāpat kā to pavadošie vīrusi, nemainīja failus vai sektorus diskā. Viņi iekļuva datora atmiņā no datortīkla, aprēķināja citu datoru tīkla adreses un nosūtīja uz šīm adresēm savas kopijas. Šie vīrusi dažkārt arī izveidoja darba failus sistēmas diskos, taču vispār nevarēja piekļūt datora resursiem (izņemot RAM).
Pēc vairākām tīkla vīrusu epidēmijām, kļūdas tīkla protokolos un programmatūra tika salabotas un "aizmugurējās durvis" (aizmugurējās durvis) aizvērtas. Līdz ar to pēdējo desmit gadu laikā nav fiksēts neviens inficēšanās gadījums ar tīkla vīrusu, tāpat nav parādījies neviens jauns tīkla vīruss.
Atkal tīkla vīrusu problēma radās tikai 1997. gada sākumā, kad parādījās vīrusi "Macro.Word. ShareFun" un "Win.Homer". Pirmais izmanto iespējas E-pasts Microsoft Mail - tas izveido jaunu e-pastu, kurā ir inficēta dokumenta fails ("ShareFun" ir makrovīruss), pēc tam no MS-Mail adrešu saraksta atlasa trīs nejaušas adreses un nosūta uz tām inficēto e-pastu. Tā kā daudzi lietotāji MS-Mail iestatījumus iestata tā, ka, saņemot ziņojumu, automātiski tiek palaists MS Word, vīruss "automātiski" injicējas inficētās ziņas saņēmēja datorā.
Šis vīruss ir pirmā tipa modernā tīkla vīrusa piemērs, kas apvieno Word/Excel iebūvētās iespējas. Pamatvaloda, protokoli un e-pasta līdzekļi un automātiskās palaišanas līdzekļi, kas nepieciešami vīrusa izplatībai.
Otrais vīruss ("Homer") savam izplatīšanai izmanto FTP (File Trabsfer Protocol) un pārsūta savu kopiju uz attālo ftp serveri ienākošo direktorijā. Tā kā FTP tīkla protokols izslēdz iespēju palaist failu uz attālā servera, šo vīrusu var raksturot kā "daļēji tīkla" vīrusu, taču tas ir īsts piemērs vīrusu spējai izmantot modernus tīkla protokolus un inficēt globālo tīklu. tīkliem.
Protams, ir arī citi veidi, kā vīrusi var iekļūt mūsdienu tīklos, taču es negribētu tos šeit izklāstīt, jo tas mudinās vīrusu rakstītājus īstenot šīs idejas.

Ļaunprātīgs kods var izmantot ievainojamības programmatūras kļūdu dēļ. Varat labot kļūdas un novērst drošības incidentus, izmantojot programmatūras pārdevēja nodrošinātos ielāpus. ielāpu plānos jākoncentrējas ne tikai uz operētājsistēmām un pārlūkprogrammas papildinājumiem, bet arī uz visu programmatūru, kas tiek izvietota. Regulāri kataloģizējiet datoros instalēto programmatūru, sākot no biroja utilītprogrammām līdz datu bāzēm un tīmekļa serveru lietojumprogrammām, un pārbaudiet, vai nav atjauninājumu. Regulāri pārbaudiet, vai iekšējā kodā nav drošības caurumu, un pēc iespējas ātrāk izlabojiet tos. Regulāri pārbaudiet, vai ierīcēs, piemēram, maršrutētājos un printeros, nav programmatūras atjauninājumu, un ātri tos labojiet. Šī funkcija ir kļuvusi par vienu no lielākajiem uzbrukuma vektoriem korporatīvajā vidē.

Kas tas ir

Vārds "vīrusi" sen un labi zināms datoru lietotājiem. Tas jau sen ir pāraudzis savu sākotnējo nozīmi, un tagad to bieži izmanto, lai atsauktos uz jebkuru ļaunprogrammatūra, kas spēj "reproducēt", izplatīties no datora uz datoru un dažreiz inficēt veselus datortīklus - līdz pat globālām epidēmijām internetā.

Brīdinājums. Lai piekļūtu visiem tīkla resursiem, ir nepieciešama spēcīga parole, kuru nav viegli uzminēt. "Open Shares" ir tīkla resursi, kas ļauj lietotāja mantotajām atļaujām pārbaudīt piekļuvi. Atvērtajam koplietojumam nav nepieciešama papildu autentifikācija, kas ļauj draudiem izplatīties ļoti ātri. Šī iemesla dēļ jums pēc iespējas jāsamazina atvērto akciju izmantošana. Ja tie ir nepieciešami darbības nepārtrauktības nodrošināšanai, atvērtās akcijas ir jāierobežo, lai izmantotu ierakstīšanas un izpildes privilēģijas.

Tie ir "klasiskie" vīrusi, tīkla un pasta tārpi, "Trojas zirgi", aizmugures programmas utt.

Kāpēc tie ir bīstami

Vīrusa sekas var būt:

salīdzinoši nekaitīga iejaukšanās datora darbībā - piemēram, nežēlīgs joks, kad ekrāns kļūst tukšs un tiek parādīts ziņojums, ka jūsu HDD formatēts;

nodarot reālu kaitējumu - ja cietais disks ir patiešām formatēts vai svarīgi faili ir izdzēsti;

Pēc to dzīvotnes vīrusus var iedalīt

Ja lietotājs vēlas iegūt failus tikai no avota, piešķiriet viņam lasīšanas piekļuvi. Papildu drošībai varat ierobežot rakstīšanas piekļuvi lietotājiem, kuriem ir nepieciešamas failu pārsūtīšanas iespējas, uz "pagaidu" krātuves mapi failu serverī, kuru iestatījāt daļēji regulāri tīrīt. Ierobežojiet izpildes atļaujas tikai administratoriem vai pieredzējušiem lietotājiem, kuriem ir šī vajadzība.

Tīkla tārpu veidi

Kad lietotājs piesakās, viņa tiesības un atļaujas ir netiešas — durvis tiek atslēgtas. Lai gan tie nav izplatīti, uzbrucēji joprojām izmanto e-pasta pielikumus, lai izplatītu ļaunprātīgu kodu. Lielākā daļa pasta serveru nodrošina iespēju atspējot noteikta veida pielikumus no e-pastiem. To failu veidu ierobežošana, kas ir derīgi kā pielikumi, novērš daudzu draudu izplatīšanos.

patiesais noziegums ir tad, kad uzbrucēji izmanto Trojas zirgus, lai nozagtu jūsu kredītkaršu numurus, piekļuves paroles un citu konfidenciālu informāciju.

Vīrusus var iedalīt klasēs pēc šādām galvenajām pazīmēm:

biotops;

operētājsistēma (OC);

darba algoritma iezīmes;

destruktīvas iespējas.

Ieguldījumi pretsurogātpasta programmatūrā ir vēl viens veids, kā samazināt draudu ietekmi. Tas samazina pikšķerēšanas uzbrukumu un surogātpasta skaitu, kas sasniedz galalietotājus un līdz ar to arī tīklu kopumā. Perimetra ugunsmūri ir ļoti svarīgi, lai aizsargātu tīklu kopumā, taču tie nevar aptvert visus ieejas punktus. Klienta puses ugunsmūri pievieno papildu drošības līmeni, aizsargājot atsevišķus datorus no ļaunprātīgas darbības, piemēram, pakalpojuma atteikuma uzbrukumiem, un tie ir ļoti svarīgi mūsdienu draudu ainavas pārvaldīšanai.

Pēc HABITAT vīrusus var iedalīt:

fails;

zābaks;

Failu vīrusi vai nu dažādos veidos iefiltrējas izpildāmajos failos (visbiežāk sastopamie vīrusu veidi), vai rada failu dublikātus (pavadvīrusi), vai arī izmanto failu sistēmas organizācijas īpatnības (saites vīrusi).

Sāknēšanas vīrusi ieraksta sevi vai nu diska sāknēšanas sektorā (sāknēšanas sektorā), vai sektorā, kurā atrodas cietā diska sāknēšanas ielāde (Master Boot Record), vai maina rādītāju uz aktīvo sāknēšanas sektoru.

Papildus pamata ugunsmūriem tīkla un resursdatora ielaušanās noteikšanas un pretielaušanās sistēmas var palīdzēt kontrolēt nevēlamas tīkla darbības un daudzos gadījumos apturēt vai brīdināt trafiku reāllaikā. Mūsdienās daudzi klienta puses ugunsmūri nodrošina šīs funkcijas.

Komandas un ārkārtas reaģēšanas plāni

Izglītots gala lietotājs ir drošāks. Pārliecinieties, vai lietotāji saprot drošas skaitļošanas pamatus, piemēram,. Pat pēc visu uzdevumu izpildes jums ir jāsagatavojas sliktākajam scenārijam. Izstrādājiet plānu, kurā sīki aprakstīts, kā reaģēt uz iespējamu uzliesmojumu, un jūsu reaģēšanas komandas locekļiem tiek piešķirti uzdevumi un pienākumi. ārkārtas gadījumiem.

Makrovīrusi inficē dokumentu failus un vairāku populāru redaktoru izklājlapas.

Tīkla vīrusi izplatībai izmanto datortīklu un e-pasta protokolus vai komandas.

Ir liels skaits kombināciju - piemēram, failu sāknēšanas vīrusi, kas inficē gan failus, gan disku sāknēšanas sektorus. Šādiem vīrusiem, kā likums, ir diezgan sarežģīts darba algoritms, bieži tiek izmantotas oriģinālas metodes, kā iekļūt sistēmā, tiek izmantotas slepenas un polimorfās tehnoloģijas. Vēl viens šādas kombinācijas piemērs ir tīkla makrovīruss, kas ne tikai inficē rediģētos dokumentus, bet arī nosūta savas kopijas pa e-pastu.

Plānojot savu atbildi, uzdodiet un atbildiet uz šiem jautājumiem. Vai inficētos datorus var ātri ievietot karantīnā pirms citu datoru inficēšanas?

  • Cik ātri sistēmas ģenerēs brīdinājumus, ja tīklā ir kaut kas?
  • Vai administratori var atrisināt šo problēmu?
  • Cik viegli ir pāradresēt trafiku un pakalpojumus tīklā?
Ja plānojat šīs lietas, ir daudz vieglāk tikt galā ar sarežģītām situācijām un tiek ietaupīts laiks un nauda.

Papildu resursi un informācija

Izmantojiet ugunsmūri, lai bloķētu visus ienākošos savienojumus no interneta pakalpojumiem, kuriem nevajadzētu būt publiskiem. Pēc noklusējuma noraidiet visus ienākošos savienojumus un piedāvājiet tikai apstiprinātus pakalpojumus ārpasaulei. Spēcīga parole apgrūtina paroļu failu uzlauzšanu uzlauztos datoros un novērš vai ierobežo bojājumus, ja datoru apdraud draudi. Pārliecinieties, vai datora programmas un lietotāji izmanto zemāko privilēģiju līmeni, kas nepieciešams uzdevuma izpildei. Ja jums nav nepieciešama rakstīšanas piekļuve, iespējojiet tikai lasīšanas režīmu, ja šī opcija ir pieejama. Atspējot vispārēja piekļuve failus, ja tie nav nepieciešami. Atspējot anonīmu piekļuvi koplietotās mapes. Pēc noklusējuma daudzas operētājsistēmas instalē palīgpakalpojumus, kas nav kritiski. Šie pakalpojumi ir uzbrukumu uzbrukumi. Veiciet kriminālistikas analīzi un atkopiet datorus, izmantojot uzticamus datu nesējus. Izglītojiet lietotājus neatvērt pielikumus, ja viņi tos negaida. Tāpat lietotājiem nevajadzētu palaist programmatūru, ko viņi lejupielādē no interneta, ja vien lietotājs vispirms nav skenējis failā vīrusus. Vienkārša neaizsargātas vietnes apmeklēšana var izraisīt infekciju, ja netiek novērstas noteiktas pārlūkprogrammas ievainojamības. Ja ir nepieciešams ierīces savienojums, pārliecinieties, vai visas ierīces ir iestatītas uz Neautorizētas, pieprasot autorizāciju katram savienojuma pieprasījumam. Nepieņemiet pieteikumus, kas nav parakstīti vai iesniegti no nezināmiem avotiem.

Ātras vīrusu definīcijas

Mazumtirdzniecības iesniegumiem tiek veikta tikai automatizēta analīze.

Inficētā OPERĀCIJAS SISTĒMA (vai drīzāk OS, kuras objekti ir uzņēmīgi pret infekciju) ir vīrusu iedalījuma klasēs otrais līmenis. Katrs fails vai tīkla vīruss inficē vienas vai vairāku OS failus - DOS, Windows, Win95/NT, OS/2 utt. Makrovīrusi inficē Word, Excel, Office97 failus. Sāknēšanas vīrusi ir vērsti arī uz konkrētiem formātiem sistēmas datu atrašanās vietai disku sāknēšanas sektoros.

Vīrusi, tārpi, Trojas zirgi un robotprogrammatūras ir daļa no programmatūras klases, ko sauc par ļaunprātīgu programmatūru. Ļaunprātīga programmatūra vai ļaunprātīga programmatūra neatbilst ļaunprātīgai programmatūrai. Tas ir kods vai programmatūra, kas ir īpaši izstrādāta, lai bojātu, iznīcinātu, nozagtu vai vispār izraisītu kādu citu "sliktu" vai nelikumīgu darbību datos, saimniekdatoros vai tīklos.

Ir daudzas dažādas ļaunprātīgas programmatūras klases Dažādi ceļi sistēmas infekcija un izplatība. Ļaunprātīga programmatūra var inficēt sistēmas, ja tā tiek komplektēta ar citām programmām vai failiem tiek pievienota kā makro. Citi tiek instalēti, izmantojot zināmu ievainojamību operētājsistēmā, tīkla ierīcē vai citā programmatūrā, piemēram, pārlūkprogrammas caurumu, kas liek lietotājiem apmeklēt vietni, lai inficētu savus datorus.

Starp vīrusu DARBA ALGORITMA PAZĪMĒM izceļas šādi punkti:

rezidentūra;

Maskēšanās algoritmu izmantošana;

paššifrēšana un polimorfisms;

nestandarta metožu izmantošana.

Kad pastāvīgs vīruss inficē datoru, tas atstāj savu pastāvīgo daļu RAM, kas pēc tam pārtver zvanus operētājsistēma uz infekcijas objektiem un tiek ievadīts tajos. Rezidenti vīrusi atrodas atmiņā un ir aktīvi, līdz dators tiek izslēgts vai operētājsistēma tiek restartēta. Nerezidentu vīrusi neinficē datora atmiņu un paliek aktīvi ierobežotu laiku. Daži vīrusi RAM atstāj mazas rezidentu programmas, kas neizplata vīrusu. Šādi vīrusi tiek uzskatīti par nerezidentiem.

Daži no pazīstamākajiem ļaunprātīgas programmatūras veidiem ir vīrusi, tārpi, Trojas zirgi, robotprogrammatūras, aizmugures durvis, spiegprogrammatūra un reklāmprogrammatūra. Ļaunprātīga programmatūra nevar sabojāt sistēmu un tīkla iekārtu fizisko aparatūru, taču tā var sabojāt aparatūrā esošos datus un programmatūru. Ļaunprātīgu programmatūru arī nevajadzētu jaukt ar bojātu programmatūru, kas ir izstrādāta likumīgiem mērķiem, bet kurā ir kļūdas vai kļūdas.

Divi visizplatītākie ļaunprātīgas programmatūras veidi ir vīrusi un tārpi. Šāda veida programmas spēj pašas kopēt un var izplatīt savas kopijas, kuras var pat mainīt. Lai ļaunprātīgu programmatūru varētu klasificēt kā vīrusu vai tārpu, tai ir jāspēj izplatīties. Atšķirība ir tāda, ka tārps darbojas vairāk vai mazāk neatkarīgi no citiem failiem, savukārt vīrusa izplatība ir atkarīga no resursdatora programmas. Šīs un citas ļaunprātīgas programmatūras klases ir aprakstītas tālāk.

Makrovīrusus var uzskatīt par pastāvīgiem, jo ​​tie pastāvīgi atrodas datora atmiņā visu inficētā redaktora darbības laiku. Šajā gadījumā operētājsistēmas lomu uzņemas redaktors, un jēdziens "operētājsistēmas pārstartēšana" tiek interpretēts kā iziešana no redaktora.

Daudzuzdevumu operētājsistēmās rezidenta DOS vīrusa "dzīves ilgums" var būt ierobežots arī līdz brīdim, kad tiek aizvērts inficētais DOS logs, un sāknēšanas vīrusu darbība dažās operētājsistēmās ir ierobežota līdz brīdim, kad tiek instalēti OC diska draiveri.

Tīkla tārps: kā noņemt vīrusu?

Datorvīruss ir ļaunprātīgas programmatūras veids, kas izplatās, ievietojot savu gadījumu un kļūstot par citas programmas daļu. Tas izplatās no viena datora uz otru, atstājot infekcijas ceļojuma laikā. Vīrusi var atšķirties pēc smaguma pakāpes, radot viegli kairinošu ietekmi uz bojātiem datiem vai programmatūru un izraisot pakalpojumu liegšanas apstākļus. Gandrīz visi vīrusi pievienojas izpildāmam failam, kas nozīmē, ka sistēmā var pastāvēt vīruss, taču tas nebūs aktīvs vai nespēs izplatīties, kamēr lietotājs nepalaidīs vai neatvērs ļaunprātīgā saimniekdatora failu vai programmu.

STEALTH algoritmu izmantošana ļauj vīrusiem pilnībā vai daļēji paslēpties sistēmā. Visizplatītākais slepenais algoritms ir pārtvert OC lasīšanas/rakstīšanas pieprasījumus inficētiem objektiem. Tajā pašā laikā slepenie vīrusi tos vai nu uz laiku izārstē, vai to vietā “aizvieto” neinficētas informācijas daļas. Makrovīrusu gadījumā vispopulārākā metode ir makro skata izvēlnes zvanu atspējošana. Viens no pirmajiem uz failiem balstītajiem slepenajiem vīrusiem bija "Frodo", pirmais boot stealth vīruss bija "Brain".

Kā un kādam nolūkam izplatās tīkla tārpi?

Kad tiek izpildīts resursdatora kods, tiek izpildīts arī vīrusa kods. Parasti resursdatora programma turpina darboties pēc inficēšanās ar vīrusu. Tomēr daži vīrusi pārraksta citas programmas ar savām kopijām, kas pilnībā iznīcina resursdatora programmu. Vīrusi izplatās, kad programmatūra vai dokuments, kuram tie ir pievienoti, tiek pārsūtīti no viena datora uz citu, izmantojot tīklu, disku, failu koplietošanu vai inficētus e-pasta pielikumus.

Datoru tārpi ir līdzīgi vīrusiem, jo ​​tie kopē savas funkcionālās kopijas un var izraisīt tāda paša veida bojājumus. Atšķirībā no vīrusiem, kuriem nepieciešama inficēta resursdatora faila izplatīšana, tārpi ir atsevišķa programmatūra, un tiem nav nepieciešama resursdatora programmas izplatīšana vai cilvēku palīdzība. Lai izplatītos, tārpi izmanto mērķa sistēmas ievainojamību vai izmanto kādu sociālo inženieriju, lai pievilinātu lietotājus to darīt. Tārps iekļūst datorā, izmantojot sistēmas ievainojamību, un izmanto sistēmas failu vai informācijas pārsūtīšanas iespējas, ļaujot tam pārvietoties bez palīdzības.

PAŠKRIPTĒŠANĀS un POLIMORFIZITĀTES izmanto gandrīz visu veidu vīrusi, lai pēc iespējas sarežģītu vīrusu noteikšanas procedūru. Polimorfie vīrusi (polimorfie) ir diezgan grūti nosakāmi vīrusi, kuriem nav parakstu, t.i. nesatur nevienu nemainīgu koda daļu. Vairumā gadījumu diviem viena un tā paša polimorfā vīrusa paraugiem nebūs vienas atbilstības. Tas tiek panākts, šifrējot vīrusa galveno daļu un modificējot atšifrēšanas programmu.

Trojas zirgs ir cita veida ļaunprātīga programmatūra, kas nosaukta koka zirga vārdā, ko grieķi izmantoja, lai iefiltrētos Trojā. Šī ir ļaunprātīga programmatūra, kas izskatās likumīga. Parasti lietotāji tiek maldināti to lejupielādēt un izpildīt savās sistēmās. Kad tas ir aktivizēts, tas var sasniegt neierobežotu skaitu uzbrukumu resursdatoram, sākot no lietotāja kairinājuma līdz resursdatora bojājumiem. Ir zināms arī, ka Trojas zirgi rada aizmugures durvis, lai uzbrucēji varētu piekļūt sistēmai.

Atšķirībā no vīrusiem un tārpiem, Trojas zirgi nevairojas, inficējot citus failus un paši tos nekopējot. Trojas zirgiem ir jāizplatās, mijiedarbojoties ar lietotāju, piemēram, atverot e-pasta pielikumu vai lejupielādējot un palaižot failu no interneta.

Vīrusos bieži tiek izmantotas dažādas NESTANDARTA TEHNIKA, lai pēc iespējas dziļāk paslēptos OC kodolā (kā to dara vīruss "3APA3A"), lai aizsargātu tā pastāvīgo kopiju no atklāšanas ("TPVO", "Trout2" vīrusi), līdz apgrūtināt vīrusa ārstēšanu (piemēram, ievietojot savu kopiju Flash-BIOS) utt.

Atbilstoši to DESTRUKTĪVĀM SPĒJĀM vīrusus var iedalīt:

nekaitīgs, t.i. kas nekādi neietekmē datora darbību (izņemot brīvās diska vietas samazināšanos tā izplatīšanas rezultātā);

nebīstams, kura ietekme aprobežojas ar brīvas diska vietas un grafisko, skaņas u.c. efektu samazināšanos;

bīstami vīrusi, kas var izraisīt nopietnus datora darbības traucējumus;

ļoti bīstami, kuru darbības algoritms ir apzināti balstīts uz procedūrām, kas var novest pie programmu zaudēšanas, datu iznīcināšanas, sistēmas atmiņas apgabalos ierakstītās datora darbībai nepieciešamās informācijas dzēšanas un pat, kā vēsta viena no nepārbaudītām datora leģendām. , veicina kustīgo daļu mehānismu ātru nodilumu - nonāk rezonansē un iznīcina dažu veidu cieto disku galvas.

Bet pat tad, ja vīrusa algoritmā netiek atrasti zari, kas bojā sistēmu, šo vīrusu nevar saukt par nekaitīgu ar pilnu pārliecību, jo tā iekļūšana datorā var izraisīt neparedzamas un dažkārt katastrofālas sekas. Galu galā vīrusam, tāpat kā jebkurai programmai, ir kļūdas, kuru rezultātā var tikt bojāti gan faili, gan diska sektori (piemēram, šķietami nekaitīgais "DenZuk" vīruss diezgan pareizi darbojas ar 360K disketēm, bet var iznīcināt informāciju lielākas disketes). apjoms). Līdz šim ir bijuši vīrusi, kas "COM vai EXE" definē nevis pēc iekšējā faila formāta, bet gan pēc tā paplašinājuma. Protams, ja nosaukuma formāts un paplašinājums nesakrīt, fails pēc inficēšanās kļūst nederīgs. Ir iespējams arī "iestrēgt" pastāvīgu vīrusu un sistēmu, izmantojot jaunas DOS versijas, strādājot operētājsistēmā Windows vai ar citām jaudīgām programmatūras sistēmām. Un tā tālāk.

Šajā grupā ietilpst vīrusi, kas to vairošanās laikā vienā vai otrā veidā izmanto failu sistēma jebkura (vai jebkura) OS.

Failu vīrusa ieviešana ir iespējama gandrīz visos visu populāro operētājsistēmu izpildāmajos failos. Līdz šim ir zināmi vīrusi, kas inficē visu veidu standarta DOS izpildāmos objektus: pakešfailus (BAT), ielādējamos draiverus (SYS, ieskaitot īpašos failus IO.SYS un MSDOS.SYS) un izpildāmos bināros failus (EXE, COM). Ir vīrusi, kas inficē citu operētājsistēmu izpildāmos failus - Windows 3.x, Windows95/NT, OS/2, Macintosh, UNIX, tostarp Windows 3.x un Windows95 VxD draiverus.

Ir vīrusi, kas inficē failus, kuros ir programmas avota teksti, bibliotēkas vai objektu moduļi. Vīrusam ir iespēja rakstīt datu failos, taču tas notiek vai nu vīrusa kļūdas rezultātā, vai arī tad, kad izpaužas tā agresīvās īpašības. Makrovīrusi savu kodu ieraksta arī datu failos – dokumentos vai izklājlapās –, tomēr šie vīrusi ir tik specifiski, ka tiek ievietoti atsevišķā grupā.

Pārrakstīšana

Šī inficēšanās metode ir visvienkāršākā: vīruss raksta savu kodu, nevis inficētā faila kodu, iznīcinot tā saturu. Protams, šajā gadījumā fails pārstāj darboties un netiek atjaunots. Šādi vīrusi sevi atklāj ļoti ātri, jo operētājsistēma un lietojumprogrammas diezgan ātri pārstāj darboties. Es nezinu nevienu gadījumu, kad šāda veida vīrusi būtu atrasti "dzīvi" un izraisītu epidēmiju.

Pārrakstīšanas vīrusi ietver vīrusus, kas tiek rakstīti NewEXE failu DOS galvenes vietā. Galvenā faila daļa paliek nemainīga un turpina normāli darboties attiecīgajā operētājsistēmā, bet DOS galvene ir bojāta.

parazitāras

Kompanjonvīrusi

Kategorijā "pavadonis" ir iekļauti vīrusi, kas nepārveido inficētos failus. Šo vīrusu darbības algoritms ir tāds, ka inficētajam failam tiek izveidots dvīņu fails, un, palaižot inficēto failu, tieši šis dvīnis iegūst kontroli, t.i. vīruss.

Visizplatītākie kompanjonvīrusi izmanto DOS funkciju, lai vispirms izpildītu .COM failu, ja vienā direktorijā ir divi faili ar tādu pašu nosaukumu, bet atšķirīgiem nosaukuma paplašinājumiem — .COM un .EXE. Šādi vīrusi rada satelītdatnes EXE failiem, kuriem ir tāds pats nosaukums, bet ar paplašinājumu .COM, piemēram, XCOPY.COM failam tiek izveidots XCOPY.EXE. Vīruss raksta COM failā un nekādā veidā nemaina EXE failu. Palaižot šādu failu, DOS būs pirmais, kas atklās un izpildīs COM failu, t.i. vīrusu, kas pēc tam palaiž EXE failu. Daži vīrusi izmanto ne tikai COM-EXE variantu, bet arī BAT-COM-EXE.

Otro grupu veido vīrusi, kas inficēti pārdēvē failu uz kādu citu nosaukumu, atceras to (lai vēlāk palaistu resursdatora failu) un ieraksta savu kodu diskā ar inficētā faila nosaukumu. Piemēram, fails XCOPY.EXE tiek pārdēvēts par XCOPY.EXD, un vīruss tiek uzrakstīts ar nosaukumu XCOPY.EXE. Startējot, vadība pārņem vīrusa kodu, kas pēc tam palaiž oriģinālo XCOPY, kas saglabāts ar nosaukumu XCOPY.EXD. Interesants fakts ir tas šī metode darbojas, iespējams, visās operētājsistēmās - šāda veida vīrusi tika atrasti ne tikai DOS, bet arī Windows un OS / 2.

Trešajā grupā ietilpst tā sauktie "Path-companion" vīrusi, kas "spēlē" DOS PATH funkcijas. Viņi vai nu raksta savu kodu zem inficētā faila nosaukuma, bet "augstāku" par vienu PATH līmeni (tādējādi DOS būs pirmais, kas atklās un palaidīs vīrusa failu), vai pārvieto upura failu vienu apakšdirektoriju augstāk utt.

Var būt arī cita veida pavadošie vīrusi, kas izmanto citas oriģinālas idejas vai citu operētājsistēmu funkcijas.

Failu tārpi

Failu tārpi (tārpi) savā ziņā ir sava veida kompanjonvīrusi, taču tie nekādā veidā nesaista to klātbūtni ar izpildāmo failu. Reproducējot, viņi vienkārši kopē savu kodu uz dažiem diska direktorijiem, cerot, ka šīs jaunās kopijas kādreiz darbinās lietotājs. Dažreiz šie vīrusi piešķir savām kopijām "īpašus" nosaukumus, lai mudinātu lietotāju palaist to kopiju, piemēram, INSTALL.EXE vai WINSTART.BAT.

Ir tārpi, kas izmanto diezgan neparastas metodes, piemēram, ieraksta savas kopijas arhīvos (ARJ, ZIP un citiem). Šie vīrusi ietver "ArjVirus" un "Winstart". Daži vīrusi ieraksta komandu, lai palaistu inficētu failu BAT failos (skatiet, piemēram, "Worm.Info").

Failu tārpus nevajadzētu jaukt ar tīkla tārpiem. Pirmie izmanto tikai dažu operētājsistēmu failu funkcijas, bet otrie to reproducēšanai izmanto tīkla protokolus.

Saites vīrusi

Saites vīrusi, tāpat kā kompanjonvīrusi, nemaina failu fizisko saturu, tomēr, palaižot inficētu failu, tie "piespiež" OS izpildīt tā kodu. Viņi sasniedz šo mērķi, pārveidojot nepieciešamos failu sistēmas laukus.

Līdz šim ir zināms tikai viens Link-virus veids - "Dir_II" ģimenes vīrusi. Kad viņi inficē sistēmu, viņi ieraksta savu ķermeni loģiskā diska pēdējā klasterī. Inficējot failu, vīrusi labo tikai faila pirmās kopas numuru, kas atrodas attiecīgajā direktorijas sektorā. Jaunais sākotnējais failu klasteris norādīs uz kopu, kurā ir vīrusa pamatteksts. Tādējādi, kad faili tiek inficēti, to garums un saturs disku klasteros, kuros ir šie faili, nemainās, un visiem inficētajiem failiem vienā loģiskajā diskā būs tikai viena vīrusa kopija.

OBJ-, LIB-vīrusi un vīrusi pirmkodā

Vīrusi, kas inficē kompilatoru bibliotēkas, objektu moduļus un programmu pirmkodus, ir diezgan eksotiski un praktiski neparasti. Pavisam tādu ir ap desmit. Vīrusi, kas inficē OBJ un LIB failus, ieraksta tiem savu kodu objekta moduļa vai bibliotēkas veidā. Tādējādi inficētais fails nav izpildāms un nespēj tālāk izplatīt vīrusu savā pašreizējā stāvoklī. "Dzīvā" vīrusa nesējs ir COM vai EXE fails, kas iegūts, saistot inficētu OBJ/LIB failu ar citiem objektu moduļiem un bibliotēkām. Tādējādi vīruss izplatās divos posmos: pirmajā posmā tiek inficēti OBJ/LIB faili, bet otrajā posmā (saites) tiek iegūts funkcionāls vīruss.

Programmas avota tekstu inficēšana ir loģisks iepriekšējās izplatīšanas metodes turpinājums. Šajā gadījumā vīruss pievieno savu avota kodu avota tekstiem (šajā gadījumā vīrusam tam ir jābūt saturam) vai savu heksadecimālo izgāztuvi (kas ir tehniski vienkāršāk). Inficēts fails ir spējīgs tālāk izplatīt vīrusu tikai pēc kompilācijas un saistīšanas (skat., piemēram, "SrcVir", "Urphin" vīrusi).

Primitīvā maskēšanās

Kad fails ir inficēts, vīruss var veikt vairākas darbības, kas maskē un paātrina tā izplatību. Šādas darbības ietver tikai lasāmā atribūta apstrādi, tā noņemšanu pirms inficēšanās un atjaunošanu pēc. Daudzi failu vīrusi nolasa faila pēdējās modifikācijas datumu un atjauno to pēc inficēšanās. Lai maskētu to izplatību, daži vīrusi pārtver DOS pārtraukumu, kas rodas, piekļūstot pret rakstīšanu aizsargātam diskam (INT 24h), un paši to apstrādā.

Izplatīšanās ātrums

Runājot par failu vīrusiem, jāatzīmē tāda to iezīme kā izplatīšanas ātrums. Jo ātrāk vīruss izplatās, jo lielāka ir šī vīrusa epidēmijas iespējamība. Jo lēnāk vīruss izplatās, jo grūtāk to atklāt (ja vien, protams, šis vīruss vēl nav zināms pretvīrusu programmām). Jēdzieni "ātrs" un "lēnais" vīruss (Ātrs inficētājs, Lēns inficētājs) ir diezgan relatīvi un tiek izmantoti tikai kā vīrusa īpašība, aprakstot to.

Nerezidentu vīrusi bieži ir "lēni" - vairums no tiem startēšanas laikā inficē vienu vai divus vai trīs failus un tiem nav laika pārpludināt datoru pirms pretvīrusu programmas palaišanas (vai jauna versijašim vīrusam konfigurēts pretvīruss). Protams, ir nerezidentu "ātrie" vīrusi, kas, palaižot, meklē un inficē visus izpildāmos failus, taču šādi vīrusi ir ļoti pamanāmi: palaižot katru inficēto failu, dators dažiem aktīvi strādā ar cieto disku. (dažreiz diezgan ilgu laiku), kas atmasko vīrusu.

Rezidentu vīrusu "ātrums" parasti ir lielāks nekā nerezidentiem - tie inficē failus, kad tiem piekļūst. Tā rezultātā tiek inficēti visi vai gandrīz visi diskā esošie faili, kas tiek pastāvīgi izmantoti darbā.

Rezidentu failu vīrusu izplatības ātrums, kas inficē failus tikai tad, kad tie tiek palaisti izpildei, būs mazāki nekā vīrusiem, kas inficē failus arī tad, kad tie tiek atvērti, pārdēvēti, mainīti failu atribūti utt. Daudzi vīrusi, veidojot savu kopiju datora operatīvajā atmiņā, mēģina aizņemt atmiņas apgabalu ar visaugstākajām adresēm, iznīcinot COMMAND.COM komandu tulka pagaidu daļu. Inficētās programmas beigās tiek atjaunota tulka pagaidu daļa, tiek atvērts fails COMMAND.COM un, ja vīruss inficē failus, kad tie tiek atvērti, tas tiek inficēts. Tādējādi, palaižot šādu vīrusu, pirmais tiks inficēts fails COMMAND.COM.

Boot vīrusi

Sāknēšanas vīrusi inficē disketes sāknēšanas sektoru un cietā diska sāknēšanas sektoru jeb galveno sāknēšanas ierakstu (MBR). Sāknēšanas vīrusu darbības princips ir balstīts uz operētājsistēmas palaišanas algoritmiem, kad dators tiek ieslēgts vai restartēts - pēc nepieciešamajām instalēto iekārtu (atmiņas, disku u.c.) pārbaudēm sistēmas sāknēšanas programma nolasa pirmo sāknēšanas diska fiziskais sektors (A:, C: vai CD-ROM atkarībā no BIOS iestatījumos iestatītajiem parametriem) un nodod kontroli uz to.

Disketes vai kompaktdiska gadījumā sāknēšanas sektors saņem kontroli, kas analizē diska parametru tabulu (BPB - BIOS Parameter Block), aprēķina operētājsistēmas failu adreses, nolasa tos atmiņā un palaiž izpildei. Sistēmas faili parasti ir MSDOS.SYS un IO.SYS vai IBMDOS.COM un IBMBIO.COM vai citi atkarībā no instalētā versija DOS, Windows vai citas operētājsistēmas. Ja sāknēšanas diskā nav operētājsistēmas failu, programma, kas atrodas diska sāknēšanas sektorā, parāda kļūdas ziņojumu un iesaka nomainīt sāknēšanas disku.

Cietā diska gadījumā vadību saņem programma, kas atrodas cietā diska MBR. Šī programma analizē diska nodalījuma tabulu (Disk Partition Table), aprēķina aktīvā sāknēšanas sektora adresi (parasti šis sektors ir C: diska sāknēšanas sektors), ielādē to atmiņā un nodod tai vadību. Saņemot kontroli, cietā diska aktīvais sāknēšanas sektors veic tādas pašas darbības kā disketes sāknēšanas sektors.

Inficējot diskus, sāknēšanas vīrusi "aizvieto" savu kodu ar kādu programmu, kas pārņem vadību sistēmas sāknēšanas laikā. Tādējādi inficēšanās princips visās iepriekš aprakstītajās metodēs ir vienāds: vīruss "piespiež" sistēmu, kad tā tiek restartēta, nolasīt atmiņā un dot kontroli nevis sākotnējam bootloader kodam, bet gan vīrusa kodam.

Disketes ir inficētas ar vienu zināms veids- vīruss raksta savu kodu disketes sāknēšanas sektora oriģinālā koda vietā. Vinčestera inficējas ar trim iespējamie veidi- vīruss tiek uzrakstīts vai nu MBR koda vietā, vai sāknēšanas diska (parasti C: diska) sāknēšanas sektora koda vietā, vai arī tas maina aktīvā sāknēšanas sektora adresi diska nodalījuma tabulā, kas atrodas MBR. no cietā diska.

Kad disks ir inficēts, vīruss vairumā gadījumu pārsūta sākotnējo sāknēšanas sektoru (vai MBR) uz kādu citu diska sektoru (piemēram, uz pirmo brīvo). Ja vīrusa garums ir lielāks par sektora garumu, tad pirmā vīrusa daļa tiek ievietota inficētajā sektorā, pārējās daļas – citos sektoros (piemēram, pirmajos brīvajos).

Makro vīrusi ir programmas valodās (makrovalodās), kas iebūvētas dažās datu apstrādes sistēmās (teksta redaktoros, izklājlapās utt.). Reproducēšanai šādi vīrusi izmanto makro valodu iespējas un ar to palīdzību pārsūta sevi no viena inficēta faila (dokumenta vai tabulas) uz citiem. Makrovīrusi ir visplašāk izmantotie Microsoft Word, Excel un Office97. Ir arī makrovīrusi, kas inficē Ami Pro dokumentus un Microsoft Access datu bāzes.

Lai konkrētā sistēmā (redaktorā) pastāvētu vīrusi, sistēmā ir jābūt iebūvētai makro valodai ar šādām iespējām:

Programmas saistīšana makro valodā ar noteiktu failu;

Kopēt makro programmas no viena faila uz citu;

Iespēja iegūt kontroli pār makro programmu bez lietotāja iejaukšanās (automātiskie vai standarta makro);

Šos nosacījumus izpilda Microsoft Word, Office97 un AmiPro redaktori, kā arī Excel izklājlapa un Microsoft Access datu bāze. Šajās sistēmās ir ietvertas makro valodas: Word — Word Basic, Excel, Office97 (tostarp Word97, Excel97 un Access) – Visual Basic pieteikumiem. Kurā:

1) makro programmas ir piesaistītas noteiktam failam (AmiPro) vai atrodas failā (Word, Excel, Office97);

2) makro valoda ļauj kopēt failus (AmiPro) vai pārvietot makro programmas uz sistēmas servisa failiem un rediģējamiem failiem (Word, Excel, Office97);

3) strādājot ar failu noteiktos apstākļos (atverot, aizverot utt.), tiek izsauktas makro programmas (ja tādas ir), kuras ir definētas īpašā veidā (AmiPro) vai kurām ir standarta nosaukumi (Word, Excel, Office97).

Šī makro valodu funkcija ir paredzēta automātiskai datu apstrādei lielās organizācijās vai globālajos tīklos un ļauj organizēt tā saukto "automatizēto darbplūsmu". No otras puses, šādu sistēmu makro valodu iespējas ļauj vīrusam pārsūtīt savu kodu uz citiem failiem un tādējādi tos inficēt.

Līdz šim ir zināmas četras sistēmas, kurām ir vīrusi - Microsoft Word, Excel, Office97 un AmiPro. Šajās sistēmās vīrusi pārņem kontroli, kad tiek atvērts vai aizvērts inficētais fails, pārtver standarta failu funkcijas un pēc tam inficē failus, kuriem kaut kādā veidā tiek piekļūts. Pēc analoģijas ar MS-DOS mēs varam teikt, ka lielākā daļa makrovīrusu ir rezidenti: tie ir aktīvi ne tikai faila atvēršanas/aizveršanas brīdī, bet arī tik ilgi, kamēr ir aktīvs pats redaktors.

Tīkla vīrusi

Tīkla vīrusi ietver vīrusus, kas to izplatīšanai aktīvi izmanto vietējo un globālo tīklu protokolus un iespējas. Tīkla vīrusa galvenais princips ir iespēja patstāvīgi pārsūtīt savu kodu uz attālo serveri vai darbstaciju. Tajā pašā laikā "pilnvērtīgiem" tīkla vīrusiem ir arī iespēja palaist savu kodu attālajā datorā vai vismaz "piespiest" lietotāju, lai palaistu inficēto failu.

Pastāv maldīgs uzskats, ka jebkurš datortīklā izplatījies vīruss ir tīkla vīruss. Bet šajā gadījumā gandrīz visi vīrusi būtu tīkla vīrusi, pat primitīvākie no tiem: galu galā visizplatītākais nerezidentu vīruss, inficējot failus, nesaprot - vai tas ir tīkla (attālais) disks vai lokālais. . Rezultātā šāds vīruss spēj inficēt failus tīklā, taču to nevar klasificēt kā tīkla vīrusu.

Visslavenākie kļuva 80. gadu beigu tīkla vīrusi, tos sauc arī par tīkla tārpiem (tārpiem). Tie ietver Morisa vīrusu, "Cristmas Tree" un "Wank Worm" vīrusus. To izplatīšanai viņi izmantoja tā laika globālo tīklu kļūdas un nedokumentētās funkcijas - vīrusi pārsūtīja savas kopijas no servera uz serveri un palaida tās izpildei. Morisa vīrusu gadījumā epidēmija ir pārņēmusi pat vairākus globālos tīklus Amerikas Savienotajās Valstīs.

Pagātnes tīkla vīrusi izplatījās datortīklā un, kā likums, tāpat kā to pavadošie vīrusi, nemainīja failus vai sektorus diskā. Viņi iekļuva datora atmiņā no datortīkla, aprēķināja citu datoru tīkla adreses un nosūtīja uz šīm adresēm savas kopijas. Šie vīrusi dažkārt arī izveidoja darba failus sistēmas diskos, taču vispār nevarēja piekļūt datora resursiem (izņemot RAM).

Pēc vairākiem tīkla vīrusu uzliesmojumiem tīkla protokolu un programmatūras kļūdas ir novērstas un aizmugures durvis ir aizvērtas. Līdz ar to pēdējo desmit gadu laikā nav fiksēts neviens tīkla vīrusa inficēšanās gadījums, tāpat kā nav parādījies neviens jauns tīkla vīruss.

Atkal tīkla vīrusu problēma radās tikai 1997. gada sākumā, kad parādījās vīrusi "Macro.Word.ShareFun" un "Win.Homer". Pirmajā tiek izmantotas Microsoft Mail e-pasta iespējas – tiek izveidota jauna vēstule, kurā ir inficēts dokumenta fails ("ShareFun" ir makrovīruss), pēc tam no MS-Mail adrešu saraksta izvēlas trīs nejaušas adreses un nosūta inficēto. vēstuli viņiem. Tā kā daudzi lietotāji MS-Mail iestatījumus iestata tā, ka, saņemot ziņojumu, automātiski tiek palaists MS Word, vīruss "automātiski" injicējas inficētās ziņas saņēmēja datorā.

Šis vīruss ir pirmā tipa modernā tīkla vīrusa piemērs, kas apvieno Word/Excel iebūvētās Basic valodas iespējas, e-pasta protokolus un funkcijas, kā arī vīrusa izplatībai nepieciešamās automātiskās palaišanas funkcijas.

Otrais vīruss ("Homer") savam izplatīšanai izmanto FTP (File Trabsfer Protocol) un pārsūta savu kopiju uz attālo ftp serveri ienākošo direktorijā. Tā kā FTP tīkla protokols izslēdz iespēju palaist failu attālā serverī, šo vīrusu var raksturot kā "daļtīklu", taču šis ir īsts piemērs vīrusu spējai izmantot mūsdienu tīkla protokolus un inficēt globālos tīklus.

Cits

Papildus vīrusiem "ļaunprātīgās programmas" ietver arī Trojas zirgus (loģiskās bumbas), paredzētos vīrusus, vīrusu konstruktorus un polimorfos ģeneratorus.

Trojas zirgi (loģiskās bumbas)

Trojas zirgi ir programmas, kas izraisa kaut kādu destruktīvu darbību, t.i. atkarībā no jebkuriem apstākļiem vai katrā startā, informācijas iznīcināšana diskos, sistēmas "uzkāršana" utt.

Lielākā daļa man zināmo Trojas zirgu ir programmas, kas kaut ko "izkrāpj". noderīgas programmas, jaunas populāru utilītu versijas vai to papildinājumi. Ļoti bieži tie tiek nosūtīti uz BBS stacijām vai elektroniskām konferencēm. Salīdzinot ar vīrusiem, "Trojas zirgi" netiek plaši izmantoti diezgan vienkāršu iemeslu dēļ – tie vai nu iznīcina paši sevi kopā ar pārējiem diskā esošajiem datiem, vai arī atmasko savu klātbūtni un iznīcina skarto lietotāju.

"Trojas zirgi" ietver arī vīrusu "pilinātājus" - inficētus failus, kuru kods tiek izlabots tā, ka zināmās antivīrusu versijas nekonstatē vīrusu failā. Piemēram, fails ir kaut kādā īpašā veidā šifrēts vai iepakots ar reti lietojamu arhivētāju, kas neļauj antivīrusam "redzēt" infekciju.

Jāatzīmē arī "ļaunie joki" (mānīšana). To skaitā ir programmas, kas nerada tiešu kaitējumu datoram, bet parāda ziņojumus, ka šāds kaitējums jau ir nodarīts vai tiks nodarīts jebkuros apstākļos, vai brīdina lietotāju par neesošām briesmām. "Slikti joki" ietver, piemēram, programmas, kas "biedē" lietotāju ar ziņojumiem par diska formatēšanu (lai gan formatēšana faktiski nenotiek), atklāj vīrusus neinficētos failos (kā tas tiek darīts plaši). slavenā programma ANTITIME), parādīt dīvainus vīrusiem līdzīgus ziņojumus (CMD640X diska draiveris no kādas komerciālas pakotnes) utt. - atkarībā no šāda raidījuma autora humora izjūtas. Acīmredzot pie "ļaunajiem jokiem" pieder arī stīga "CHOLEEPA" Seagate cieto disku otrajā sektorā.

Apzināti nepatiesas ziņas par jauniem supervīrusiem var attiecināt arī uz to pašu "ļauno joku" kategoriju. Šādi ziņojumi periodiski parādās elektroniskajās konferencēs un parasti izraisa paniku lietotāju vidū.

Paredzētie vīrusi

Pie šādiem vīrusiem pieder programmas, kuras no pirmā acu uzmetiena ir 100% vīrusi, bet nespēj vairoties kļūdu dēļ. Piemēram, vīruss, kas inficēts faila sākumā "aizmirst" ievietot komandu, lai pārsūtītu kontroli uz vīrusa kodu, vai nu ieraksta tam nepareizu sava koda adresi, vai arī nepareizi iestata tveramā pārtraukuma adresi. (kas vairumā gadījumu sasaldē datoru) utt.

Kategorijā "paredzēts" ietilpst arī vīrusi, kas iepriekš minēto iemeslu dēļ vairojas tikai vienu reizi - no "autora" kopijas. Inficējot jebkuru failu, viņi zaudē spēju tālāk pavairot.

Paredzētie vīrusi visbiežāk parādās, ja jau esošs vīruss tiek nepareizi pārkompilēts vai nu nepietiekamu programmēšanas valodas zināšanu, vai operētājsistēmas tehnisko smalkumu nezināšanas dēļ.

Vīrusu konstruktori

Virus Constructor ir utilīta, kas paredzēta jaunu datorvīrusu radīšanai. Ir zināmi DOS, Windows un makrovīrusu vīrusu konstruktori. Tie ļauj ģenerēt vīrusu pirmkodu (ASM failus), objektu moduļus un/vai tieši inficētus failus.

Daži konstruktori (VLC, NRLG) ir aprīkoti ar standarta logu saskarni, kurā, izmantojot izvēlņu sistēmu, var izvēlēties vīrusa veidu, inficējamos objektus (COM un/vai EXE), paššifrēšanas esamību vai neesamību, atkļūdotāja pretestība, iekšējās teksta rindiņas, atlasiet efektus, kas pavada vīrusa darbību utt. Citiem konstruktoriem (PS-MPC, G2) nav saskarnes un informācija par vīrusa tipu tiek lasīta no konfigurācijas faila.

Polimorfie ģeneratori

Polimorfie ģeneratori, tāpat kā vīrusu konstruktori, nav vīrusi burtiskišī vārda, jo to algoritms nesatur reizināšanas funkcijas, t.i. failu atvēršana, aizvēršana un rakstīšana, lasīšanas un rakstīšanas sektori utt. Šādu programmu galvenā funkcija ir šifrēt vīrusa ķermeni un ģenerēt atbilstošo atšifrētāju.

Parasti polimorfos ģeneratorus to autori bez ierobežojumiem izplata arhīva faila veidā. Galvenais fails jebkura ģeneratora arhīvā ir objekta modulis, kurā ir šis ģenerators. Visos sastopamajos ģeneratoros šis modulis satur ārēju (ārēju) funkciju - izsaukumu uz ģeneratora programmu.

Tādējādi vīrusa autoram, ja viņš vēlas izveidot īstu polimorfu vīrusu, nav jāporās pār sava koda/dekodētāja kodiem. Ja vēlas, viņš var pieslēgt savam vīrusam jebkuru zināmu polimorfu ģeneratoru un izsaukt to no vīrusa kodiem. Fiziski tas tiek panākts šādi: vīrusa objekta fails tiek piesaistīts ģeneratora objekta failam, un pirms komandām to ierakstīt failā, vīrusa avota tekstā tiek ievietots polimorfs ģeneratora izsaukums, kas izveido atšifrēšanas kodus un šifrē vīrusa ķermeni.

Termins "rezidence" (DOS termins TSR — Terminate and Stay Resident) attiecas uz vīrusu spēju atstāt savas kopijas operētājsistēmā, pārtvert noteiktus notikumus (piemēram, piekļuvi failiem vai diskiem) un tajā pašā laikā izsaukt procedūras atklāto objektu (failu un sektoru) inficēšanai.Tādējādi pastāvīgie vīrusi ir aktīvi ne tikai tad, kad darbojas inficētā programma, bet arī pēc tam, kad programma ir beigusi savu darbu.Šādu vīrusu mājokļu kopijas paliek dzīvotspējīgas līdz nākamajai atsāknēšanai, pat ja diskā tiek iznīcināti visi inficētie faili.Šādus vīrusus nevar novērst, atjaunojot visas failu kopijas no izplatīšanas diskiem vai rezerves kopijām.Vīrusa pastāvīgā kopija paliek aktīva un inficē jaunizveidotos failus.Tas pats attiecas uz boot vīrusiem - diska formatēšana ar pastāvīgu vīrusu atmiņā ne vienmēr izārstē disku, jo daudzi pastāvīgie vīrusi atkal inficē disku pēc ak, kā tas ir formatēts.

Nerezidentu vīrusi, gluži pretēji, ir aktīvi diezgan īsu laiku - tikai tajā brīdī, kad tiek palaista inficētā programma. Izplatīšanai viņi meklē neinficētus failus diskā un raksta uz tiem. Pēc tam, kad vīrusa kods nodod kontroli uz resursdatora programmu, vīrusa ietekme uz operētājsistēmas darbību tiek samazināta līdz nullei līdz nākamajai jebkuras inficētās programmas palaišanai. Tāpēc ar nerezidentu vīrusiem inficētos failus ir daudz vieglāk izņemt no diska un tajā pašā laikā neļaut vīrusam tos atkārtoti inficēt.

DOS vīrusi

DOS nodrošina divus likumīgā veidā izveidojot rezidentu moduļus: izmantojot CONFIG.SYS norādītos draiverus un izmantojot funkciju KEEP (INT 21h, AH=31h vai INT 27h). Daudzi failu vīrusi izmanto citu metodi, lai slēptu to izplatību — apstrādājot sistēmas apgabalus, kas kontrolē atmiņas piešķiršanu (MCB). Viņi sev piešķir brīvu atmiņas apgabalu (ieskaitot UMB), atzīmē to kā aizņemtu un pārraksta tur savu kopiju. Daži vīrusi ievada savas TSR kopijas brīvajos atmiņas apgabalos pārtraukumu vektoru tabulā, video atmiņā, DOS darbvietās, atmiņā, kas piešķirta sistēmas buferiem, un HMA atmiņā. Šīs metodes ir sīkāk aprakstītas sadaļā "Rezidenta vīrusa noteikšana".

Pēc atmiņas bloka piešķiršanas vīruss iekopē tajā savu kodu un ignorē vienu vai vairākus pārtraukumus, kas nepieciešami inficēto failu meklēšanai, destruktīvas darbības vai skaņas un video efektu veikšanai.

Inficējot failus, nerezidenti un daži pastāvīgie vīrusi meklē šos failus diskā(-os), izmantojot DOS funkcijas FindFirst un FindNext (INT 21h, AH=11h,12h,4Eh,4Fh). Rezidentu vīrusi izmanto plašāku DOS funkciju sarakstu, kurām, piekļūstot, tiek inficēts fails. Faktiski šajā sarakstā ir visas funkcijas, kuru ievades vai izvades parametru vērtības var izmantot, lai noteiktu pieejamā faila nosaukumu (šie parametri ietver atbilstošo reģistru vai atmiņas apgabalu vērtības). Rezultātā "vīrusiem bīstamās" pārtraukuma 21h funkcijas ietver izpildi (EXEC, AX=4B00), atmiņas ielādi (AH=4Bh), meklēšanu (FindFirst un FindNext, AH=11h,12h,4Eh,4Fh) un izveidi ( Izveidot, AH = 3Ch), atvēršanu (Open, AH=3Dh), aizvēršanu (Close, AH=3Eh), atribūtu mainīšanu (ChMode, AH=43h), pārdēvēšanu (Rename, AH=56h) un dažas citas failu apstrādes funkcijas. .

Pastāv vairāki veidi, kā pastāvīgs vīruss pārbauda, ​​vai datora atmiņā nav sava kopijas. Pirmais ir tas, ka vīruss ievieš jaunu sava veida pārtraukuma funkciju, kuras darbība ir atgriezt vērtību "Es esmu šeit". Startējot vīruss tam piekļūst, un, ja atgrieztā vērtība sakrīt ar vērtību "Es esmu šeit", tad datora atmiņa jau ir inficēta un atkārtota inficēšana netiek veikta. Pārbaudot otrajā veidā, vīruss ieraksta vērtību "I'm here" uz kādu reti izmantotu atmiņas apgabalu - pārtraukumu vektoru tabulā vai BIOS datu apgabalā (0040:00??). Turpmākajās inficēto programmu palaišanas laikā vīruss pārbauda šo vērtību un neizsauc atmiņas inficēšanas procedūru. Protams, ir arī citi veidi, piemēram, daži vīrusi vienkārši skenē datora atmiņu.

Daži rezidentu failu vīrusi (parasti vīrusi, kas izveidoti, izmantojot tādus konstruktorus kā VCL un PS-MPC) nepareizi nosaka savu TSR kopiju un kopē sevi RAM katru reizi, kad tiek palaists inficēts fails. Dabiski, ka šajā gadījumā dators vai nu uzreiz sasalst, vai arī pēc kāda laika pārtrauc programmu darbību, jo trūkst brīvas atmiņas.


Boot vīrusi

Lielākā daļa rezidentu sāknēšanas vīrusu izmanto to pašu triku, lai piešķirtu sistēmas atmiņu savai pastāvīgajai kopijai: tie samazina DOS atmiņas apjomu (vārds adresē 0040:0013) un kopē savu kodu "nogrieztā" atmiņas blokā. DOS atmiņas apjoms parasti tiek samazināts par vienu (vienu kilobaitu) īso sāknēšanas vīrusu gadījumā, kuru kods aizņem vienu diska vietas sektoru (512 baiti). Kilobaita otro pusi izmanto vīrusi, piemēram, lasīšanas/rakstīšanas buferis, inficējot diskus. Ja vīrusa izmērs ir lielāks par vienu kilobaitu vai tajā tiek izmantotas nestandarta infekcijas metodes, kurām nepieciešams lielāks lasīšanas/rakstīšanas buferis, atmiņas apjoms tiek samazināts par vairākiem kilobaitiem (starp zināmiem vīrusiem maksimālā "RDA. Fighter" vīruss ir 30K).

Nākotnē daži vīrusi "gaida" DOS ielādi un atjauno sistēmas atmiņas apjoma sākotnējo vērtību - rezultātā tie atrodas nevis ārpus DOS, bet gan kā atsevišķs DOS atmiņas bloks. Daži sāknēšanas vīrusi vispār neizmanto vai nemaina sistēmas atmiņas vērtību. Viņi kopē sevi uz kādu neizmantotu atmiņas apgabalu, līdz tiek ielādēts DOS, gaida, līdz tiek ielādēts DOS, un pēc tam visos iespējamos veidos instalē savu kodu sistēmā.

Šādi vīrusi izmanto vairākas metodes, lai pārtvertu DOS ielādes brīdi. "Populārākais" veids ir pārbaudīt INT 21h vērtību (pārtraukt DOS funkcijas). Ja šī vērtība tiek mainīta, vīrusi uzskata, ka DOS instalēšana ir pabeigta. INT 21h vērtības pārbaude tiek veikta, zvanot uz INT 8, 1Ch (taimeris pārtrauc; šim nolūkam vīrusi papildus diska piekļuves pārtraukumiem pārtver arī taimera pārtraukumus) vai zvanot uz INT 13h. Mazāk populārs veids ir pārbaudīt datus, kas tiek nolasīti no diska (tas prasa tikai INT 13h pārtveršanu). Ja lasīšanas buferī ir EXE faila galvene, vīrusi uzskata, ka DOS ielāde ir pabeigta, jo EXE fails tiek ielādēts atmiņā izpildei.

Lai pārtvertu piekļuvi diskiem, lielākā daļa sāknēšanas vīrusu pārtver INT 13h - galveno pārtraukumu darbam ar diskiem. Retāk tiek izmantots Intercept INT 40h - pārtraukums darbam ar disketēm. Vēl retāk tiek izmantotas dažādas eksotiskas BIOS un DOS pārtraukumu pārtveršanas metodes, kas rodas, strādājot ar disketēm.

INT 13h/40h pārtveršanas gadījumā vīrusi apstrādā komandas, lai lasītu/rakstītu sektorus (AH=2,3), pārbaudītu, vai disks nav inficēts, un ieraksta savu kodu tā sāknēšanas sektorā vai cietā diska MBR. Citas komandas tiek pārtvertas retāk - no komandas Reset Disk (AH=0) līdz pat "garajām" lasīšanas/rakstīšanas komandām (AH=0Ah,0Bh).

Lielākā daļa sāknēšanas vīrusu nepārbauda sistēmas atmiņā jau instalētās TSR kopijas klātbūtni - tie vai nu izmanto slepenus paņēmienus un nav iespējams restartēt vīrusa kodu, vai arī tie vadās pēc tā, ka vīrusa kods tiek ielādēts vienreiz DOS sāknēšanas laiks - pēc tam sāknēšanas sektora kodu diski vairs netiek izpildīti nekādos apstākļos. Daži vīrusi pārbauda savas kopijas klātbūtni - šim nolūkam tiek izmantoti īpaši INT 13h izsaukumi ar kādu nestandarta vērtību, vai arī kāds acīmredzami neizmantots baits (vai vārds) tiek atzīmēts pārtraukumu vektoru tabulā vai BIOS datu apgabalā ( 0040:00 ??) . Protams, ir arī citi veidi, kā noteikt jūsu TSR kopiju.

Windows vīrusi

Lai atstātu izpildāmo kodu Windows atmiņa, ir trīs metodes, un visas trīs metodes (izņemot Windows NT) jau ir izmantojuši dažādi vīrusi.

Vienkāršākais veids ir reģistrēt programmu kā vienu no lietojumprogrammām, kas darbojas Šis brīdis. Lai to izdarītu, programma reģistrē savu uzdevumu, kura logu var paslēpt, reģistrē savu sistēmas notikumu apstrādātāju utt. Otrs veids ir piešķirt sistēmas atmiņas bloku, izmantojot DPMI zvanus, un kopēt tajā savu kodu (vīruss "Ph33r"). Trešais veids ir palikt rezidentam kā VxD draiverim (Wnidows 3.xx un Windows95) vai kā windows draiveris NT.

Piekļuve failam tiek pārtverta vienā no diviem veidiem — vai nu tiek pārtverti INT 21h zvani (Hook_V86_Int_Chain, Get/Set_V86_Int_Vector, Get/Set_PM_Int_Vector), vai arī tiek pārtverts API sistēmas izsaukums. Tad Windows rezidējošie vīrusi darbojas tāpat kā DOS vīrusi: tie pārtver piekļuvi failiem un inficē tos.

Lai noteiktu pastāvīgo kopiju, kas jau atrodas atmiņā, tiek izmantotas aptuveni tādas pašas metodes, kā aprakstīts iepriekš, izņemot VxD vīrusus. Zināmi VxD vīrusi tiek ielādēti atmiņā, kad Windows sāknēšana. Lai to izdarītu, viņi ieraksta startēšanas komandu Windows SYSTEM.INI konfigurācijas failā. Ja šajā failā jau ir komanda palaist vīrusa VxD failu, vīruss nereģistrē savu VxD failu atkārtoti.


Makro vīrusi

Lielāko daļu makrovīrusu var uzskatīt par pastāvīgiem, jo ​​tie atrodas sistēmas makro apgabalā visu redaktora darbības laiku. Viņi, tāpat kā pastāvīgie sāknēšanas un failu vīrusi, pārtver sistēmas notikumus un izmanto tos savai pavairošanai. Šādi notikumi ietver dažādus sistēmas izsaukumus, kas rodas, strādājot ar Word dokumenti un Excel tabulas (atvēršana, aizvēršana, izveide, drukāšana utt.), izvēlnes elementa izsaukšana, taustiņa nospiešana vai noteikta laika punkta sasniegšana. Lai pārtvertu notikumus, makrovīrusi no jauna definē vienu vai vairākus sistēmas makro vai funkcijas.

Inficējot, daži makrovīrusi pārbauda, ​​vai inficētajā objektā nav sava kopija, un atkārtoti nekopē. Citi makrovīrusi to nedara un pārraksta savu kodu ar katru infekciju. Ja inficētajā failā vai sistēmas makro apgabalā jau ir makro, kura nosaukums atbilst vīrusa makro, tad šāds makro tiek iznīcināts.

Stealth vīrusi vienā vai otrā veidā slēpj savas klātbūtnes faktu sistēmā. Ir zināmi visu veidu slepenie vīrusi, izņemot Windows vīrusus - sāknēšanas vīrusus, DOS failu vīrusus un pat makrovīrusus. Slepeno vīrusu parādīšanās, kas inficē Windows failus, visticamāk, ir laika jautājums.

Boot vīrusi

Boot Stealth vīrusi izmanto divas galvenās metodes, lai paslēptu savu kodu. Pirmais ir tas, ka vīruss pārtver komandas nolasīt inficēto sektoru (INT 13h) un tā vietā aizstāj neinficēto oriģinālu. Šī metode padara vīrusu neredzamu jebkurai DOS programmai, tostarp antivīrusiem, kas nespēj "izārstēt" datora operatīvo atmiņu. Ir iespējams pārtvert sektoru lasīšanas komandas zemākā līmenī par INT 13h.

Otrā metode ir vērsta pret antivīrusiem, kas atbalsta komandas tiešai sektoru nolasīšanai caur diska kontrollera portiem. Šādi vīrusi, startējot jebkuru programmu (arī antivīrusu), atjauno inficētos sektorus un pēc tā darba beigām atkal inficē disku. Tā kā šim nolūkam vīrusam ir jāpārtver programmu sākums un beigas, tam ir jāpārtver arī DOS pārtraukums INT 21h.

Ar dažām atrunām slepenos vīrusus var saukt par vīrusiem, kas veic minimālas izmaiņas inficētajā sektorā (piemēram, inficējot MBR, tiek labota tikai sāknēšanas sektora aktīvā adrese - var mainīt tikai 3 baitus), vai arī tie maskējas. kā standarta sāknēšanas ielādētāja kods.

Failu vīrusi

Lielākā daļa failu slepeno vīrusu izmanto tos pašus trikus, kā minēts iepriekš: tie vai nu pārtver DOS faila piekļuves zvanus (INT 21h), vai īslaicīgi izārstē failu, kad tas tiek atvērts, un inficē, kad tas tiek aizvērts. Tāpat kā sāknēšanas vīrusiem, ir failu vīrusi, kas pārtraukumu pārtveršanu izmanto ilgāk par zems līmenis- DOS draiveru zvani, INT 25h un pat INT 13h.

Pilnvērtīgi failu slepenie vīrusi, kas izmanto pirmo koda slēpšanas metodi, lielākoties ir diezgan apgrūtinoši, jo tiem ir jāpārtver liels skaits DOS failu manipulācijas funkciju: atvērt/aizvērt, lasīt/rakstīt, meklēt, palaist, pārdēvēt. , un ir nepieciešams atbalstīt abus dažu zvanu variantus (FCB / ASCII), un pēc Windows95 / NT parādīšanās viņiem bija jārīkojas arī ar trešo opciju - funkcijas darbam ar gariem failu nosaukumiem.

Daži vīrusi izmanto daļu no pilnvērtīga slepena vīrusa funkcijām. Visbiežāk tie pārtver DOS funkcijas FindFirst un FindNext (INT 21h, AH=11h, 12h, 4Eh, 4Fh) un "samazina" inficēto failu izmērus. Šādu vīrusu nevar identificēt, mainot failu lielumu, ja vien tas, protams, neatrodas atmiņā. Programmas, kas neizmanto šīs DOS funkcijas (piemēram, "Norton Utilities"), bet tieši izmanto direktoriju glabājošo sektoru saturu, parāda pareizo inficēto failu garumu.

Makro vīrusi

Stealth algoritmu ieviešana makrovīrusos, iespējams, ir vienkāršākais uzdevums – pietiek tikai atslēgt izvēlni Fails/Veidnes vai Rīki/Makro. Tas tiek panākts, vai nu noņemot šos izvēlnes vienumus no saraksta, vai aizstājot tos ar FileTemplates un ToolsMacro makro.

Daļēji slepenus vīrusus var saukt par nelielu makrovīrusu grupu, kas savu galveno kodu glabā nevis pašā makro, bet gan citās dokumenta zonās - tā mainīgajos vai Auto-text.

Uz polimorfie vīrusi ietver tos, kurus nav iespējams (vai ārkārtīgi grūti) noteikt, izmantojot tā sauktās vīrusu maskas - pastāvīga koda sadaļas, kas raksturīgas konkrētam vīrusam. Tas tiek panākts divos galvenajos veidos - šifrējot galveno vīrusa kodu ar nepastāvīgu atslēgu un nejaušu atšifrētāja komandu kopu vai mainot faktisko izpildāmo vīrusa kodu. Ir arī citi diezgan eksotiski polimorfisma piemēri - DOS vīruss "Bomber", piemēram, nav šifrēts, bet komandu secība, kas nodod vadību vīrusa kodam, ir pilnībā polimorfa.

Dažādas sarežģītības pakāpes polimorfisms ir sastopams visu veidu vīrusos - no sāknēšanas un failu DOS vīrusiem līdz Windows vīrusiem un pat makrovīrusiem.

Polimorfisma līmeņi

Pastāv polimorfo vīrusu iedalījums līmeņos atkarībā no koda sarežģītības, kas atrodams šo vīrusu dekodēros. Šo sadalījumu pirmo reizi ierosināja Dr. Alans Solomons, pēc kāda laika Veselīns Bončevs to paplašināja.

1. līmenis: vīrusi, kuriem ir noteikts atšifrētāju komplekts ar pastāvīgu kodu un inficēti atlasiet vienu no tiem. Šādi vīrusi ir "daļēji polimorfi" un tiek saukti arī par "oligomorfiem" (oligomorfiem). Piemēri: "Cheeba", "Slovākija", "Valis".

2. līmenis: vīrusa dekodētājā ir viena vai vairākas pastāvīgas instrukcijas, taču tās galvenā daļa nav pastāvīga.

3. līmenis: atšifrētājs satur neizmantotas instrukcijas - "atkritumus", piemēram, NOP, CLI, STI utt.

4. līmenis: atšifrētājs izmanto aizvietojamas instrukcijas un pārkārtošanas (jaukšanas) instrukcijas. Atšifrēšanas algoritms nemainās.

5. līmenis: tiek izmantoti visi iepriekš minētie triki, atšifrēšanas algoritms ir nestabils, ir iespējams atkārtoti šifrēt vīrusa kodu un pat daļēji šifrēt pašu atšifrētāja kodu.

6. līmenis: vīrusu permutācija. Galvenais vīrusa kods var tikt mainīts – tas ir sadalīts blokos, kuri inficēšanās laikā tiek pārkārtoti patvaļīgā secībā. Vīruss paliek aktīvs. Šādi vīrusi var būt nešifrēti.

Iepriekš minētais sadalījums nav brīvs no trūkumiem, jo ​​tas ir veidots pēc viena kritērija - spējas noteikt vīrusu ar atšifrētāja kodu, izmantojot standarta vīrusu maskas paņēmienu:

1. līmenis: lai noteiktu vīrusu, pietiek ar vairākām maskām

2. līmenis: maskas noteikšana, izmantojot aizstājējzīmes

3. līmenis: maskas noteikšana pēc atkritumu norādījumu noņemšanas

4. līmenis: maska ​​satur vairākas iespējamās koda opcijas, t.i. kļūst par algoritmisku

5. līmenis: nespēja noteikt vīrusu ar masku

Šāda dalījuma nepietiekamība tika demonstrēta polimorfisma 3. līmeņa vīrusā, ko sauc par "3. līmeni". Šis vīruss, būdams viens no vissarežģītākajiem polimorfajiem vīrusiem, saskaņā ar iepriekš minēto iedalījumu ietilpst 3. līmenī, jo tam ir pastāvīgs atšifrēšanas algoritms, pirms kura tiek ievadīts liels skaits "atkritumu" komandu. Taču šajā vīrusā "atkritumu" ģenerēšanas algoritms ir novests līdz pilnībai: gandrīz visas i8086 procesora instrukcijas ir atrodamas atšifrētāja kodā.

Ja mēs sadalām līmeņos attiecībā uz antivīrusiem, kas izmanto automātiskās vīrusu koda atšifrēšanas sistēmas (emulatorus), tad sadalījums līmeņos būs atkarīgs no vīrusa koda emulēšanas sarežģītības. Vīrusu iespējams noteikt arī ar citām metodēm, piemēram, atšifrējot, izmantojot elementārus matemātiskos likumus utt.

Tāpēc man tas šķiet objektīvāks iedalījums, kurā bez vīrusu masku kritērija piedalās arī citi parametri.

1. Polimorfā koda sarežģītības pakāpe (visu procesora instrukciju procentuālā daļa, ko var atrast atšifrētāja kodā)

2. Anti-emulatora triku izmantošana

3. Atšifrētāja algoritma noturība

4. Dekodera garuma noturība


Izpildāmā koda maiņa

Visbiežāk šādu polimorfisma metodi izmanto makrovīrusi, kas, veidojot jaunas sevis kopijas, nejauši maina savu mainīgo nosaukumus, ievieto tukšas rindas vai kā citādi maina savu kodu. Tādējādi vīrusa darbības algoritms paliek nemainīgs, bet vīrusa kods gandrīz pilnībā mainās no infekcijas uz infekciju.

Retāk šo metodi izmanto sarežģīti sāknēšanas vīrusi. Šādi vīrusi sāknēšanas sektoros ievada tikai diezgan īsu procedūru, kas no diska nolasa vīrusa galveno kodu un nodod tam kontroli. Šīs procedūras kods ir izvēlēts no vairākiem dažādas iespējas(ko var arī atšķaidīt ar "tukšām" komandām), komandas tiek pārkārtotas savā starpā utt.

Šis paņēmiens ir vēl retāks failu vīrusiem, jo ​​tiem ir pilnībā jāmaina kods, un tas prasa diezgan sarežģītus algoritmus. Līdz šim ir zināmi tikai divi šādi vīrusi, no kuriem viens ("Ply") nejauši pārvieto savas komandas pa ķermeni un aizstāj tās ar JMP vai CALL komandām. Cits vīruss ("TMC") izmanto vairāk grūts ceļš- katru reizi, kad tas inficē, vīruss apmaina sava koda un datu blokus, ievieto "atkritumus", savās montētāja instrukcijās iestata jaunas datu nobīdes vērtības, maina konstantes utt. Rezultātā, lai gan vīruss nešifrē savu kodu, tas ir polimorfs vīruss – kods nesatur pastāvīgu komandu kopu. Turklāt, veidojot jaunas savas kopijas, vīruss maina tā garumu.

No personīgās pieredzes

Par visiem jautājumiem, lūdzu, sazinieties ar mani pa e-pastu: [aizsargāts ar e-pastu]