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/ddouworld/pycdc-studio
Statische AnalyseReverse EngineeringDebuggerMalware-AnalyseBinäranalyseLernen & BildungKI-gestütztes Reverse Engineering
GitHubddouworld/pycdc-studio

pycdc-studio

Eine Qt-Widgets-Desktop-Benutzeroberfläche zum Erkunden von Python-Bytecode mit pycdc/pycdas, zum Inspizieren nativer Dekompilierung und zur Nutzung von KI-Fallback für nicht unterstützte Code-Objekte.

Repository anzeigen
417vor 4 MonatenVon 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

pycdc-studio

中文说明

Eine Qt-Widgets-Desktop-Oberfläche zum Erkunden von Python-Bytecode mit pycdc / pycdas, zum Untersuchen nativer Dekompilierungsergebnisse, zum Importieren von Pyarmor-Oneshot-Ausgaben und zum erneuten Versuchen nicht unterstützter Codeobjekte mit KI-Fallback.

Die Anwendung unterstützt sowohl Windows- als auch Linux-Desktopumgebungen.

Screenshots

Hauptarbeitsbereich

Hauptarbeitsbereich

KI-Fallback

KI-Fallback-Rekonstruktion

Was es tut

  • Öffnen von .pyc / .pyo-Dateien direkt
  • Ziehen eines Ordners in das Fenster, um unterstützte Bytecode-Dateien rekursiv zu entdecken
  • Importieren eines mit Pyarmor verschleierten Projekts über den integrierten Oneshot-Workflow
  • Anzeigen aller entdeckten Dateien zusammen im linken Baum
  • Untersuchen von Codeobjektbäumen für Module, Klassen, Funktionen, Lambdas und Comprehensions
  • Vergleichen von:
    • Zusammengeführt
    • Nativ
    • KI
  • Anzeigen von Metadaten und Disassembly pro Knoten
  • Vorschau der exakten Eingabeaufforderung, die an das KI-Fallback-Modell gesendet wird
  • Erneutes Versuchen des aktuell ausgewählten Knotens mit KI über eine hervorgehobene Aktionsschaltfläche oder Strg+R

Aktuelle UI-Struktur

  • Links: Codeobjektbaum
  • Mitte: Zusammengeführte / native / KI-Quellansichten
  • Rechts: Disassembly / Metadaten / Eingabeaufforderung / Log

KI-Fallback

Die Anwendung sendet standardmäßig nicht die gesamte .pyc-Datei.

Sie erstellt eine Eingabeaufforderung aus dem aktuell ausgewählten Codeobjekt, einschließlich:

  • qualifizierter Name
  • Objekttyp
  • Vorschau von names / varnames / consts
  • nativer Fehler
  • Disassembly

Dadurch bleibt die Fallback-Rekonstruktion auf den ausgewählten Knoten fokussiert, anstatt auf die gesamte Datei.

pycdc-Integration

Die Anwendung bevorzugt derzeit lokale ausführbare Dateien neben der Anwendungsbinärdatei und sucht nach:

  • pycdc.exe
  • pycdc
  • pycdas.exe
  • pycdas

im selben Verzeichnis wie die pycdc-studio-Anwendungsbinärdatei.

Sie können diese mit Umgebungsvariablen überschreiben:

  • PYCDC_STUDIO_PYCDC
  • PYCDC_STUDIO_PYCDAS

Pyarmor-Import

Die Anwendung kann mit Pyarmor geschützte Projekte importieren, indem sie an Lil-House/Pyarmor-Static-Unpack-1shot delegiert.

Aktueller Integrationsablauf:

  1. Ausführen von oneshot/shot.py auf einem ausgewählten Pyarmor-Projektverzeichnis
  2. pyarmor-1shot generiert .1shot.das- und .1shot.cdc.py-Dateien
  3. Laden dieser generierten Dateien zurück in die vorhandene Arbeitsbereichs-Benutzeroberfläche

Es wird erwartet, dass Release-Pakete die Pyarmor-Oneshot-Toolchain und die erforderlichen Python-Paketabhängigkeiten automatisch bündeln.

Für die lokale Entwicklung sucht der aktuelle Code zuerst nach gebündelten Dateien neben dem Anwendungspaket und unterstützt auch einen lokalen Klon unter:

  • external/Pyarmor-Static-Unpack-1shot/oneshot/shot.py

und erwartet, dass pyarmor-1shot / pyarmor-1shot.exe im selben Verzeichnis wie shot.py verfügbar ist.

Sie benötigen außerdem eine Python-Umgebung, die shot.py ausführen kann, einschließlich pycryptodome.

Falls Ihr Layout anders ist, können Sie es dennoch mit Umgebungsvariablen überschreiben:

  • PYCDC_STUDIO_PYARMOR_PYTHON
  • PYCDC_STUDIO_PYARMOR_SHOT
  • PYCDC_STUDIO_PYARMOR_PYTHONPATH
  • PYCDC_STUDIO_PYARMOR_OUTPUT_ROOT

Vorbereiten des Upstream-Tools für die lokale Entwicklung

Beispiel:

root@kitploit:~
git clone https://github.com/Lil-House/Pyarmor-Static-Unpack-1shot external/Pyarmor-Static-Unpack-1shot
cmake -S external/Pyarmor-Static-Unpack-1shot/pycdc -B external/Pyarmor-Static-Unpack-1shot/build
cmake --build external/Pyarmor-Static-Unpack-1shot/build --config Release
cmake --install external/Pyarmor-Static-Unpack-1shot/build --config Release
python -m pip install pycryptodome

Verwendung in der Benutzeroberfläche

  1. Starten Sie pycdc-studio
  2. Öffnen Sie Datei -> Pyarmor-Projekt importieren...
  3. Wählen Sie das Stammverzeichnis, das die verschleierten Skripte und pyarmor_runtime enthält
  4. Warten Sie, bis die generierten .1shot.*-Dateien in den Arbeitsbereich importiert wurden

Hinweise:

  • Der Importeur verwendet ein temporäres Ausgabeverzeichnis, sofern nicht PYCDC_STUDIO_PYARMOR_OUTPUT_ROOT gesetzt ist.
  • Disassembly ist im Allgemeinen zuverlässiger als dekompilierter Quellcode.
  • Archive wie PyInstaller-Bündel müssen vor der Verwendung dieses Ablaufs noch entpackt werden.
  • Paketierte Builds sind dafür ausgelegt, ohne manuelles Konfigurieren der Pyarmor-Umgebungsvariablen zu funktionieren.

KI-Konfiguration

Bevor Sie den KI-Fallback verwenden, öffnen Sie Einstellungen und konfigurieren Sie mindestens:

  • Basis-URL
  • API-Schlüssel
  • Modell

Der aktuelle Client erwartet einen OpenAI-kompatiblen API-Endpunkt.

Der Einstellungsdialog speichert die Anbieterkonfiguration mit QSettings und greift auf Umgebungsvariablen zurück, wenn ein Feld leer ist.

Unterstützte Umgebungsvariablen:

  • PYCDC_STUDIO_AI_BASE_URL
  • PYCDC_STUDIO_AI_API_KEY
  • PYCDC_STUDIO_AI_MODEL
  • PYCDC_STUDIO_AI_SYSTEM_PROMPT

Erstellung

Anforderungen:

  • Qt 6 Widgets
  • Qt Network
  • CMake
  • C++17-Compiler

Beispiel:

root@kitploit:~
cmake -S . -B build
cmake --build build

Verwendung

  1. Starten Sie pycdc-studio
  2. Öffnen Sie eine .pyc / .pyo-Datei, oder ziehen Sie einen Ordner in das Fenster
  3. Oder öffnen Sie Datei -> Pyarmor-Projekt importieren... für ein mit Pyarmor geschütztes Projekt
  4. Öffnen Sie Einstellungen aus dem oberen Menü und konfigurieren Sie Ihr KI-Modell, wenn Sie den KI-Fallback verwenden möchten
  5. Wählen Sie eine Datei oder ein Codeobjekt im Baum aus
  6. Untersuchen Sie die native Ausgabe, Disassembly, Metadaten und den Eingabeaufforderungskontext
  7. Verwenden Sie Erneut mit KI versuchen für den ausgewählten Knoten, wenn die native Dekompilierung unvollständig oder falsch ist

Testbeispiele

Längere Testfälle sind unter test/ enthalten:

  • workflow_orchestrator.py
  • async_batch_runner.py
  • plugin_config_resolver.py
  • plus mehrere kleinere Beispiele

Das Repository enthält nur die Quell-Beispiele.

Um lokale .pyc-Dateien für Drag-and-Drop-Tests zu generieren:

root@kitploit:~
python test/compile_test_samples.py

Dieses Skript schreibt den kompilierten Bytecode in test/__pycache__/.

Hinweise

Dieses Projekt ist noch experimentell.

Die aktuelle Zusammengeführte-Ansicht ist ein ehrliches gemischtes Dokument:

  • native Quelle, sofern verfügbar
  • KI-Fallback-Patches, die pro Codeobjekt angehängt werden

Es ist noch kein vollständiger Inline-Quellcode-Merger.

Lizenz

Dieses Projekt integriert pycdc / pycdas, deren Upstream-Projekt unter GPL-3.0 lizenziert ist.

  • pycdc: GPL-3.0
  • Release-Pakete, die pycdc / pycdas bündeln, sollten den GPL-3.0-Hinweis enthalten
  • Release-Pakete erfassen auch das gebündelte Upstream-pycdc-Repository und den Commit in THIRD_PARTY_NOTICES.txt

Vollständige Lizenzdetails finden Sie im Upstream-Projekt:

  • zrax/pycdc
Tool herunterladen