Datorvirus

Hexdump of the Brain virus, allmänt betraktat som det första datorviruset för IBM Personal Computer (IBM PC) och kompatibla

Ett datavirus är en typ av datorprogram som, när det körs, replikerar sig själv genom att modifiera andra datorprogram och infoga sin egen kod i dessa program. Om denna replikering lyckas, sägs de drabbade områdena vara "infekterade" med ett datavirus, en metafor som härrör från biologiska virus .

Datavirus kräver i allmänhet ett värdprogram . Viruset skriver in sin egen kod i värdprogrammet. När programmet körs körs det skrivna virusprogrammet först, vilket orsakar infektion och skada. En datormask behöver inget värdprogram, eftersom det är ett oberoende program eller kodbit. Därför är det inte begränsat av värdprogrammet utan kan köras självständigt och aktivt utföra attacker.

Virusförfattare använder bedrägerier av social ingenjörskonst och utnyttjar detaljerad kunskap om säkerhetsbrister för att initialt infektera system och sprida viruset. Virus använder komplexa antidetekterings-/stealth-strategier för att undvika antivirusprogram . Motiv för att skapa virus kan inkludera att söka vinst (t.ex. med ransomware ), önskan att skicka ett politiskt budskap, personligt nöje, att visa att det finns en sårbarhet i programvaran, för sabotage och denial of service , eller helt enkelt för att de vill utforska cybersäkerhetsfrågor , artificiellt liv och evolutionära algoritmer .

Datavirus orsakar ekonomisk skada för miljarder dollar varje år. Som svar har en industri av antivirusprogram dykt upp, sålt eller fritt distribuerat virusskydd till användare av olika operativsystem .

Historia

Det första akademiska arbetet med teorin om självreplikerande datorprogram gjordes 1949 av John von Neumann som höll föreläsningar vid University of Illinois om "Theory and Organization of Complicated Automata " . Verket av von Neumann publicerades senare som "Teorin om självreproducerande automater". I sin uppsats beskrev von Neumann hur ett datorprogram kunde utformas för att reproducera sig själv. Von Neumanns design för ett självreproducerande datorprogram anses vara världens första datavirus, och han anses vara datorvirologins teoretiska "fader". 1972 publicerade Veith Risak direkt på von Neumanns arbete om självreplikering , sin artikel "Selbstreproduzierende Automaten mit minimaler Informationsübertragung" (Självreproducerande automater med minimalt informationsutbyte). Artikeln beskriver ett fullt fungerande virus skrivet i assembler- programmeringsspråk för ett SIEMENS 4004/35-datorsystem. 1980 skrev Jürgen Kraus sin diplomuppsats "Selbstreproduktion bei Programmen" (Självreproduktion av program) vid universitetet i Dortmund . I sitt arbete postulerade Kraus att datorprogram kan bete sig på ett sätt som liknar biologiska virus.

MacMag - viruset "Universal Peace", som visades på en Mac i mars 1988

Creeper -viruset upptäcktes först på ARPANET , föregångaren till Internet , i början av 1970-talet. Creeper var ett experimentellt självreplikerande program skrivet av Bob Thomas på BBN Technologies 1971. Creeper använde ARPANET för att infektera DEC PDP-10- datorer som kör operativsystemet TENEX . Creeper fick tillgång via ARPANET och kopierade sig själv till fjärrsystemet där meddelandet "JAG ÄR KRÄPAN. FÅNG MIG OM DU KAN!" visades. Reaper - programmet skapades för att ta bort Creeper.

1982 var ett program som heter " Elg Cloner " det första persondatorviruset som dök upp "i naturen" - det vill säga utanför den enda dator eller datorlabb där det skapades. Skrivet 1981 av Richard Skrenta , en niondeklassare vid Mount Lebanon High School nära Pittsburgh , kopplade den sig till operativsystemet Apple DOS 3.3 och spreds via diskett . Vid sin 50:e användning skulle Elk Cloner -viruset aktiveras, infektera den personliga datorn och visa en kort dikt som börjar "Elk Cloner: Programmet med en personlighet."

1984 skrev Fred Cohen från University of Southern California sin artikel "Computer Viruses - Theory and Experiments". Det var den första tidningen som uttryckligen kallade ett självreproducerande program för ett "virus", en term som introducerades av Cohens mentor Leonard Adleman . 1987 publicerade Fred Cohen en demonstration att det inte finns någon algoritm som perfekt kan upptäcka alla möjliga virus. Fred Cohens teoretiska komprimeringsvirus var ett exempel på ett virus som inte var skadlig programvara ( skadlig programvara ), men var förmodat välvillig (välmenande). Antivirusproffs accepterar dock inte konceptet med "välvilliga virus", eftersom alla önskade funktioner kan implementeras utan att involvera ett virus (automatisk komprimering, till exempel, är tillgänglig under Windows efter användarens val). Alla virus kommer per definition att göra otillåtna ändringar på en dator, vilket är oönskat även om ingen skada är orsakad eller avsedd. Den första sidan av Dr Solomons Virus Encyclopaedia förklarar det oönskade med virus, även de som inte gör något annat än att reproducera sig.

