PowerShell, derrière l’outil, la menace
FireEye s’est penché sur la manière dont PowerShell, puissant outil d’administration, peut être détourné à des fins malveillantes. Une étude qui soulève la question de l’exposition des équipes d’exploitation aux menaces informatiques.
FireEye s’est penché sur la manière dont PowerShell, puissant outil d’administration, peut être détourné à des fins malveillantes. Une étude qui soulève la question de l’exposition des équipes d’exploitation aux menaces informatiques.
Les recherches n’ont pas été conduites par hasard. Dans son étude, FireEye relève que PowerShell est récemment devenu omniprésent tant au niveau des postes de travail que des serveurs dans les environnements des entreprises. Et, « comme c’est souvent le cas, la disponibilité croissante de PowerShell s’est parallèlement traduite par le développement des recherches sur la manière dont les attaquants peuvent en tirer profit. » Dès 2011, des chercheurs ont ainsi commencé à faire la démonstration de méthodes d’attaques utilisant l’outil d’administration, jusqu’à construire des kits complets de détournement, dont le récent PowerSploit ou Nishang et, sans surprise, le bien connu Metasploit. FireEye assure que Mandiant, qu’il a acquis tout début 2014, a « observé des attaquants utilisant de plus en plus PowerShell lors d’intrusions ciblées. » Pas pour infiltrer l’infrastructure, mais pour après la phase initiale de compromission.
Dans son étude, FireEye entend adopter une approche préventive, identifiant notamment les sources d’indices montrant une utilisation malicieuse de PowerShell, sur les disques, dans les logs, ou encore en mémoire vive. De quoi permettre de détecter une attaque et de remonter la trace des activités d’un acteur malveillant.
Un risque bien reel…
Pour Vincent Nguyen, responsable technique du Cert de Solucom, les présupposés adoptés par FireEye dans son étude – comme la capacité de l’attaquant à accéder à des droits d’administration ou encore à utiliser PowerShell Remote et WinRM – sont « crédibles. » Pour lui, l’attractivité de PowerShell dans le cadre d’attaques ne fait pas de doute : « c’est la boîte à outil, dédiée aux administrateurs pour simplifier les tâches d’exploitation, la plus souple qui existe. Elle permet d’automatiser des tâches, sur un système ou tout un environnement. C’est donc une solution puissante, souple et facile d’utilisation. » Son recours dispense l’attaquant de déposer des exécutables spécifiques : « on peut tout faire en PowerShell, un anti-virus n’y verra rien. »
On pourrait y voir une illustration : dans les colonnes de Petri, Jeff Hicks décrivait récemment comment construire un outil de balayage réseau par ping avec PowerShell ; la base de l’exploration d’un environnement réseau inconnu que l’on viendrait d’infiltrer.
Et justement, pour Ben Turner et Dave Hardy, consultants au sein du cabinet de conseil britannique Nettitude, PowerShell est en train de devenir rapidement l’outil de choix pour les attaquants, après l’infiltration initiale, grâce « à une pléthore d’outils PowerShell remarquables tels que PowerSploit, PowerUp, PowerView, et Nishang, pour n’en citer que quelques uns ». Autant d’outils « entièrement écrits en PowerShell et qui ne touche quasiment pas au disque » et passent ainsi au travers des mailles des anti-virus.
… méconnu…
Reste à avoir conscience du risque. Selon Gérôme Billois, « pour la majorité des administrateurs, PowerShell paraît complètement sans danger. Parfois, on trouve même des serveurs d’administrateurs ou de rebond sur lesquels sont stockés de nombreux outils de type PowerShell. » Dès lors, pour lui, la menace est largement sous-estimée et le rapport FireEye/Mandiant « est très bienvenu. Il peut s’avérer utile pour ouvrir les yeux dans les fonctions de production, au-delà des équipes sécurité. » D’autant plus que ce type d’attaques pourrait être appelé à progresser, comme le souligne FireEye.
En outre, le profil des entreprises concernées est varié, « depuis la PME pointue – mais pas forcément consciente que PowerShell est activé – jusqu’au grand groupe », à commencer par les petits sites distants de ceux-ci.
Heureusement, la détection d’attaques exploitant PowerShell n’a rien d’utopique : « PowerShell ne permet pas, par défaut, d’exécuter des scripts. Une première commande doit être passée pour déverrouiller ce blocage. C’est une première barrière à lever. »
…mais dont il est possible de se protéger
En outre, les activités sur le registre peuvent être surveillées et tracées : « on peut surveiller et voir ce type d’attaque après coup, mais également en direct », estime Vincent Nguyen.
Quant à utiliser PowerShell 3.0, plus sûr, à titre préventif, Gérôme Billois, responsable de la practice sécurité de Solucom, souligne la difficulté, « comme avec toutes les montées de version. Ce n’est pas qu’un changement technique et cela demande de valider des scripts qui sont assez largement utilisés en production aujourd’hui. Le risque d’impact est évident. D’autant plus que, souvent, il n’y a pas de cartographie des endroits où sont utilisés les scripts. » Et il faut également tenir compte des différences de jeux de commandes accessibles d’une version de Windows à l’autre…