Skip to content

Homepage von Sylvia und Thomas Mönkemeier ::

Vor kurzer Zeit noch war das Thema Kopierschutz schon keines mehr. Alle namhaften Softwarehäuser lieferten ihre Disketten frei kopierbar,
nachdem zu jedem Kopierschutz früher oder später ein Programm existierte, mit dem er zu umgehen war.

Um nicht mißverstanden zu werden: „VGA-COPY/386" ist kein solches Programm und wird es auch nicht werden. Insbesondere deswegen, da es Disketten gibt, die sich mit PC-Hardware nicht oder nur sehr schwer erzeugen lassen. Mit Zusatzhardware, wie zum Beispiel dem sogenannten „Option-Board" (einem Spezial-Controller, der in die Floppy-Leitung geschleift wird und die rohen Flußwechsel der Diskette lesen und schreiben kann) läßt sich jedoch fast alles kopieren.

Eine alte Weisheit ist weiterhin, daß der Controller des Commodore Amiga (ein typischer Home-Computer) so flexibel ausgelegt ist, daß auf diesem Rechner mit sogenannten „Nibble-Copys" (z.B „X-COPY", „FatTracks" oder „Project D") alles, was ein PC-Controller überhaupt auszuwerten könnte, auch kopiert werden kann.

Gemessen daran, wieviel ein gebrauchter Amiga 500 zu den Hochzeiten der PC-Disketten mit TV-Anschluß kostete, mag dies in einigen Fällen eine brauchbare Lösung darstellen. Einen Haken hat die Sache jedoch: Der Amiga 500 hat nur ein DD-Laufwerk, für HD-Disketten würde man schon einen Amiga 4000 brauchen.

Außerdem haben Konsumenten eine bessere Methode, sich gegen Kopierschutzverfahren (und auch Dongles, das gehört aber nicht hierher) zu wehren, indem sie kopiergeschützte Software nicht kaufen. Was niemand kauft, wird auch nicht produziert.

Leider ist der Kopierschutz jedoch, besonders bei Spielen und Branchenlösungen, wieder stark im Kommen. Meiner Erfahrung nach schafft sich der Hersteller solcher Programme unzufriedene Kunden. Dies gilt auch für die diversen Code-Tabellen, ohne die einige Programme nicht zu starten sind, wenngleich der Anwender sich hier von den Disketten natürlich ungehindert Sicherheitskopien machen kann.

Aber auch ohne den Wunsch, illegale Kopien herzustellen, möchte manch einer gerne wissen: Wie schaffen es denn die Hersteller, Disketten zu produzieren, die sich einwandfrei kopieren lassen, bei denen das Programm aber feststellen kann, daß es sich nicht um das Original handelt?


Schreibschutz


Ein äußerst simpler Schutz besteht darin, zu versuchen, die Originaldiskette zu verändern. Diese wird daher permanent schreibgeschützt ausgeliefert. Hat man den Schutz erkannt, ist es natürlich ein Leichtes, ihn zu umgehen.

Diese Schutzmethode ist aber so trivial, daß man darauf erstmal kommen muß. Ich habe so etwas jedoch schon ewig nicht mehr gesehen.


Defekte Sektoren


Ein weiterer simpler, für jeden Hobby-Programmierer machbarer Kopierschutz beruht auf in der FAT als schlecht eingetragenen Sektoren. Diese können auch Daten enthalten, die sich sogar mit DOS-Funktionen abfragen lassen. Zumindest mit dem DOS-Bordwerkzeug ist da nichts zu machen. Für jedes gute 1:1 Kopierprogramm ist dies allerdings kein Problem.


Falsche Sektornummern


Schon etwas raffinierter, jedoch immerhin noch mit BIOS-Routinen möglich, ist es, Sektoren mit Nummern zu formatieren, die es eigentlich nicht gibt. Dazu muß lediglich der Puffer mit den Formatierungsparametern entsprechend vorbereitet werden.

Als Erweiterung ist es dann noch möglich, einen Sektor mehr zu formatieren indem die Sektorlücken kleiner gemacht werden, damit nicht einmal auffällt, auf welcher Spur der Sektor eingemogelt wurde.

Zur Abfrage versucht man dann, genau diesen Sektor mit der illegalen Sektornummer einzulesen. Diese gängige Methode läßt sich aber von Spezialsoftware austricksen, da der Controller in der Lage ist, die vorhandenen Sektornummern auszugeben.


Zusätzliche Spuren


In dieselbe Trickkiste gehört es, zusätzliche Spuren zu formatieren und darauf Daten (z.B. die Seriennummer) abzulegen. Problematisch daran ist, daß es alte 5.25"-Laufwerke gibt, die nach Spur 39 einen Anschlag haben und die durch den wiederholten Versuch, eine weitere Spur zu lesen, beschädigt werden können.

Übrigens können auch 3.5"-Laufwerke den Schreib-/Lesekopf sehr unterschiedlich weit positionieren, trotzdem sollten zwei Spuren mehr immer drin sein.


Variable Schreibdichte


Bisher nicht bekannt, aber technisch möglich: Eine variable Schreibdichte innerhalb der Spur. Gemein an diesem Schutz wäre nämlich, daß der Controller gegenüber mit falscher Datenrate geschriebenen Bits sozusagen blind ist.

Auch eine andere Schreibdichte auf nur einer Spur der Diskette könnte als Kopierschutz taugen. Problematisch an der ganzen Sache ist nur, daß einige 3,5"-Laufwerke die Datenrate nach den Indexlöchern selbst einstellen und der Schutz damit nur auf 5,25"-Disketten anwendbar wäre.