En artikel som beskriver "användbara virusfunktioner" publicerades av JB Gunn under titeln "Användning av virusfunktioner för att tillhandahålla en virtuell APL- tolk under användarkontroll" 1984. Det första IBM PC- viruset i "vilda" var ett startsektorvirus dubbad (c)Brain , skapad 1986 av Amjad Farooq Alvi och Basit Farooq Alvi i Lahore, Pakistan , enligt uppgift för att avskräcka obehörig kopiering av programvaran de hade skrivit. Det första viruset som specifikt riktade sig mot Microsoft Windows , WinVir, upptäcktes i april 1992, två år efter lanseringen av Windows 3.0 . Viruset innehöll inga Windows API- anrop , utan förlitade sig på DOS-avbrott . Några år senare, i februari 1996, skapade australiensiska hackare från virusskrivarteamet VLAD Bizatch-viruset (även känt som "Boza"-virus), som var det första kända viruset som riktade sig mot Windows 95 . I slutet av 1997 släpptes det krypterade, minnesfasta smygviruset Win32.Cabanas – det första kända viruset som riktade sig mot Windows NT (det kunde även infektera Windows 3.0- och Windows 9x-värdar).

Även hemdatorer drabbades av virus. Det första som dök upp på Commodore Amiga var ett startsektorvirus kallat SCA-virus , som upptäcktes i november 1987.

Design

Delar

Ett datavirus innehåller i allmänhet tre delar: infektionsmekanismen, som hittar och infekterar nya filer, triggern, som bestämmer när nyttolasten ska aktiveras, och nyttolasten, som är den skadliga koden som ska köras.

Infektionsmekanism
Även kallad infektionsvektor, det är så viruset sprids. Vissa virus har en sökrutin som lokaliserar och infekterar filer på disken. Andra virus infekterar filer när de körs, till exempel Jerusalem DOS-virus .
Trigger
Även känd som en logisk bomb , detta är den del av viruset som avgör tillståndet för vilket nyttolasten aktiveras . Detta tillstånd kan vara ett visst datum, tid, närvaro av ett annat program, storlek på disken som överstiger ett tröskelvärde eller att en specifik fil öppnas.
Nyttolast
Nyttolasten är viruskroppen som utför den skadliga aktiviteten. Exempel på skadliga aktiviteter inkluderar att skada filer, stöld av konfidentiell information eller spionera på det infekterade systemet. Nyttolastaktivitet märks ibland eftersom det kan göra att systemet saktar ner eller "fryser". Ibland är nyttolaster oförstörande och deras huvudsakliga syfte är att sprida ett budskap till så många människor som möjligt. Detta kallas en virusbluff .

Faser

Virusfaser är livscykeln för dataviruset, beskriven genom att använda en analogi till biologi . Denna livscykel kan delas in i fyra faser:

Vilande fas
Virusprogrammet är inaktivt under detta skede. Virusprogrammet har lyckats komma åt målanvändarens dator eller programvara, men under detta skede vidtar viruset inga åtgärder. Viruset kommer så småningom att aktiveras av "triggern" som anger vilken händelse som kommer att exekvera viruset. Inte alla virus har detta stadium.
Förökningsfas
Viruset börjar föröka sig, som förökar sig och replikerar sig själv. Viruset placerar en kopia av sig själv i andra program eller i vissa systemområden på disken. Kopian kanske inte är identisk med förökningsversionen; virus ofta "förvandlas" eller ändras för att undvika upptäckt av IT-proffs och antivirusprogram. Varje infekterat program kommer nu att innehålla en klon av viruset, som självt går in i en fortplantningsfas.
Utlösningsfas
Ett vilande virus går in i denna fas när det aktiveras och kommer nu att utföra den funktion som det var avsett för. Utlösningsfasen kan orsakas av en mängd olika systemhändelser, inklusive en räkning av antalet gånger som denna kopia av viruset har gjort kopior av sig själv. Utlösandet kan inträffa när en anställd sägs upp från sin anställning eller efter att en bestämd tid har förflutit, för att minska misstanken.
Exekveringsfas
Detta är virusets faktiska arbete, där "nyttolasten" kommer att släppas. Det kan vara destruktivt som att ta bort filer på disken, krascha systemet eller korrumpera filer eller relativt ofarligt som att dyka upp humoristiska eller politiska meddelanden på skärmen.

Mål och replikering

Datorvirus infekterar en mängd olika delsystem på deras värddatorer och programvara. Ett sätt att klassificera virus är att analysera om de finns i binära körbara filer (som .EXE- eller .COM-filer ), datafiler (som Microsoft Word -dokument eller PDF-filer ) eller i startsektorn på värdens hårddisk (eller någon kombination av alla dessa).

Ett minnesresident virus (eller helt enkelt "resident virus") installerar sig själv som en del av operativsystemet när det körs, varefter det finns kvar i RAM från det att datorn startas upp tills den stängs av. Inhemska virus skriver över avbrottshanteringskod eller andra funktioner , och när operativsystemet försöker komma åt målfilen eller disksektorn, fångar viruskoden upp begäran och omdirigerar kontrollflödet till replikeringsmodulen, vilket infekterar målet. Däremot genomsöker ett icke-minnesresident virus (eller "icke-resident virus"), när det körs, disken efter mål, infekterar dem och avslutas sedan (dvs. det finns inte kvar i minnet efter att det har körts klart).

Många vanliga applikationer, som Microsoft Outlook och Microsoft Word , tillåter att makroprogram bäddas in i dokument eller e-postmeddelanden, så att programmen kan köras automatiskt när dokumentet öppnas. Ett makrovirus (eller "dokumentvirus") är ett virus som är skrivet på ett makrospråk och inbäddat i dessa dokument så att när användare öppnar filen exekveras viruskoden och kan infektera användarens dator. Detta är en av anledningarna till att det är farligt att öppna oväntade eller misstänkta bilagor i e-postmeddelanden . Även om att inte öppna bilagor i e-postmeddelanden från okända personer eller organisationer kan bidra till att minska sannolikheten för att smittas av ett virus, är viruset i vissa fall utformat så att e-postmeddelandet verkar vara från en ansedd organisation (t.ex. en större bank eller kreditkortsföretag).

Bootsektorvirus riktar sig specifikt mot startsektorn och/eller Master Boot Record (MBR) på värdens hårddisk , solid-state-enhet eller flyttbara lagringsmedia ( flash-enheter , disketter , etc.).

Det vanligaste sättet att överföra datavirus i bootsektorn är fysiska medier. När du läser enhetens VBR kommer den infekterade disketten eller USB-flashenheten som är ansluten till datorn att överföra data och sedan ändra eller ersätta den befintliga startkoden. Nästa gång en användare försöker starta skrivbordet kommer viruset omedelbart att laddas och köras som en del av huvudstartposten.

E-postvirus är virus som avsiktligt, snarare än av misstag, använder e-postsystemet för att spridas. Även om virusinfekterade filer av misstag kan skickas som e-postbilagor , är e-postvirus medvetna om e-postsystemets funktioner. De riktar sig vanligtvis mot en specifik typ av e-postsystem ( Microsoft Outlook är det vanligaste), samlar in e-postadresser från olika källor och kan lägga till kopior av sig själva till all e-post som skickas, eller kan generera e-postmeddelanden som innehåller kopior av dem själva som bilagor.

Upptäckt

För att undvika upptäckt av användare använder vissa virus olika typer av bedrägeri . Vissa gamla virus, särskilt på DOS -plattformen, ser till att "senast modifierade" datumet för en värdfil förblir detsamma när filen är infekterad av viruset. Detta tillvägagångssätt lurar dock inte antivirusprogramvaran , särskilt de som underhåller och daterar cykliska redundanskontroller av filändringar. Vissa virus kan infektera filer utan att öka deras storlek eller skada filerna. De åstadkommer detta genom att skriva över oanvända områden av körbara filer. Dessa kallas kavitetsvirus . Till exempel CIH-viruset eller Chernobyl-viruset bärbara körbara filer. Eftersom dessa filer har många tomma luckor , ökade inte viruset, som var 1 kB i längd, storleken på filen. Vissa virus försöker undvika upptäckt genom att döda uppgifterna som är associerade med antivirusprogram innan den kan upptäcka dem (till exempel Conficker ). Ett virus kan också dölja sin närvaro med hjälp av ett rootkit genom att inte visa sig själv på listan över systemprocesser eller genom att dölja sig i en pålitlig process. På 2010-talet, när datorer och operativsystem växer sig större och mer komplexa, måste gamla döljningstekniker uppdateras eller bytas ut. Att försvara en dator mot virus kan kräva att ett filsystem migrerar mot detaljerade och uttryckliga tillstånd för alla typer av filåtkomst. [ citat behövs ]

Läs förfrågningsavlyssningar

Även om vissa typer av antivirusprogram använder olika tekniker för att motverka smygmekanismer, är systemet opålitligt när infektionen väl inträffar. I Microsoft Windows-operativsystem NTFS-filsystemet proprietärt. Detta lämnar antivirusprogram inget annat alternativ än att skicka en "läs"-förfrågan till Windows-filer som hanterar sådana förfrågningar. Vissa virus lurar antivirusprogram genom att avlyssna dess förfrågningar till operativsystemet. Ett virus kan gömma sig genom att fånga upp begäran om att läsa den infekterade filen, hantera själva begäran och returnera en oinfekterad version av filen till antivirusprogrammet. Avlyssningen kan ske genom kodinjektion av de faktiska operativsystemfilerna som skulle hantera läsbegäran. Således kommer ett antivirusprogram som försöker upptäcka viruset antingen inte att tillåtas läsa den infekterade filen, eller så kommer "läs"-begäran att skickas med den oinfekterade versionen av samma fil.

