Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
Codecepticon — .NET/PowerShell/VBA Offuscatore per la Sicurezza Offensiva | Kitploit
Strumenti/GitHubGitHub/accenture/codecepticon
Analisi StaticaAnalisi del CodiceEvasione IDS/IPSScripting e AutomazionePenetration TestingCommand and ControlRed TeamingSviluppo PayloadArchived
GitHubaccenture/codecepticon

Codecepticon

.NET/PowerShell/VBA Offuscatore per la Sicurezza Offensiva

Vedi Repository
5271152 anni faRevisionato da Kitploit

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

[!CAUTION] Questo repository non è più mantenuto, visita https://github.com/sadreck/Codecepticon per l'ultima versione.

Codecepticon version

Indice

  • Introduzione
  • Leggi prima
  • Prerequisiti
    • Visual Studio
    • Compilatore Roslyn
    • Verifica se funziona
  • Utilizzo di Codecepticon
    • C#
    • VBA/VB6
    • PowerShell
    • Offuscamento degli argomenti da riga di comando
    • Approfondimento delle funzionalità
    • Suggerimenti
    • Problemi noti
    • Firma degli eseguibili
  • FAQ
  • Risoluzione dei problemi
  • Contributi
  • Riferimenti / Crediti

Introduzione

Codecepticon è un'applicazione .NET che permette di offuscare codice sorgente C#, VBA/VB6 (macro) e PowerShell, sviluppata per attività offensive di sicurezza come Red/Purple Team. Ciò che distingue Codecepticon da altri offuscatori è che colpisce il codice sorgente anziché gli eseguibili compilati, ed è stato sviluppato specificamente per l'evasione di AV/EDR.

Codecepticon consente di offuscare e riscrivere il codice, ma offre anche funzionalità come la riscrittura della riga di comando.

Leggi prima

! Prima di iniziare !

  • Questa documentazione riguarda solo l'installazione e l'utilizzo di Codecepticon. Non verrà fornita assistenza per la compilazione, l'uso o il supporto di strumenti come Rubeus e SharpHound. Fare riferimento separatamente al repository di ciascun progetto per maggiori informazioni.

  • Codecepticon è attivamente sviluppato/testato in VS2022, ma dovrebbe funzionare anche in VS2019. Qualsiasi ticket/segnalazione creata per VS2019 e versioni precedenti non verrà presa in esame a meno che il problema non sia riproducibile in VS2022. Quindi si prega di utilizzare l'ultima versione di VS2022.

  • I seguenti pacchetti DEVONO essere v3.9.0, poiché le versioni più recenti presentano il seguente problema ancora aperto: https://github.com/dotnet/roslyn/issues/58463

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

    Codecepticon verifica la versione di questi pacchetti all'avvio e ti informerà se la versione è diversa dalla 3.9.0.

  • Non si può sottolineare abbastanza: testa sempre il codice offuscato localmente prima.

Prerequisiti

Visual Studio Pro/Community 2022

VS2022 .NET

Compilatore Roslyn

VS2022 Roslyn

Apri e compila

Apri Codecepticon, attendi che tutti i pacchetti NuGet siano scaricati e poi compila la soluzione.

Utilizzo di Codecepticon

Ci sono due modi per usare Codecepticon: inserire tutti gli argomenti nella riga di comando oppure passare un singolo file di configurazione XML. A causa dell'elevato numero di personalizzazioni supportate, non è consigliabile esaminare manualmente l'output di --help per cercare di capire quali parametri usare e come. Usa CommandLineGenerator.html e genera rapidamente il tuo comando:

Generatore di riga di comando

Il formato di output del generatore di comandi può essere Console o XML, a seconda delle preferenze. I comandi della console possono essere eseguiti come:

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

Mentre quando si utilizza un file di configurazione XML, come:

root@kitploit:~
Codecepticon.exe --config C:\Tuo\Percorso\Al\File.xml

Se vuoi approfondire le funzionalità di Codecepticon, dai un'occhiata a questo documento.

Per suggerimenti utili, vedi questo documento.

C#

Offuscare un progetto C# è semplice, basta selezionare la soluzione che si desidera targetizzare. Nota che non verrà creata una copia di backup della soluzione stessa e quella corrente verrà offuscata. Assicurati di poter compilare indipendentemente il progetto target prima di provare a eseguire Codecepticon contro di esso.

VBA/VB6

L'offuscamento VBA agisce sul codice sorgente stesso piuttosto che su un documento Microsoft Office. Ciò significa che non è possibile passare un file doc(x) o xls(x) a Codecepticon. Dovrà essere il codice sorgente del modulo stesso (premi Alt-F11 e copia il codice da lì).

