Skip to main content

Hvad er selvrelokation?

Selvrelokation er ejendom, der besiddes af et meget lille antal computerprogrammer.Disse programmer kan ændre deres placeringer i hukommelsen, mens de udføres.De fleste programmer har lidt eller ingen kontrol over deres egen basisprogrammering;I stedet håndteres det af programmer med højere orden.Disse systemer kan ændre deres placering ved enten at flytte deres programmering eller ved at oprette en kopi af sig selv.Når der foretages en kopi, ændres eksekveringsstedet typisk til det nye program, og den gamle kode efterlades sovende.

I de fleste tilfælde er et udførende computerprogram placeret i to områder samtidigt.Det er placeret i computerens fysiske opbevaring, som en harddisk eller anden lagerenhed og i den flygtige hukommelse.Programmet flyttes ind i flygtig hukommelse ved udførelsen for at fremskynde adgangstiden og få det til at fungere hurtigere.Dets position på begge disse lokationer bestemmes generelt af computerens operativsystem.

placeringerne af disse programmer kaldes adresser.Disse adresser bruges af systemet og andre programmer til hurtigt at finde et program, når det er nødvendigt.Hvis et program er brudt op i opbevaring, fungerer det langsommere end hvis det hele er sammen;Derfor forsøger de fleste systemer at gemme større programmer over sekventielle adresser.Endnu en gang falder valget om at gøre dette typisk på operativsystemet, og programmet har ingen direkte kontrol over det.

Når et program bruger selvrelokation, har det markant mere kontrol over disse processer end typiske programmer.Det har evnen til at kontrollere de adresser, som den udfører.Mens det er i brug, kan programmet flytte sin samlede programmering fra det sted, det er på et andet sted inden for mindet om den samme computer.Nogle programmer kan kun ændre en af de to adresser, mens andre kan ændre sig begge.

I sig selv er selvrelokation en ualmindelig, men ikke problematisk proces.Den sande fare kommer, når selvrelokation bruges sammen med ondsindet hensigt.Det er muligt for et program at gøre et stort antal uventede ting, når det har kontrol over sig selv.Det kan skabe adskillige fysiske eller flygtige kopier for at tilstoppe en computers hukommelse.Dette kan forårsage en genstart og kan være en forløber for et boot -angreb.

Derudover kan programmet gøre sikkerhedskopier af sig selv for at forhindre fjernelse.Hvis et program med selvrelokation skulle udføre og derefter kopiere sig selv, vil det originale program stadig eksistere, selv når det ikke bruges.Hvis programmet er ondsindet, og systemet forsøger at fjerne det, kan det aktive program blot aktivere den originale kode, før det fjernes.