Bleibt man im Bereich der 3,5"-DD-Disketten, bietet sich als Spielart die Verwendung der Datenrate mit 300 kbit/Sek an, die eigentlich für
5,25"-DD-Disketten vorgesehen ist und mit der bis zu 12 Sektoren auf eine Spur passen.


Größere Sektoren


Das BIOS sieht sogar vor, eine Spur mit größeren Sektoren als den üblichen mit nur 512 Bytes zu formatieren. Eine Spur eigener Wahl (vorzugsweise im hinteren Bereich der Diskette) könnte derartig formatiert und dieses Merkmal abgefragt werden. Dabei ist zu berücksichtigen, daß natürlich weniger davon auf eine Spur passen werden.


Manipulierte Header


Ab hier geht es mit den Kopierschutzmethoden an die direkte Controller-Programmierung, wie auch „VGA-COPY/386" sie verwendet. Lange Zeit waren diese Verfahren das Betriebsgeheimnis der Hersteller.

Sie beruhen alle darauf, daß das Kommando-Byte zum Formatieren einer Spur als Parameter nur Aufzeichnungsverfahren, Laufwerks-, Kopf- und Spurnummer, Gap-Länge und Füll-Byte kennt.

Genauer gesagt hat der µPD 765 recht bescheidene Formatierfähigkeiten im Vergleich zu seinen Talenten zum Lesen einer Spur.


Falsche Längeninformation


Der Sektorheader eines normalen Sektors in der Mitte der Spur bekommt bei dieser Methode eine etwa doppelt so große Längeninformation
mit auf den Weg. Der dahinterliegende Sektor ist dann recht gut geschützt, da ein Kopierprogramm dann versuchen wird, genau diese Sektorlänge zu schreiben und damit den folgenden Sektor zerstört.

Erkennen läßt sich dieser Schutz für Spezialsoftware, wenn die Zeit zwischen allen Sektor-Headern gemessen und ein überflüssiger Sektor eingefügt wird, sobald ein Zeitraum auffällig länger ist.


Falsches CRC-Byte


Die CRC-Fehler kennen Sie sicher - auch „VGA-COPY/386" meldet sie, wenn ein Sektor zwar anstandslos gelesen wurde, der Controller jedoch einen CRC-Fehler meldete. Dieser Fehler kann auch gezielt aufgebracht und als Kopierschutz abgefragt werden.

Der CRC-Wert wird für jeden Sektor in der FDC-Hardware berechnetund ist normalerweise nicht zu manipulieren. Es geht aber dennoch, da man den Controller während des Schreibvorganges zurücksetzen kann, so daß er keine Gelegenheit mehr hat, den korrekten Wert anzubringen.


„Hidden Sector"


Wenn man den CRC-Wert im Sektor-Header manipuliert, wird es wieder etwas schwieriger, denn dieser Sektor wird dann von der Lese-Erkennungsfunktion nicht ausgegeben. Allerdings bekommt man ihn gemeldet, wenn man explizit mit den richtigen Werten nach diesem Sektor fragt.

Durch die vielen Möglichkeiten für einen Sektor-Header dauert es recht lange, bis man so einem Sektor auf die Spur kommt, aber es geht.


Information zwischen Sektoren


Diese Methode stellt meiner persönlichen Meinung nach den Spitzenreiter unter den zur Zeit verwendeten Methoden dar.

Auf die Lücke zwischen den Sektoren läßt sich normalerweise nicht zugreifen. Sie wird aber lesbar, wenn man einen die ganze Spur umfassenden Sektor definiert, der seinerseits die eigentlichen Sektoren enthält.  Man spricht daher auch vom sogenannten „Sektor-in-Sektor-Schutz".

Zusätzlich läßt sich dieser Sektor dann auch noch, wie zuvor beschrieben, verstecken. Kopierprogramme haben in Verbindung
mit dem PC-Controller echte Schwierigkeiten, dies ohne Zusatzhardware zu erkennen und erst recht, ihn korrekt zu imitieren.


„Weak Bits"


Diese Schutzmethode geht davon aus, daß ein Controller nur die binären Zustände „magnetisch" und „nicht magnetisch" auf die Diskette schreiben kann. Ein Sektor, der Werte zwischen den definierten Werten besitzt (sozusagen „etwas magnetisch"), wird beim Lesen stets andere Ergebnisse zu Tage fördern. Dies läßt sich selbstverständlich als Schutz ausnutzen.

Allerdings gab es einige Zeit später sogar Kopierprogramme, die durch ständiges Ein- und Ausschalten des Schreibkopfes auch derartig unsaubere Bits auf die Diskette bringen konnten.


„Laserhole"


Dies ist die berühmte Schutzmethode, bei deren Anwendung Disketten mit Sicherheit nicht kopiert werden können. Sie erfordert allerdings
speziell präparierte Disketten, die an einer bestimmten Stelle defekt sind. Die Bezeichnung rührt daher, daß diese Beschädigung mit Hilfe eines Lasers aufgebracht wird.

Zur Überprüfung wird versucht, die entsprechende Stelle zu beschreiben. Dies schlägt natürlich auf dem Original fehl, funktioniert aber auf jeder Raubkopie. Allerdings sind selbst solch perfekte Methoden nicht davor gesichert, daß findige „Cracker" mit einem Debugger (ein Programm, mit dem andere Programme kontrolliert und im Einzelschritt abgearbeitet werden können) einfach den Kopierschutz aus dem Programm entfernen.

 

Posted by moenk | on

tweetbackcheck