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-52616 — Advisory und gutartiger PoC für eine OS-Befehlsinjektion in einem nmap-MCP-Server, inklusive Tracking doppelter CVE-Einträge, Erkennungshinweisen und Gegenmaßnahmen. | Kitploit
Tools/GitHubGitHub/s1ko/cve-2026-52616
SchwachstellenanalyseExploitationNetzwerksicherheitAPI-Sicherheit
GitHubs1ko/cve-2026-52616

CVE-2026-52616

Advisory und gutartiger PoC für eine OS-Befehlsinjektion in einem nmap-MCP-Server, inklusive Tracking doppelter CVE-Einträge, Erkennungshinweisen und Gegenmaßnahmen.

Repository anzeigen
vor 1 TagNoch 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-52616 — mcp-nmap-server: OS-Befehlsinjektion über run_nmap_scan

Das MCP-Tool run_nmap_scan erstellt seinen Befehl durch String-Interpolation der Parameter target und additionalFlags und führt ihn über child_process.exec aus, d. h. /bin/sh -c.

⚠ Zuerst lesen — doppelte Kennung

Diese Schwachstelle war bereits öffentlich, bevor diese CVE-Kennung existierte. Sie wird durch CVE-2026-3484 / GHSA-xc68-rrqc-qgq3 abgedeckt, vergeben von VulDB und veröffentlicht am 2026-03-03 für mcp-nmap-server <= 1.0.1 — gleiches Paket, gleiche CWE-78-child_process.exec-Senke.

CVE-2026-52616 wurde s1ko am 2026-07-13 von MITRE CNA-LR als Reaktion auf einen unabhängigen Bericht zugewiesen. Diese Zuweisung scheint ein Duplikat zu sein, und sie wurde als solches gekennzeichnet. Die bereits bestehende Kennung CVE-2026-3484 ist diejenige, die zitiert werden sollte.

Dieses Repository wird der Vollständigkeit halber und zur Dokumentation des Duplikats veröffentlicht, nicht als Anspruch auf eine neue Entdeckung. Die Anerkennung für die ursprüngliche öffentliche Offenlegung gebührt nicht s1ko.

Eine Namensfalle, die für alle, die dies deduplizieren, erwähnenswert ist: Das npm-Paket heißt mcp-nmap-server und das Repository nmap-mcp-server. Die beiden Reihenfolgen beziehen sich auf dasselbe Projekt.

Bedrohungsmodell

MCP-Werkzeugargumente werden vom Angreifer beeinflusst. Sie werden von einem LLM aus den Inhalten erzeugt, die der Agent verarbeitet — Dokumente, Webseiten, Werkzeugausgaben. Indirekte Prompt-Injection gibt einem Angreifer daher die Kontrolle über die Werte, die ein Werkzeug-Handler erhält. Ein Handler, der einen dieser Werte in eine Shell einspeist, verwandelt diese Beeinflussung in Codeausführung auf dem Host, auf dem der MCP-Server läuft. Dies ist dasselbe Modell wie im Präzedenzfall aws-mcp-server / CVE-2026-5058.

Ausführung

dist/index.js — das Ziel wird an eine Befehlskette angehängt, die dann an exec übergeben wird:

root@kitploit:~
command += ` ${target}`;
…
const { stdout, stderr } = await promisify(exec)(command);

child_process.exec führt sein Argument in /bin/sh -c aus, sodass alles, was der Aufrufer beigetragen hat, Shell-Syntax ist. Das Zod-Eingabeschema deklariert z.string(), was den Typ validiert und nichts über den Inhalt aussagt, sodass Metazeichen durchgelassen werden. additionalFlags erreicht dieselbe Zeichenkette auf demselben Weg.

Ein run_nmap_scan-Aufruf mit target gesetzt auf 127.0.0.1; touch /tmp/marker; echo INJECTED erzeugt:

root@kitploit:~
/bin/sh -c "nmap … 127.0.0.1; touch /tmp/marker; echo INJECTED"

Reproduktion

poc/driver.mjs spricht MCP über stdio: Es initialisiert den Server, sendet einen tools/call-Aufruf für run_nmap_scan mit einem injizierten target und prüft auf eine Markierungsdatei. Der Payload ist ein harmloses touch.

root@kitploit:~
npm pack [email protected]
tar xf mcp-nmap-server-1.0.1.tgz && cd package && npm install
node ../poc/driver.mjs

Erwartet bei einer betroffenen Version:

root@kitploit:~
==== POC RESULT (mcp-nmap-server) ====
marker /tmp/PWNED_nmap created: true
verdict: CONFIRMED — command injection executed