PowerShell

A causa della complessità degli script PowerShell, insieme alla libertà che offre nel modo di scrivere script, è difficile coprire tutti i casi limite e garantire che il risultato offuscato sia completamente funzionale. Sebbene ci si aspetti che Codecepticon funzioni bene con script/funzionalità semplici, eseguirlo su script complessi come PowerView non funzionerà - è un lavoro in corso.

Offuscamento degli argomenti da riga di comando

Dopo aver offuscato un'applicazione o uno script, è molto probabile che anche gli argomenti della riga di comando siano stati rinominati. La soluzione è utilizzare il file di mappatura HTML per trovare i nuovi nomi. Ad esempio, convertiamo la seguente riga di comando:

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

Cercando nel file di mappatura HTML ogni argomento, otteniamo:

Mappatura Uno

Mappatura Due

Mappatura Tre

E sostituendo tutte le stringhe il risultato è:

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

Tuttavia, alcuni valori possono esistere in più di una categoria:

Mappatura Quattro

Pertanto è fondamentale testare sempre il risultato in un ambiente locale prima.

Firma degli eseguibili

È anche possibile utilizzare Codecepticon per firmare digitalmente file eseguibili (l'output compilato). Codecepticon può sia generare un certificato di firma per te, sia utilizzarlo (o qualsiasi altro tu possa fornire) per firmare il file target.

FAQ

Perché non esiste una versione compilata in Releases che posso scaricare?

L'output compilato include molte DLL di dipendenze che, a causa dei requisiti di licenza, non possiamo ridistribuire senza un consenso scritto.

Codecepticon funziona solo per progetti C# che hanno già un profilo supportato?

No, Codecepticon dovrebbe funzionare con tutto. I profili sono solo piccole regolazioni extra applicate al progetto target per renderlo più affidabile e facile da gestire.

Ma poiché tutto il codice è unico, ci saranno casi in cui l'offuscamento di un progetto terminerà con uno o due errori che ne impediranno la compilazione o l'esecuzione. In tal caso potrebbe essere necessario un nuovo profilo: per favore apri una nuova segnalazione se è così.

Lo stesso principio si applica al codice PowerShell/VBA, anche se attualmente non hanno profili inclusi in Codecepticon, è un compito semplice aggiungerli se necessario.

Posso contribuire?

Per segnalare bug e suggerire nuove funzionalità, per favore crea un'issue.

Per inviare pull request, vedi la sezione Contributi.

Risoluzione dei problemi

Uso Codecepticon su un progetto C#, viene eseguito, ma dopo non riesco a compilare il progetto target.

Prima di eseguire Codecepticon assicurati di poter compilare una versione pulita del progetto target. Molto spesso quando si verifica questo problema, è dovuto a dipendenze mancanti per la soluzione target piuttosto che a Codecepticon. Ma se ancora non compila:

  • È un progetto pubblico? Crea un'issue e incolla il link con quanti più dettagli possibile. Se lo strumento fa parte di SharpCollection, ancora meglio.
  • È un progetto privato? Nello spirito di migliorare Codecepticon cercheremo di fornire il massimo supporto possibile tramite screenshot e messaggi di errore/debug. Ma non accederemo né eseguiremo alcun codice pulito/offuscato tramite repository privati, ecc.

Stessa cosa, ma è uno script PowerShell/VBA - puoi aiutarmi?

Farò del mio meglio, ma poiché gli script PowerShell possono essere MOLTO complessi e PSParser non è avanzato come Roslyn per C#, non posso promettere nulla. Lo stesso vale per VBA/VB6.

Continuo a ricevere: "Method not found: 'System.Collections.Immutable.ImmutableArray"

Potresti incontrare il seguente errore:

Metodo non trovato

Sto ancora cercando di risalire alla causa, una soluzione rapida è disinstallare e reinstallare il pacchetto System.Collections.Immutable dal Gestore pacchetti NuGet.

Contributi

Che si tratti di un refuso, di un bug o di una nuova funzionalità, Codecepticon è molto aperto ai contributi purché concordiamo su quanto segue:

  • Sei d'accordo con la licenza MIT di questo progetto.
  • Prima di creare una pull request, crea un'issue in modo che possa essere discussa prima di iniziare qualsiasi lavoro, poiché lo sviluppo interno non è tracciato tramite il repository pubblico di GitHub. Altrimenti rischi che la pull request venga respinta se, ad esempio, stiamo già lavorando sulla stessa funzionalità o simile, o per qualsiasi altra ragione.

Riferimenti / Crediti

  • 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
Scarica lo strumento