Articles

försök inte detta hemma: skapa ett enkelt Virus med Ruby

informationsåldern har gett oss fantastisk teknik: handhållna superdatorer med ansiktsigenkänning, skräpburkar som kan skapa livsmedelslistor, virtuell verklighet, 146-tums platt-tv, etc.

datorer är en integrerad del av alla företag, hem, skola. Men med tillkomsten av denna teknik finns det en mörkare sida av hur modern teknik implementeras, till exempel virus.

i biologiska termer är ett virus ett litet smittämne som består av genetiskt material inkapslat i en proteinbeläggning som bara kan replikera inuti en värdcell. Hur virus reproducerar är nervöst. Vad de gör är att infoga sin genetiska information i värdcellens genetiska material, och under replikering av värdcellen skapas också material för att skapa nya virusmolekyler. Så småningom är tillräckligt med virusmolekyler instanserade att cellen inte kan hantera mängden och exploderar. De nyligen släppta virusmolekylerna flyter sedan bort, redo att infektera nya celler. Även om virus innehåller genetisk information, kan reproducera och utvecklas genom naturligt urval, eftersom de saknar andra egenskaper hos livet, kallas virus i allmänhet replikatorer eller ”organismer vid livets kant”. Varken levande eller döda, replikerar och orsakar kaos utan orsak, de är det verkliga livet som motsvarar zombies.

tyvärr

datavirus

precis som deras biologiska namngivare består datavirus av kod och kan bara replikeras när koden körs. För att viruset ska spridas skulle användarna behöva överföra infekterade filer eller program till andra datorsystem. När filen/programmet körs kan viruset sedan komma åt andra filer i datorn, vilket i värsta fall kan ta bort alla filer på en användares dator. Till exempel, om en användare skulle var att en nedladdning och spela upp en tvivelaktig video från en webbplats som var infekterad, viruset kan infektera alla videor i datorn. Och då, om samma slarviga användare skulle skicka en video från sin fil till en intet ont anande vän, när den vän hämtar och spelar den infekterade videon, kommer hans videor i sin dator på samma sätt att påverkas. Dessa virus kan resultera i enorma summor pengar slösas bort, tid slösas bort, och stress för alla infekterade parter. Medan bilden nedan visar ett exempel på Blaster, en datormask, som skiljer sig något från ett datavirus, visar det hur hål i datasäkerhet kan utnyttjas.

smh billy

så, varför skulle jag vilja lära mig hur man skapar ett virus, om det orsakar så mycket smärta för andra? I det tredje kapitlet av The Art of War av Sun Tzu skrev han att du känner både dig själv och din fiende, du kan vinna hundra strider utan att äventyra dig själv. Alan Turings dechiffrering av Enigma, en tysk chiffermaskin, som främst användes under andra världskriget, kunde ha förkortat kriget med två år och räddat över tio miljoner liv. Våra datorer är skattkistor av personlig information och resurser som bör vara privat och skyddad. Genom att lära mig mer om processen att skapa ett virus kan jag förstå mer om hur virus sprids och hur antivirusprogram fungerar.

skapa ett grundläggande datavirus

till att börja med ska viruset kunna känna igen vilka filer som är och inte är infekterade. Vi gör detta genom att kontrollera den första raden i filen, och om den inte matchar virus_top-taggen, känner viruskoden filen som en fil som inte har smittats. Om en fil ännu inte har smittats bör viruset kunna bädda in i filen/programmet. Viruset måste också ha en avslutande tagg så att viruskoden sprids, sans innehållet i den infekterade filen.

När en fil har valts för infektion kommer viruskoden att byta namn på filen till temp.rb’.

virus_contents-variabeln är en tom sträng som vi fyller med viruskoden. Viruset kommer sedan att bädda in sin kod till en fil med namnet på den ursprungliga filen, så att användaren av den infekterade datorn inte misstänker att något är fel. Koden från temp.rb-filen läggs sedan till den infekterade filen och raderas, och viruset har spridit sig.

Lämna ett svar

Din e-postadress kommer inte publiceras. Obligatoriska fält är märkta *