Skip to content
KitploitKITPLOIT
ToolsBlog
Log in
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.

FeedsKontaktDatenschutz© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
Tools/GitHubGitHub/markoglasgow/gemma_crackme_tutorial
Reverse EngineeringDebuggerBinäranalyseMaschinelles LernenLernen & BildungKI-gestütztes Reverse Engineering
GitHubmarkoglasgow/gemma_crackme_tutorial

gemma_crackme_tutorial

Schritt-für-Schritt-Anleitung zur Verwendung des lokalen KI-Modells Gemma 4 E4B von Google, um einen Windows-Crackme mit Ghidra zu reverse-engineeren, einschließlich Einrichtung für lokale Inferenz und automatischer Umbenennung von Funktionen/Variablen.

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen
Repository anzeigen
35334vor 5 MonatenVon Kitploit geprüft

Verwendung des lokalen KI-Modells Google Gemma 4 E4B zum Reverse Engineering eines einfachen Crackme

Ich habe mit dem neuen Gemma E4B Open-Weights-Lokalmodell herumgespielt, das Google veröffentlicht hat, und zu meiner Überraschung hatte ich großen Erfolg bei der Verwendung für lokale Offline-Reverse-Engineering-Szenarien. Ich wollte dieses Tutorial schreiben, um die Botschaft zu verbreiten, dass lokale KI jetzt für viele grundlegende Reversing-Aufgaben gut genug ist und dass sich die Dinge ab hier wahrscheinlich schnell verbessern werden.

Reverse Engineering und KI

Einer der mühsamsten Teile beim Reversing einer neuen Binärdatei ist ganz am Anfang, wenn man keine Einblicke in die wichtigen Funktionen und Variablen hat. Es gibt viele Tricks, die Reverser verwenden, um einzusteigen, wie das Betrachten von String-Referenzen, Binary Diffing oder Abgleich ähnlicher Funktionen.

KI ist hier sehr hilfreich, und ich persönlich hatte großen Erfolg mit der OpenAI-API, um eine Binärdatei zu markieren oder die Ausgabe des Decompilers zu bereinigen. Es gibt jedoch mehrere Nachteile bei der Verwendung dieser APIs:

  • Kosten - Dekompilierung und Disassemblierung erzeugen Unmengen von Tokens. Die APIs berechnen $ pro Token, sodass die Analyse größerer Binärdateien eine ganze Menge Geld kosten kann. Wenn man es mit einem großen Ziel mit vielen Binärdateien zu tun hat, die jede Woche aktualisiert werden, können sich diese Kosten schnell summieren und sind für Hobby-Reverse-Engineers unerschwinglich.

  • Privatsphäre - Wenn man eine Remote-API verwendet, hat der Host der KI Einblick in das, was man tut. Das ist in einigen professionellen Szenarien ein No-Go.

  • Kontrolle - Wenn man sich auf eine Remote-API verlässt, hat man keine Kontrolle darüber, welche Modelle einem bereitgestellt werden oder wie die Qualität der Modelle ist. Wenn man sich für kritische Aufgaben auf sie verlässt, kann dies ein Problem sein, wenn sie langsam werden oder ausfallen, wenn man sie braucht, oder wenn ihre Ausgabequalität so weit abnimmt, dass sie nutzlos sind.

Das Ausführen eigener lokaler KI-Modelle behebt einige dieser Probleme:

  • Kosten - Es kann viel billiger sein, ein lokales Modell auszuführen, als sich auf einen gehosteten Dienst zu verlassen. Auch wenn Ihr lokales Modell wahrscheinlich kleiner und langsamer ist als das eines guten Anbieters, kann es sinnvoll sein, Geld zu sparen, indem Sie Ihr eigenes Modell ausführen, wenn es gut genug ist und in einer angemessenen Zeit läuft, insbesondere wenn Sie große Datenmengen für einfache Aufgaben verarbeiten.

  • Privatsphäre - Wenn Sie das Modell lokal ausführen, finden keine Netzwerkaufrufe statt, und Sie haben die vollständige Kontrolle über Ihre Privatsphäre. Niemand kann sehen, wofür Sie das Modell auf Ihrem eigenen Rechner verwenden.

  • Kontrolle - Das Schöne an einem Open-Weights-Modell ist, dass es Ihnen niemand wegnehmen kann. OpenAI oder Anthropic könnten eines Tages ihre SotA-Modelle nicht mehr verfügbar machen, entweder durch Preiserhöhungen oder durch explizite Entfernung ihrer APIs. Aber mit einem Open-Weights-Modell haben Sie die Kontrolle über Ihr Schicksal, im Guten wie im Schlechten.

