Microsoft Defender può inviare automaticamente file presenti sul PC ai server Microsoft, senza chiedere ogni volta il consenso dell’utente. Una funzionalità pensata per migliorare il rilevamento delle minacce informatiche che, però, solleva interrogativi importanti quando coinvolge programmi proprietari, codice compilato in locale e software ancora in fase di sviluppo. Chi utilizza Windows 11 per programmare potrebbe aver condiviso inconsapevolmente alcune delle proprie applicazioni con i sistemi di analisi Microsoft.
Microsoft utilizza da tempo il servizio MAPS (Microsoft Active Protection Service) per analizzare file sospetti e identificare minacce sconosciute. Come avevamo spiegato nella nostra analisi sul funzionamento offline di Microsoft Defender, l’invio automatico dei campioni è una funzionalità configurabile: il problema è capire quali file possano lasciare il computer e come accertare che il trasferimento sia effettivamente avvenuto.
Microsoft Defender ha inviato 217 file in 3 mesi: la scoperta di un ricercatore
Garrett Stimpson, sviluppatore e ricercatore di sicurezza, ha documentato un caso particolarmente significativo. Analizzando il traffico del proprio PC Windows attraverso Hodometer (download), uno strumento di monitoraggio della rete associato ai processi, ha scoperto che MpCmdRun.exe, l’utilità da riga di comando di Microsoft Defender, aveva trasferito 224 MB verso Azure Storage nell’arco di una giornata.
Consultando il registro eventi dell’antivirus, Stimpson ha individuato 217 invii di campioni nell’arco di 3 mesi. Ben 201 riguardavano compilazioni successive dello stesso programma di test scritto in Go; buona parte dei restanti file consisteva in applicazioni sviluppate personalmente e mai distribuite pubblicamente. I campioni presentavano 216 hash SHA-256 differenti: non si trattava, quindi, soltanto della trasmissione ripetuta del medesimo eseguibile.
Stimpson ha inoltre riscontrato l’invio di uno script Python presente nel Cestino e un tentativo, non riuscito, di trasferire un file temporaneo appartenente a un database di sviluppo.
Perché Defender considera sicuro l’invio di un programma eseguibile?
La spiegazione arriva dalla documentazione ufficiale Microsoft: l’impostazione predefinita, denominata Send safe samples automatically, autorizza l’invio dei file che il sistema considera poco propensi a contenere informazioni personali identificabili.
Tra gli esempi, Microsoft cita esplicitamente le estensioni .exe, .dll, .bat e .scr. Il termine safe non si riferisce al fatto che il file sia innocuo, pubblico o privo di informazioni riservate: indica principalmente una valutazione sulla probabilità che contenga dati personali.
Un eseguibile compilato internamente può però incorporare algoritmi proprietari, stringhe, percorsi, informazioni di debug o altre componenti riservate. Un programma non ancora commercializzato potrebbe avere un valore economico considerevole, pur non contenendo dati personali.
La procedura prevista da Microsoft prevede l’invio iniziale di metadati al servizio cloud: se le informazioni non bastano per formulare un giudizio, Defender può richiedere il campione completo. Nel caso analizzato, i registri di supporto mostravano una segnalazione a bassa affidabilità, seguita dalla richiesta cloud e dalla restituzione di un indirizzo su blob.core.windows.net.
Come verificare quali file Microsoft Defender ha effettivamente inviato
Per effettuare un controllo non occorre installare programmi aggiuntivi. Microsoft documenta l’evento 2050, identificato come MALWAREPROTECTION_SAMPLESUBMISSION_UPLOADED: registra il percorso del file caricato e il relativo hash SHA-256.
Utilizzando una semplice cmdlet PowerShell, è possibile estrarre gli eventi degli ultimi 90 giorni con il seguente comando:
$eventi = @(Get-WinEvent -FilterHashtable @{LogName='Microsoft-Windows-Windows Defender/Operational'; Id=2050; StartTime=(Get-Date).AddDays(-90)} -ErrorAction SilentlyContinue); if ($eventi.Count -gt 0) { $eventi | Select-Object TimeCreated, Message | Format-List } else { Write-Host "Nessun evento 2050 trovato negli ultimi 90 giorni." }
Il risultato permette di controllare le date e i percorsi dei file trasmessi: chi sviluppa software dovrebbe cercare soprattutto le directory contenenti compilazioni, eseguibili di test, librerie proprietarie e progetti non ancora pubblicati.
In alternativa, si può aprire il Visualizzatore eventi di Windows (eventvwr.msc) e raggiungere Registri applicazioni e servizi, Microsoft, Windows, Windows Defender, Operational, filtrando gli eventi con ID 2050.
Controllare l’impostazione di invio e scoprire se è cambiata
Un secondo elemento emerso dall’indagine riguarda la configurazione di Defender: Stimpson aveva disabilitato l’invio automatico, ma circa 2 ore dopo l’intervento l’impostazione risultava nuovamente attiva. Il ricercatore non ha identificato la causa della modifica; non ci sono elementi sufficienti per attribuirla a un intervento autonomo di Microsoft. Per controllare la configurazione corrente si può eseguire quanto segue, sempre dalla finestra PowerShell:
Get-MpPreference | Select-Object MAPSReporting, SubmitSamplesConsent
Il parametro SubmitSamplesConsent può assumere uno dei seguenti 4 valori, ciascuno con un significato diverso:
- 0 richiede sempre conferma;
- 1 autorizza automaticamente i campioni considerati sicuri;
- 2 impedisce l’invio;
- 3 consente la trasmissione automatica di tutti i campioni.
Per ricostruire eventuali modifiche, bisogna cercare l’evento 5007:
Get-WinEvent -FilterHashtable @{LogName='Microsoft-Windows-Windows Defender/Operational'; Id=5007; StartTime=(Get-Date).AddDays(-90)} | Where-Object Message -match 'SubmitSamplesConsent' | Select-Object TimeCreated, Message | Format-List
Come impedire l’invio automatico senza disattivare l’antivirus
Per far sì che Defender non trasferisca più alcun “file campione” dal PC in uso, su Windows 11 è sufficiente aprire Sicurezza di Windows, selezionare Protezione da virus e minacce, Gestisci impostazioni e disattivare Invio automatico file di esempio.
In alternativa, da PowerShell avviato come amministratore, si può utilizzare il comando seguente:
Set-MpPreference -SubmitSamplesConsent NeverSend
Microsoft sottolinea che l’eventuale disabilitazione dell’invio dei campioni impedisce il funzionamento della componente Block at First Sight basata sull’analisi dei file nel cloud. Inoltre, Defender può continuare a trasmettere metadati relativi ai rilevamenti. Sui computer aziendali, le impostazioni possono dipendere da criteri centralizzati.
La questione non riguarda soltanto la privacy personale: per chi sviluppa applicazioni commerciali, gestisce codice soggetto ad accordi di riservatezza o lavora su prodotti non annunciati, l’invio automatico rappresenta un aspetto da valutare nella gestione delle informazioni aziendali. La protezione antivirus rimane fondamentale; altrettanto importante è sapere quali contenuti possono lasciare il computer e verificare periodicamente le impostazioni che ne autorizzano il trasferimento.