Hallo,
Ja, das stimmt. Programme im Bootsektor werden auch meistens nur dazu verwendet, um dann die System-Komponenten zu laden (primitiv gesagt eine Linksammlung, was als nächstes geschehen soll)... Wenn das genannte Programm wirklich so funktioniert, müssten noch zahlreiche andere Dateien irgendwo auf der Festplatte liegen (512 Bytes reichen nur für kleine Assemblerprogramme => Viren z. B.)
Gut, dann habe ich das ja sogar richtig verstanden. Mit dem Boot-Sektor
hatte ich mich früher nicht beschäftigt.
Dieses müßte sich trotzdem noch an einer (festen?) Stelle auf der Festplatte
befinden.
Fest nicht, aber es muss sich irgendwo verstecken. [..] Jedoch, um ein Programm in 512 Bytes zu coden, welches dann auch noch die versteckten anderen Dateien findet halte ich für fast unmöglich. Was feststeht ist, dass die Daten nirgens referenziert werden dürften (eg. keine FAT Tabellen oder Inodes), und woher soll dann das kleine Assembler-Ding im MBR oder BIOS wissen, wo sich die Dateien befinden??
Deshalb müßten sich diese wirklich irgendwo an einer festen Stelle befinden -
also eben in einem definitiv nie vom Betriebssystem benutzten Bereich der
Festplatte - sofern es einen solchen gibt. Auf das Dateisystem des Betriebs-
systems hat das Programm ja noch keinen Zugriff, und daß es eine eigene
Zugriffsfunktionalität für die verschiednen Dateisystem mitbringt, halte
ich für unwahrscheinlich.
Also müssen es wohl doch ein oder mehrere feste Sektor auf der Platte sein,
die sich das Programm von den vom Betriebssystem eingerichteten Partition(en)
abzwackt, indem es die Partition(en) z.B. um die benötigte Größe verkleinert.
Diese Funktionalität könnte man ja dann sogar ins eigentliche (Windows-)
Programm stecken. Das MBR-Programm müßte dann nur die Programme in den Sektoren
aufrufen, die sich nicht mehr in den vom Betriebssystem verwalteten
Partitionen befinden. Die Programme hätten natürlich auch keine Größenbeschränkung
auf 512 Bytes. Sie würden sich also als TSR einrichten und könnten permanent den Boot-
Sektor überwachen. Das würde sich allerdings natürlich durch (fast) permanenten
Festplattenzugriff bemerkbar machen. Klüger wäre es, sich in die verschiedenen
BIOS-Interrupts zum Zugriff auf die Festplatte einzuklinken und alle Schreib-
versuche dahingehend zu überprüfen, ob der eigene Speicherbereich im MBR
überschrieben wird, und das zu verhindern oder nach erfolgtem Überschreiben
den eigenen MBR wieder zurückzuschreiben.
Der Fantasie sind keine Grenzen gesetzt! :-)
PS: Ich erlebe gerade wieder Kindheitsgefühle (Assembler, Pascal und DOS-Interrupts) ;-)
Du auch? Ja, das waren noch Zeiten, damals. Da war die Welt noch nicht
von Windows verweichlicht! ;-)
Gruß
Slyh