
AST-basiertes Framework für Python-Code-Transformation und Deobfuskation

Noctyra ist ein AST-basiertes Framework, das für Code-Transformation und Deobfuskation entwickelt wurde. Es bietet eine modulare Pipeline zur Analyse und Vereinfachung von Python-Quellcode durch Auflösung komplexer Ausdrücke und Logik.
Das Projekt zielt darauf ab, eine flexible Umgebung für die Verarbeitung des abstrakten Syntaxbaums von Python bereitzustellen. Durch den Einsatz einer Abfolge von steckbaren Transformatoren kann Noctyra:
Stelle sicher, dass uv für das Dependency-Management installiert ist.
uv sync
Um ein Zielskript zu verarbeiten, verwende den folgenden Befehl:
python main.py <input_file> [options]
Optionen:
file: Pfad zur Eingabe-Python-Datei (erforderlich).--output: Dateiname für den transformierten Code (Standard: out.py).--iterations: Lege eine feste Anzahl von Transformationsdurchläufen fest (Standard: 0 für automatische Erkennung).--max-iterations: Begrenze die Durchläufe im Auto-Modus (Standard: 100).--debug: Aktiviere ausführliches Logging zum Debuggen von Transformationen. (sieht cool aus)Dieses Projekt verwendet uv für das Dependency-Management und ein Makefile für häufige Aufgaben.
uv sync --all-extras --dev
Bevor du einen PR einreichst oder Änderungen pushst, stelle sicher, dass alle Checks bestanden werden:
make testmake formatmake typecheck(Windows-Benutzer: Diese Befehle funktionieren automatisch via make.bat.)
Automatisierte Checks werden bei jedem Push über GitHub Actions durchgeführt, darunter Linting mit Ruff, Typprüfung mit Mypy und Komponententests mit Pytest.
Noctyra enthält eine interne Evaluierungs-Engine mit grundlegenden Ressourcenbeschränkungen. Bei der Arbeit mit nicht vertrauenswürdigem Code wird jedoch dringend empfohlen, die Pipeline in einer isolierten Umgebung (z. B. einem Container oder einer Sandbox) auszuführen, um mögliche Nebenwirkungen oder Ressourcenerschöpfung zu vermeiden.