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
Codecepticon — .NET/PowerShell/VBA Obfuskator für offensive Sicherheit | Kitploit
Tools/GitHubGitHub/accenture/codecepticon
Statische AnalyseCode-AnalyseIDS/IPS-UmgehungScripting & AutomatisierungPenetrationstestsCommand and ControlRed TeamingPayload-EntwicklungArchived
GitHubaccenture/codecepticon

Codecepticon

.NET/PowerShell/VBA Obfuskator für offensive Sicherheit

Repository anzeigen
527115vor 2 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

[!CAUTION] Dieses Repository wird nicht mehr gewartet. Besuchen Sie https://github.com/sadreck/Codecepticon für die neueste Version.

Codecepticon version

Inhaltsverzeichnis

  • Einführung
  • Bitte zuerst lesen
  • Voraussetzungen
    • Visual Studio Pro/Community 2022
    • Roslyn-Compiler
    • Öffnen und Kompilieren
  • Codecepticon verwenden
    • C#
    • VBA/VB6
    • PowerShell
    • Befehlszeilenargumente verschleiern
    • Funktionsweise im Detail
    • Tipps
    • Bekannte Probleme
    • Ausführbare Dateien signieren
  • FAQ
  • Fehlerbehebung
  • Beiträge
  • Referenzen / Danksagungen

Einführung

Codecepticon ist eine .NET-Anwendung, mit der Sie C#-, VBA/VB6- (Makros) und PowerShell-Quellcode verschleiern können und die für offensive Sicherheitseinsätze wie Red/Purple Teams entwickelt wurde. Was Codecepticon von anderen Obfuscatoren unterscheidet, ist, dass es den Quellcode und nicht die kompilierten ausführbaren Dateien angreift und speziell für die Umgehung von AV/EDR entwickelt wurde.

Codecepticon ermöglicht es Ihnen, Code zu verschleiern und umzuschreiben, bietet aber auch Funktionen wie das Umschreiben der Befehlszeile.

Bitte zuerst lesen

! Bevor wir beginnen !

  • Diese Dokumentation beschreibt nur die Installation und Verwendung von Codecepticon. Kompilierung, Verwendung und Support für Tools wie Rubeus und SharpHound werden nicht bereitgestellt. Weitere Informationen finden Sie im jeweiligen Repository des Projekts.

  • Codecepticon wird aktiv in VS2022 entwickelt/getestet, sollte aber auch in VS2019 funktionieren. Tickets/Issues für VS2019 und älter werden nicht untersucht, es sei denn, das Problem ist in VS2022 reproduzierbar. Bitte verwenden Sie daher die neueste und beste VS2022.

  • Die folgenden Pakete MÜSSEN v3.9.0 sein, da neuere Versionen das folgende noch offene Problem aufweisen: https://github.com/dotnet/roslyn/issues/58463

    • Microsoft.CodeAnalysis.CSharp.Workspaces
    • Microsoft.CodeAnalysis.Workspaces.MSBuild

    Codecepticon überprüft die Version dieser Pakete zur Laufzeit und informiert Sie, wenn die Version von v3.9.0 abweicht.

  • Es kann nicht genug betont werden: Testen Sie Ihren verschleierten Code immer zuerst lokal.

Voraussetzungen

Visual Studio Pro/Community 2022

VS2022 .NET

Roslyn-Compiler

VS2022 Roslyn

Öffnen und Kompilieren

Öffnen Sie Codecepticon, warten Sie, bis alle NuGet-Pakete heruntergeladen sind, und erstellen Sie dann die Projektmappe.

Codecepticon verwenden

Es gibt zwei Möglichkeiten, Codecepticon zu verwenden: entweder durch Angabe aller Argumente in der Befehlszeile oder durch Übergabe einer einzelnen XML-Konfigurationsdatei. Aufgrund der hohen Anzahl unterstützter Anpassungen wird nicht empfohlen, die Ausgabe von --help manuell durchzugehen, um herauszufinden, welche Parameter verwendet werden sollen. Verwenden Sie CommandLineGenerator.html und generieren Sie Ihren Befehl schnell:

Befehlszeilengenerator

Das Ausgabeformat des Befehlsgenerators kann je nach Vorliebe entweder Console oder XML sein. Konsolenbefehle können wie folgt ausgeführt werden:

root@kitploit:~
Codecepticon.exe --action obfuscate --module csharp --verbose ...etc

Bei Verwendung einer XML-Konfigurationsdatei wie folgt:

root@kitploit:~
Codecepticon.exe --config C:\Ihr\Pfad\Zur\Datei.xml

Wenn Sie tiefer in die Funktionalität von Codecepticon eintauchen möchten, sehen Sie sich dieses Dokument an.

Tipps zur Verwendung finden Sie in diesem Dokument.

C#

Das Verschleiern eines C#-Projekts ist einfach: Wählen Sie einfach die gewünschte Projektmappe aus. Beachten Sie, dass kein Backup der Projektmappe erstellt wird und die aktuelle verschleiert wird. Stellen Sie sicher, dass Sie das Zielprojekt vor dem Ausführen von Codecepticon unabhängig kompilieren können.

VBA/VB6

Die VBA-Verschleierung arbeitet mit dem Quellcode selbst, nicht mit einem Microsoft Office-Dokument. Das bedeutet, dass Sie keine doc(x)- oder xls(x)-Datei an Codecepticon übergeben können. Es muss der Quellcode des Moduls selbst sein (drücken Sie Alt-F11 und kopieren Sie den Code von dort).

PowerShell

Aufgrund der Komplexität von PowerShell-Skripten und der Freiheit, die sie beim Schreiben von Skripten bieten, ist es eine Herausforderung, alle Randfälle abzudecken und sicherzustellen, dass das verschleierte Ergebnis voll funktionsfähig ist. Obwohl erwartet wird, dass Codecepticon bei einfachen Skripten/Funktionen gut funktioniert, wird es bei komplexen wie PowerView nicht funktionieren – dies ist ein laufender Prozess.

Befehlszeilenargumente verschleiern

Nach dem Verschleiern einer Anwendung oder eines Skripts ist es sehr wahrscheinlich, dass die Befehlszeilenargumente ebenfalls umbenannt wurden. Die Lösung besteht darin, die HTML-Mapping-Datei zu verwenden, um die neuen Namen zu finden. Konvertieren wir beispielsweise die folgende Befehlszeile:

root@kitploit:~
SharpHound.exe --CollectionMethods DCOnly --OutputDirectory C:\temp\

Durch die Suche in der HTML-Mapping-Datei nach jedem Argument erhalten wir:

Mapping Eins

Mapping Zwei

Mapping Drei

Und durch Ersetzen aller Zeichenfolgen ergibt sich:

root@kitploit:~
ObfuscatedSharpHound.exe --AphylesPiansAsp TurthsTance --AnineWondon C:\temp\

Einige Werte können jedoch in mehr als einer Kategorie vorkommen:

Mapping Vier

Daher ist es entscheidend, Ihr Ergebnis immer zuerst in einer lokalen Umgebung zu testen.

Ausführbare Dateien signieren

Es ist auch möglich, Codecepticon zu verwenden, um ausführbare Dateien (Ihre kompilierte Ausgabe) digital zu signieren. Codecepticon kann sowohl ein Signaturzertifikat für Sie generieren als auch dieses (oder ein anderes von Ihnen bereitgestelltes) verwenden, um Ihre Zieldatei zu signieren.

FAQ

Warum gibt es keine kompilierte Version unter Releases zum Herunterladen?

Die kompilierte Ausgabe enthält viele abhängige DLLs, die wir aufgrund von Lizenzanforderungen ohne schriftliche Genehmigung nicht weiterverteilen können.

Funktioniert Codecepticon nur für C#-Projekte, die bereits ein unterstütztes Profil haben?