Den enda pålitliga metoden för att undvika "stealth"-virus är att starta från ett medium som är känt för att vara "clear". Säkerhetsprogramvara kan sedan användas för att kontrollera de vilande operativsystemfilerna. De flesta säkerhetsprogram förlitar sig på virussignaturer, eller så använder de heuristik . Säkerhetsprogram kan också använda en databas med fil- hashar för Windows OS-filer, så att säkerhetsprogramvaran kan identifiera ändrade filer och begära att Windows-installationsmedia ersätter dem med autentiska versioner. I äldre versioner av Windows kan filkryptografiska hashfunktioner för Windows OS-filer lagrade i Windows – för att tillåta filintegritet/äkthet att kontrolleras – skrivas över så att systemfilsgranskaren skulle rapportera att ändrade systemfiler är autentiska, så att använda filhashar att söka efter ändrade filer skulle inte alltid garantera att en infektion hittas.

Självmodifiering

De flesta moderna antivirusprogram försöker hitta virusmönster i vanliga program genom att skanna dem efter så kallade virussignaturer . Olika antivirusprogram kommer att använda olika sökmetoder för att identifiera virus. Om en virusscanner hittar ett sådant mönster i en fil kommer den att utföra andra kontroller för att säkerställa att den har hittat viruset, och inte bara en tillfällig sekvens i en oskyldig fil, innan den meddelar användaren att filen är infekterad. Användaren kan sedan ta bort, eller (i vissa fall) "rensa" eller "läka" den infekterade filen. Vissa virus använder tekniker som gör detektion med hjälp av signaturer svår men förmodligen inte omöjlig. Dessa virus modifierar sin kod vid varje infektion. Det vill säga att varje infekterad fil innehåller en annan variant av viruset. [ citat behövs ]

En metod för att undvika signaturdetektering är att använda enkel kryptering för att kryptera (koda) viruskroppen, vilket bara lämnar krypteringsmodulen och en statisk kryptografisk nyckel i klartext som inte ändras från en infektion till en annan. I det här fallet består viruset av en liten dekrypteringsmodul och en krypterad kopia av viruskoden. Om viruset är krypterat med en annan nyckel för varje infekterad fil, är den enda delen av viruset som förblir konstant dekrypteringsmodulen, som (till exempel) skulle läggas till i slutet. I det här fallet kan en virusskanner inte direkt upptäcka viruset med hjälp av signaturer, men den kan fortfarande upptäcka dekrypteringsmodulen, vilket fortfarande gör indirekt upptäckt av viruset möjligt. Eftersom dessa skulle vara symmetriska nycklar, lagrade på den infekterade värden, är det fullt möjligt att dekryptera det slutliga viruset, men detta krävs förmodligen inte, eftersom självmodifierande kod är en sådan sällsynthet att hitta några kan vara skäl nog för virusskannrar att åtminstone "flagga" filen som misstänkt. [ citat behövs ] Ett gammalt men kompakt sätt kommer att vara användningen av aritmetiska operationer som addition eller subtraktion och användningen av logiska villkor som XORing , där varje byte i ett virus har en konstant så att exklusiv-eller-operationen bara behövde upprepas för dekryptering. Det är misstänkt att en kod modifierar sig själv, så koden för krypteringen/dekrypteringen kan vara en del av signaturen i många virusdefinitioner. [ citat behövs ] Ett enklare äldre tillvägagångssätt använde inte en nyckel, där krypteringen endast bestod av operationer utan parametrar, som inkrementering och dekrementering, bitvis rotation, aritmetisk negation och logisk NOT. Vissa virus, som kallas polymorfa virus, kommer att använda ett sätt för kryptering inuti en körbar fil där viruset krypteras under vissa händelser, som att virusscannern inaktiveras för uppdateringar eller att datorn startas om . Detta kallas kryptovirologi .

Polymorf kod var den första tekniken som utgjorde ett allvarligt hot mot virusskannrar. Precis som vanliga krypterade virus infekterar ett polymorft virus filer med en krypterad kopia av sig själv, som avkodas av en dekrypteringsmodul . I fallet med polymorfa virus modifieras denna dekrypteringsmodul också vid varje infektion. Ett välskrivet polymorft virus har därför inga delar som förblir identiska mellan infektioner, vilket gör det mycket svårt att upptäcka direkt med hjälp av "signaturer". Antivirusprogram kan upptäcka det genom att dekryptera virusen med en emulator eller genom statistisk mönsteranalys av den krypterade viruskroppen. För att aktivera polymorf kod måste viruset ha en polymorf motor (även kallad "muterande motor" eller " mutationsmotor ") någonstans i sin krypterade kropp. Se polymorf kod för teknisk information om hur sådana motorer fungerar.