nmap muss nicht installiert sein — der injizierte Befehl läuft in derselben /bin/sh -c-Zeichenkette, unabhängig davon, ob das vorangestellte Binary aufgelöst wird. Validiert 2026-06-01 in einem isolierten Container und erneut validiert 2026-06-13. Führen Sie es nur gegen Infrastruktur aus, die Sie testen dürfen.

Erkennung

  • Eine nmap-Befehlszeile, die ;, &&, ||, |, ein Backtick oder $( enthält.
  • Ein sh -c-Prozess, dessen Befehlszeile mit nmap beginnt und nach einem Trenner einen zweiten Befehl enthält — ein Prozessbaum-Signal (auditd, eBPF, Falco, EDR), das nicht von der Anwendungsprotokollierung abhängt.
  • Unerwartete Kindprozesse des MCP-Serverprozesses. nmap ist erwartet; eine Shell, ein Interpreter oder ein Netzwerkclient nicht.
  • MCP-Werkzeugaufruf-Protokolle, in denen target oder additionalFlags Shell-Metazeichen enthalten. Ein target sollte einer IP, CIDR oder einem Hostnamen entsprechen und sonst nichts.

MITRE ATT&CK T1059.004 Command and Scripting Interpreter: Unix Shell.

Gegenmaßnahmen

Das Repository ist archiviert und schreibgeschützt, bei npm ist die neueste Version die betroffene 1.0.1, und es wird keine gepatchte Version veröffentlicht. Die Entfernung ist die Gegenmaßnahme:

  • Hören Sie auf, das Paket zu verwenden. Es ist ungewartet, seit März 2026 öffentlich verwundbar und wird nicht behoben.
  • Falls es bleiben muss, führen Sie es in einem Container oder einer VM als unprivilegierter Benutzer aus, ohne Anmeldeinformationen in seiner Umgebung und ohne Netzwerkausgang über den Scan-Bereich hinaus, und setzen Sie es nicht über einen Netzwerk-Transport ein.
  • Wrappen oder forken Sie den Server, um target gegen ein IP-/CIDR-/Hostname-Muster zu validieren und additionalFlags auf eine Whitelist zu setzen, bevor einer von beiden die Befehlszeichenkette erreicht.

Der Fix für alle, die ihn forken, besteht darin, execFile("nmap", [...args]) mit einem Argument-Vektor aufzurufen, anstatt eine Zeichenkette für exec zu erstellen. Inhaltsvalidierung, nicht nur Zod-Typvalidierung, ist die zugrunde liegende Anforderung.

NIST SP 800-53r5 SI-10; OWASP ASVS v4 §5.3.8; CWE-78-Gegenmaßnahmen M1 und M2.

Zeitleiste

Referenzen

  • Ursprüngliches Advisory — https://github.com/advisories/GHSA-xc68-rrqc-qgq3
  • Ursprüngliche CVE — https://nvd.nist.gov/vuln/detail/CVE-2026-3484
  • npm-Paket — https://www.npmjs.com/package/mcp-nmap-server
  • Repository (archiviert) — https://github.com/PhialsBasement/nmap-mcp-server
  • Präzedenzfall für das MCP-Bedrohungsmodell — CVE-2026-5058 (aws-mcp-server)

Begleitende Advisories aus demselben Forschungsdurchgang: CVE-2026-52617, CVE-2026-52618.

Lizenz

MIT — siehe LICENSE.

Tool herunterladen
CVECVE-2026-52616 — Duplikat von CVE-2026-3484
CWECWE-78 (Improper Neutralization of Special Elements used in an OS Command)
Paketmcp-nmap-server (npm)
Betroffen1.0.1 und früher — alle veröffentlichten Versionen
Behoben inkeine — Repository archiviert
CVSS v3.1AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H = 7.8 Hoch (Stdio-Transport). AV:N → 9.8 Kritisch, wenn der Server in einen Netzwerk-Transport eingebettet ist.
Unabhängig gemeldet vons1ko (github.com/s1ko, [email protected])
CVE zugewiesen2026-07-13, MITRE CNA-LR
DatumEreignis
2026-03-03CVE-2026-3484 / GHSA-xc68-rrqc-qgq3 von VulDB veröffentlicht — die ursprüngliche öffentliche Offenlegung durch einen anderen Melder
2026-05-29Unabhängig identifiziert durch Quellenüberprüfung des veröffentlichten Tarballs, ohne Kenntnis des März-Advisories
2026-06-01Dynamisch über MCP-Stdio in einem isolierten Container validiert
2026-06-13Duplikat während der Deduplizierung vor der Einreichung identifiziert; Repository als archiviert bestätigt, Private Vulnerability Reporting nicht verfügbar. Internes Urteil: nicht einreichen
2026-07-13MITRE CNA-LR weist CVE-2026-52616 trotzdem zu und nennt s1ko als Entdecker
2026-08-22Dieser Bericht veröffentlicht, der das Duplikat dokumentiert