Raik: Wie genau sind Anti-Viren-Programme?

Beitrag lesen

Hallo, Christoph!

Manchmal geht das wohl, daß das Problem behoben werden kann.
Nein, das funktioniert nur, und wirklich und ausschließlich nur, wenn das Originalprogramm bekannt ist.
Reparaturversuche sind also recht witzlos.

es funktioniert immer dann, wenn der programmierer des viruses weenigstens sauber gearbeitet hat, d.h., der virus das programm befällt, ohne relevanten programmcode des programms zu überschreiben. wenn der virus einen bug hat und teile des programmcodes überschreibt, kann dieser nur wiederhergestellt werden, wenn die prüfsumme des programms nicht auch vom virus angepasst wurde und der überschriebene programmcode so klein war, dass mit hilfe der prüfsumme der orginalcode noch zu rekonstruieren ist.
ist der virus bugfrei und beschädigt das wirtsprogramm beim befallen nicht, kann der virenscanner aufgrund der kenntnis über den befallsmechanismus des viruses diesen auch wieder aus dem programmcode entfernen.

die meisten viruse hängen ihren programcode an das ende des befallenen programmes mit an und verbiegen die entrypoint-adresse, so dass zuerst der virus aus der datei gestartet wird und dieser dann den orginalen entrypoint anspringt und damit das programm startet.

eine weitere möglichkeit wäre, den virencode in einer eigenen datei abzulegen und diese beim starten des programmes mit aufzurufen.

einige viren nutzen auch bereiche im wirtsprogramm für den befall, die beim compilieren entstehen und keinen auszuführenden code enthalten (opcode: nop = 90). diese art des kann man nicht an einer geänderten gesamtgrösse des wirtsprogramms feststellen.

freundl. Grüsse aus Berlin, Raik