Qu'est-ce que le format de fichier WSF ?
Les fichiers avec l'extension .wsf sont des scripts pour Microsoft Windows Script Host (WSH). Ce sont des fichiers texte conformes au format XML. Ils peuvent être ouverts pour édition dans n'importe quel éditeur de texte, mais il est conseillé d'utiliser un outil dédié tel que Visual Studio Code. Un seul fichier .wsf peut inclure plusieurs tâches de script et prendre en charge divers langages de script au sein d'un même document.
Les langages de script par défaut pris en charge dans les fichiers .wsf incluent JScript et VBScript. Cependant, le format est conçu pour être indépendant du langage de script - après l'installation d'un moteur compatible dans WSH, il peut également prendre en charge des langages tels que :
- PerlScript,
- Python,
- BASIC,
- Ruby,
- PHP,
- Object REXX.
En intégrant différents langages de script, il est possible d'utiliser des fonctions définies dans un langage aux côtés de constantes provenant d'objets déclarés. Cela rapproche la création de scripts .wsf des méthodes de programmation traditionnelles.
Les fichiers de script .wsf sont utilisés pour la journalisation et l'administration système, et sont couramment utilisés pour automatiser diverses tâches système. Les scripts peuvent être exécutés en mode GUI via WScript.exe, en mode console via CScript.exe, ou consultés par programmation en tant qu'objet COM via WShom.ocx. Des outils de débogage sont également disponibles.
Les scripts PowerShell ont largement remplacé le .wsf pour l'automatisation moderne de Windows depuis Windows 7, mais WSH reste présent sur toutes les versions actuelles de Windows. Note de sécurité importante : les fichiers .wsf sont un mécanisme de diffusion de logiciels malveillants connu - les rançongiciels et les téléchargeurs ont largement abusé des pièces jointes d'e-mails en .wsf. Traitez tout fichier .wsf non sollicité avec une extrême prudence.
Sécurité et sûreté
RISQUE : HIGHLes fichiers WSF sont un vecteur majeur de diffusion de logiciels malveillants sur Windows. Windows Script Host exécute les .wsf nativement sans aucune installation spéciale, et le conteneur XML a permis aux premiers filtres de messagerie de les ignorer en tant que texte brut. Des campagnes de rançongiciels (Locky 2016, Cerber, Sage 2017, téléchargeur Nemucod) ont largement utilisé des pièces jointes .wsf malveillantes. Facteurs de risque : (1) .wsf peut télécharger et exécuter d'autres charges utiles via les objets WScript.Shell et XMLHTTP ; (2) peut modifier le registre, créer des fichiers et invoquer des commandes système ; (3) aucune élévation UAC n'est requise pour de nombreuses actions destructrices ; (4) s'exécute silencieusement via un double-clic sur wscript.exe. Atténuation : bloquez les .wsf au niveau des passerelles de messagerie ; désactivez WSH via la stratégie de groupe (HKLM\Software\Microsoft\Windows Script Host\Settings → Enabled = 0) ; n'exécutez jamais un .wsf inattendu. Utilisez un éditeur de texte pour inspecter avant l'exécution.
Détails du format
en brefProgrammes qui ouvrent les fichiers WSF
Détails techniques
spécifications approfondies| Format de fichier | Document XML bien formé ; l'élément racine <package> (optionnel) contient un ou plusieurs éléments <job id="...">, chacun regroupant un ou plusieurs blocs <script> |
| Encodage | Texte ; UTF-8 ou Windows-1252 (ANSI) ; encodage des caractères spécifié dans la déclaration XML en tête de fichier |
| Éléments de tâche XML | Chaque <job> peut contenir <script language="VBScript|JScript">, <reference> (constantes de bibliothèque de types), <object> (instanciation COM), <include> (fichiers externes .vbs/.js) et <runtime> (documentation des arguments) |
| Moteurs de script intégrés | JScript et VBScript sont intégrés à WSH sur toutes les versions de Windows ; les moteurs supplémentaires (PerlScript, Python, Object REXX) nécessitent une installation et un enregistrement séparés dans le registre |
| Multi-langage par tâche | Un seul bloc <job> peut mélanger des sections <script> JScript et VBScript, partageant des objets COM et des constantes entre les langages |
| Modes d'exécution | Mode GUI : wscript.exe (boîtes de dialogue autorisées, pas de console) ; mode console : cscript.exe (stdout/stderr disponibles) ; accès objet COM : WShom.ocx |
| Versions de l'hôte WSH | WSH 5.8 est livré avec Windows 7 jusqu'à Windows 11 et est la version présente sur tous les systèmes actuels ; WSH 5.6 fonctionnait sur Windows XP |
| Taille typique du fichier | 1 Ko - 200 Ko ; la plupart des scripts sont des fichiers compacts à usage unique |
| Classification de sécurité | Exécutable à haut risque ; WSH exécute les fichiers .wsf nativement par double-clic sans confirmation de l'utilisateur ; largement exploité pour les rançongiciels (Locky, Cerber, Sage) et la diffusion de téléchargeurs de logiciels malveillants via des pièces jointes d'e-mails |
| Plateforme | Windows uniquement ; Windows Script Host n'est pas disponible sur macOS ou Linux |
| Gestionnaire d'exécution par défaut | Windows associe par défaut .wsf à wscript.exe ; l'association peut être modifiée pour cscript.exe ou désactivée entièrement via la stratégie de groupe pour le renforcement de la sécurité |
| Successeur moderne | PowerShell (.ps1) a largement remplacé .wsf pour l'administration système Windows depuis Windows 7 ; WSH reste présent sur tous les Windows actuels mais n'est plus activement développé par Microsoft |
| Publié | 1999 with Windows Script Host 2.0 (shipped with Windows 2000; downloadable for Windows 98/NT) |
| Dernière version | WSH 5.8 (Windows 7 / Server 2008 R2; version in all later Windows editions) |
| Spécification | learn.microsoft.com |
Conversions WSF
Q&R de la communauté
posées par les utilisateursPas encore de questions - soyez le premier à poser une question sur les fichiers WSF.