DLL Hijacking: Unsichtbare Manipulation von Systemdateien

In der IT-Sicherheitswelt gibt es zahlreiche Techniken, mit denen Angreifer unbemerkt in Systeme eindringen können. Eine besonders raffinierte Methode ist das DLL Hijacking – eine Technik, bei der Schadsoftware über manipulierte Dynamic Link Libraries (DLLs) ausgeführt wird.

Was ist DLL Hijacking?

DLL steht für Dynamic Link Library – eine Dateiart, die Programme nutzen, um bestimmte Funktionen auszuführen, ohne sie selbst programmieren zu müssen. Viele Windows-Anwendungen laden solche DLL-Dateien automatisch beim Start oder während des Betriebs.

Angreifer nutzen diesen Mechanismus aus, indem sie eine manipulierte DLL-Datei in einem Verzeichnis platzieren, das von einer legitimen Anwendung durchsucht wird. Die Anwendung lädt dann die gefälschte Datei anstelle der echten DLL und führt sie aus.

Mögliche Konsequenzen:

  • Ausführung von Schadcode mit den Rechten der betroffenen Anwendung (oft mit Administratorrechten).
  • Umgehung von Sicherheitsmechanismen, da der Code durch eine legitime Anwendung geladen wird.
  • Einrichtung persistenter Backdoors, um das System dauerhaft zu kompromittieren.

Wie funktioniert DLL Hijacking?

Platzierung der manipulierten DLL

Der Angreifer erstellt eine schädliche DLL mit demselben Namen wie eine legitime DLL, die von einem Programm benötigt wird. Anschliessend wird sie in einem Verzeichnis abgelegt, das die Anwendung durchsucht. Dies kann auf verschiedene Weise geschehen:

  • Unsichere Schreibrechte in Programmverzeichnissen
    Manchmal haben Programme oder Benutzer unerwartete Schreibrechte in Verzeichnissen, in denen DLLs gespeichert werden. Ein Angreifer kann dann einfach eine gefälschte DLL dort ablegen.
  • Malware oder Exploits (z. B. durch Phishing)
    Falls ein Angreifer bereits Zugriff auf das System hat – beispielsweise durch eine Phishing-E-Mail – kann er die DLL direkt platzieren.
  • USB-Sticks oder Netzwerkfreigaben
    Programme, die DLLs aus freigegebenen Netzlaufwerken oder externen Geräten laden, sind anfällig für diesen Angriff. Legt ein Angreifer eine manipulierte DLL auf einem USB-Stick oder einem unsicheren Netzwerkordner ab, kann die Anwendung sie unwissentlich laden.
  • Ausnutzung der DLL-Suchreihenfolge
    Windows sucht DLLs in einer bestimmten Reihenfolge. Falls eine Anwendung zuerst in ihrem eigenen Verzeichnis nach DLLs sucht, bevor sie ins Systemverzeichnis (C:\Windows\System32) geht, kann dies ausgenutzt werden.

Laden der DLL durch die Anwendung

Die Anwendung durchsucht definierte Verzeichnisse nach der benötigten DLL.

Falls die gefälschte DLL zuerst gefunden wird, wird sie statt der echten geladen.

Ausführung von Schadcode

Sobald die manipulierte DLL geladen wird, führt sie den enthaltenen Schadcode aus.

Da sie mit den Rechten der Anwendung läuft, kann sie in vielen Fällen sogar Administratorrechte erlangen und das gesamte System infizieren.

Ein einfaches Beispiel:

Ein Programm benötigt die Datei example.dll. Normalerweise wird sie sicher aus C:\Windows\System32\example.dll geladen.

Doch ein Angreifer hat eine manipulierte example.dll in dasselbe Verzeichnis wie die .exe-Datei der Anwendung gelegt (z. B. C:\Program Files\App\example.dll). Da Windows zuerst in diesem Verzeichnis sucht, bevor es ins Systemverzeichnis geht, lädt die Anwendung die schädliche DLL anstelle der echten.

Nun könnte der Angreifer über die DLL beispielsweise:

  • Tastatureingaben aufzeichnen (Keylogger)
  • Daten auslesen oder stehlen
  • Einen Backdoor-Zugang zum System schaffen

Warum ist DLL Hijacking so gefährlich?

  • Täuschend echt: Da die schädliche Datei als normale System-DLL erscheint, bleibt sie oft unentdeckt.
  • Missbrauch von vertrauenswürdigen Programmen: Selbst signierte und sicher geglaubte Software kann für Angriffe missbraucht werden.
  • Schwer zu erkennen: Klassische Virenscanner haben Schwierigkeiten, DLL Hijacking zuverlässig zu identifizieren.

Wie kann man sich schützen?

  • Signierte Software nutzen: Anwendungen und DLLs sollten aus vertrauenswürdigen Quellen stammen.
  • Zugriffsrechte einschränken: Schreibrechte für Systemverzeichnisse begrenzen, um das Einschleusen schädlicher DLLs zu verhindern.
  • Verhaltensbasierte Sicherheitslösungen einsetzen: Moderne Erkennungssysteme erkennen ungewöhnliche Ladeprozesse.
  • Regelmässige Backups erstellen: Falls ein Angriff erfolgreich ist, sichert ein professionelles Backup Ihre Daten und ermöglicht eine schnelle Wiederherstellung.

DLL Hijacking frühzeitig verhindern!

DLL Hijacking zeigt, wie Cyberkriminelle Schwachstellen in legitimen Prozessen ausnutzen, um Malware auszuführen. Unternehmen sollten daher auf eine Kombination aus präventiven Sicherheitsmassnahmen und einer soliden Backup-Strategie setzen. Denn wenn ein Angriff stattfindet, ist ein sicheres Backup die beste Versicherung gegen Datenverlust und Betriebsausfälle.

mount10-mountains-1400x600
Phone_blue-01 Wie dürfen wir Ihnen helfen?

Rufen Sie an. Für Kundinnen, Kunden und Partner sind wir in Notfällen auch ausserhalb der Geschäftszeiten erreichbar: rund um die Uhr, auch am Wochenende.

Rufen Sie uns an
Mail_blue-01 Nehmen Sie per E-Mail Kontakt auf

Schreiben Sie per E-Mail und Sie erhalten promt eine Antwort, stets so schnell wie möglich.

Senden Sie uns eine E-Mail
Meeting_blue-01 Bequem und direkt

Bei einem Beratungsgespräch können wir Ihnen schnell und unkompliziert helfen

Beratungsgespräch anfordern