Contribuez à SecuObs en envoyant des bitcoins ou des dogecoins.
Nouveaux articles (fr): 1pwnthhW21zdnQ5WucjmnF3pk9puT5fDF
Amélioration du site: 1hckU85orcGCm8A9hk67391LCy4ECGJca

Contribute to SecuObs by sending bitcoins or dogecoins.



[Auditer son réseau Windows - partie 1] Démystifier le Pentesting

Par Nicolas Ruff, EADS/CCR DCR/STI/C
Le 25/08/2006


Résumé : Largement commandée par les RSSI, voire requise par la loi dans certains cas, la prestation de test d'intrusion reste une activité obscure pour beaucoup, voire magique. L'objectif de cet article est de démystifier le test d'intrusion interne en montrant les techniques utilisées.



Largement commandée par les RSSI, voire requise par la loi dans certains cas, la prestation de test d'intrusion reste une activité obscure pour beaucoup, voire magique. L'objectif de cet article est de démystifier le test d'intrusion interne en montrant les techniques utilisées.


A la lecture de cet article, tout un chacun deviendra capable de compromettre son réseau interne sans aucune connaissance avancée (ex. programmation, reverse engineering) ni outil payant. En bonus, l'utilisation exclusive d'outils standards sous Windows devrait éviter toute alerte provenant des éventuels IDS/IPS.

Le cas étudié ici est celui du test d'intrusion interne – nous partons donc du principe que l'attaquant dispose d'un accès à un poste du réseau interne, appartenant à un domaine Windows. Aucune autre hypothèse n'est formulée a priori sur cet accès. Il peut s'agir :

D'un accès physique au poste de travail. L'attaquant est un employé (ou un stagiaire) de la société, éventuellement un prestataire, une femme de ménage, ...

D'un poste compromis par un cheval de Troie, le rendant accessible depuis Internet. L'attaquant est un ancien employé ou un individu hostile sans lien avec la société.

D'un point d'accès WiFi (légitime ou non), donnant accès au réseau interne depuis l'extérieur de la société. Ce cas est légèrement différent, puisque l'attaquant est obligé de travailler avec son propre poste de travail, qui n'appartient pas au domaine Windows. Nous verrons toutefois que la plupart des méthodes utilisées fonctionnent toujours.

L'objectif de l'attaquant va être de se procurer les droits d'Administrateur de Domaine (les plus élevés dans le monde Windows). Il serait possible de définir des sous-objectifs, tels que la capture de données dans une application métier, mais en général la possession d'un compte Administrateur de Domaine permet de réaliser tous les sous-objectifs.

En effet, ce compte possède des prérogatives qu'il est impossible de limiter. Avec ce compte, il est possible d'administrer tous les postes et serveurs appartenant au domaine, ce qui inclut la possibilité d'y installer chevaux de Troie et keyloggers. A ce point, la sécurité de toutes les applications accessibles aux utilisateurs est sérieusement compromise.

Le meilleur moyen pour obtenir les droits d'un utilisateur dans le monde Windows, c'est encore … d'obtenir son mot de passe ! Voici l'objectif ultime de l'attaquant : obtenir le mot de passe d'un compte Administrateur de Domaine (ou à défaut créer un compte dont il maitrise le mot de passe).

A noter qu'il n'existe pas de programmes SetUID/SetGID dans le monde Windows, contrairement au monde Unix. C'est ainsi que la possession d'un mot de passe reste la solution la plus simple pour prendre l'identité d'un utilisateur.


FAQ contre les idées reçues :

Q. Est-il nécessaire d'utiliser Linux/*BSD/MacOS pour réaliser un test d'intrusion ?

R. Rien ne pénètre mieux un réseau Windows qu'un poste Windows. Tous les mécanismes Microsoft y sont nativement implémentés, et de nombreux add-ons sont disponibles gratuitement, tandis que les autres environnements peinent à suivre (n'ayant pas accès à la documentation des protocoles Microsoft).

