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
Tools/GitHubGitHub/neuschaefer/cve-2016-0728-testbed
SchwachstellenanalyseExploitationLernen & BildungBinary-Exploitation
GitHubneuschaefer/cve-2016-0728-testbed

cve-2016-0728-testbed

Ein Testbed für CVE-2016-0728, einen Refcount-Leck/Überlauf-Fehler in Linux

Repository anzeigen
51vor 10 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-2016-0728 Testumgebung

Dieses Repository enthält ein Testprogramm für CVE-2016-0728, einen Refcount-Leak und Overflow-Bug in Linux, der zu einem Use-After-Free führt.

Der Bug wurde von Perception Point gefunden und erklärt. Ich bin nicht mit ihnen verbunden.

Verwendung

root@kitploit:~
Welcome to the CVE-2016-0728 testbed
sizeof(struct msg_msg) == 0x30, sizeof(struct key) == 0xb8

PID: 27673, UID: (1000/1000)
Keyring: 1b66e5d6, "test-1a328d6e"
Usage:   1
Press a key: (f)ork (i)ncref (a)uto-incref (r)evoke (h)eap-spray (s)hell (q)uit

Auf meinem Testsystem konnte eine Root-Shell wie folgt erlangt werden:

  1. Bringen Sie den Refcount auf -2; wenn Sie zu oft incref, stürzen Sie wahrscheinlich den Kernel ab.
  2. Forken Sie zweimal, um ihn zu überlaufen, sodass der Key-Garbage-Collector den Keyring freigibt.
  3. Sprayen Sie den Heap mit gefälschten Keyrings.
  4. Rufen Sie revoke auf.
  5. execl("/bin/sh", "sh", NULL)

Ich fand es nützlich, watch -n0.1 cat /proc/keys auszuführen, um zu sehen, was passiert.

Portabilität

Dieser Code wurde nur auf x86-64 getestet, sollte aber auch auf anderen Architekturen laufen, da ich keine magischen Offsets verwendet habe, sondern die Strukturdefinitionen aus den Linux-Headern kopiert und sizeof verwendet habe (außer dass ich die Adressen von prepare_kernel_cred und commit_creds fest codiert habe).

Tool herunterladen