Si Windows Defender signale run.vbs au démarrage, ne l’ignorez pas : il s’agit presque toujours d’un script malveillant. Ce guide explique ce que c’est, comment l’éliminer proprement et comment empêcher sa réapparition.
Vue d’ensemble de la question
À chaque démarrage, Windows Defender déclenche une alerte sur run.vbs trouvé dans %AppData%\Update. Ce chemin n’appartient pas à Windows et un tel fichier n’est pas légitime pour le système. Dans l’immense majorité des cas, il s’agit d’un script VBScript utilisé par un cheval de Troie pour se relancer via des mécanismes de persistance (tâche planifiée, clés Run, dossier de démarrage, etc.).
Bonne nouvelle : Defender réagit correctement. Votre objectif est de laisser l’antivirus neutraliser le fichier, de supprimer le répertoire de relance, puis de nettoyer toute persistance résiduelle.
Réponse & solutions proposées
| Étape | Action recommandée | Détails / Pourquoi ? |
|---|---|---|
| 1 | Laisser Windows Defender mettre en quarantaine ou supprimer run.vbs. | Defender identifie correctement ce script comme un cheval de Troie : il tente généralement de désactiver la protection antivirus et de modifier des clés de registre critiques. |
| 2 | Supprimer manuellement le dossier %AppData%\Update (ou vérifier qu’il n’existe plus après la quarantaine). | Le dossier est créé par le malware pour se relancer. Sa suppression prévient toute réinfection locale. |
| 3 | Effectuer une analyse complète avec un second outil antimalware (ex. Malwarebytes Free, ESET Online Scanner, etc.). | Certains artefacts (scripts, clés de démarrage, tâches planifiées) peuvent rester actifs même après suppression du fichier principal. Un second avis détecte les restes. |
| 4 | Exécuter l’analyse « Windows Defender hors ligne » (Sécurité Windows › Protection contre les virus › Options d’analyse). | Lance Defender avant le chargement complet du système, ce qui neutralise les malwares capables de se cacher en session active. |
| 5 | Vérifier les points de persistance (Tâches planifiées, clés de registre Run, RunOnce, services). | Le script malveillant crée souvent une tâche planifiée camouflée (p. ex. nom aléatoire) qui déclenche wscript.exe vers le fichier supprimé. |
| 6 | Mettre Windows et les signatures Defender à jour, puis redémarrer. | Garantit que les dernières définitions et correctifs sont appliqués. |
Qu’est-ce que run.vbs ?
run.vbs est un fichier VBScript. Windows n’installe aucun run.vbs « officiel » dans %AppData%, et encore moins dans un sous-dossier Update. Cette dénomination générique est typique de scripts déposés par des programmes indésirables : elle vise à paraître bénigne (run = « exécuter », update = « mise à jour ») tout en se fondant dans le bruit.
Origine courante
- Installateurs de cracks/piratages de logiciels, sites de téléchargement non fiables.
- Bundles publicitaires qui installent des téléchargeurs additionnels.
- Documents piégés ouvrant du script via
wscript.exe/cscript.exe.
Comportements souvent observés
- Désactivation ou contournement d’antivirus (tentatives sur le service
WinDefendou les préférences). - Ajout de tâches planifiées pour relancer
wscript.exeavecrun.vbs. - Modification de clés
Run/RunOnceet du dossier de démarrage. - Connexion sortante pour télécharger d’autres charges utiles.
- Potentielles modifications du proxy système ou des paramètres de Windows Update.
Guide détaillé pas-à-pas
Laisser Defender neutraliser le fichier
- Ouvrez Sécurité Windows ▶ Protection contre les virus et menaces ▶ Historique de protection.
- Confirmez que la menace a été mise en quarantaine ou supprimée. Si « Autoriser » est proposé, ne l’utilisez pas.
- Mettez à jour les signatures : ouvrez une invite PowerShell en administrateur et exécutez :
"$env:ProgramFiles\Windows Defender\MpCmdRun.exe" -SignatureUpdate "$env:ProgramFiles\Windows Defender\MpCmdRun.exe" -Scan -ScanType 2La seconde commande lance une analyse complète.
Supprimer le dossier %AppData%\Update
- Appuyez sur Win+R, collez
%AppData%et validez. - Affichez les éléments cachés (onglet Affichage de l’Explorateur).
- Si le dossier
Updateest présent : supprimez-le. S’il est « verrouillé », redémarrez en mode sans échec et recommencez.
Astuce : videz aussi la Corbeille ; certains malwares surveillent et restaurent leur fichier s’il reste accessible.
Analyse complète avec un second avis
Installez un outil antimalware réputé (édition gratuite) et lancez une analyse complète. Désinstallez-le ensuite si vous ne souhaitez pas de double protection permanente. L’objectif est d’attraper les restes (DLL, tâches, scripts) passés entre les mailles.
Effectuer une analyse hors ligne
- Ouvrez Sécurité Windows ▶ Protection contre les virus et menaces ▶ Options d’analyse.
- Choisissez Analyse Windows Defender hors ligne ▶ Analyser maintenant.
- Le PC redémarre, l’analyse s’exécute avant Windows et supprime ce qui se cache en mémoire.
Vérifier et supprimer les mécanismes de persistance
Tâches planifiées
Le malware crée souvent une tâche au nom anodin (calendrier système, service audio, etc.). Recherchez toute action lançant wscript.exe ou pointant vers %AppData%\Update.
- Ouvrez Planificateur de tâches ▶ Bibliothèque du Planificateur.
- Parcourez les répertoires, en particulier Microsoft\Windows, et inspectez l’Action de chaque tâche suspecte.
- Supprimez toute tâche qui référence
run.vbsouwscript.exeavec un fichier dans%AppData%.
Vérification rapide en PowerShell (admin) :
# Lister les tâches dont l'action évoque wscript / run.vbs / %AppData%\Update
$tasks = Get-ScheduledTask | ForEach-Object {
$act = ($_.Actions | ForEach-Object { ($_.Execute + ' ' + $_.Arguments) }) -join ' '
[PSCustomObject]@{ TaskName=$_.TaskName; TaskPath=$_.TaskPath; State=$_.State; Action=$act }
}
$tasks | Where-Object { $_.Action -match 'wscript\.exe|run\.vbs|%appdata%\\update' } | Format-Table -Auto
Pour supprimer une tâche identifiée :
Unregister-ScheduledTask -TaskName "NomDeLaTache" -Confirm:$false
Clés de registre de démarrage
Contrôlez ces emplacements (utilisateur et machine) :
HKCU\Software\Microsoft\Windows\CurrentVersion\RunHKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunHKCU\Software\Microsoft\Windows\CurrentVersion\RunOnceHKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce
Recherchez des valeurs lançant wscript.exe ou pointant vers %AppData%\Update\run.vbs. Supprimez uniquement les valeurs clairement malveillantes. Sauvegardez avant toute modification.
Liste rapide (PowerShell admin) :
Get-ItemProperty "HKCU:\Software\Microsoft\Windows\CurrentVersion\Run" |
Select-Object * | Out-String
Get-ItemProperty "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Run" |
Select-Object * | Out-String
Dossier de démarrage
- Utilisateur :
shell:startup - Tous les utilisateurs :
shell:common startup
Supprimez tout raccourci qui lance wscript.exe, cscript.exe ou un script dans %AppData%.
Services & WMI
Certains malwares abusent des services et des abonnements WMI.
- Services : cherchez tout service récent et inconnu dans
services.msc. Un service qui pointe vers un binaire dans%AppData%est suspect. - WMI : vérifiez les abonnements persistants (avancé) :
# Filtre, consommateur et liaisons WMI persistants (lecture seule) Get-CimInstance -Namespace root\subscription -ClassName __EventFilter Get-CimInstance -Namespace root\subscription -ClassName CommandLineEventConsumer Get-CimInstance -Namespace root\subscription -ClassName __FilterToConsumerBinding
Remettre à zéro les paramètres réseau et système détournés
| Élément | Vérification | Remise à zéro |
|---|---|---|
| Proxy WinHTTP | netsh winhttp show proxy | netsh winhttp reset proxy |
| Proxy utilisateur | Paramètres ▶ Réseau & Internet ▶ Proxy | Désactiver « Utiliser un serveur proxy » si non requis |
| Winsock (si anomalie réseau) | — | netsh winsock reset puis redémarrer |
| Mises à jour Windows | Paramètres ▶ Windows Update | Relancer la recherche de mises à jour |
Mettre à jour et redémarrer
Appliquez toutes les mises à jour Windows et redémarrez deux fois : une première pour finaliser les suppressions et une seconde pour vérifier l’absence de réapparition de l’alerte au démarrage.
Indicateurs de compromission courants
- Alertes Defender répétées au démarrage pour
%AppData%\Update\run.vbs. - Présence de fichiers
.tmp/.datanormaux dans%AppData%(noms aléatoires). - Clé proxy activée alors que vous n’utilisez pas de proxy.
- Tâche planifiée inconnue déclenchant
wscript.exe. - Windows Update ou la protection en temps réel désactivés sans action de votre part.
Prévenir toute réinfection
Activer le Contrôle d’accès aux dossiers
Dans Sécurité Windows ▶ Protection contre les ransomwares ▶ Gérer, activez « Contrôle d’accès aux dossiers ». Ajoutez vos dossiers sensibles (Documents, Bureau…). Ceci bloque les modifications non autorisées par des scripts.
Réduire la surface d’attaque des scripts
- Désactiver Windows Script Host si vous n’en avez pas besoin (bloque
wscript.exe/cscript.exe) :HKLM\Software\Microsoft\Windows Script Host\Settings→ valeurEnabledà 0HKCU\Software\Microsoft\Windows Script Host\Settings→ valeurEnabledà 0
- Évitez l’exécution de scripts provenant de sources non fiables et supprimez les téléchargements douteux.
- Travaillez avec un compte standard au quotidien ; n’utilisez l’administrateur que pour les tâches qui l’exigent.
Bonnes pratiques
- Maintenez une sauvegarde hors ligne (image système ou sauvegarde de fichiers).
- Créez un point de restauration sain après assainissement (Win+R ▶
sysdm.cpl▶ Protection du système ▶ Créer). - Évitez les cracks/piratages ; c’est la source n°1 de ces scripts.
Faux positif ou vraie menace ?
Dans ce contexte (run.vbs à %AppData%\Update), le faux positif est hautement improbable. Les éléments suivants renforcent le diagnostic de malware :
- Nom générique et localisation dans le profil utilisateur.
- Action de démarrage via tâche planifiée ou clé
Run. - Réapparition après suppression manuelle tant que la persistance n’est pas nettoyée.
Si, exceptionnellement, un logiciel d’entreprise installe un script VBScript légitime, il sera situé dans un dossier applicatif clair, signé ou documenté, pas dans %AppData%\Update avec un nom ambigu.
Automatiser une partie du nettoyage (optionnel)
Le script PowerShell ci-dessous n’efface rien dans un premier temps ; il dresse la liste des éléments suspects. Après validation, vous pouvez activer la partie suppression.
Phase 1 : audit
# À exécuter dans PowerShell (Administrateur)
Write-Host "[Audit] Recherche de tâches planifiées suspectes..."
$tasks = Get-ScheduledTask | ForEach-Object {
$act = ($_.Actions | ForEach-Object { ($_.Execute + ' ' + $_.Arguments) }) -join ' '
[PSCustomObject]@{ TaskName=$_.TaskName; TaskPath=$_.TaskPath; State=$_.State; Action=$act }
}
$tasks | Where-Object { $_.Action -match 'wscript\.exe|run\.vbs|%appdata%\\update' } | Tee-Object -Variable SuspiciousTasks | Format-Table -Auto
Write-Host "`n[Audit] Recherche de clés Run/RunOnce suspectes..."
$paths = @(
"HKCU:\Software\Microsoft\Windows\CurrentVersion\Run",
"HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Run",
"HKCU:\Software\Microsoft\Windows\CurrentVersion\RunOnce",
"HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce"
)
$regHits = foreach ($p in $paths) {
if (Test-Path $p) {
Get-ItemProperty $p | ForEach-Object {
$*.PSObject.Properties |
Where-Object { $*.Name -notin @("PSPath","PSParentPath","PSChildName","PSDrive","PSProvider") -and
($*.Value -match "wscript.exe|run.vbs|%appdata%\update") } |
Select-Object @{n="Path";e={$p}}, @{n="Name";e={$*.Name}}, @{n="Value";e={$_.Value}}
}
}
}
$regHits | Format-Table -Auto
Write-Host "`n[Audit] Dossier %AppData%\Update..."
$upd = Join-Path $env:AppData "Update"
if (Test-Path $upd) { Get-ChildItem -Recurse -Force $upd | Select-Object FullName,Length,LastWriteTime | Format-Table -Auto }
else { Write-Host "Aucun dossier 'Update' détecté dans %AppData%" }
Phase 2 : suppression (décommentez après vérification)
# Décommentez prudemment les lignes ci-dessous après avoir vérifié les résultats de l'audit
# Suppression des tâches planifiées
# $SuspiciousTasks | ForEach-Object { Unregister-ScheduledTask -TaskName $*.TaskName -TaskPath $*.TaskPath -Confirm:$false }
# Suppression des valeurs de registre malveillantes
# foreach ($hit in $regHits) {
# Remove-ItemProperty -Path $hit.Path -Name $hit.Name -ErrorAction SilentlyContinue
# }
# Suppression du dossier %AppData%\Update
# if (Test-Path $upd) { Remove-Item -LiteralPath $upd -Recurse -Force }
Questions fréquentes
Dois-je supprimer tout le dossier ?
Oui. Le dossier %AppData%\Update est créé par le malware pour se relancer. Sa suppression (après quarantaine) est sûre et recommandée.
Et si l’alerte revient après redémarrage ?
Il reste une persistance (tâche planifiée, clé Run, raccourci dans le démarrage). Suivez la section « Vérifier et supprimer les mécanismes de persistance », puis faites une analyse hors ligne et mettez à jour Windows.
Puis-je restaurer le fichier de quarantaine ?
Non recommandé. Restaurer un script reconnu malveillant expose votre système à une réinfection immédiate.
Defender a été désactivé, que faire ?
- Redémarrez en mode sans échec avec mise en réseau.
- Ouvrez PowerShell (admin) et réactivez la surveillance en temps réel :
Set-MpPreference -DisableRealtimeMonitoring $false - Vérifiez l’état du service :
sc query WinDefendS’il est désactivé par une stratégie d’entreprise, contactez votre administrateur.
Tableau récapitulatif des points à contrôler
| Emplacement | Ce qu’il faut chercher | Action |
|---|---|---|
| Planificateur de tâches | Actions lançant wscript.exe / run.vbs | Supprimer la tâche |
Clés Run/RunOnce | Valeurs pointant vers %AppData%\Update | Supprimer la valeur |
| Dossiers de démarrage | Raccourcis vers scripts suspects | Supprimer le raccourci |
| Proxy & WinHTTP | Proxy actif non souhaité | Réinitialiser le proxy |
| Windows Update | Mises à jour bloquées/désactivées | Réactiver & mettre à jour |
Conseils de prévention
- Activez la protection en temps réel et laissez Defender fonctionner en permanence.
- Conservez un point de restauration sain après nettoyage.
- Évitez les sources non fiables ; privilégiez les éditeurs et magasins officiels.
- Activez l’isolation du noyau (intégrité de la mémoire) et le démarrage sécurisé si votre matériel le permet.
Synthèse
Ce qu’il faut retenir : run.vbs dans %AppData%\Update est quasi certainement malveillant. Laissez Defender le neutraliser, supprimez le dossier, faites une analyse complète (puis hors ligne), nettoyez les mécanismes de persistance et vérifiez les paramètres réseau/Update. Avec ces étapes, la majorité des systèmes sont assainis et protégés contre une réinfection.
En suivant ces étapes, le système est normalement assaini et protégé contre une réinfection par ce script malicieux.

