Skip to content
KitploitKITPLOIT
ToolsExploitsBlog
Log in
Einreichen
ToolsExploitsBlog
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-2019-5736-Custom-Runtime — CVE-2019-5736 implementiert in einer selbstgeschriebenen Container-Runtime, um den Exploit zu verstehen. | Kitploit
Tools/GitHubGitHub/giverofgifts/cve-2019-5736-custom-runtime
SchwachstellenanalyseExploitationPenetrationstestsLernen & BildungContainer-AusbruchBinary-Exploitation
GitHubgiverofgifts/cve-2019-5736-custom-runtime

CVE-2019-5736-Custom-Runtime

CVE-2019-5736 implementiert in einer selbstgeschriebenen Container-Runtime, um den Exploit zu verstehen.

Repository anzeigen
115vor 6 JahrenNoch 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-2019-5736-Custom-Sandbox

Allgemein

CVE-2019-5736 implementiert mithilfe einer einfachen, selbst geschriebenen Container-Runtime, um den Exploit zu verstehen.

Der Exploit basiert auf (und ist fast vollständig kopiert von) dem runc-poc von twistlock: https://github.com/twistlock/RunC-CVE-2019-5736/tree/master/malicious_image_POC

Container-Runtime (quarantine)

Weitere Details finden sich in den Codedokumentationen.

Usage: quarantine [OPTIONS] [BINARY and its ARGS]

--rootfs: (mandatory) Specify a rootfs for the container.
--urange: Specify a urange start_host:end_host,start_guest.
--grange: Specify a grange start_host:end_host,start_guest.
--uid:    Specify the desired UID in the container.
--ugd:    Specify the desired GID in the container.
--supp:   Append supplementary groups from the specified grange to the process running in the container.

Führt für alle Namespaces ein Unshare durch, mit Ausnahme des User-Namespace. Der User-Namespace wird unter besonderen Umständen ebenfalls per Unshare abgetrennt, d. h. wenn urange, grange, uid und/oder gid angegeben sind.

Einrichtung des Exploits

Dies wurde auf Ubuntu 18.04 getestet und durchgeführt.

  1. Besorge ein Rootfs (z. B. bionic)
    • mkdir rootfs
    • sudo debootstrap bionic ./rootfs
  2. Besorge den libcap-Quellcode
    • git clone https://github.com/mhiramat/libcap
  3. Modifiziere libcap
    • cat exploit_code_for_shared_lib.c >> <any cap*.c, I used cap_alloc.c>
    • make
  4. Wechsle per chroot in das Rootfs und installiere libcap-dev, damit du einfach gegen das modifizierte libcap.so linken kannst
    • sudo chroot rootfs
    • apt install libcap-dev
  5. Kopiere die erstellte Datei libcap.so.2.25 in das passende Rootfs-Verzeichnis -sudo cp libcap.so.2.25 rootfs/lib/x86_64-linux-gnu
    • Hinweis: Bei mir zeigte bereits ein Link auf genau diese libcap-Dateiversion, daher musste ich sie nicht verlinken
    • Hinweis: Dieser Pfad kann sich ändern; schau immer nach, wo die kompilierte quarantine das libcap erwartet: ldd quarantine
  6. Kompiliere und kopiere die anderen Dateien in das Rootfs
    • sudo cp shebang_exploit rootfs/
    • sudo gcc -o rootfs/root/payload payload.c
    • sudo gcc -o rootfs/overwrite_sndbx_runtime overwrite_sndbx_runtime.c

Exploit ausführen

Zum Beispiel: sudo ./quarantine --rootfs rootfs /shebang_exploit oder ./quarantine --rootfs rootfs --uid 1 /shebang_exploit.

Es funktioniert, solange du entweder CAP_DAC_OVERRIDE oder CAP_SYS_ADMIN auf dem Host behältst, d. h. beim Verwenden von sudo kein Unshare des User-Namespace durchführst (da dies die Capabilities im übergeordneten Namespace verwirft), oder du die Datei auf dem Host besitzt.

Tool herunterladen