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
exploit_playground — Analysis of public exploits or my 1day exploits | Kitploit
Tools/GitHubGitHub/externalist/exploit_playground
Android SecurityiOS SecurityVulnerability AnalysisExploitationReverse EngineeringWeb SecurityLearning & EducationCurated ResourcesBinary Exploitation
GitHubexternalist/exploit_playground

exploit_playground

Analysis of public exploits or my 1day exploits

61698vor 5 JahrenVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen
Repository anzeigen

Über

Hier werde ich Analysen von öffentlichen Exploits oder einige meiner 1day-Exploits veröffentlichen.

[ Analyse öffentlicher Exploits ]

  • Persönlich denke ich, dass der beste Weg, einen öffentlichen Exploit zu lernen, darin besteht, ihn Zeile für Zeile zu verstehen, bis ich den Exploit vollständig verstehe. Ich werde einige dieser (übermäßig kommentierten ;) ) Exploits veröffentlichen, damit hoffentlich andere daraus lernen können, und als Versuch, der Community etwas zurückzugeben. Auch zu Dokumentationszwecken, denn diese Dinge verblassen mit der Zeit irgendwie aus meinem Kopf.

CVE-2016-8655

  • Dies ist eine detaillierte Analyse von rebels Exploit.
  • Danke rebel für den fantastischen Exploit! :D

CVE-2016-5342

mp3-Version

  • Dies ist eine kommentierte Version von freeners Android-LPE-Exploit
  • arm32
  • Heap-Überlauf
  • Dieser Exploit überschreibt direkt einen Funktionszeiger eines anderen Objekts

tty-Version

  • Dies ist eine kommentierte Version von freeners Android-LPE-Exploit
  • arm32
  • Heap-Überlauf
  • Dieser Exploit überschreibt einen Objektzeiger in einem anderen Objekt. Er verwendet einen ret2dir-Angriff, um den beschädigten Zeiger auf eine vorhersehbare feste Adresse im Kernel zeigen zu lassen, die die Exploit-Payload enthält. Diese Exploit-Technik umgeht PXN & PAN.

CVE-2016-2434

  • Dies ist eine kommentierte Version von Jianqiang Zhaos Android-LPE-Exploit
  • arm64
  • Setzt 16 Bytes an einer beliebigen Adresse auf Null
  • Dieser Exploit löscht 16 Bytes eines nützlichen globalen Objekts, das sich an einer festen Adresse im Kernel befindet.
  • Ein beschädigter Objektzeiger innerhalb des globalen Objekts verweist auf die Exploit-Payload aus dem Userland. Diese Art von Angriff funktioniert nicht auf Geräten/Kerneln mit PAN (oder PAN-Emulation).

extra_recipe

  • Mein Versuch, den extra_recipe-Jailbreak zu verstehen
  • Besonders interessierte mich der KPP-Bypass-Teil. Obwohl es ein paar Folien zu diesem Thema gab, aus denen ich ein vages Bild des Bypasses gewinnen konnte, wollte ich wirklich in die feinen Details eintauchen und sehen, was tatsächlich im Code vor sich geht
  • Außerdem wollte ich die letzten Zutaten für einen Jailbreak verstehen (Installation von Cydia usw.)

yalu102 (ViewController.m)

  • Ich habe den Teil kommentiert, der für den eigentlichen Bug relevant ist, und wie er ausgenutzt wurde.
  • Der Grund, warum ich mich mit yalu102 statt mit dem ursprünglichen Exploit beschäftigt habe, ist, dass die Port-Feng-Shui-Technik sauberer und einfacher zu verstehen aussah.
  • Die Analyse endet direkt vor dem KPP-Bypass

xerubs extra_recipe-master (jailbreak.c, unjail.m, patchfinder64.c, pte_stuff.h)

  • Ich springe hierher, weil es etwas mehr Informationen über die verschiedenen numerischen Offsets enthielt.
  • Außerdem ist die patchfinder.c intakt, im Gegensatz zu yalu102, von dem es nur eine Objektdatei gibt.
  • Der Cydia-Teil ist irgendwie unvollständig, also springe ich nach KPP zum Cydia-Zweig

xerubs extra_recipe-cydia (unjail.m)

  • Versuch, die Zutaten für einen Jailbreak nach tfp0 und Post-Exploitation zu verstehen

empty_list (sploit.c)

  • Eine detaillierte Aufschlüsselung von Ian Beers empty_list-Kernel-Exploit.
  • Er verwendet erstaunliche Techniken, um von wirklich schwachen Primitiven auszugehen, ein stärkeres AAR aufzubauen und schließlich einen vollwertigen Task-Port zu erstellen. Die Port-Magie hinter dem Exploit-Code ist unglaublich. All dies mit einem 8-NULL-Byte-Heap-Overflow. Absolut umwerfend.
  • Ich habe ein paar naive Ideen zur Verbesserung der Zuverlässigkeit aufgeschrieben. Hoffentlich wird jemand in Zukunft eine zuverlässigere Version des Exploits veröffentlichen. :)
  • Danke Ian Beer für den erstaunlichen Exploit!

