Un virus informatic este un tip de malware care poate infiltra codul altor programe, zone de memorie de sistem, sectoare de boot și poate distribui copiile acestuia pe diverse canale de comunicare.
Scopul principal al unui virus este să-l răspândească. În plus, adesea funcția sa concomitentă este de a perturba funcționarea sistemelor software și hardware - ștergerea fișierelor, ștergerea sistemului de operare, inutilizarea structurilor de găzduire a datelor, perturbarea structurilor de rețea, furtul datelor personale, extorcarea, blocarea muncii utilizatorului etc. autorul virusului nu a programat efecte rău intenționate, virusul poate provoca blocări ale computerului din cauza erorilor, nerespectate subtilitățile interacțiunii cu sistemul de operare și alte programe. În plus, virușii tind să ocupe spațiu de stocare și să consume resursele sistemului.
În viața de zi cu zi, „virusurile” sunt numiți toate programele malware [1] , deși de fapt acesta este doar unul dintre tipurile sale.
Bazele teoriei mecanismelor de auto-reproducere au fost puse de John von Neumann , un american de origine maghiară , care a propus în 1951 o metodă de creare a unor astfel de mecanisme. Exemple de lucru ale unor astfel de programe sunt cunoscute încă din 1961 [2] .
Primii viruși cunoscuți sunt Virus 1,2,3 și Elk Cloner pentru Apple II PC , care au apărut în 1981 . În iarna anului 1984, au apărut primele utilitare antivirus - CHK4BOMB și BOMBSQAD de Andy Hopkins ( în engleză Andy Hopkins ). La începutul anului 1985, Gee Wong a scris programul DPROTECT , primul antivirus rezident .
Primele epidemii de virus datează din 1986 - 1989 : Brain (răspândit în sectoarele de boot ale dischetelor, a provocat cea mai mare epidemie), Ierusalim (a apărut vineri, 13 mai 1988, distrugând programele când au fost lansate [3] ), Morris vierme (peste 6200 de computere, majoritatea rețelelor au fost nefuncționale până la cinci zile), DATACRIME (aproximativ 100.000 de computere infectate doar în Țările de Jos).
În același timp, s-au conturat principalele clase de viruși binari: viermi de rețea ( Vierme Morris , 1987), „ Cai troieni ” (SIDA, 1989 [4] ), viruși polimorfi (Chameleon, 1990), viruși stealth (Frodo, Whale ). , a 2-a jumătate a anului 1990).
În paralel, se conturează mișcări organizate atât de orientare pro cât și antivirus: în 1990, a apărut un BBS Virus Exchange specializat, „Little Black Book of Computer Viruses” a lui Mark Ludwig, primul antivirus comercial Symantec Norton AntiVirus .
În 1992, a apărut primul constructor de viruși pentru PC, VCL , (existau constructori pentru Amiga înainte), precum și module polimorfe gata făcute (MtE, DAME și TPE) și module de criptare pentru încorporarea în noi viruși.
În următorii câțiva ani, tehnologiile stealth și polimorfe au fost în cele din urmă perfecționate (SMEG.Pathogen, SMEG.Queeg, OneHalf , 1994; NightFall, Nostradamus, Nutcracker, 1995), și s-au încercat cele mai neobișnuite modalități de a pătrunde în sistem și de a infecta fișierele ( Dir II - 1991, PMBS, Shadowgard, Cruncher - 1993). În plus, au apărut viruși care infectează fișierele obiect (Shifter, 1994) și codul sursă al programului (SrcVir, 1994). Odată cu răspândirea suitei Microsoft Office , macrovirusurile au proliferat (Concept, 1995).
În 1996, a apărut primul virus pentru Windows 95 - Win95.Boza, iar în decembrie același an - primul virus rezident pentru acesta - Win95.Punch.
Odată cu răspândirea rețelelor și a internetului, virușii de fișiere sunt din ce în ce mai concentrați asupra lor ca principal canal de lucru (ShareFun, 1997 - MS Word macrovirus care utilizează MS-Mail pentru distribuție; Win32.HLLP.DeTroie, 1998 - o familie de viruși spion ; Melissa , 1999 - un virus macro și un vierme de rețea care a doborât toate recordurile în ceea ce privește viteza de propagare). Perioada de glorie a „cailor troieni” a fost deschisă de utilitatea ascunsă de administrare la distanță Back Orifice (1998) și omologii săi, cum ar fi NetBus .
virus Win95. CIH a atins un punct culminant în utilizarea unor metode neobișnuite, suprascriind FlashBIOS-ul mașinilor infectate (epidemia din iunie 1998 este considerată cea mai distructivă din anii precedenți).
La sfârșitul anilor 1990 - începutul anilor 2000, odată cu creșterea complexității software-ului și a mediului de sistem, tranziția masivă către familii Windows NT relativ sigure , consolidarea rețelelor ca principal canal de schimb de date și succesul tehnologiilor antivirus în detectarea virușilor construiti. pe algoritmi complecși, cei mai recenti au început să înlocuiască din ce în ce mai mult injectarea în fișiere cu injectarea în sistemul de operare ( autorun neobișnuit , rootkit-uri ) și să înlocuiască polimorfismul cu un număr imens de specii (numărul de viruși cunoscuți crește exponențial ).
În același timp, descoperirea a numeroase vulnerabilități în Windows și în alte software-uri comune a deschis calea pentru exploatarea viermilor . În 2004, epidemii fără precedent au provocat MsBlast (conform Microsoft , peste 16 milioane de sisteme [5] ), Sasser și Mydoom (pagube estimate la 500 de milioane de dolari, respectiv 4 miliarde de dolari [6] ).
În plus, virușii monolitici dau loc în mare parte unor suite de malware și auxiliare separate în funcție de rol (troieni, aplicații de descărcare/dropper, site-uri de phishing, spamboți și păianjeni). Tehnologiile sociale precum spam-ul și phishing -ul sunt, de asemenea, înfloritoare ca mijloc de infectare ocolind mecanismele de protecție software.
La început, pe baza troienilor, și odată cu dezvoltarea tehnologiilor de rețea p2p - și în mod independent - cel mai modern tip de virus - rețelele botnet de viermi - câștigă amploare (Rustock, 2006, aproximativ 150 de mii de roboți; Conficker , 2008-2009, peste 7 milioane de boți; Kraken, 2009, aproximativ 500 de mii de boți). Virușii, printre alte software-uri rău intenționate, sunt în cele din urmă oficializați ca mijloc de criminalitate cibernetică .
Un virus de computer a fost numit după viruși biologici pentru un mecanism de propagare similar. Aparent, prima utilizare a cuvântului „virus” în legătură cu programul a fost folosită de Gregory Benford (Gregory Benford) în povestea fantastică „ The Scarred Man ” [7] publicată în revista Venture în mai 1970 .
Termenul „virus de computer” a fost ulterior „descoperit” și redescoperit de mai multe ori. Astfel, variabila din subrutina PERVADE ( 1975 ), a cărei valoare determina dacă programul ANIMAL va fi distribuit pe disc, a fost numită VIRUS. De asemenea, Joe Dellinger și-a numit programele un virus , iar acesta a fost probabil ceea ce a fost etichetat corect ca virus.
Nu există o definiție general acceptată a unui virus. În mediul academic, termenul a fost folosit de Fred Cohen în lucrarea sa „Experimente cu virușii informatici” [8] [9] , unde el însuși atribuie paternitatea termenului lui Leonard Adleman [10] [11] .
Formal, virusul este definit de Fred Cohen cu referire la mașina Turing , după cum urmează [12] :
M : (S M , I M , O M : S M x I M > I M , N M : S M x I M > S M , D M : S M x I M > d)
cu un set dat de stări S M , un set de simboluri de intrare I M și mapări (O M , N M , D M ) , care, pe baza stării sale curente s ∈ S M și a simbolului de intrare i ∈ I M , se citesc din banda semi-infinită, determină: simbolul de ieșire o ∈ I M de scris pe bandă, următoarea stare a mașinii s' ∈ S M și mișcarea de-a lungul benzii d ∈ {-1,0,1} .
Pentru o anumită mașină M , o secvență de caractere v : v i ∈ I M poate fi considerată un virus dacă și numai dacă procesarea secvenței v la momentul t presupune ca la unul din următorii timpi t șirul v′ (disjunc din v ) există pe bandă, iar această secvență v′ a fost scrisă de M în punctul t′ între t și t″ :
∀ C M ∀ t ∀ j: S M (t) = S M 0 ∧ PM (t) = j ∧ { C M (t, j) … C M (t, j + |v| - 1)} = v ⇒ ∃ v' ∃ j' ∃ t' ∃ t": t < t" < t' ∧ {j' … j' +|v'|} ∩ {j … j + |v|} = ∅ ∧ { C M (t', j') … C M (t', j' + |v'| - 1)} = v' ∧ P M (t") ∈ { j' … j' + |v'| - 1 }Unde:
Această definiție a fost dată în contextul unui set viral VS = (M, V) — o pereche formată dintr-o mașină Turing M și un set de secvențe de caractere V: v, v' ∈ V . Din această definiție rezultă că conceptul de virus este indisolubil legat de interpretarea sa într-un context sau mediu dat.
Fred Cohen [12] a arătat că „orice secvență de caractere care se auto-reproduce: un VS singleton, conform căruia există un număr infinit de VS , și non- VS , pentru care există mașini pentru care toate secvențele de caractere sunt un virus și mașinile pentru care niciuna dintre secvențele de caractere nu este un virus, fac posibilă înțelegerea când orice secvență finită de caractere este un virus pentru orice mașină. El demonstrează, de asemenea, că, în general, întrebarea dacă o pereche dată (M, X) : X i ∈ I M este un virus este indecidabilă (adică nu există un algoritm care ar putea determina în mod fiabil toți virușii) prin aceleași mijloace. , care dovedesc insolubilitatea problemei opririi [13] .
Alți cercetători au demonstrat că există tipuri de viruși (viruși care conțin o copie a unui program de capturare a virușilor) care nu pot fi detectați cu acuratețe de către niciun algoritm.
Acum există multe varietăți de viruși care diferă prin metoda principală de distribuție și funcționalitate. Dacă inițial virușii se răspândesc pe dischete și alte medii , acum domină virușii care se răspândesc prin rețelele locale și globale ( Internet ). Funcționalitatea virușilor, pe care îi adoptă din alte tipuri de programe, este, de asemenea, în creștere.
În prezent, nu există un sistem unic de clasificare și denumire a virușilor (deși o încercare de a crea un standard a fost făcută la întâlnirea CARO din 1991). Se obișnuiește să se separe virușii:
Prin internet, rețele locale și medii amovibile .
Virușii se răspândesc prin copierea corpului lor și asigurând execuția lui ulterioară: prin înscrierea în codul executabil al altor programe, înlocuirea altor programe, înregistrându-se în autorun prin registry și multe altele. Un virus sau purtătorul său pot fi nu numai programe care conțin cod de mașină , ci și orice informație care conține comenzi executabile automat - de exemplu, fișiere batch și documente Microsoft Word și Excel care conțin macrocomenzi . În plus, pentru a pătrunde într-un computer, un virus poate folosi vulnerabilități în software popular (de exemplu, Adobe Flash , Internet Explorer , Outlook ), pentru care distribuitorii îl încorporează în date obișnuite (imagini, texte etc.) împreună cu un exploit care folosește vulnerabilitatea.
Odată ce un virus s-a infiltrat cu succes în codul unui program, fișier sau document, acesta va rămâne inactiv până când circumstanțele forțează computerul sau dispozitivul să-și execute codul. Pentru ca un virus să vă infecteze computerul, trebuie să rulați programul infectat, care, la rândul său, va duce la executarea codului virusului. Aceasta înseamnă că virusul poate rămâne latent pe computer fără niciun simptom de infecție. Cu toate acestea, odată ce virusul intră în vigoare, poate infecta alte fișiere și computere din aceeași rețea. În funcție de obiectivele programatorului de viruși, virușii fie provoacă daune minore, fie au un efect distructiv, cum ar fi ștergerea datelor sau furtul informațiilor confidențiale.
Pe vremea MS-DOS , virușii stealth erau obișnuiți , interceptând întreruperi pentru a accesa sistemul de operare . Astfel, virusul ar putea să-și ascundă fișierele din arborele de directoare sau să înlocuiască copia originală în locul fișierului infectat.
Odată cu utilizarea pe scară largă a scanerelor antivirus , care verifică orice cod pentru semnături sau efectuează acțiuni suspecte înainte de a rula , această tehnologie a devenit insuficientă. Ascunderea unui virus din lista de procese sau din arborele de directoare pentru a nu atrage atenția inutilă a utilizatorului este o tehnică de bază, dar sunt necesare metode mai sofisticate pentru a face față antivirusurilor. Criptarea codului și polimorfismul sunt folosite pentru a contracara scanarea semnăturilor . Aceste tehnici sunt adesea folosite împreună, deoarece pentru a decripta partea criptată a virusului, este necesar să lăsați decriptorul necriptat, ceea ce permite detectarea acestuia prin semnătură. Prin urmare, pentru a schimba decriptorul, se folosește polimorfismul - o modificare a secvenței de comenzi care nu modifică acțiunile efectuate. Acest lucru este posibil datorită unui sistem de comenzi foarte divers și flexibil pentru procesoarele Intel , în care aceeași acțiune elementară, de exemplu, adăugarea a două numere, poate fi efectuată prin mai multe secvențe de comenzi.
De asemenea, este folosită amestecarea codului , unde instrucțiunile individuale sunt ordonate aleatoriu și conectate prin salturi necondiționate . Avantajul tehnologiei virale este metamorfismul, care este adesea confundat cu polimorfismul. Decriptorul unui virus polimorf este relativ simplu, funcția sa este de a decripta corpul principal al virusului după injectare, adică după ce codul acestuia a fost verificat de un antivirus și lansat. Nu conține motorul polimorf în sine , care se află în partea criptată a virusului și generează decriptorul. În schimb, un virus metamorfic poate să nu folosească deloc criptarea, deoarece își rescrie întregul cod de fiecare dată când se replic [14] .
În acest moment, există multe programe antivirus folosite pentru a preveni pătrunderea virușilor în computer. Cu toate acestea, nu există nicio garanție că vor putea face față celor mai recente evoluții. Prin urmare, trebuie luate câteva măsuri de precauție, în special:
Unii furnizori de antivirus susțin că crearea de viruși a evoluat acum de la o activitate de huligan solitar într-o afacere serioasă, cu legături strânse cu afacerea spam și alte activități ilegale [15] .
De asemenea, numite milioane și chiar miliarde de daune din acțiunile virușilor și viermilor [16] . Astfel de declarații și evaluări trebuie tratate cu prudență: sumele daunelor conform estimărilor diferiților analiști diferă (uneori cu trei sau patru ordine de mărime), iar metodele de calcul nu sunt date.
Creatorul virusului Scores , care a cauzat daune utilizatorilor de Macintosh în 1988 , nu a fost acuzat, deoarece acțiunile sale nu intrau sub incidența Legii privind frauda și abuzul informatic sau alte legi din Statele Unite la acea vreme. Acest caz a dus la dezvoltarea uneia dintre primele legi legate de virușii informatici: Computer Virus Eradication Act (1988) [17] . În mod similar, creatorul celui mai distructiv virus , ILOVEYOU , a scăpat de pedeapsă în 2000 din cauza absenței legilor relevante în Filipine [18] .
Crearea și distribuirea de programe malware (inclusiv viruși) este urmărită penal în unele țări ca tip separat de infracțiune: în Rusia, conform Codului Penal al Federației Ruse ( Capitolul 28, Articolul 273 ), în SUA, în conformitate cu Frauda informatică și Abuse Act , în Japonia [19] . În multe țări însă, crearea de viruși nu este în sine o infracțiune, iar daunele pe care le provoacă intră sub incidența unor legi mai generale privind criminalitatea informatică [20] .
În 2007, artistul media ucrainean Stepan Ryabchenko a vizualizat esența virtuală a virușilor informatici, dându-le o formă și o imagine [21] [22] .
Dicționare și enciclopedii | ||||
---|---|---|---|---|
|
Software rău intenționat | |
---|---|
Malware infecțios | |
Metode de ascundere | |
Malware pentru profit |
|
După sisteme de operare |
|
Protecţie |
|
Contramăsuri |
|