Lokale KI-Modelle haben jedoch auch ihre Nachteile:

  • Größe - Je größer Ihr Modell, desto intelligenter ist es. Allerdings passen die meisten großen Modelle nicht auf Consumer-Hardware. Aus diesem Grund laufen Sie, wenn Sie ein lokales Modell ausführen, wahrscheinlich ein Modell, das 10x-100x kleiner ist als ein SotA-Modell (State-of-the-Art). Diese Verringerung der Größe führt direkt zu einer Verringerung der Intelligenz des Modells, wodurch es für viele Aufgaben ungeeignet wird, die in SotA-Modellen wie ChatGPT/Codex oder Claude als selbstverständlich angesehen werden.

  • Geschwindigkeit - Lokale Modelle werden auf Ihrem Rechner wahrscheinlich langsamer laufen als bei Verwendung einer KI-API. Auch dies ist auf die Einschränkungen der Consumer-Hardware und einige Tricks zurückzuführen, die API-Anbieter anwenden können, die Ihnen im Allgemeinen nicht zur Verfügung stehen.

  • Konfiguration - Das Ausführen lokaler Modelle ist vergleichbar mit dem Versuch, Linux auf einem refurbished Laptop zum Laufen zu bringen, im Gegensatz zum Betreten des Apple Stores und dem Kauf eines sauberen neuen Macbook Air. Das Codex- und Claude-Code-Erlebnis ist das Apple-Store-Erlebnis der KI. Das lokale KI-Modell-Erlebnis ist der Typ mit einem Fedora in seiner Garage, der an einem hakeligen Computer herumhackt, um ihn zum Laufen zu bringen. Mindestens müssen Sie sich um folgende Dinge kümmern:

    • Beschaffung der richtigen Hardware
    • GPU-Treiber
    • Auswahl und Konfiguration des richtigen Inferenzservers
    • Auswahl eines Modells, das auf Ihre Hardware passt, schnell genug läuft, um praktikabel zu sein, und intelligent genug für die anstehende Aufgabe ist
    • Verwendung der richtigen Chat-Vorlage mit Ihrem Modell
    • Erkundung von Quantisierungsstufen des Modells, um den richtigen Kompromiss zwischen Größe/Geschwindigkeit und Modellintelligenz zu finden
    • Korrektes Prompting des Modells
    • Auswahl des richtigen Harnesses oder Erstellung eines eigenen, falls keiner der vorhandenen funktioniert.

Es ist keine leichte Reise, und viele geben auf und nehmen an, dass lokale KI-Modelle der Aufgabe nicht gewachsen sind, weil sie nie die richtige Kombination aus Hardware/Modell/Einstellungen/Prompting/Harness gefunden haben, um sie für ihre Aufgabe zum Laufen zu bringen. Obwohl sie in vielen Fällen recht haben, hoffe ich, dass dieses Tutorial zumindest zeigt, wie weit lokale Modelle gekommen sind, wie sie beim Reverse Engineering helfen können, und Menschen dazu inspiriert, lokaler KI eine Chance zu geben.

Reverse Enginering Setup

  • Das Crackme ist ein extrem einfaches Windows-Crackme, heruntergeladen von Crackmes.one hier: https://crackmes.one/crackme/69e13f938afd9d6c48b488fd

(Archiv-Passwort ist crackmes.one). Ich habe einen alternativen Link hier im Repo bereitgestellt, falls der ursprüngliche Link nicht mehr funktioniert.

  • Ghidra 12.04 wird für Disassemblierung und Dekompilierung verwendet. Sie müssen OpenJDK 21 installieren, um es zu nutzen: https://github.com/nationalsecurityagency/ghidra

  • Während der Arbeit an diesem Tutorial habe ich mit Claude Code ein Ghidra-Plugin vibe-coded, um Funktionen und Variablen mit KI umzubenennen. Sie können das Plugin hier herunterladen: https://github.com/markoglasgow/Ghidra_FastAIRenamer_Plugin

Um es zu installieren, verschieben Sie einfach die Zip-Datei ghidra_12.0.4_PUBLIC_20260427_FastAIRenamerPlugin.zip nach ${GHIDRA_HOME}\Extensions\Ghidra, führen Sie dann Ghidra aus, indem Sie ${GHIDRA_HOME}\ghidraRun.bat ausführen. Um das Plugin zu aktivieren, wählen Sie im anfänglichen Ghidra-Bildschirm im oberen Menü File -> Install Extensions, aktivieren Sie dann im Plugin-Browser das Kontrollkästchen neben FastAIRenamerPlugin und klicken Sie auf Ok. Ghidra wird Sie auffordern, es neu zu starten, also tun Sie das sofort.

Tool herunterladen