PS1 (script PowerShell) — fichier .ps1

pérenne

Script de commandes pour PowerShell, l'interpréteur de commandes avancé de Microsoft.

Le PS1 est un script de commandes pour PowerShell, l’interpréteur de commandes avancé introduit par Microsoft en 2006 pour succéder à l’invite de commandes classique et à ses scripts BAT limités. PowerShell manipule directement des objets .NET plutôt que du simple texte, ce qui lui confère des capacités d’automatisation bien supérieures.

Ce format n’a aucune signature binaire fiable. Il peut comporter un BOM UTF-8 en tête de fichier si généré par certains éditeurs (l’ISE PowerShell ou Visual Studio Code, par exemple), mais ce marqueur d’encodage est générique à tout fichier UTF-8, pas spécifique au PS1 — aucune convention de première ligne n’est par ailleurs imposée.

L’exécution de scripts PS1 est par défaut restreinte sur Windows (politique d’exécution), une mesure de sécurité qui reflète directement la puissance du langage : sa richesse en fait un vecteur d’attaque privilégié pour des logiciels malveillants modernes, bien plus discret et flexible qu’un simple fichier BAT.

PowerShell est aujourd’hui multiplateforme (PowerShell Core fonctionne aussi sous Linux et macOS), ce qui a progressivement élargi l’usage du PS1 au-delà du seul écosystème Windows pour lequel il avait été conçu à l’origine.

Windows analyse désormais le contenu réel d’un script PS1 au moment de son exécution grâce à l’interface AMSI (Antimalware Scan Interface), introduite avec PowerShell 5.0 : contrairement à un simple contrôle basé sur la signature du fichier, ce mécanisme inspecte le code au fur et à mesure de son interprétation, y compris après une éventuelle désobfuscation dynamique du script.

La PowerShell Gallery, un dépôt public géré par Microsoft, permet de publier et d’installer des modules PowerShell réutilisables composés de scripts PS1, un peu à la manière de npm pour JavaScript ou de PyPI pour Python, ce qui a favorisé le partage communautaire de fonctions d’administration système prêtes à l’emploi.

Signature binaire

Ce format n'a pas de signature binaire fiable : il ne peut pas être identifié de façon certaine par ses seuls premiers octets.

Vérifier qu'un fichier porte bien cette signature →

Sécurité

Peut contenir des scripts exécutables.

Exécute directement des commandes système avec des capacités bien plus étendues qu'un simple BAT : accès à l'ensemble de l'infrastructure .NET, un vecteur fréquemment exploité par des logiciels malveillants modernes.

Auditer les métadonnées de ce format →

Questions fréquentes

Comment ouvrir un fichier .ps1 ?

PowerShell (exécution native) permet d'ouvrir gratuitement un fichier .ps1. Voir la liste complète des logiciels compatibles ci-contre.

Quel est le type MIME du format PS1 (script PowerShell) ?

Le type MIME du format PS1 (script PowerShell) est text/plain.

Le format PS1 (script PowerShell) (.ps1) est-il encore utilisé aujourd'hui ?

Oui, le format PS1 (script PowerShell) est pérenne : il reste activement utilisé et pris en charge par les logiciels actuels.

Peut-on ouvrir un fichier .ps1 sur mobile, sans installer d'application ?

Aucun outil web n'est référencé sur cette fiche pour ce format : l'ouverture nécessite un logiciel de bureau (voir la liste « Avec quoi l'ouvrir » ci-contre).

Pourquoi mon fichier .ps1 ne s'ouvre-t-il pas ?

Les causes les plus fréquentes sont l'absence de logiciel compatible installé, un téléchargement ou un transfert incomplet, ou une extension qui ne correspond plus au contenu réel du fichier. Voir le guide complet sur les causes possibles, ou vérifier le format réel avec l'identifieur de fichier.

Un fichier .ps1 présente-t-il des risques de sécurité ?

Exécute directement des commandes système avec des capacités bien plus étendues qu'un simple BAT : accès à l'ensemble de l'infrastructure .NET, un vecteur fréquemment exploité par des logiciels malveillants modernes. Il peut contenir des scripts exécutables.

Un fichier ne s'ouvre pas : les causes possibles →

Comment savoir si un fichier est corrompu →

Sources

Dernière mise à jour :