CVE-2018-4233

  • Dies ist eine kommentierte Version von @niklas_b's iOS-Webkit-Exploit.
  • Ein großes Dankeschön an kudima (@begger_dd) für den sehr klaren und präzisen, gründlich annotierten Writeup! :)
  • Der Writeup erklärt den JIT-Type-Confusion-Bug, einige Einschränkungen bei Konvertierungen von Boxing/Unboxing (die zu Unzuverlässigkeit führen können) und einen detaillierten Walkthrough, wie die frühen/späten AAR/AAW-Primitive konstruiert werden. Er gibt außerdem Einblicke in die Änderungen der Exploitation-Techniken nach der jüngsten Runde von Mitigationen (Index-Masking, ArrayBuffer-Backing-Store-Poisoning, einige Änderungen am Mechanismus von W^X JIT, Änderungen in der JSObject-Struktur usw.)

jsc_ConcatMemcpy_infoleak

  • Dies ist eine kommentierte Version von kudimas WebKit-Infoleak-Exploit (behoben am 27.08.2018).
  • Er resultiert aus einer unvollständigen Behebung eines der von lokihardt gemeldeten Bugs. Der Patch aus lokihardts Bericht behob das Double -> Object-Type-Confusion-Primitiv, aber nicht den umgekehrten Weg: Object -> Double.
  • Er sprayt den Webkit-Heap mit Butterflies, die ein einzelnes Objekt und einen Marker enthalten, und löst später den Concat-Bug aus, wodurch ein großer Teil mehrerer Double-Arrays mit nicht initialisierten Heap-Daten gefüllt wird. Er iteriert durch die nicht initialisierten, vom fehlerhaften Concat erzeugten Double-Arrays, bis er die Adresse des zuvor gesprühten Objekts findet, und leakt sie.
  • Nochmals Danke an kudima (@begger_dd) für den schönen Exploit und den Writeup! :)

jsc_prop_enum_uaf

  • Dies ist ein weiterer Beitrag von kudima. Es ist eine kommentierte Version von kudimas WebKit-Exploit zur Remote-Code-Ausführung (behoben in diesem Commit). Er wurde in iOS 12.1 behoben und funktioniert bis iOS 12.0.1.
  • Das Problem besteht darin, dass man beim Ausführen von Code in Baseline-jitted forin-Schleifen Code einführen kann, der das der JSOBject zugrunde liegende StructureID-Objekt freigibt und den Garbage Collector auslöst. Der Garbage Collector markiert jedoch das Mitglied "JSPropertyNameEnumerator->m_cachedStructureID" nicht, und das StructureID-Objekt, auf das "JSPropertyNameEnumerator->m_cachedStructureID" zeigt, wird während der Sweep-Phase freigegeben, was zu einem hängenden Zeiger führt.
  • Nachdem das StructureID-Objekt mit dem GC freigegeben wurde, kann man Code einführen, der ein neues StructureID-Objekt erstellt, das den zuvor freigegebenen "StructureID-Objekt"-Slot belegt.
  • Indem man die StructureID von Objekt A freigibt und dann Objekt B eine neue StructureID erstellen lässt, die deren Platz einnimmt, ist es möglich, eine Type-Confusion-Situation zu erzeugen, denn "JSPropertyNameEnumerator->m_cachedInlineCapacity" wird auf die Inline-Property-Größe von Objekt A gesetzt, während "JSPropertyNameEnumerator->m_cachedStructureID" auf das neue Structure-ID-Objekt zeigt, das Objekt B repräsentiert. Dadurch besteht eine Prüfung in 'op_get_direct_pname' und Objekt B kann auf Inline-Eigenschaften außerhalb seiner Grenzen zugreifen.
  • Dies kann missbraucht werden, um stärkere Primitive wie AAR/AAW aufzubauen und diese weiter zu nutzen, um beliebigen Code auszuführen.
  • Danke an kudima (@begger_dd) für den coolen Exploit und den sehr detaillierten Writeup! :)

[ 1Day ]

CVE-2017-2547

  • Eines Tages sah ich mir singis Exploit an, nachdem er auf der Zer0con 2018 präsentiert worden war, und beschloss, ihn zu verbessern.
  • Dies ist eine eigenständige Version des Exploits, bevor ich ihn in pwnjs integriert habe.
  • Die Verbesserungen umfassen
    • Erhöhte Zuverlässigkeit (funktioniert einwandfrei nach ausgiebigen Browsing-Sitzungen mit kontaminiertem Speicher)
    • Alle hartcodierten Offsets entfernt, um die Kompatibilität mit verschiedenen Browserversionen zu gewährleisten
    • Eine andere Exploitation-Technik verwendet (die Standard-Misalign-Technik)
    • Schließlich in das pwnjs-Framework integriert, indem ein Webkit-Prototyp erstellt wurde
    • Den Code deutlich lesbarer gemacht und viele Kommentare hinzugefügt
  • Besonderer Dank
    • qwertyoruiop & Samuel Grob für den erstaunlichen Phrack-Artikel und die öffentlichen Exploits
    • Brian Pak & Andrew Wesie für das großartige pwnjs-Framework!
Tool herunterladen