Vissa virus använder polymorf kod på ett sätt som begränsar mutationshastigheten för viruset avsevärt. Till exempel kan ett virus programmeras att mutera endast något med tiden, eller så kan det programmeras att avstå från att mutera när det infekterar en fil på en dator som redan innehåller kopior av viruset. Fördelen med att använda så långsam polymorf kod är att det gör det svårare för antivirusproffs och utredare att få representativa prover av viruset, eftersom "bete"-filer som infekteras i en körning vanligtvis kommer att innehålla identiska eller liknande prov av viruset. Detta kommer att göra det mer sannolikt att upptäckten av virusskannern kommer att vara opålitlig och att vissa instanser av viruset kanske kan undvika upptäckt.

För att undvika att upptäckas av emulering, skriver vissa virus om sig själva helt varje gång de ska infektera nya körbara filer. Virus som använder denna teknik sägs vara i metamorf kod . För att möjliggöra metamorfism behövs en "metamorf motor". Ett metamorft virus är vanligtvis mycket stort och komplext. Till exempel W32/Simile av över 14 000 rader assemblerspråkkod , varav 90 % är en del av den metamorfa motorn.

Effekter

Skador beror på att orsaka systemfel, korrumpera data, slösa datorresurser, öka underhållskostnaderna eller stjäla personlig information. Även om ingen antivirusprogramvara kan avslöja alla datavirus (särskilt nya), söker datasäkerhetsforskare aktivt efter nya sätt att möjliggöra antiviruslösningar för att mer effektivt upptäcka nya virus innan de får stor spridning.

Ett kraftvirus är ett datorprogram som exekverar specifik maskinkod för att nå maximal CPU-effektförlust ( värmeenergiutgång för centralenheterna) . Datorkylningsapparater är utformade för att avleda kraft upp till den termiska designeffekten, snarare än maximal effekt, och ett kraftvirus kan få systemet att överhettas om det inte har logik att stoppa processorn. Detta kan orsaka permanent fysisk skada. Powervirus kan vara skadliga, men är ofta sviter av testprogramvara som används för integrationstestning och termisk testning av datorkomponenter under designfasen av en produkt, eller för produktbenchmarking .

Stabilitetstestapplikationer är liknande program som har samma effekt som kraftvirus (hög CPU-användning) men som förblir under användarens kontroll. De används för att testa processorer, till exempel vid överklockning . Spinlock i ett dåligt skrivet program kan ge liknande symtom om det varar tillräckligt länge.

Olika mikroarkitekturer kräver vanligtvis olika maskinkod för att nå sin maximala effekt. Exempel på sådan maskinkod verkar inte distribueras i CPU-referensmaterial.

Infektionsvektorer

Eftersom programvara ofta är utformad med säkerhetsfunktioner för att förhindra obehörig användning av systemresurser, måste många virus utnyttja och manipulera säkerhetsbuggar , som är säkerhetsdefekter i ett system eller program, för att sprida sig själva och infektera andra datorer. Programvaruutvecklingsstrategier som producerar ett stort antal "buggar" kommer i allmänhet också att skapa potentiella exploateringsbara "hål" eller "ingångar" för viruset.

För att replikera sig själv måste ett virus tillåtas exekvera kod och skriva till minnet. Av denna anledning fäster många virus sig till körbara filer som kan vara en del av legitima program (se kodinjektion ) . Om en användare försöker starta ett infekterat program kan viruskoden exekveras samtidigt. I operativsystem som använder filtillägg för att fastställa programassociationer (som Microsoft Windows), kan tilläggen vara dolda för användaren som standard. Detta gör det möjligt att skapa en fil som är av en annan typ än den ser ut för användaren. Till exempel kan en körbar fil skapas och heter "picture.png.exe", där användaren bara ser "picture.png" och därför antar att den här filen är en digital bild och troligen är säker, men när den öppnas kör den körbara filen på klientdatorn. Virus kan installeras på flyttbara media, till exempel flash-enheter . Enheterna kan lämnas på en parkeringsplats i en regeringsbyggnad eller annat mål, med hopp om att nyfikna användare ska sätta in enheten i en dator. I ett experiment 2015 fann forskare vid University of Michigan att 45–98 procent av användarna skulle koppla in en flashenhet av okänt ursprung.

De allra flesta virus riktar sig mot system som kör Microsoft Windows . Detta beror på Microsofts stora marknadsandel av stationära datoranvändare . Mångfalden av mjukvarusystem i ett nätverk begränsar den destruktiva potentialen hos virus och skadlig programvara. Operativsystem med öppen källkod som Linux tillåter användare att välja mellan en mängd olika skrivbordsmiljöer , paketeringsverktyg etc., vilket innebär att skadlig kod som riktar sig mot något av dessa system endast kommer att påverka en delmängd av alla användare. Många Windows-användare kör samma uppsättning applikationer, vilket gör det möjligt för virus att snabbt spridas bland Microsoft Windows-system genom att rikta samma utnyttjande på ett stort antal värdar.

