Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!
OffensivePipeline — OfensivePipeline ti permette di scaricare e compilare strumenti C#, applicando alcune modifiche al fine di migliorare la loro evasione per esercizi di Red Team. | Kitploit
OfensivePipeline ti permette di scaricare e compilare strumenti C#, applicando alcune modifiche al fine di migliorare la loro evasione per esercizi di Red Team.
OffensivePipeline ti permette di scaricare e compilare strumenti C#, applicando determinate modifiche per migliorare l'elusione per esercitazioni di Red Team.
Un uso comune di OffensivePipeline è scaricare uno strumento da un repository Git, randomizzare determinati valori nel progetto, compilarlo, offuscare il binario risultante e generare uno shellcode.
Caratteristiche
Attualmente supporta solo progetti C# (.Net Framework)
Permette di clonare repository git pubblici e privati (serviranno credenziali :D)
Permette di lavorare con cartelle locali
Randomizza i GUID del progetto
Randomizza le informazioni dell'applicazione contenute in AssemblyInfo
Compila progetti C#
Offusca i binari generati
Genera shellcode dai binari
Ci sono 79 strumenti parametrizzati in template YML (non tutti potrebbero funzionare :D)
Nuovi strumenti possono essere aggiunti usando template YML
Dovrebbe essere facile aggiungere nuovi plugin...
Novità nella versione 2.0
Riscrittura quasi completa del codice (nuovi bug?)
Clonazione da repository privati possibile (autenticazione tramite authToken di GitHub)
Possibilità di copiare una cartella locale invece di clonare da un repository remoto
Raw Payload: C:\OffensivePipeline\Output\Rubeus_vh00nc50xud\ConfuserEx\Donut\Rubeus.bin
B64 Payload: C:\OffensivePipeline\Output\Rubeus_vh00nc50xud\ConfuserEx\Donut\Rubeus.bin.b64
root@kitploit:~
[+] No errors!
[+] Generating Sha256 hashes
Output file: C:\OffensivePipeline\Output\Rubeus_vh00nc50xud
root@kitploit:~
SUMMARY
Rubeus
- RandomGuid: OK
- RandomAssemblyInfo: OK
- BuildCsharp: OK
- ConfuserEx: OK
- Donut: OK
root@kitploit:~
## Plugin
- **RandomGuid**: randomizza il GUID nei file *.sln*, *.csproj* e *AssemblyInfo.cs*
- **RandomAssemblyInfo**: randomizza i valori definiti in *AssemblyInfo.cs*
- **BuildCsharp**: compila il progetto C#
- **ConfuserEx**: offusca strumenti C#
- **Donut**: usa Donut per generare shellcode. Lo shellcode generato è senza parametri, in future versioni questo potrebbe essere cambiato.
## Aggiungere uno strumento da un git remoto
Gli script per scaricare gli strumenti sono nella cartella **Tools** in formato ***yml***. Nuovi strumenti possono essere aggiunti creando nuovi file *yml* con il seguente formato:
- *Rubeus.yml* file:```yml
tool:
- name: Rubeus
description: Rubeus is a C# toolset for raw Kerberos interaction and abuses
gitLink: https://github.com/GhostPack/Rubeus
solutionPath: Rubeus\Rubeus.sln
language: c#
plugins: RandomGuid, RandomAssemblyInfo, BuildCsharp, ConfuserEx, Donut
authUser:
authToken:
toolArguments:
Dove:
Name: nome dello strumento
Description: descrizione dello strumento
GitLink: link git per clonare
SolutionPath: percorso della soluzione (file sln)
Language: linguaggio utilizzato (attualmente solo c# è supportato)
Plugins: plugin da usare nel processo di build di questo strumento
AuthUser: nome utente da github (non utilizzato per repository pubbliche)
AuthToken: token di autenticazione da github (non utilizzato per repository pubbliche)
Dove:
- Name: nome dello strumento
- Description: descrizione dello strumento
- GitLink: link git per clonare
- SolutionPath: percorso della soluzione (file *.sln*)
- Language: linguaggio utilizzato (al momento è supportato solo c#)
- Plugins: plugin da utilizzare nel processo di build di questo strumento
- AuthUser: nome utente da GitHub
- AuthToken: token di autenticazione da GitHub (documentato su GitHub: [creazione di un personal access token](https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token
))
- toolArguments: argomenti da incorporare nel donut shellcode
## Aggiungere uno strumento da una cartella git locale```yml
tool:
- name: SeatbeltLocal
description: Seatbelt is a C# project that performs a number of security oriented host-survey "safety checks" relevant from both offensive and defensive security perspectives.
gitLink: C:\Users\alpha\Desktop\SeatbeltLocal
solutionPath: SeatbeltLocal\Seatbelt.sln
language: c#
plugins: RandomGuid, RandomAssemblyInfo, BuildCsharp, ConfuserEx, Donut
authUser:
authToken:
toolArguments:
Dove:
Name: nome dello strumento
Description: descrizione dello strumento
GitLink: percorso in cui si trova lo strumento
SolutionPath: percorso del file di soluzione (.sln)
Language: linguaggio utilizzato (attualmente è supportato solo c#)
Plugins: plugin da utilizzare nel processo di build di questo strumento
AuthUser: nome utente da Github (non utilizzato per repository locali)
AuthToken: token di autenticazione da Github (non utilizzato per repository locali)
toolArguments: argomenti da incorporare nel donut shellcode
Requisiti per la versione di rilascio (Visual Studio 2019/2022 non è richiesto)
Descrizione: Uno strumento per escalare i privilegi in una rete Active Directory forzando l'autenticazione da account macchina (Petitpotam) e relay verso il servizio certificati.
Descrizione: Questo fork modificato di SafetyKatz recupera dinamicamente l'ultima release precompilata di Mimikatz direttamente dal repository GitHub di gentilkiwi, applica patch runtime sulle firme rilevate e usa SharpSploit DInvoke per caricarlo in memoria.
Descrizione: Strumento C# per installare una stampante di rete condivisa abusando del bug PrinterNightmare per consentire ad altre macchine di rete una facile escalation di privilegi!
Descrizione: Enumerate Domain Data è progettato per essere simile a PowerView ma in .NET. PowerView è essenzialmente lo strumento definitivo per l'enumerazione di dominio, e volevamo un'implementazione .NET su cui abbiamo lavorato noi stessi. Questo strumento è stato in gran parte assemblato osservando le implementazioni di diverse funzionalità in un'ampia gamma di progetti esistenti e combinandole in EDD.
Descrizione: Un piccolo strumento Proof-of-Concept che consente di autenticarsi contro un server LDAP/S con un certificato per eseguire diverse azioni di attacco.
Descrizione: PurpleSharp è uno strumento open source di simulazione avversaria scritto in C# che esegue tecniche avversarie in ambienti Windows Active Directory.
Descrizione: SafetyKatz è una combinazione di una versione leggermente modificata del progetto Mimikatz di @gentilkiwi e del .NET PE Loader di @subtee.
Descrizione: Seatbelt è un progetto C# che esegue una serie di 'controlli di sicurezza' orientati alla sicurezza del sistema host, rilevanti sia da una prospettiva offensiva che difensiva.
Descrizione: SharpChromium è un progetto .NET 4.0+ CLR per recuperare dati da Google Chrome, Microsoft Edge e Microsoft Edge Beta. Attualmente può estrarre
Descrizione: SharpCloud è una semplice utility C# per verificare l'esistenza di file di credenziali relativi ad Amazon Web Services, Microsoft Azure e Google Compute.
Descrizione: SharpDir è un semplice insieme di codice per cercare file sia su file system locali che remoti usando lo stesso processo SMB di dir.exe, che utilizza la porta TCP 445.
Descrizione: Controlla processi in esecuzione, metadati dei processi, DLL caricate nel processo corrente e metadati di ogni DLL, directory di installazione comuni, servizi installati e metadati dei binari di ogni servizio, driver installati e metadati di ogni driver, tutto per la presenza di prodotti difensivi noti come AV, EDR e strumenti di logging.
Descrizione: SharpGPOAbuse è un'applicazione .NET scritta in C# che può essere utilizzata per sfruttare i diritti di modifica di un utente su un oggetto Criteri di gruppo (GPO) al fine di compromettere gli oggetti controllati da quel GPO.
Descrizione: Questo progetto riutilizza handle aperti a lsass per analizzare o eseguire minidump di lsass, quindi non è necessario utilizzare il proprio handle lsass per interagirvi. (Versione Dinvoke)
Descrizione: SharpHose è uno strumento C# per password spraying progettato per essere veloce, sicuro e utilizzabile tramite execute-assembly di Cobalt Strike.
Descrizione: Questo eseguibile è realizzato per essere eseguito all'interno di una sessione Cobalt Strike usando execute-assembly. Recupererà la password LAPS da Active Directory.
Descrizione: Crea un minidump del processo LSASS dalla memoria (Windows 10 - Windows Server 2016). L'intero processo utilizza chiamate API dinamiche, syscall dirette e unhooking delle API native per eludere il rilevamento di AV/EDR.
Descrizione: Questo progetto è uno strumento C# per usare Pass-the-Hash per l'autenticazione su una Named Pipe locale per l'impersonificazione dell'utente. Per utilizzarlo è necessario essere amministratore locale o avere diritti SEImpersonate.
Descrizione: SharpReg è un semplice insieme di codice per interagire con l'API del servizio Registro remoto usando lo stesso processo SMB di reg.exe, che utilizza la porta TCP 445.
Descrizione: SharpSCCM è uno strumento post-exploitation progettato per sfruttare Microsoft Endpoint Configuration Manager (noto anche come ConfigMgr, in precedenza SCCM) per movimento laterale e raccolta di credenziali senza richiedere l'accesso alla GUI della console di amministrazione SCCM.
Descrizione: Binario rapido e sporco per elencare le informazioni sulle condivisioni di rete da tutte le macchine nel dominio corrente e se sono leggibili.
Descrizione: SharpSphere offre ai red team la possibilità di interagire facilmente con i sistemi operativi guest delle macchine virtuali gestite da vCenter.
Descrizione: SharpSpray è un semplice insieme di codice per eseguire un attacco di password spraying contro tutti gli utenti di un dominio usando LDAP ed è compatibile con Cobalt Strike.
Descrizione: SharpSvc è un semplice insieme di codice per interagire con l'API SC Manager usando lo stesso processo DCERPC di sc.exe, che si apre con la porta TCP 135 e successivamente utilizza una porta TCP effimera.
Descrizione: SharpTask è un semplice insieme di codice per interagire con l'API del servizio Task Scheduler usando lo stesso processo DCERPC di schtasks.exe, che si apre con la porta TCP 135 e successivamente utilizza una porta TCP effimera.
Descrizione: Un exploit per CVE-2020-1472, noto come Zerologon. Questo strumento sfrutta una vulnerabilità crittografica in Netlogon per ottenere un bypass dell'autenticazione.
Descrizione: Sebbene il driver di Sysmon possa essere rinominato durante l'installazione, viene sempre caricato all'altitudine 385201. L'obiettivo di questo strumento è sfidare l'ipotesi che i nostri strumenti difensivi raccolgano sempre eventi.
Descrizione: Snaffler è uno strumento per pentester e red team per aiutare a trovare deliziosi aghi di caramella (credenziali per lo più, ma è flessibile) in un mucchio di orribili e noiosi pagliai (un enorme ambiente Windows/AD).
Descrizione: Whisker è uno strumento C# per assumere il controllo di account utente e computer di Active Directory manipolando il loro attributo msDS-KeyCredentialLink, aggiungendo di fatto 'Shadow Credentials' all'account target.
Descrizione: Whisker è uno strumento C# per assumere il controllo di account utente e computer di Active Directory manipolando il loro attributo msDS-KeyCredentialLink.