Sdílet prostřednictvím


Ziel der Verbergung

Das Ziel der Verbergung ist es, Verwirrung zu stiften. Je geringer die Übersichtlichkeit, desto schwieriger wird es für den Menschen, vielschichtige geistige Konzepte zu durchschauen. Damit ist nicht gemeint, dass die (ausführbare) Ablauflogik geändert wird, sie soll lediglich auf unverständliche Weise wiedergegeben werden. Wenn lesbare Programmanweisungen mit einem gut geschriebenen Obfuscatortool bearbeitet werden, ist ein zu erwartender Nebeneffekt, nicht nur den Leser zu verwirren, sondern auch einen Decompiler außer Kraft zu setzen. Während die (ausführbare) Ablauflogik erhalten bleibt, ist die Umkehrung der Semantik nicht mehr deterministisch. Folglich scheitert jeder Versuch, die Anweisungen in einen "Programmiersprachendialekt" wie C# oder Visual Basic zurückzuentwickeln, da die Übersetzung zweideutig ist. Ein umfassendes Verbergen führt zu unzähligen Dekompilierungsmöglichkeiten, von denen einige bei der erneuten Kompilierung eine möglicherweise inkorrekte Programmlogik ergeben. Der Decompiler ist als reines Rechenprogramm nicht in der Lage zu erkennen, welche der Möglichkeiten mit einer gültigen Semantik erneut kompiliert werden können. Decompiler werden geschrieben und eingesetzt, um Dekompilierungsalgorithmen zu automatisieren, die nicht mehr nachvollziehbar sind. Daraus folgt offensichtlich, dass Obfuscators, die einen Decompiler außer Kraft setzen können, für den Menschen ein noch größeres Hindernis darstellen.

Einfache Obfuscators benennen im Wesentlichen im Code vorhandene Bezeichner in unlesbare Zeichenfolgen um. Dabei werden Hashverfahren verwendet oder die Zeichen durch arithmetische Offsets im Zeichensatz in unlesbare oder nicht druckbare Zeichen übersetzt. Auch wenn diese Verfahren auf den ersten Blick wirkungsvoll erscheinen, so sind sie doch umkehrbar und bieten keinen nennenswerten Schutz. Die Verbergungstools von PreEmptive gehen weit über das einfache Umbenennen hinaus. Sie bedienen sich zusätzlicher, einfallsreicher Möglichkeiten, "Verwirrung zu stiften", die es fast unmöglich machen, das geistige Eigentum anderer zurückzuentwickeln.

© 2002-2007 PreEmptive Solutions. Alle Rechte vorbehalten.