Esecuzione tramite InstallUtil: Signed Binary Proxy Execution - InstallUtil (T1218.004)

InstallUtil rappresenta una utility Microsoft legittima che gli attaccanti sfruttano per eseguire codice malevolo sotto le sembianze di un processo fidato. Questo strumento, progettato per l'installazione di componenti .NET, diventa un vettore d'attacco quando viene utilizzato per caricare assembly contenenti codice arbitrario decorato con l'attributo [System.ComponentModel.RunInstaller(true)].

La tecnica si inserisce nella tattica TA0005 (Defense Evasion) della kill chain, permettendo agli avversari di bypassare i controlli di sicurezza durante la fase di esecuzione del payload. L'utility risiede nelle directory del framework .NET ed è digitalmente firmata da Microsoft, caratteristiche che la rendono particolarmente efficace nell'eludere soluzioni di application control.

2 gruppi APT hanno integrato questa tecnica nel loro arsenale, mentre 4 software malevoli documentati la utilizzano attivamente per scaricare contenuti aggiuntivi o disabilitare le difese del sistema.

La simulazione di questa tecnica richiede la creazione di un assembly .NET contenente il codice da eseguire. Il primo passo consiste nel compilare un semplice installer malevolo che sfrutti l'attributo RunInstaller.

C:\Windows\Microsoft.NET\Framework64\v4.0.30319\csc.exe /target:library /out:test.dll test.cs

Il codice C# deve includere una classe decorata con l'attributo appropriato. Una volta compilato l'assembly, l'esecuzione avviene tramite InstallUtil con sintassi minimale che spesso passa inosservata.

C:\Windows\Microsoft.NET\Framework64\v4.0.30319\InstallUtil.exe /logfile= /LogToConsole=false /U test.dll

I parametri /logfile= e /LogToConsole=false sono cruciali per ridurre le tracce forensi. L'opzione /U (uninstall) viene preferita dagli attaccanti perché genera meno log rispetto all'installazione standard.

Per testare scenari più complessi, è possibile concatenare l'esecuzione con download di payload remoti. Chaes utilizza questa tecnica combinandola con chiamate HTTP per recuperare componenti aggiuntivi. La simulazione può includere assembly che scaricano ed eseguono PowerShell in memoria.

Le varianti includono l'utilizzo di percorsi UNC per caricare assembly da share di rete, aumentando la furtività dell'attacco. Durante i red team engagement, questa tecnica risulta particolarmente efficace contro ambienti con AppLocker configurato per bloccare solo eseguibili non firmati.

Vuoi diventare un Ethical Hacker ma non sai da dove iniziare?

Scarica la guida gratuita e segui il percorso corretto fin dal primo passo