Hack-Meck ‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾
Lange wurde er angekündigt - jetzt ist er endlich da: der Virusprogrammierkurs! In den folgenden Ausgaben möchten wir Sie in der Rubrik Hack-Meck im Rahmen dieses Kurses in die Funktionsweise ei- nes Virus einführen. Am Ende werden Sie in der Lage sein, sich einen eigenen Vi- rus programmieren und die Anatomie eines jeden Exemplars untersuchen zu können, um so zum Beispiel einen Viruskiller zu einem beliebigen Virus schreiben zu kön- nen. Doch nun gebe ich das Wort an unseren "Virenspezialisten":
Ich möchte an dieser Stelle darauf hin- weisen, daß dies ein überaus brisantes Thema ist, mit dem man nicht spaßen sollte, denn ein Virus ist ein eigen- ständiges Programm und bösartige Viren können verheerende Folgen haben, die nicht zuletzt auch den Programmierer selber treffen können! Ich selbst bin bei der Programmierung auf meinen eigenen Virus hereingefallen, als er sich plötzlich vor meinen Assemb- ler gehängt hatte, weil ich vergaß, daß er noch aktiviert war. Dieser Kurs ist nur zur Verständlichmachung eines Virus gedacht, nicht aber um Schaden anzurich- ten! Achten Sie also darauf, Ihren Virus
so zu programmieren, daß er den Benutzer vor eventuellem Datenverlust warnt. Un- ser Magic Disk Virus arbeitet nach demselben Prinzip. Sie haben sich mit Sicherheit auch schon einmal über den Verlust eines wichtigen Quellcodefiles geärgert, und: was Du nicht willst, daß man Dir tu, das füg' auch keinem andern zu ... Da Sie sich ja nun hoffentlich der Ge- fahr eines Virus bewußt sind, möchte ich nun endlich zur Ausführung schreiten.
Ich werde versuchen, den Kurs möglichst leichtverständlich zu halten, doch ist es unerläßlich, wenigstens den Assemb- lerbefehlssatz des C64 zu kennen. Denn ein Virus kann nur in Assembler ge- schrieben werden, da er ein Programm ist, das nahe am System arbeitet und so- mit nur Hand in Hand mit dem Betriebs- system des C64 (bestehend aus reinem Assemblercode) wirklich effektiv wirksam ist. Beginnen wir also Schritt für Schritt mit der Planung unseres Virus, den Sie am Ende in seiner endgültigen Version testen dürfen. In der nächsten Ausgabe wird er der Magic Disk 64 beigefügt sein.
Definieren wir zunächst erst einmal den Begriff "Virus": Wie mittlerweile (nach dem BHP-Virus) überall bekannt sein dürfte, ist ein Vi- rus ein kleines aber effektvolles Pro- gramm, das sich auf Diskette vermehrt, und zwar ganz still und leise, ohne daß der Benutzer direkt etwas davon spürt. Das heißt im Klartext: wird ein System von einem Virus befallen, so versucht dieser (so lange wie er aktiv ist) sich zu vermehren. Bei jeder sich bietenden Gelegenheit versucht er, sich auf einen Datenträger, sprich eine Diskette, zu kopieren. Somit ist die Chance größer,
daß ein "geheiltes" System wieder infi- ziert wird; nämlich einfach dadurch, daß ein infiziertes Programm gestartet wird. Obendrein haben manche Viren auch noch zusätzliche Funktionen, die den Benutzer hin und wieder auf ihre Anwesenheit auf- merksam machen. Zum Beispiel kann es vorkommen, daß plötzlich ein kleiner Käfer über den Bildschirm krabbelt, daß der Cursor verrückt spielt oder Ähn- liches. Meistens sind Viren sogar so hartnäckig, daß man sie nur noch mit einem brutalen Abbruch der Stromzufuhr, sprich dem Ausschalten des Computers, stoppen kann.
Diese typischen Merkmale eines Virus wollen wir hier nochmal in einer Tabelle zur besseren Übersicht zusammentragen, denn diese Funktionen soll unser kleiner Freund später ja auch besitzen: 1) "Fortpflanzung" auf andere Disketten, um die Art zu erhalten.
2) Speicherresistenz, d.h. Schutz vor RESET und RUN/STOP-RESTORE
3) Kleiner Hinweis auf die eigene Exis- tenz.
Beginnen wollen wir mit dem ersten und zugleich auch schwierigsten Punkt: die Artenerhaltung. Da dieses Thema aller- dings sehr ausgedehnt ist, muß ich Sie leider hiermit auf die nächste Ausgabe der Magic Disk vertrösten, in der wir dann endlich zur Praxis übergehen und mit der Programmierung beginnen möchten.