- Dll-injection
-
In der Informatik bezeichnet DLL-Injection eine Technik, mit der man Code im Adressraum eines anderen Prozesses zur Ausführung bringt, in dem man diesen Prozess zwingt, eine Dynamic Link Library (DLL) zu laden. Im Prinzip ist diese Technik bei allen Betriebssystemen verfügbar, die dynamische Bibliotheken unterstützen, der Begriff DLL-Injection bezieht sich jedoch gewöhnlich auf das Betriebssystem Microsoft Windows.
Diese Technik wird nur benötigt, wenn der Quellcode eines Programms, dessen Verhalten man beeinflussen möchte, nicht verfügbar ist. Somit wird DLL-Injection häufig von sogenannten Third-Party Anbietern genutzt, um das Verhalten eines Programms in einer Weise anzupassen, die vom Entwickler des ursprünglichen Programms nicht vorgesehen wurde. Ein typisches Beispiel für eine die Technik der DLL-Injection nutzende Anwendung ist ein Profiler.
Inhaltsverzeichnis
Verfügbare Techniken unter Windows
Unter Microsoft Windows gibt es verschiedene Techniken eine DLL-Injection zu bewerkstelligen. Die wichtigsten sind dabei folgende:
- In der Registrierung (registry) können zu einem Programm DLLs angegeben werden, die bei Start des Programms als Prozess zusätzlich zu laden sind.
- Durch Nutzung von Betriebssystemfunktionen (APIs) zur Manipulation von Prozessen (process manipulations functions) und sogenannte Hooks kann das Nachladen einer zusätzlichen DLL erreicht werden.
Nutzung durch bösartige Software
Die Nutzung von DLL-Injection ist für bösartige Software sehr attraktiv. Diese Technik ermöglicht es, Code unter dem Deckmantel eines anderen Programms auszuführen. Dies ist deshalb interessant, da dadurch Zugriffe auf das Internet vor einer Desktop-Firewall verschleiert werden können. Hierüber können beispielsweise auf dem infizierten Computer ausgespähte Passwörter unbemerkt versendet werden. Um diesem Problem zu begegnen, versuchen einige Desktop-Firewalls, durch eine Analyse des Systems eine DLL-Injection zu erkennen, was ihnen jedoch nicht immer gelingt.
Literatur
- Jeffrey Richter: Programming Applications for Microsoft Windows. Microsoft Press, ISBN 1-57231-996-8
Weblinks
Wikimedia Foundation.