Microsoft alerte les utilisateurs au sujet d’une faille critique dans PowerShell 7
CVE-2021-26701 : Derrière ce nom se cache une vulnérabilité critique qui touche PowerShell 7 à cause d'un bug de sécurité dans .NET Core. Grâce à cette faille, il est possible d'exécuter du code à distance sur la machine cible.
Pour rappel, PowerShell 7 (appelé également PowerShell Core 7) est un langage de scripting développé par Microsoft, qui s'appuie sur .NET Core et qui est compatible avec Windows bien sûr, mais également Linux et macOS.
Pour protéger votre machine, il est recommandé d'installer une version patchée de PowerShell 7, à savoir : PowerShell 7.0.6 ou PowerShell 7.1.3. Il est à noter que Windows PowerShell 5.1 n'est pas concerné par cette faille de sécurité (il ne s'appuie pas sur le même framework .NET).
Ce qui pose problème, c'est le paquet "System.Text.Encodings.Web" et sa façon d'encoder le texte. Au niveau de .NET Core, voici les versions qui contiennent cette vulnérabilité :
- System.Text.Encodings.Web (version 4.0.0 à 4.5.0) - corrigé dans la version 4.5.1
- System.Text.Encodings.Web (version 4.6.0 à 4.7.1) - corrigé dans la version 4.7.2
- System.Text.Encodings.Web (version 5.0.0) : corrigé dans la version 5.0.1
En mettant à jour PowerShell, .NET Core est mis à jour également d'où l'intérêt de le faire dès que possible. Par contre, si vous utilisez .NET Core sans PowerShell, il faudra effectuer une mise à jour du framework sur votre machine. En complément, si vous avez Microsoft Visual Studio 2017 ou 2019, sur Windows ou MacOS, il y a une mise à jour à effectuer également.
La faille en question, elle n'est pas nouvelle : Microsoft l'a corrigée au sein de PowerShell à l'occasion du Patch Tuesday de février 2021. Néanmoins, ces derniers jours Microsoft en remet une couche quant à l'importance de se protéger de cette vulnérabilité. La mise à jour de PowerShell étant la seule solution, il est fortement recommandé d'effectuer la mise à jour vers les versions les plus récentes.