Articles

prøv ikke dette derhjemme: oprettelse af en simpel Virus med Ruby

informationsalderen har givet os en fantastisk teknologi: håndholdte supercomputere med ansigtsgenkendelse, skraldespande, der kan oprette købmandslister, virtual reality, 146-tommer fladskærms-tv osv.

computere er en integreret del af enhver virksomhed, hjem, skole. Men med fremkomsten af denne teknologi eksisterer der en mørkere side af, hvordan moderne teknologi implementeres, såsom vira.

i biologiske termer er en virus et lille infektiøst middel bestående af genetisk materiale indkapslet i en proteincoat, der kun kan replikere inde i en værtscelle. Hvordan vira reproducerer er nervøs. Hvad de gør er at indsætte deres genetiske information i værtscellens genetiske materiale, og under replikation af værtscellen oprettes også materiale til oprettelse af nye virusmolekyler. Til sidst instantieres nok virusmolekyler, at cellen ikke kan håndtere mængden og eksploderer. De nyligt frigivne virusmolekyler flyder derefter væk, klar til at inficere nye celler. Selvom vira indeholder genetisk information, kan reproducere og udvikle sig gennem naturlig selektion, fordi de mangler andre egenskaber ved livet, kaldes vira generelt replikatorer eller “organismer ved livets kant”. Hverken levende eller døde, replikerende og skaber kaos uden årsag, de svarer til det virkelige liv.

beklager

computervirus

ligesom deres biologiske navnebror består computervirus af kode og kan kun replikere, når denne kode køres. For at virussen kan sprede sig, skal brugerne overføre inficerede filer eller programmer til andre computersystemer. Når filen / programmet er kørt, kan virussen derefter få adgang til andre filer på computeren, som i værste fald kan slette alle filerne på en brugers computer. For eksempel, hvis en bruger skulle var til en overførsel og afspille en tvivlsom video fra en hjemmeside, der var inficeret, virus kunne inficere alle videoer i computeren. Og så, hvis den samme uforsigtige bruger skulle sende en video fra sin fil til en intetanende ven, når den ven henter og afspiller den inficerede video, vil hans videoer på sin computer ligeledes blive påvirket. Disse vira kan resultere i enorme summer spildt, spildt tid og stress for alle inficerede parter. Mens billedet nedenfor viser et eksempel på Blaster, en computerorm, der adskiller sig lidt fra en computervirus, viser det, hvordan huller i computersikkerhed kan udnyttes.

smh billy

så hvorfor vil jeg gerne lære at oprette en virus, hvis det forårsager så meget smerte for andre? I det tredje kapitel i krigskunsten af Sun Tsu skrev han, at du ved at kende både dig selv og din fjende kan vinde hundrede kampe uden at bringe dig selv i fare. Alan Turing ‘ s dechiffrering af Enigma, en tysk krypteringsmaskine, der primært blev brugt i Anden Verdenskrig, kunne have forkortet krigen med to år og reddet over ti millioner liv. Vores computere er skattekiste af personlige oplysninger og ressourcer, der skal være private og beskyttede. Ved at lære mere om processen med at skabe en virus kan jeg forstå mere om, hvordan vira formerer sig, og hvordan antivirusprogrammer fungerer.

oprettelse af en grundlæggende computervirus

til at begynde med skal virussen være i stand til at genkende, hvilke filer der er og ikke er inficeret. Vi gør dette ved at kontrollere den første linje i filen, og hvis den ikke matcher virus_top-taggen, genkender viruskoden filen som en fil, der ikke er inficeret. Hvis en fil endnu ikke er inficeret, skal virussen være i stand til at integrere i filen/programmet. Virusen skal også have et slutmærke, så viruskoden spredes, sans indhold af den inficerede fil.

når en fil er valgt til infektion, vil viruskoden omdøbe filen til’ temp.rb’.

virus_contents-variablen er en tom streng, som vi vil udfylde med viruskoden. Virusen integrerer derefter sin kode i en fil med navnet på den originale fil, så brugeren af den inficerede computer ikke har mistanke om, at der er noget galt. Koden fra temp.rb fil vil derefter blive tilføjet til den inficerede fil og slettet, og virus har spredt sig.

Skriv et svar

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *