Räuber ist ein kostenloses Open -Source -Tool, das mit Delphi XE2 ohne Abhängigkeiten von Drittanbietern entwickelt wurde.
Was ist DLL Hijacking?!
Windows hat einen Suchpfad für DLLs in seiner zugrunde liegenden Architektur. Wenn Sie herausfinden können, welche DLLs eine ausführbare Anforderung ohne einen absoluten Pfad (Auslösen dieses Suchvorgangs), können Sie Ihre feindile DLL an einem höheren Suchpfad platzieren, sodass sie gefunden werden, bevor die reale Version ist, und Windows wird Ihren Angriffscode an die Anwendung übertragen.
Lassen Sie uns also so tun, als ob Windows's DLL -Suchpfad so aussieht:
A) . <- aktuelles Arbeitsverzeichnis der ausführbaren Datei, höchste Priorität, Erster Scheck
B) Windows
C) Windows System32
D) Windows Syswow64 <- Niedrigste Priorität, Letzter Scheck
und einige ausführbare "foo.exe" fordert "bar.dll" an, die zufällig in der SUSWOW64 (d) Subdir leben. Dies gibt Ihnen die Möglichkeit, Ihre bösartige Version in a), b) oder c) zu platzieren und sie wird in ausführbare Datei geladen.
Wie bereits erwähnt, kann selbst ein absoluter vollständiger Weg dagegen nicht schützen, wenn Sie die DLL durch Ihre eigene Version ersetzen können.
Microsoft Windows -Schutzsysteme wie System32 unter Verwendung eines Windows -Dateischutzmechanismus, aber der beste Weg, um die ausführbare Datei vor DLL -Hijacking in Entrprise -Lösungen zu schützen, ist:
Und natürlich ist dies auch nicht wirklich auf Windows beschränkt. Jedes Betriebssystem, das eine dynamische Verknüpfung externer Bibliotheken ermöglicht, ist dafür theoretisch anfällig.
Räuber Verwenden Sie einen einfachen Mechanismus, um DLLs herauszufinden, die anfällig für Entführungen sind:
Greppern:
Hier finden Sie den neuesten Räuber, der hier ausführte