Beruflich Dokumente
Kultur Dokumente
Wiss Schreiben 24
Inwiefern können EntwicklerInnen die Sicherheit von Software mithilfe von Obfuskation
verbessern, um Reverse Engineering zu erschweren?
«Der Prozess des konzeptionellen Reverse Engineering findet jedes Mal statt, wenn sich jemand den
Code eines anderen ansieht. Aber, er aber auch, wenn ein Entwickler seinen eigenen Code einige Tage
nach dem Schreiben ansieht. Reverse Engineering ist ein Entdeckungsprozess. Wenn wir einen neuen
Blick auf den Code werfen, egal ob er von uns selbst oder von anderen entwickelt wurde, untersuchen
wir und lernen und sehen Dinge, die wir vielleicht nicht erwartet haben.» (Eliam & Chikofsky, 2005, p. 8)
Einerseits ist es gemäss Chikofsky sehr wichtig das es möglich ist Software zu Reverse
Engineeren beispielweise, um unerwartete Schwachstellen und Fehler zu finden und
beheben, von anderen zu lernen und somit verhindern, dass das Rad neuerfunden werden
muss. Zudem benötigen beispielsweisse gute Vieren Scanner Reverse Engineering um
Malware erkennen zu können. (Eliam & Chikofsky, 2005, p. 9) anderseits ist gemäss AL-
Lorenz Sigrist, 3b
Wiss Schreiben 24
HAKIMI et all. Der Diebstahl, insbesondere von Software, ein grosses Probleme des
technologischen Zeitalters. Softwarehersteller haben verschiedene Sicherheitsalgorithmen
und -techniken entwickelt, um ihre Software zu schützen. Allerdings sind Reverse
Engineering-Experten in der Lage, diese Sicherheitsalgorithmen zu umgehen und den
ursprünglichen Code aus der Quelldatei zu extrahieren. Diese Sicherheitsangriffe, wie das
Reverse Engineering, verursachen in der IT-Branche einen Verlust von mehreren Milliarden
Dollar pro Jahr. (AL-HAKIMI, SULTAN, GHANI, ALI, & ADMODISASTRO, 2020, p. 1) Um
Software vor unbefugten Reverse Engineering zu schützen, können EntwicklerInnen
beispielsweise Obfuskation Techniken verwenden, welche den Code schwerer lesbar machen
oder Lizenzmanagement-, Authentifizierungs- und Verschlüsselungstechnologien hinzufügen.
Doch leider sind die meistverwendeten Techniken nicht besonders wirksam, um Reverse
Engineering Komplet zu verhindern. Wie AL-HAKIMI et all zusammenfasst: «Reversing-Tools
sind derzeit sehr fortschrittlich, da sie aus dem obfuskierten Code einen neuen Code
erstellen können, der die gleiche Funktion erfüllt obwohl der ursprüngliche Code obfuskiert
ist [...]Eine gewöhnliche Obfuskationstechnik zu haben, ist gleichwertig wie gar keine zu
haben» (Hybrid Obfuscation Technique to Protect Source Code From Prohibited Software
Reverse Engineering, 2020, p. 2) Obfuskation kann also gemäss Will Reverse Engineering nur
den Aufwand des Angreifers steigern. Aber nicht komplett verhindert werden. (Will, S. 7-8)
«So muss z.B. gemäss Eldad Eliam in den meisten Fällen alles, was für die Entschlüsselung
des Programms erforderlich ist, sich in der ausführbaren Datei befinden. Dazu gehören die
Entschlüsselungslogik und, was noch wichtiger sei, der Entschlüsselungsschlüssel. Ausserdem
müsse das Programm den Code zur Laufzeit entschlüsseln, bevor es ausgeführt wird, was
bedeutet, dass eine entschlüsselte Kopie des Programmes oder Teile davon während der
Laufzeit im Speicher liegen müsse (andernfalls könne das Programm einfach nicht laufen).
(Reversing: Secrets of Reverse Engineering, 2005, p. 330) Zudem können Obfuskation
Techniken gemäss Jagsir & Jaswinder Singh falsche Erkennungen bei Virenscannern auslösen
da auch Malware vermehrt auf Obfuskation setzt. (Singh & Singh, S. 107)
.
Lorenz Sigrist, 3b
Wiss Schreiben 24
2. Quellenverzeichnis
2.1 Literaturverzeichnis
AL-HAKIMI, A. M., SULTAN, A. M., GHANI, A. A., ALI, N. M., & ADMODISASTRO, N. I. (2020). Hybrid
Obfuscation Technique to Protect Source Code From Prohibited Software Reverse Engineering.
ieee. Retrieved März 3, 2024, from
https://ieeexplore.ieee.org/ielx7/6287639/8948470/09211395.pdf
Eliam, E., & Chikofsky, E. (2005). Reversing: Secrets of Reverse Engineering. Wiley Publishing, Inc.
Retrieved März 3, 2024
Singh, J., & Singh, J. (kein Datum). Challenges of Malware Analysis: Obfuscation. Abgerufen am 4.
März 2024 von https://dergipark.org.tr/en/download/article-file/2160186
Will, F. (kein Datum). Maschinencode-Obfuskation als Schutz vor Reverse Engineering. Abgerufen am
4. März 2024 von docplayer.org/34626186-Maschinencode-obfuscation-als-schutz-vor-
reverse-engineering.html
2.2 Bildnachweis
Seite 1 GPLv3 General Public License, Dnspy (dnSpy/dnSpy: .NET debugger and assembly
editor (github.com))
2.3 Hilfsmittel
https://Deepl.com : Verwendet für das übersetzen von Zitaten und texten
word Rechtschreibkorrektur: Verwendet als Hilfe um Rechtschreibfehler zu erkennen
https://scholar.google.com/ , https://swisscovery.slsp.ch/: verwendet um wissenschaftliche
Quellen zu finden
Lorenz Sigrist, 3b
Wiss Schreiben 24
3. Anhang
Lorenz Sigrist, 3b
Wiss Schreiben 24
Lorenz Sigrist, 3b
Wiss Schreiben 24
Lorenz Sigrist, 3b
Wiss Schreiben 24
Lorenz Sigrist, 3b
Wiss Schreiben 24
Lorenz Sigrist, 3b
Wiss Schreiben 24
Lorenz Sigrist, 3b
Wiss Schreiben 24
Lorenz Sigrist, 3b
Wiss Schreiben 24
Lorenz Sigrist, 3b
Wiss Schreiben 24
Lorenz Sigrist, 3b
Wiss Schreiben 24