Ricognizione Software Installato: Software Discovery (T1518)

Software Discovery è la tecnica con cui un attaccante enumera applicazioni, versioni e componenti presenti su un sistema compromesso o su un ambiente cloud. L'obiettivo è duplice: da un lato identificare software vulnerabile sfruttabile per escalation o esecuzione remota, dall'altro riconoscere la presenza di soluzioni di sicurezza, agent EDR, tool di gestione o applicazioni bersaglio (browser, client bancari, wallet crypto) che orienteranno le fasi successive.

Collocata nella tattica TA0007 (Discovery), la tecnica appartiene alla fase post-compromise della kill chain, immediatamente successiva all'esecuzione iniziale del payload. È spesso una delle prime azioni automatizzate dei loader e degli stealer, perché il risultato dell'enumerazione condiziona l'attivazione di moduli aggiuntivi o l'abbandono del target quando l'ambiente risulta ostile (sandbox, honeypot, workstation di analisti).

I numeri MITRE ATT&CK confermano la centralità: 11 gruppi APT documentati la impiegano, 36 famiglie di malware integrano capacità di enumerazione software e la tecnica compare in 3 campagne rilevanti come Operation Wocao, Operation Dust Storm e Juicy Mix. Non esistono mitigazioni ufficiali associate, perché l'enumerazione sfrutta funzionalità legittime del sistema operativo — chiavi di registro, package manager, API di inventario — rendendo la difesa un problema puramente comportamentale e di detection.

In un ingaggio red team, l'enumerazione software è una fase silenziosa ma decisiva: guida la scelta degli exploit e riduce il rumore evitando payload inutili. Su Windows il metodo più discreto è la lettura diretta del registro, che non richiede privilegi elevati e non genera eventi WMI:

reg query "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall" /s

Una variante più mirata, usata dal malware HotCroissant, interroga la chiave SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths per ottenere il percorso degli eseguibili registrati. Da PowerShell si ottiene un inventario strutturato con:

Get-ItemProperty HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall* | Select-Object DisplayName, DisplayVersion, Publisher

WMI resta un'opzione (wmic product get name,version), ma è rumoroso e forza un consistency check MSI che triggera log evidenti — da evitare in operazioni stealth. Per identificare AV/EDR installati si può interrogare il Security Center via WMI namespace root\SecurityCenter2, tecnica classica dei loader moderni.

Su Linux dpkg e rpm sono standard: dpkg -l su distribuzioni Debian-based, rpm -qa su RHEL/Fedora. Per enumerazione manuale senza package manager si ispezionano /usr/bin, /opt e i file .desktop in /usr/share/applications. Il gruppo Windigo ha usato script bash per fingerprintare il software installato.

Su macOS il comando canonico è:

system_profiler SPApplicationsDataType

oppure la lettura diretta dei file info.plist dentro /Applications/*.app/Contents/, esattamente il metodo impiegato da LightSpy e Bundlore. Un approccio più leggero è ls -la /Applications combinato con mdfind "kMDItemKind == 'Application'".

Su ESXi l'inventario di moduli e VIB si ottiene con:

esxcli software vib list

utile per identificare hypervisor unpatched o driver vulnerabili prima di un deployment di ransomware.

In ambiente cloud AWS si può sfruttare Systems Manager Inventory se le credenziali compromesse hanno i permessi giusti (aws ssm list-inventory-entries --instance-id ... --type-name AWS:Application). Su Azure l'equivalente è Resource Graph con query KQL sulle risorse Compute.

Per simulare la tecnica in laboratorio, Atomic Red Team (open source) include test T1518 pronti all'uso, mentre Caldera (open source) di MITRE permette di orchestrare catene Discovery complete. Sysmon (gratuito) sul target consente di misurare la visibilità difensiva delle proprie azioni.

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

Accedi alle lezioni gratuite e segui il percorso corretto fin dal primo passo

TEST GRATUITO
2 minuti · 7 domande Che professionista cyber sei? Scopri il profilo più vicino al tuo modo di pensare e inizia dal percorso giusto.
We use cookies

Utilizziamo i cookie sul nostro sito Web. Alcuni di essi sono essenziali per il funzionamento del sito, mentre altri ci aiutano a migliorare questo sito e l'esperienza dell'utente (cookie di tracciamento). Puoi decidere tu stesso se consentire o meno i cookie. Ti preghiamo di notare che se li rifiuti, potresti non essere in grado di utilizzare tutte le funzionalità del sito.