Medan Linux och Unix i allmänhet alltid har förhindrat normala användare från att göra ändringar i operativsystemmiljön utan tillstånd, hindras Windows-användare i allmänhet inte från att göra dessa ändringar, vilket innebär att virus enkelt kan få kontroll över hela systemet på Windows-värdar. Denna skillnad har fortsatt delvis på grund av den utbredda användningen av administratörskonton i moderna versioner som Windows XP . 1997 skapade og släppte forskare ett virus för Linux – känt som " Bliss ". Bliss kräver dock att användaren kör det explicit, och det kan bara infektera program som användaren har åtkomst att ändra. Till skillnad från Windows-användare, loggar de flesta Unix-användare inte in som administratör, eller "rotanvändare" , förutom för att installera eller konfigurera programvara; som ett resultat, även om en användare körde viruset, kunde det inte skada deras operativsystem. Bliss-viruset blev aldrig utbrett och förblir främst en forskningskuriosa. Dess skapare publicerade senare källkoden till Usenet , så att forskare kunde se hur det fungerade.

Innan datornätverk blev utbredda spreds de flesta virus på flyttbara media , särskilt disketter . I de första dagarna av persondatorn utbytte många användare regelbundet information och program på disketter. Vissa virus spreds genom att infektera program lagrade på dessa diskar, medan andra installerade sig själva i diskstartsektorn, vilket säkerställde att de skulle köras när användaren startade datorn från disken, vanligtvis av misstag. Persondatorer från eran skulle försöka starta först från en diskett om en hade varit kvar i enheten. Tills disketter föll ur bruk var detta den mest framgångsrika infektionsstrategin och virus i startsektorn var de vanligaste i det "vilda" under många år. Traditionella datavirus uppstod på 1980-talet, drivna av spridningen av persondatorer och den resulterande ökningen av anslagstavlasystem (BBS), modemanvändning och programdelning. Anslagstavla -driven programvarudelning bidrog direkt till spridningen av trojanska hästprogram , och virus skrevs för att infektera populärt handlade program. Shareware och bootleg -programvara var lika vanliga vektorer för virus på BBS. Virus kan öka sina chanser att spridas till andra datorer genom att infektera filer på ett nätverksfilsystem eller ett filsystem som nås av andra datorer.

Makrovirus har blivit vanliga sedan mitten av 1990-talet. De flesta av dessa virus är skrivna på skriptspråken för Microsoft-program som Microsoft Word och Microsoft Excel och sprids över hela Microsoft Office genom att infektera dokument och kalkylblad . Eftersom Word och Excel också var tillgängliga för Mac OS kunde de flesta också spridas till Macintosh-datorer . Även om de flesta av dessa virus inte hade förmågan att skicka infekterade e-postmeddelanden , drog de virus som utnyttjade gränssnittet Microsoft Outlook Component Object Model (COM). Vissa gamla versioner av Microsoft Word tillåter makron att replikera sig själva med ytterligare tomma rader. Om två makrovirus samtidigt infekterar ett dokument, kan kombinationen av de två, om den också är självreplikerande, framstå som en "parning" av de två och skulle sannolikt upptäckas som ett virus unikt från "föräldrarna".

Ett virus kan också skicka en webbadresslänk som ett snabbmeddelande till alla kontakter (t.ex. vänner och kollegors e-postadresser) som finns lagrade på en infekterad maskin. Om mottagaren, som tror att länken är från en vän (en pålitlig källa) följer länken till webbplatsen, kan viruset som finns på webbplatsen kunna infektera den här nya datorn och fortsätta sprida sig. Virus som spreds med hjälp av cross-site scripting rapporterades första gången 2002 och demonstrerades akademiskt 2005. Det har förekommit flera instanser av cross-site scripting-virus i det "vilda" som utnyttjar webbplatser som MySpace (med Samy-masken) och Yahoo! .

Motåtgärder

1989 publicerade ADAPSO Software Industry Division Dealing With Electronic Vandalism , där de följde risken för dataförlust med "den extra risken att förlora kundernas förtroende."

Många användare installerar antivirusprogram som kan upptäcka och eliminera kända virus när datorn försöker ladda ner eller köra den körbara filen (som till exempel kan distribueras som en e-postbilaga eller på USB-minnen ). Vissa antivirusprogram blockerar kända skadliga webbplatser som försöker installera skadlig programvara. Antivirusprogram ändrar inte värdarnas underliggande förmåga att överföra virus. Användare måste uppdatera sin programvara regelbundet för att korrigera säkerhetsbrister ( "hål"). Antivirusprogram måste också uppdateras regelbundet för att känna igen de senaste hoten . Detta beror på att illvilliga hackare och andra individer alltid skapar nya virus. Tyska AV-TEST- institutet publicerar utvärderingar av antivirusprogram för Windows och Android.

