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.
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.
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.