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
demiguise — Strumento di crittografia HTA per RedTeams | Kitploit
Strumenti/GitHubGitHub/nccgroup/demiguise
Strumenti di PhishingGenerazione di PayloadEvasione IDS/IPSSfruttamento di Applicazioni WebRed Teaming
GitHubnccgroup/demiguise

demiguise

Strumento di crittografia HTA per RedTeams

Vedi Repository
1.4k24674 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
Sito web

Demiguise - strumento di crittografia HTA

Rilasciato come open source da NCC Group Plc - http://www.nccgroup.trust/

Sviluppato da Richard Warren, richard [dot] warren [at] nccgroup [dot] trust

http://www.github.com/nccgroup/demiguise

Rilasciato sotto AGPL, vedi LICENSE per maggiori informazioni

Cosa fa?

L'obiettivo di questo progetto è generare file .html che contengono un file HTA crittografato. L'idea è che quando il tuo target visita la pagina, la chiave viene recuperata e l'HTA viene decifrato dinamicamente nel browser e inviato direttamente all'utente. Questa è una tecnica di evasione per superare l'ispezione del contenuto/tipo di file implementata da alcuni dispositivi di sicurezza. Questo strumento non è progettato per creare contenuti HTA eccezionali. Ci sono molti altri strumenti/tecniche che possono aiutarti in questo. Ciò con cui potrebbe aiutarti è inizialmente ottenere il tuo HTA in un ambiente e (se usi la chiave ambientale) evitare che venga eseguito in sandbox.

Come funziona?

Ciò si ottiene crittografando il file HTA usando RC4, e poi utilizzando navigator.msSaveBlob per "salvare" il file in fase di esecuzione - invece di recuperare l'HTA direttamente dal server. Ciò significa che in nessun momento c'è una richiesta/risposta HTTP che contenga il tuo file HTA in forma di testo semplice - il proxy vedrà semplicemente un file text/html contenente il tuo blob crittografato. Nell'ultima versione di Edge, ciò porterà l'utente a essere invitato a "eseguire" l'HTA.

Sebbene non sia l'obiettivo principale di questo strumento, ci sono un paio di opzioni di payload per l'HTA sottostante. Ogni opzione utilizza tecniche diverse come documentato in precedenza da Matt Nelson, Matthew Demaske, Ryan Hanson e Etienne Stalmans. Il vantaggio di usare queste tecniche è che il tuo codice non viene eseguito come figlio di mshta.exe. Come detto in precedenza, il contenuto dell'HTA non è l'obiettivo principale di questo strumento. Ti incoraggio a modificare il template HTA per contenere il tuo codice personalizzato :)

Come si esegue?

Esegui il file demiguise.py, fornendo la tua chiave di crittografia, il tipo di payload, il nome del file di output e il comando che vuoi che l'HTA esegua.

Esempio: python demiguise.py -k hello -c "notepad.exe" -p Outlook.Application -o test.hta

Chiave ambientale

Per eludere le sandbox, non dovresti incorporare la tua chiave direttamente nell'HTA. Invece dovresti ottenerla dinamicamente dall'ambiente in cui si trova il target. Un esempio potrebbe essere usare l'indirizzo IP esterno del client come chiave. Il vantaggio è che se il codice viene eseguito in una sandbox di terze parti, l'HTA non verrà decifrato. In effetti, nemmeno il nome del file verrà decifrato, il che significa che nessuno saprà cosa fa/è il tuo payload :)

Alcuni esempi di chiave ambientale sono forniti in examples/externalip.js e examples/virginkey.js.

Bonus

Poiché lo strumento produce un file HTML contenente JavaScript, puoi semplicemente prendere questo JS e ospitarlo dove preferisci. Ciò significa che se il sito web del tuo cliente è vulnerabile a XSS riflesso, puoi usarlo per servire il tuo file HTA dal loro dominio (altamente affidabile).

Inoltre, Outlook non blocca gli allegati .html per impostazione predefinita, e nemmeno alcune altre applicazioni - usa la tua immaginazione! :)

Rilevamento

Attualmente non viene rilevato su VT:

https://www.virustotal.com/en/file/24b86ee6210b2abc446021feacfe25502b60403455aa24a32c80b2e7b0f81a70/analysis/1499880541/

Difesa

Sebbene le tecniche di offuscamento possano essere difficili da firmare, un modo per difendersi dagli attacchi HTA è impedire che l'HTA stesso possa essere eseguito in primo luogo. Ciò può essere ottenuto tramite l'uso di Software Restriction Policy (SRP), Device Guard (su Windows 10 e Server 2016), o modificando il gestore di file predefinito associato ai file .hta.

Si noti che queste modifiche potrebbero potenzialmente influenzare l'esecuzione di software che si basa sull'esecuzione degli HTA. Pertanto si raccomanda di testare completamente la soluzione nel proprio ambiente.

Usando SRP:

Modificando il gestore di file predefinito:

root@kitploit:~
ftype htafile=%SystemRoot%\system32\NOTEPAD.EXE %1

Ripristino (x64):

root@kitploit:~
ftype htafile=C:\Windows\SysWOW64\mshta.exe "%1" {1E460BD7-F1C3-4B2E-88BF-4E770A288AF5}%U{1E460BD7-F1C3-4B2E-88BF-4E770A288AF5} %*

FAQ

  • Non viene salvato su disco?
    • Testando sull'ultima versione di Edge, viene "salvato su disco" solo nello stesso modo in cui serve un HTA normale. Finirà comunque come file temporaneo sul disco.
  • Perché dovrei usarlo quando ho già un rilevamento sandbox per $product controllando lo stato di appartenenza al dominio / stampanti ecc.?
    • L'obiettivo dello strumento è evitare di essere eseguito in una sandbox in primo luogo. Se scegli le tue chiavi saggiamente, l'HTA non si decifrerà nemmeno correttamente, e $product non saprà che è un file HTA - il che significa che non può essere eseguito dalla sandbox.
  • Come trovo una fonte di chiave ambientale senza prima avere accesso alla rete di destinazione?
    • Questo è lasciato come esercizio per il lettore, tuttavia può spesso essere scoperto con un buon OSINT. Se stai conducendo campagne di fingerprinting, dai un'occhiata a WebFEET e BeEF per un po' di ispirazione.

Ringraziamenti / Lavori precedenti

  • Matt Nelson - Tecniche di esecuzione COM WbemScripting.SWbemLocator e ShellBrowserWindow
  • Matthew Demaske - PoC di esecuzione COM WbemScripting.SWbemLocator
  • Ryan Hanson - Tecnica di esecuzione COM Excel.Application.RegisterXLL
  • Etienne Stalmans - Tecnica di esecuzione COM Outlook.Application.CreateObject
  • Brandon Arvanaghi e Chris Truncer's strumento CheckPlease.
  • The Empire Project
Scarica lo strumento