Exempel på Microsoft Windows antivirus och anti-malware-programvara inkluderar valfria Microsoft Security Essentials (för Windows XP, Vista och Windows 7) för realtidsskydd, Windows-verktyget för borttagning av skadlig programvara ( som nu ingår i Windows (säkerhets)uppdateringar på " Patch Tuesday ", den andra tisdagen i varje månad) och Windows Defender (en valfri nedladdning för Windows XP). Dessutom finns flera kapabla antivirusprogram tillgängliga för gratis nedladdning från Internet (vanligtvis begränsade till icke-kommersiell användning). Vissa sådana gratisprogram är nästan lika bra som kommersiella konkurrenter. Vanliga säkerhetsbrister tilldelas CVE-ID:n och listas i USA:s nationella sårbarhetsdatabasen . Secunia PSI är ett exempel på programvara, gratis för personligt bruk, som kontrollerar en dator för sårbara inaktuella program och försöker uppdatera den. Varningar om ransomware och phishing -bedrägerier visas som pressmeddelanden på anslagstavlan för Internet Crime Complaint Center . Ransomware är ett virus som lägger upp ett meddelande på användarens skärm som säger att skärmen eller systemet kommer att förbli låst eller oanvändbart tills en lösensumma har betalats. Nätfiske är ett bedrägeri där den illvilliga individen utger sig för att vara en vän, datasäkerhetsexpert eller annan välvillig individ, med målet att övertyga målindividen att avslöja lösenord eller annan personlig information.

Andra vanliga förebyggande åtgärder inkluderar snabba uppdateringar av operativsystemet, programuppdateringar, noggrann surfning på Internet (undvika skumma webbplatser) och installation av endast tillförlitlig programvara. Vissa webbläsare flaggar webbplatser som har rapporterats till Google och som har bekräftats som värd för skadlig programvara av Google.

Det finns två vanliga metoder som ett antivirusprogram använder för att upptäcka virus, enligt beskrivningen i artikeln om antivirusprogram . Den första och överlägset vanligaste metoden för virusdetektion är att använda en lista med virussignaturdefinitioner . Detta fungerar genom att undersöka innehållet i datorns minne (dess Random Access Memory (RAM) och startsektorer ) och filerna som är lagrade på fasta eller flyttbara enheter (hårddiskar, diskettenheter eller USB-minnen) och jämför dessa filer med en databas med kända virus-"signaturer". Virussignaturer är bara kodsträngar som används för att identifiera enskilda virus; för varje virus försöker antivirusdesignern välja en unik signatursträng som inte kommer att hittas i ett legitimt program. Olika antivirusprogram använder olika "signaturer" för att identifiera virus. Nackdelen med denna detekteringsmetod är att användare endast är skyddade från virus som upptäcks av signaturer i deras senaste virusdefinitionsuppdatering och inte skyddade från nya virus (se "nolldagsattack" ) .

En andra metod för att hitta virus är att använda en heuristisk algoritm baserad på vanliga virusbeteenden. Denna metod kan upptäcka nya virus för vilka antivirussäkerhetsföretag ännu inte har definierat en "signatur", men den ger också upphov till fler falska positiva resultat än att använda signaturer. Falska positiva resultat kan vara störande, särskilt i en kommersiell miljö, eftersom det kan leda till att ett företag instruerar personalen att inte använda företagets datorsystem förrän IT-tjänster har kontrollerat systemet för virus. Detta kan bromsa produktiviteten för vanliga arbetare.

Återhämtningsstrategier och metoder

Man kan minska skadorna orsakade av virus genom att göra regelbundna säkerhetskopior av data (och operativsystemen) på olika media, som antingen hålls oanslutna till systemet (för det mesta, som på en hårddisk), skrivskyddade eller inte tillgänglig av andra skäl, som att använda olika filsystem . På detta sätt, om data går förlorade genom ett virus, kan man börja om med säkerhetskopian (som förhoppningsvis kommer att vara ny). Om en säkerhetskopieringssession på optiska media som CD och DVD stängs, blir den skrivskyddad och kan inte längre påverkas av ett virus (så länge som ett virus eller en infekterad fil inte kopierades till CD / DVD ) . På samma sätt kan ett operativsystem på en startbar CD användas för att starta datorn om de installerade operativsystemen blir oanvändbara. Säkerhetskopior på flyttbara media måste inspekteras noggrant före återställning. Gammima-viruset sprids till exempel via flyttbara flashenheter .

Många webbplatser som drivs av antivirusprogramföretag tillhandahåller gratis virussökning online, med begränsade "rengöringsmöjligheter" (syftet med webbplatserna är trots allt att sälja antivirusprodukter och -tjänster). Vissa webbplatser – som Googles dotterbolag VirusTotal .com – tillåter användare att ladda upp en eller flera misstänkta filer som ska skannas och kontrolleras av ett eller flera antivirusprogram i en operation. Dessutom finns flera kapabla antivirusprogram tillgängliga för gratis nedladdning från Internet (vanligtvis begränsade till icke-kommersiell användning). Microsoft erbjuder ett valfritt gratis antivirusverktyg som heter Microsoft Security Essentials , ett Windows-verktyg för borttagning av skadlig programvara som uppdateras som en del av den vanliga Windows-uppdateringsregimen och ett äldre valfritt anti-malware-verktyg (borttagning av skadlig programvara) Windows Defender som har uppgraderats till en antivirusprodukt i Windows 8.

