Iscriviti al webinar gratuito del 12 Maggio per diventare Forensic Analyst! Scopri di più
Corso Ethical Hacker: accedi alla promozione fino al 30 Aprile! Scopri di più
CMSTP.exe è il Microsoft Connection Manager Profile Installer, un binario legittimo di Windows concepito per installare profili di connessione remota tramite file INF. La sua natura firmata da Microsoft lo rende un veicolo ideale per il proxy execution: gli avversari lo sfruttano per caricare DLL, COM scriptlet (SCT) e comandi arbitrari aggirando i controlli di sicurezza applicativi.
La tecnica ricade nella tattica Defense Evasion (TA0005), quella fase della kill chain in cui l'attaccante cerca di passare inosservato. Il meccanismo è semplice quanto efficace: un file INF malevolo viene passato come parametro a CMSTP.exe, che lo processa con i privilegi e la fiducia riservati a un binario Microsoft. Il risultato è duplice — bypass di AppLocker e di altri application control, e potenziale bypass di User Account Control (UAC) attraverso le interfacce COM auto-elevate CMSTPLUA e CMLUAUTIL.
L'impatto documentato è concreto: 2 gruppi APT, 2 famiglie malware e 2 mitigazioni censite dimostrano che questa tecnica non è un esercizio teorico ma uno strumento operativo consolidato nel panorama delle minacce. La semplicità di implementazione — un singolo binario, un file di testo INF — la rende particolarmente insidiosa perché non richiede il drop di eseguibili sospetti sul disco.
L'abuso di CMSTP.exe si articola in due scenari principali: il proxy execution di payload da file INF e il bypass UAC tramite interfacce COM auto-elevate. Entrambi sono replicabili in laboratorio con strumenti nativi di Windows.
Scenario 1 — Esecuzione via INF malevolo. Il cuore della tecnica sta nella creazione di un file INF che, nella sezione [UnRegisterOCXs], richiama uno scriptlet remoto o un comando locale. La struttura di un INF minimale per il test è questa:
[version]
Signature=$chicago$
AdvancedINF=2.5
[DefaultInstall_SingleUser]
UnRegisterOCXs=UnRegisterOCXSection
[UnRegisterOCXSection]
%11%\scrobj.dll,NI,<percorso-sct-locale-o-placeholder>
Una volta creato il file, l'esecuzione avviene con un singolo comando. La sintassi usata da Cobalt Group è rivelatrice:
cmstp.exe /s /ns C:\Users\ADMINI~W\AppData\Local\Temp\XKNqbpzl.txt
Il flag /s impone l'installazione silenziosa, /ns impedisce la creazione di un collegamento sul desktop. L'estensione .txt è intenzionale: il binario accetta qualsiasi estensione purché il contenuto sia un INF valido, e rinominarlo aiuta a eludere regole di detection basate sull'estensione.
Scenario 2 — Bypass UAC via COM. CMSTP.exe espone le interfacce COM CMSTPLUA ({3E5FC7F9-9A51-4367-9063-A120244FBEC7}) e CMLUAUTIL, entrambe configurate per l'auto-elevazione. Un attaccante può istanziare l'oggetto COM da PowerShell o da un eseguibile custom per eseguire comandi con privilegi elevati senza trigger del prompt UAC. Framework come Metasploit (open source) includono il modulo exploit/windows/local/bypassuac_cmstp per automatizzare questo flusso.
Tool per il laboratorio. Il progetto Atomic Red Team (open source) contiene test atomici specifici per T1218.003 con file INF pre-costruiti. Per la generazione di payload SCT, è utile GreatSCT (open source), che produce scriptlet COM compatibili con CMSTP. L'intero flusso si testa su una macchina Windows 10/11 con Sysmon (open source) installato per verificare la telemetria generata.
Un consiglio operativo: durante il red team, monitorate voi stessi. Attivate Sysmon con una configurazione che logga process creation (EventID 1) e network connection (EventID 3), poi verificate se il vostro Blue Team riesce a vedere la catena CMSTP → scrobj.dll → connessione outbound.
Scarica la guida gratuita e segui il percorso corretto fin dal primo passo