Quelques outils de pentest et d’audit sécurité

hacker_symbolJe préfère prévenir tout de suite. Cet article n’est pas écrit pour les gurus de la sécurité mais simplement pour des gens qui s’intéressent un peu à la sécurité et qui voudraient tester leur système d’information. Je sais que j’enfonce des portes en disant ça, mais la valeur ajoutée d’un vrai audit de sécurité ne repose pas dans les outils utilisés mais dans le savoir-faire et l’expérience des auditeurs.

Maintenant que cela est dit, attaquons-nous à ce bon marronnier. Dans cet article je vais uniquement me consacrer à quelques outils d’audit gratuits (parfois même libres) et non aux méthodes (MEHARI, EBIOS, OSSTM, etc). Je vais massivement utiliser les présentations Youtube des différents outils afin de le rendre accessible. Cet article n’énumère qu’une infime partie de tous les outils disponibles pour faire du pentest. Des solutions de LiveCD telles que Backtrack et le plus récent NodeZero Linux contiennent une quantité bien plus importante d’outils d’investigations et d’audit que ce qui est décrit dans cet article.

En matière d’audit, avant toute chose, il faut forcément que je parle du Trio de base que tout bon script kiddie doit connaître :

1 / Nmap pour découvrir le réseau (NmapSi4 est sympa si vous voulez un GUI).

2 / Nessus / OpenVAS pour découvrir les vulnérabilités des machines et des éléments actifs du réseau « découverts par nmap».

3 / Metasploit/Meterpreter pour exploiter les vulnérabilités «découvertes avec nessus» et en faire POC  (Proof Of Concept).

Bon c’est une base. Maintenant il faut voir ce que l’on peut trouver comme outils par famille de pentest. Je vais classer ces outils en 3 familles :

  • Les outils d’audit Généraliste (le trio de choc)
  • Les outils d’audit Réseau et Système (Cisco, Juniper, Virtualisation, etc)
  • Les outils d’audit Applicatifs (web, java, etc)

1. Les outils d’audit Généraliste

Comme on l’a vu plus haut un audit de surface se déroule en 3 phases :

1 / Découverte du réseau, des ports en écoute, des fingerprints.

2 / Découverte des vulnérabilités éventuelles des ports en écoute.

3 / Exploitation des vulnérabilités.

1.1 Découverte du réseau : Nmap

L’outil de découverte de réseau par excellence est le bon nmap que l’on ne présente plus. Il est conçu pour détecter les ports ouverts, identifier les services hébergés et obtenir des informations sur le système d’exploitation d’un ordinateur distant.
Le site de nmap.

1.2 Découverte des vulnérabilités : Nessus / OpenVAS

Dans la famille des outils de découverte de vulnérabilités, il existe 2 accessibles sans vraiment de connaissance : Nessus et OpenVAS. OpenVAS étant un fork de Nessus 2, ce dernier étant passé en propriétaire avec la version 3. OpenVAS et Nessus sont donc 2 outils qui vont automatiser un scan puis une recherche de vulnérabilité sur un système d’information afin de générer un rapport des vulnérabilités. Ils se basent sur des bases de données de vulnérabilités connues, mises à jour quotidiennement. Ces outils permettent de donner une idée des éventuelles failles de sécurité. Mais ils restent très généralistes.

1.2.1 : Nessus

Nessus est un scanner de vulnérabilités multiplateforme. A partir de la version 3, Nessus est devenu propriétaire et ne peut être utilisé sans licence que dans le cadre d’une utilisation personnelle. Nessus est le seul outil propriétaire de cet article. Mais étant incontournable je devais le citer.

Le site de Nessus.

1.2.2 OpenVAS

Tout comme Nessus, OpenVAS est un scanner de vulnérabilités multiplateforme revendiquant une base de données de 18 000 vulnérabilités.

Le site de OpenVAS.

1.3 Exploitation des vulnérabilités : Metasploit Framework