Pour les irréductibles, le logiciel ( lien ) Cygwin met à disposition du monde Windows les outils indispensables du monde Unix (bash, python, etc.)


Q. Est-il nécessaire d'exploiter des failles binaires, de posséder du 0day, ou d'être capable de reverse engineering pour pénétrer un réseau ?

R. Non, c'est tout le contraire !

Celui qui n'y connaît rien est obligé de réfléchir et trouve souvent une solution astucieuse (i.e. erreur conceptuelle ou erreur humaine) beaucoup plus facile à exploiter "sur le terrain" (expression qui signifie parfois "enfermé dans une salle machine sans nourriture ni connexion Internet").

Celui qui tente d'exploiter des failles binaires s'expose à l'erreur (provoquant le plantage ou le redémarrage de la cible), ainsi que la détection par les antivirus, IDS, et autres outils de "sécurité". Le temps nécessaire à la mise au point d'une telle attaque est également bien supérieur !

De plus, la correction d'une faille logicielle est facile, tandis que la correction d'un problème conceptuel l'est beaucoup moins et donne lieu à des plans d'action qui justifient mieux le salaire des consultants.

Un test d'intrusion réussi démontrera qu'un réseau à jour des patches n'est pas inviolable, et que la sécurité n'est pas qu'une affaire de graphiques et de produits !


Q. Les outils d'intrusion les plus chers sont-ils les plus performants ?

R. Il existe de nombreux outils souvent cités dans la littérature comme une "assistance" au test d'intrusion (ex. GFI LanGuard, Core Impact, CANVAS, Nessus, etc.). Ces outils possèdent leurs forces et leurs faiblesses, mais aucun n'est indispensable ni même utile pour un auditeur expérimenté.

Grosso modo, on peut classer ces outils en 2 catégories : les outils de Vulnerability Assessment (VA), et les outils d'exploitation de failles.

Les outils de VA ont le défaut d'être beaucoup trop verbeux : non seulement ils génèrent un trafic réseau inutile, facilement détectable, mais de plus les résultats fournis sont inexploitables dès lors que le réseau dépasse la centaine de postes (sans parler du temps nécessaire pour l'exploration d'un tel réseau). Pour être pleinement efficaces (ex. détection des patches manquants), ces outils nécessitent de plus de posséder un compte Administrateur de Domaine ! Laissons donc les outils de VA à la production de graphiques et de tableaux de bord.

Les outils d'exploitation de failles possèdent les défauts vus précédemment, à savoir le manque de fiabilité et l'absence de plan d'action associé à une intrusion par patch manquant. Il faut savoir également qu'un outil vendu près de $50,000 ne supporte pas les versions non-américaines de Windows, et provoque inévitablement un crash lorsqu'il est utilisé contre une cible française !

Au contraire, je recommande des outils gratuits tels que :
- Les outils classiques (NetCat, NMap, Ethereal)
- Les outils Microsoft (Support Tools, Resource Kit, etc.)
- L'outil Cain ( lien )
- L'environnement Cygwin
- L'environnement Metasploit ( lien ), comme outil de dernier recours (pour l'exploitation de failles)

En terme d'outils payants, il vaut mieux se tourner vers des outils d'administration (tels que DameWare lien ou Hyena lien ) plutôt que vers des outils dédiés au test d'intrusion !


Autres ressources dans ce même dossier :

[Auditer son réseau Windows - partie 2] Pratique : Obtenir les droits d'administrateur local - lien

[Auditer son réseau Windows - partie 3] Pratique : La chasse au mot de passe (1/2)- lien

[Auditer son réseau Windows - partie 4] Pratique : La chasse au mot de passe (2/2)- lien

[Auditer son réseau Windows - partie 5] Conclusion : Une moyenne avant contrôle total du domaine Windows de 20 minutes - lien