
Strumento Stealthy In-Memory Local Password Harvester (SILPH): dump di LSA, SAM e DCC2 con indirect syscall

SILPH è uno strumento open-source per red team progettato per estrarre i segreti LSA, gli hash SAM e le credenziali DCC2 interamente in memoria, senza scrivere alcun file su disco.
A differenza del suo progetto upstream go-secdump, SILPH è costruito per essere integrato nel framework Orsted C2 ed è pensato per essere eseguito direttamente su un host Windows, evitando la necessità di creare un servizio tramite RPC.
Per prima cosa clona e compila (ti serve go):
git clone [email protected]:almounah/silph.git
cd silph
GOOS=windows GOARCH=amd64 go build -trimpath -ldflags="-s -w"
Poi esegui silph.exe.
PS C:\Users\haroun> Z:\silph.exe
███████╗██╗██╗ ██████╗ ██╗ ██╗
██╔════╝██║██║ ██╔══██╗██║ ██║
███████╗██║██║ ██████╔╝███████║
╚════██║██║██║ ██╔═══╝ ██╔══██║
███████║██║███████╗██║ ██║ ██║
╚══════╝╚═╝╚══════╝╚═╝ ╚═╝ ╚═╝
Stealthy In-Memory Password Harvester
"Well… I think I wanted to be like Eris."
Usage: Z:\silph.exe [options]
-dcc2
dump dcc2
-lsa
dump lsa
-sam
dump sam
Un nuovo modulo silph sarà presto aggiunto a Orsted C2. Consulta la documentazione di orsted per l'utilizzo.
Volevo uno strumento da integrare nel mio C2 per estrarre SAM e LSA.
Il problema è che non trovavo strumenti (o almeno mi sono sfuggiti) che facessero questo rispettando queste due condizioni:
Inoltre, documentandomi sull'argomento ho trovato un articolo molto interessante https://g3tsyst3m.com/threat%20hunting/Detecting-SAM-registry-hive-dumps-using-Elastic!/.
Fondamentalmente l'autore ci mostra come attivando alcune opzioni, un evento dirà ai blueteamer che il SAM viene estratto. Ha poi convogliato questo evento in Elastic. Puoi vedere l'evento attivato qui

Il codice Python che genera l'evento fornito nell'articolo utilizza RegOpenKeyEx e RegSaveKeyEx.
Esistono numerose tecniche per estrarre hive sensibili del registro di Windows. Gli approcci comuni includono utility e BOF che salvano su disco gli hive SAM, SYSTEM e SECURITY utilizzando strumenti come il comando reg o script personalizzati.
Un altro approccio prevede la creazione di una Copia Shadow del Volume e l'estrazione degli hive del registro dallo snapshot.
go-secdump ha introdotto una tecnica diversa. Quando è stato rilasciato per la prima volta nel 2023, si basava su un servizio che modificava i DACL del registro per concedersi l'accesso sufficiente. Ciò permetteva al servizio di enumerare le sottochiavi e interrogare i loro nomi e valori, consentendo il recupero dei segreti in testo chiaro.
Le API del registro di Windows utilizzate per enumerare chiavi e valori operano su handle di registro piuttosto che su oggetti basati su file, consentendo di eseguire queste operazioni senza scrivere dati su disco.
Nel 2025, Synacktiv ha inviato una pull request a Impacket introducendo regsecrets.py, che implementa un approccio simile. A differenza di go-secdump, questo metodo evita di modificare i DACL aprendo gli handle di registro con il flag REG_OPTION_BACKUP_RESTORE, garantendo le autorizzazioni necessarie per l'enumerazione e l'interrogazione.
SILPH segue questo approccio utilizzando REG_OPTION_BACKUP_RESTORE tramite chiamate NT native risolte da ntdll, sfruttando il progetto Superdeye per syscall indirette. Poiché SILPH è progettato per essere eseguito localmente sul sistema di destinazione, non è necessaria la creazione di un servizio, riducendo le potenziali rilevazioni di rete associate a strumenti remoti come Impacket.
Durante i test, l'esecuzione di SILPH nelle stesse condizioni di prima non ha generato voci aggiuntive nel registro eventi di Windows rispetto all'esecuzione di base.
SILPH prende il nome da Sylphiette di Mushoku Tensei.
All'inizio della sua vita, Sylphiette affronta isolamento e bullismo a causa dei suoi capelli verdi, che portano gli altri ad associarla alla temuta razza Superd. Piuttosto che superare questo con la forza o lo status, cresce attraverso l'apprendimento, la perseveranza e la guida, sviluppando gradualmente disciplina e controllo.
Questo rispecchia la filosofia di progettazione di SILPH: uno strumento autonomo che opera silenziosamente, viene eseguito interamente in memoria e si integra perfettamente senza lasciare traccia duratura.