Powershell est maintenant intégré par défaut dans tous les systèmes d’exploitation supportés de Microsoft. Ce dernier bénéficiant d’une intégration forte à la plateforme .NET, nous verrons ici comment l’exploiter pour contourner les règles AppLocker.
Powershell est un langage orienté objet fonctionnant sur la base de cmdlet. Celui-ci repose sur la plateforme .NET et propose une intégration forte au sein de cet environnement. De nombreux cmdlets reposent d’ailleurs sur des composants .NET.
Il existe de nombreuses incompatibilités entre les versions de PowerShell souvent liées à des variations de la syntaxe du langage et à la version du runtime .NET utilisé. Pour la suite de l’article, nous supposerons donc que la version de PowerShell utilisée est compatible avec la version 2.0 (version de base de Windows 7) tandis que la version du runtime .NET est la version 4.5.0 (dernière version stable à ce jour). Notons cependant que les actions qui suivent sont réalisables sur les autres versions du langage et du runtime .NET.
1. Manipulation de code .NET
1.1. Chargement d’assembly dans Powershell
Pour commencer, il convient de distinguer Assembly et assembly. Assembly est le nom d’une classe .NET...
- Accédez à tous les contenus de Connect en illimité
- Découvrez des listes de lecture et des contenus Premium
- Consultez les nouveaux articles en avant-première