Nein, Codecepticon sollte mit allem funktionieren. Die Profile sind lediglich zusätzliche Anpassungen, die am Zielprojekt vorgenommen werden, um es zuverlässiger und einfacher handhabbar zu machen.

Da jedoch jeder Code einzigartig ist, kann es vorkommen, dass das Verschleiern eines Projekts zu einem oder zwei Fehlern führt, die das Kompilieren oder Ausführen verhindern. In diesem Fall ist möglicherweise ein neues Profil erforderlich – bitte erstellen Sie ein neues Issue, falls dies der Fall ist.

Das gleiche Prinzip gilt für PowerShell-/VBA-Code – obwohl diese derzeit keine Profile haben, die mit Codecepticon ausgeliefert werden, ist es eine einfache Aufgabe, welche hinzuzufügen, falls benötigt.

Kann ich beitragen?

Zum Melden von Fehlern und Vorschlagen neuer Funktionen erstellen Sie bitte ein Issue.

Zum Einreichen von Pull-Requests lesen Sie bitte den Abschnitt Beiträge.

Fehlerbehebung

Ich verwende Codecepticon gegen ein C#-Projekt, es läuft, aber danach kann ich das Zielprojekt nicht kompilieren.

Stellen Sie vor dem Ausführen von Codecepticon sicher, dass Sie eine saubere Version des Zielprojekts kompilieren können. Sehr oft tritt dieses Problem aufgrund fehlender Abhängigkeiten der Zielprojektmappe und nicht wegen Codecepticon auf. Falls es dennoch nicht kompiliert:

  • Handelt es sich um ein öffentliches Projekt? Erstellen Sie ein Issue und fügen Sie den Link mit so vielen Details wie möglich hinzu. Wenn das Tool Teil von SharpCollection ist, umso besser.
  • Handelt es sich um ein privates Projekt? Im Sinne der Verbesserung von Codecepticon werden wir versuchen, so viel Unterstützung wie möglich über Screenshots und Fehler-/Debug-Meldungen zu bieten. Wir werden jedoch keinen sauberen/verschleierten Code über private Repositories ausführen oder darauf zugreifen.

Gleiches wie oben, aber es ist ein PowerShell-/VBA-Skript – können Sie helfen?

Ich werde mein Bestes tun, aber da PowerShell-Skripte SEHR komplex sein können und der PSParser nicht so fortschrittlich ist wie Roslyn für C#, kann ich keine Versprechungen machen. Gleiches gilt für VBA/VB6.

Ich erhalte ständig: "Method not found: 'System.Collections.Immutable.ImmutableArray"

Möglicherweise erhalten Sie irgendwann den folgenden Fehler:

Methode nicht gefunden

Ich versuche immer noch, dem auf den Grund zu gehen. Eine schnelle Lösung ist das Deinstallieren und erneute Installieren des Pakets System.Collections.Immutable über den NuGet-Paket-Manager.

Beiträge

Ob es sich um einen Tippfehler, einen Fehler oder eine neue Funktion handelt, Codecepticon ist offen für Beiträge, solange wir uns auf Folgendes einigen:

  • Sie sind mit der MIT-Lizenz dieses Projekts einverstanden.
  • Erstellen Sie vor dem Erstellen eines Pull-Requests ein Issue, damit es besprochen werden kann, bevor Sie mit der Arbeit beginnen, da die interne Entwicklung nicht über das öffentliche GitHub-Repository verfolgt wird. Andernfalls riskieren Sie, dass ein Pull-Request abgelehnt wird, wenn wir beispielsweise bereits an derselben/ähnlichen Funktion arbeiten, oder aus einem anderen Grund.

Referenzen / Danksagungen

  • https://blog.xpnsec.com/building-modifying-packing-devops/
  • https://twitter.com/EmericNasi/status/1460640760928296966
  • https://github.com/MagicMau/ProceduralNameGenerator
  • https://github.com/uwol/proleap-vb6-parser
  • https://github.com/dwyl/english-words
  • https://github.com/Danielku15/SigningServer
Tool herunterladen