Le Metasploit Framework est probablement le plus connu des projets sécurité. C’est un outil de développement et d’exécution d’exploits. Metasploit fonctionne ainsi (wikipedia):

  1. Choisir et configurer un exploit (code permettant de pénétrer un système cible en profitant de l’un de ses bogues ; environ 600 exploits sont disponibles pour les systèmes Windows, Unix/Linux et Mac OS X) ;
  2. Vérifier si le système cible visée est sensible à l’exploit choisi ;
  3. Choisir et configurer un payload (code qui s’exécutera après s’être introduit dans la machine cible, par exemple pour avoir accès à un shell distant ou un serveur VNC) ; environ 200 payloads
  4. Choisir la technique d’encodage pour encoder le payload de sorte que les systèmes de préventions IDS ne le détectent pas ;
  5. Exécuter l’exploit.

Le site de metasploit.

1.4 Récapitulatif

Une vidéo présentant les 3 étapes :

1 / Nmap

2 / Nessus

3 / Metasploit

2. Des outils de pentest Réseau et Système

Ces outils permettent de voir comment se comportent les éléments actifs du réseau (switch, routeur, firewall, IDS, IPS) lors d’une attaque.

2.1 Hyenae

Hyenae est un outil de génération de paquets. Il permet de reproduire des scénarios d’attaque de bas niveau (tel que MITM, DoS, DDoS) et donc de révéler des failles de sécurité potentielles sur le réseau. Hyenae possède aussi un daemon qui peut être configuré pour être massivement déployé afin de simuler des stress tests réseau ou DDOS.

Le site d’Hyenae ici.

Une vidéo de démonstration (DHCP discover packet flooding).

2.2 UDP Unicorn

UDP Unicorn est un outil de flooding UDP multithreading. Cet utilitaire va permettre de simuler une attaque par flooding UDP de bas niveau, générant pour la machine ciblée la génération d’un grand nombre de paquets ICMP et donc la rendre indisponible. C’est un bon produit pour valider des protections pour lutter contre ce type d’attaque basique sur les réseaux ou pour tester des sondes IDS.

Le site de UDP Unicorn.

2.3 PyLoris

PyLoris est un outil qui permet de simuler une attaque par DoS en SOCKS, SSL ou HTTP.

Le site de Pyloris.

2.4 Inundator

Inundator est un outil de flooding d’IDS. Cet outil permet de tester les IDS (surtout SNORT) en émettant un grand nombre de faux positifs afin de masquer la véritable attaque.

Le site de Inundator.

2.5 TFTPTheft

TFTPTheft est un ensemble de 2 scripts : 1 pour découvrir les serveurs TFTP et 1 pour télécharger les fichiers contenus. Le protocole TFTP ne possède ni authentification ni chiffrement. TFTPTheft se base sur une liste de noms connus de fichiers contenus dans les switchs et routeurs Cisco.

Le site de TFTPTheft.

2.6 Vasto

Vasto est un outil de pentest à destination des environnements virtualisés se basant sur Metasploit.

Le site de Vasto ici.

2.7 THC Hydra

THC Hydra est un outil parallélisé de crack de login compatible avec un grand nombre de protocoles (Telnet, FTP, HTTP, SMB, MYSQL, SSH, Cisco, etc). C’est un outil intéressant pour tester un IDS.

Le site de THC Hydra.

Dans la même famille il existe aussi SSHatter.

2.8 PenTBox

PenTBox est un pack de logiciels de pentest comportant des crackers de mots de passe, un port scanner, et des outils d’attaque DoS.

Le site de PenTBox.

3. Des outils de pentest applicatifs

3.1 Nikto2

Nikto est un scanner de serveur web qui inclut plus de 6 400 vulnérabilités connues sur plus de 1 000 versions de serveurs. Il permet aussi de vérifier la configuration du serveur, telle que la présence de multiples fichiers d’index, des options de serveurs HTTP trop permissives, et enfin le fingerprint du serveur. Élément sympa de nikto : il peut se mettre à jour automatiquement. Enfin même si nikto n’est pas fait pour être un outil de pénétration invisible, il intègre des fonctionnalités anti-IDS qui lui permettent de se rendre plus discret. C’est donc aussi un outil intéressant pour tester votre IDS.

Le site de Nikto2.

3.2 Websecurify