Vissa virus inaktiverar systemåterställning och andra viktiga Windows-verktyg som Task Manager och CMD . Ett exempel på ett virus som gör detta är CiaDoor. Många sådana virus kan tas bort genom att starta om datorn, gå in i Windows " säkert läge " med nätverk och sedan använda systemverktyg eller Microsoft Safety Scanner . Systemåterställning Windows Me , Windows XP , Windows Vista och Windows 7 kan återställa registret och viktiga systemfiler till en tidigare kontrollpunkt. Ofta kommer ett virus att få ett system att "hänga" eller "frysa", och en efterföljande hård omstart kommer att göra en systemåterställningspunkt från samma dag skadad. Återställningspunkter från tidigare dagar bör fungera, förutsatt att viruset inte är utformat för att skada återställningsfilerna och inte finns i tidigare återställningspunkter.

Microsofts System File Checker (förbättrad i Windows 7 och senare) kan användas för att leta efter och reparera skadade systemfiler. Att återställa en tidigare "ren" (virusfri) kopia av hela partitionen från en klonad disk , en diskavbildning eller en säkerhetskopia är en lösning – att återställa en "avbildning" för en tidigare backupdisk är relativt enkelt att göra, tar vanligtvis bort alla skadlig programvara och kan vara snabbare än att "desinficera" datorn – eller installera om och konfigurera om operativsystemet och programmen från början, enligt beskrivningen nedan, och sedan återställa användarinställningarna. Att installera om operativsystemet är ett annat sätt att ta bort virus. Det kan vara möjligt att återställa kopior av väsentliga användardata genom att starta från en live-cd eller ansluta hårddisken till en annan dator och starta upp från den andra datorns operativsystem, var noga med att inte infektera den datorn genom att köra infekterade program på original enhet. Den ursprungliga hårddisken kan sedan formateras om och operativsystemet och alla program installeras från originalmedia. När systemet har återställts måste försiktighetsåtgärder vidtas för att undvika återinfektion från återställda körbara filer .

Populärkultur

Den första kända beskrivningen av ett självreproducerande program inom fiktion finns i novellen The Scarred Man från 1970 av Gregory Benford som beskriver ett datorprogram som heter VIRUS som, när det installeras på en dator med telefonmodemuppringningsfunktion , slumpmässigt slår telefonnummer tills det träffar ett modem som besvaras av en annan dator, och försöker sedan programmera den svarande datorn med sitt eget program, så att den andra datorn också börjar ringa slumpmässiga nummer, i jakt på ännu en dator att programmera. Programmet sprider sig snabbt exponentiellt genom känsliga datorer och kan bara motverkas av ett andra program som heter VACCINE.

Idén utforskades ytterligare i två romaner från 1972, When HARLIE Was One av David Gerrold och The Terminal Man av Michael Crichton , och blev ett stort tema i 1975 års roman The Shockwave Rider av John Brunner .

Michael Crichton sci-fi- filmen Westworld från 1973 nämnde tidigt konceptet med ett datavirus, eftersom det är ett centralt plottema som får androider att gå amok. [ bättre källa behövs ] Alan Oppenheimers karaktär sammanfattar problemet genom att säga att "...det finns ett tydligt mönster här som antyder en analogi till en infektionssjukdomsprocess, som sprider sig från ett...område till nästa." Till vilka svaren står: "Kanske finns det ytliga likheter med sjukdomar" och "Jag måste erkänna att jag har svårt att tro på en maskinsjukdom."

Annan skadlig programvara

Termen "virus" missbrukas också i förlängningen för att hänvisa till andra typer av skadlig programvara . "Malware" omfattar datorvirus tillsammans med många andra former av skadlig programvara, såsom dator-"maskar" , ransomware , spionprogram , adware , trojanska hästar , keyloggers , rootkits , bootkits , skadliga Browser Helper Object (BHOs) och annan skadlig programvara. Majoriteten av aktiva skadliga hot är trojanska hästprogram eller datormaskar snarare än datavirus. Termen datavirus, som myntades av Fred Cohen 1985, är en felaktig benämning. Virus utför ofta någon typ av skadlig aktivitet på infekterade värddatorer, till exempel förvärv av hårddiskutrymme eller centralprocessortid (CPU), åtkomst till och stjäl privat information (t.ex. kreditkortsnummer , betalkortsnummer , telefonnummer, namn, e-postadresser, lösenord, bankinformation, husadresser etc.), korrumperar data, visar politiska, humoristiska eller hotfulla meddelanden på användarens skärm, spammar deras e-postkontakter, loggar deras tangenttryckningar eller till och med gör datorn oanvändbar. Men inte alla virus bär på en destruktiv " nyttolast " och försöker gömma sig själva – det avgörande kännetecknet för virus är att de är självreplikerande datorprogram som modifierar annan programvara utan användarens samtycke genom att injicera sig själva i nämnda program, liknande en biologisk virus som replikerar i levande celler.

Se även

Vidare läsning

externa länkar