Websecurify est un outil multiplateforme d’audit de service web. Il permet d’automatiser des tests :

  • SQL Injection
  • Local and Remote File Include
  • Cross-site Scripting
  • Cross-site Request Forgery
  • Information Disclosure Problems
  • Session Security Problems
  • Ainsi que d’autres du TOP 10 d’OWASP

Websecurify Promo from WEBSECURIFY on Vimeo.

Le site de Websecurify.

3.3 Hexjector

Hexjector est un outil d’injection SQL multiplateforme qui permet d’automatiser la recherche de vulnérabilités SQL.

Le site d’Hexjector ici.

3.4 RIPS

RIPS est un analyseur de code statique pour PHP qui permet d’analyser le code PHP et de mettre en avant quelques vulnérabilités. Le site de RIPS. Dans la famille des analyseurs de code statique il existe aussi RATS, etc.

3.4 WhatWeb

WhatWeb est un outil de fingerprint destiné aux applications web CMS, Blog, phpBB, OSCommerce, Javascript etc.

Le site de WhatWeb ici.

3.5 JavaSnoop

JavaSnoop est un outil qui permet d’intercepter les méthodes, d’altérer les données et bien plus encore afin de tester une application Java sur un ordinateur.

Le site de JavaSnoop.

3.6 Vulnérabilité DLL Windows : DLLHijack

DLLHijackAuditKit est probablement le meilleur outil pour trouver des vulnérabilités DLL d’application Windows.

Le site de DLLHijackAuditKit.

4 Divers

4.1 Seccubus

Seccubus est un outil qui tire parti d’OpenVAS et Nessus. Il permet de faire un comparatif de leurs résultats dans le temps afin de faire ressortir uniquement les données intéressantes.

Le site de seccubus.

4.2 ProcNetMonitor

ProcNetMonitor est un logiciel qui permet de monitorer l’activité réseau de tous les processus fonctionnant sur un système Windows. Il affiche tous les ports ouverts (TCP/UDP) et toutes les connexions actives pour chaque processus.

Le site de ProcNetMonitor.

Dans la même famille, il existe aussi Process Hacker.

4.3 Social-Engineering Toolkit (SET)

Social-Engineering Toolkit (SET) est un outil qui permet d’aider à tester l’élément humain d’un système d’information. Il permet de simuler une attaque par social engineering. Soit en utilisant  Metasploit pour créer un site web frauduleux afin que le payload soit chargé, soit en utilisant un fichier piégé (pdf) ou du mail phishing pour charger le payload. Le but de SET est de tester l’attaque sur le facteur humain souvent négligé.

Le site de SET.

Ressources :

Et pour finir, des ressources sécurité internationales :

  • OSVDB Open Source Vulnerability Database est une base de données indépendante et open source sur les vulnérabilités.
  • OWASP Open Web Application Security Project est une association qui diffuse régulièrement des bulletins sur les vulnérabilités les plus exploitées.
  • PacketStorm Security est un site regroupant les derniers outils de sécurité, les exploits, les publications et les mises en garde.
  • Sec Worm est un forum sur la sécurité hébergé en Inde.
  • Inj3ct0r est une base de données d’exploits, de vulnérabilités, de 0day et de shellcodes. C’est l’ancien Milw0rm.
  • Exploit DB est une base de données d’exploits créée par Offensive Security.
  • PentestIT est un des blogs sécurité les plus actifs.
  • Security Tube est un site de tutoriels vidéo sur la sécurité

Ainsi que quelques blogs sécurité français :

7 réflexions sur “Quelques outils de pentest et d’audit sécurité”

  1. Salut, juste pour te dire que c’etait du bon boulot, et que je vais me faire une joie de découvrir les tools que je ne connaissais pas.
    Encore merci
    P0k

  2. très bon tutoriel, assez exaustif!
    juste un petit hic est ce que quelqu’un a essayé de tester hyenae je n’arrive pas à exécuter la cmd sur la vidéo (error pcap can’t open the specified network)j’ai essayé sur +ieurs pc , tjr la même chose, svp j’ai vraiment besoin d’un outil comme Hyenae

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *