rapport de base de données gaci cui
DESCRIPTION
TRANSCRIPT
Rapport de base de données
Réalisé par : Encadré par :
GACI Idir BILQUEZ Vivien
CUI Zhikang
Nessus -- Metasploit
Table des matières
Sommaire
1. NESSUS : ............................................................................................................................................................. 4 1.1 HISTORIQUE : ......................................................................................................................................................... 4 1.2. PRESENTATION DE NESSUS : ..................................................................................................................................... 4 1.3. COMPARAISON ENTRE NESSUS ET D’AUTRES SCANNER DE SECURITE DE RESEAU ................................................................ 5
1.3.1. Sondage : .................................................................................................................................................... 5 1.3.2. Résumé de l’étude : .................................................................................................................................... 7
1.4. DESCRIPTION ET FONCTIONNEMENT DE NESSUS ............................................................................................ 7 1.4.1. Fonctionnement ......................................................................................................................................... 8 1.4.2. Mode d’opération : ..................................................................................................................................... 9 1.4.3. Scan distant .............................................................................................................................................. 10 1.4.4. Scan local ................................................................................................................................................. 11 1.4.5. Différents accès possibles ........................................................................................................................ 11
1.5. AVANTAGE D’UTILISATION DE NESSUS : ........................................................................................................ 11 1.6. INCONVENIENTS D’UTILISATION DE NESSUS : ............................................................................................... 12 1.7. INSTALLATION ET UTILISATION : .................................................................................................................. 12
1.7.1. Installation : ............................................................................................................................................. 13 1.7.2. Utilisation : ............................................................................................................................................... 14
1.8. CONCLUSION ................................................................................................................................................... 20
2. METASPLOIT ................................................................................................................................................ 22 2.1. DESCRIPTION : ................................................................................................................................................. 22 2.2. LES PRODUITS DE METASPLOIT : .................................................................................................................... 22 2.3. ARCHITECTURE DU FRAMEWORK DE METASPLOIT : .................................................................................................... 23
2.3.1. Les modules de metasploit : ..................................................................................................................... 24 2.4. INSTALLATION ................................................................................................................................................. 24 2.5. PENETRER UN HOTE EN UTILISANT LE RAPPORT DE NESSUS : ..................................................................... 29 2.6. CONCLUSION ................................................................................................................................................... 31
Nessus -- Métasploit
Chapitre 1 : Nessus
Nessus -- Metasploit
1. NESSUS :
1.1 Historique : Renaud Deraison est le propriétaire de Nessus et la personne qui a fait naitre le « projet Nessus » en 1998 pour fournir a la communauté internet un scanner de vulnérabilité gratuit .En octobre 2005 , l’entreprise de Renaud Deraison,Tenable Network Security dont le site internet officiel http://www.tenable.com/, change la licence de Nessus 3 et devient propriétaire . Néanmoins, Tenable Network Security maintient le moteur d’analyse de la version de Nessus (ainsi qu’une infime quantité de failles de sécurité) qui est utilisé par un fork open source de Nessus appelé OpenVAS . En avril 2009, Tenable Network Security sort la version 4 de Nessus.
1.2. Présentation de Nessus :
Nessus est un scanner de vulnérabilité réseaux ,un outil d’audit automatique de réseau .Il signale les faiblesses potentielles ou avérées sur les machines testées .Il permet ,via un mode client-‐serveur et a l’aide de Métasploit ,de lancer des attaques sur un réseau ou plusieurs réseaux (partager la charge d’attaque sur ces réseaux avec un client et plusieurs serveurs),donc sur les serveurs que comporte (nt) ce(s) réseau(x).cet outil possède une base d’attaques importante, et permet ainsi de tester certaines versions obsolètes de services connus( Apaches /IIS).Il permet aussi de tester les applications Web connues (très fortement utilisées par la communauté, style PHPNuke , phpBB, et autres).Nessus possède d’autres plugins intéressants comme Hydra, qui permet de tester la robustesse des mots de passe des applications Web . Par rapport aux autres scanners de vulnérabilités Nessus est compatible avec Windows et Linux et constitué de 2 parties :
• Le serveur qui contient une base de données regroupant différents types de vulnérabilités et qui effectue les tests de sécurité.
• Le client peut être situé sur une autre machine, et invoquer des fonctions distantes sur le serveur afin de tester la sécurité sur une ou plusieurs machines ou réseaux.
L’utilisateur lui se connecte sur le serveur grâce au client et après authentification, il ordonne au serveur de procéder aux tests d’une ou plusieurs machines. Le client reçoit ensuite les résultats du test.
Nessus stocke et gère toutes ses failles de sécurité grâce à un système de plugins. Donc Nessus est un logiciel qui effectue de réelles attaques grâce a metasploit et présente le résultat de ces attaques sous forme de rapport .et par rapport a son utilisation on peut dire que c’est une arme à double tranchant. D’un coté, une équipe sécurité peut l’utiliser pour scanner son réseau dans le but de prévenir les intrusions et les dénis de service .D’un autre coté, une personne malveillante peut l’utiliser à des fins malhonnêtes et en profiter pour exploiter les vulnérabilités déclarées.
Nessus -- Metasploit
1.3. Comparaison entre Nessus et d’autres scanner de sécurité de réseau
Une étude comparative a présenté des résultats de la comparaison des scanners de sécurité réseau au cours des testes de pénétration dans un périmètre prédéfini. Cette étude calcule :
• Le nombre de vulnérabilités découvertes • Le nombre de faux positif (une vulnérabilité patché mais détecté par le scanner étant une
vulnérabilité) • Le nombre de passes (faux négatifs) • Motifs passe • L’exhaustivité des contrôles (dans le cadre de la tache) • La précision du scanner (dans le cadre de la tache)
Ces critères caractérisent collectivement « la vivacité » d’un scanner, est l’automatisation de la routine des actions dans l’audit de la sécurité du périmètre réseau.
1.3.1. Sondage :
Le portail Securitylab.ru (une étude faites par des russes) à fait un sondage, dont le but était principalement de recueillir des données sur les scanner et les taches pour lesquelles ils sont utilisés.
Les gens interrogés par des questions sur l’utilisation des scanners de sécurité spécialisés déclarent qu’ils les utilisent comme des outils d’analyse Web (68%), scanners des SGBD (30%) et en troisième position (2%) pour les analyses de la sécurité des systèmes d’information.
Les résultats ont montré que la plupart des organismes préfèrent utiliser le produit XSpider de positifs Technologies (31%) et Nessus (17%) et Nmap(14%).
Nessus -- Metasploit
a partir de ces données les chercheurs ont choisi 6 applications pour les tests de comparaison :
Nessus -- Metasploit
1.3.2. Résumé de l’étude :
Tous les critères de comparaison ont élu MaxPatrol en première position, et en deuxième lieu Nessus, les résultats des autres scanners sont sensiblement plus faibles. C’est ce qui explique la popularité de ces deux scanners parmi les experts en sécurité, ainsi que parmi les « hacker ».
Cette étude nous montre aussi que Nessus est un outil intéressant et utile dans le monde de sécurités. Maintenant qu’on se rend compte de la valeur de Nessus on va voir sa description et son fonctionnement
1.4. Description et fonctionnement de Nessus
Nessus détecte les machines vivantes sur un réseau en balayant les ports ouverts ainsi identifie les services actifs, leurs version, puis tente diverses attaques
Nessus se divise en deux parties comme motionné précédemment :
• nessusd qui est un daemon (service ou serveur) exécutant les requêtes ainsi que la communication avec la cible, il contient une base de données regroupant différents types de vulnérabilités. Le daemon tourne avec des privilèges élevés (root)
Nessus – Metasploit
• nessus, une application client qui récupère les données et affiche les résultats via une
interface graphique. Tourne sous l’identité d’un utilisateur non privilégié. les tests lancés par nessus sont joués par des plugins que la majorité sont écrits dans le langage de script NASL( Nessus Attack Scripting Language) ;un langage qui permet a quiconque d’écrire un test pour une vulnérabilité donnée en quelque minutes, pour permettre au gens de partager leurs tests sans avoir a se soucier de leurs système d’exploitation et de garantir a son utilisateur que son script ne va pas infecter que la machine cible (des performances en sécurité).
1.4.1. Fonctionnement Nessus permet un audit de sécurité en s’appuyant sur deux éléments : un client et un serveur. Le serveur, nessusd, est chargé de tester le système indiqué en essayant toutes les attaques que sa base contient, pendant que le client, nessus(qui n’est qu’une interface graphique),fait un rapport sur les différents résultats obtenus. Les serveur possède une base de données d’environ 300 attaques existantes à l’installation et c’est à l’administrateur de la remettre aà jour régulièrement .Les attaques mise en place par nessusd sont codées comme des modules externes(ou plugins) écrits généralement en NASL. Les communications entre le client et le serveur sont cryptées. Il fonctionne en conjonction avec un analyseur de ports, le plus courant étant nmap. A partir d’une liste de port disponibles, Nessus va essayer toutes une batterie d’action définies dans des « plugins »(modules optionnels). Ces actions peuvent conduire au « plantage » de la cible testée. En fin d’exécution, Nessus propose un rapport très détaillé. Quand c’est possible, un correctif et des liens utiles pour se renseigner sur les vulnérabilités sont proposés. Ce produit évolue constamment, les nouvelles vulnérabilités y sont ajoutées périodiquement. Il intègre sa propre gestion de base de connaissances pour améliorer les analyses en se basant sur les données accumulées.
Nessus -- Metasploit
1.4.2. Mode d’opération :
• D’abord, Nessus va détecter si la machine visée est vivante ou non. Grâce au plugin ping_host.nasl,il va effectuer des pings graduels. D’abord, il va tenter de joindre la cible par des requêtes ARP. Puis, il va essayer avec des requêtes TCP (avec des échange SYNóACK ou SYN óRST) sur des ports aléatoires allant de 1024 à 65535. Il va ensuite tenter en effectuant un ping(ICMP). Et enfin, il va effectuer un ping UDP applicatif (de type requête DNS, RPC)
• Nessus va scanner les ports des machines vivantes avec un des quatre scanners de port interne, ou externe comme nmap. En sachant que Nessus est optimisé s’il utilise ses scanners de port maison (comme montré par l’étude motionné précédemment).il est donc déconseillé d’utiliser nmap pour des raisons de performances.
• Selon la configuration de l’utilisateur, Nessus effectue un scan local ou distant • Nessus envoie ses attaques de manière progressive.il va utiliser sa base de connaissance pour
appliquer les bonnes failles de sécurité aux bons services et aux bonnes versions. Grâce a ses plugins, le serveur Nessus va générer des attaques de plus en plus agressives contre les machines visée. Cela peut aller du simple test de version de logiciel jusqu'à des attaques de type DDOS comme par exemple SYN flooding.
Nessus -- Metasploit
• Les dernières catégories de tests, plus agressives, peuvent avoir des conséquences graves sur la disponibilité du système qui peut aller jusqu'à la provocation du crash de la machine.
• Le logiciel client standard peut exporter les données sous divers formats (HTML simple et HTML avec graphe, XML, NSR, NBE, TXT) et par défaut, Nessus génère un rapport au format NBE (Nessus Back End report).Les fichiers NBE sont des fichiers dont les informations sont séparées par des ‘|’.
• Outre que les failles, Nessus présente également différentes informations utiles à un auditeur comme la version des services ou du système d’exploitation. 1.4.3. Scan distant
Avantages Inconvénients
-Test de connexion aux ports [1-15000] par défaut -scanner de port maison -tester la version des services -scan en parallèle (Gain de temps et de performances) -Plusieurs instances de nessusd possible
- Faux positif possibles -Peut surcharger le réseau inutilement
Nessus – Metasploit
1.4.4. Scan local
Avantages Inconvénients
-Répond au problème de faux positif -Test de vulnérabilité des logiciels locaux Ex : version de « dll » obsolète -Rend un scan optimal -Authentifications importantes -Utilisation de techniques de Hackers Ex : attaque par dictionnaire sur « /etc/shadow »
-Peut figer des applications locales -Nécessite le redémarrage de ces applications Ex : ferme de calcul bancaire Natixis tombé à cause du scan local
1.4.5. Différents accès possibles • Pour Unix :
-SSH (login +password)
-SSH (clé privée +publique=>cryptage asymétrique)
-Kerberos(cryptage symétrique)
• Pour Windows :
-NTML &NTMLv2 (par defaut)
-Kerberos
1.5. Avantage d’utilisation de Nessus :
- Nessus est un outil très complet dans son domaine. Les paramètres sur lesquels on peut agir sont très nombreux, ce qui donne l’impression que cet outil est très complet.
- La présentation du rapport de scan est très pratique, sous forme tableau dynamique rassemblant les sous réseaux observés, les IP précises observées, les ports détectés, la sensibilité du port, et enfin une explication sur le warning présenté.
- L’interface graphique est la bienvenue et peut présenter de manière visuelle toutes les options disponibles.
- Nessus prévient si l’on coche une option qui peut être dangereuse ou bloquante pour un certain temps.
- Son architecture permet son extensibilité. Le développement d’une attaque n’est pas très compliqué en langage Nessus(NASL) ou même en C.
- Les informations sur le niveau de sécurité résultant de ces attaques sont reportées dans les rapports. Des explications sont données sur la raison pour laquelle un trou de sécurité a été détecté.
Nessus -- Metasploit
1.6. Inconvénients d’utilisation de Nessus :
- Le grand nombre de paramètres sur lesquels on peut agir sans tout le temps bien comprendre ce qu’ils font. En effet le détail et la signification des attaques, des options de scans ne sont pas toujours très clairs par leur simple nom.
- La fermeture du code source depuis la version 3. Les versions antérieures étaient totalement ouvertes sous licence GPL. Nessus est un bon logiciel pour débuter dans la sécurité des réseaux et pour comprendre quels sont les points vulnérables d’un réseau. Il ne remplacera pas cependant une bonne analyse méthodique d’un expert sécurité.
1.7. Installation et Utilisation : - Tenable recommande au minimum une mémoire de 2GO pour utiliser Nessus pour effectuer des scans plus importants de plusieurs réseaux, une mémoire d’au moins 3 Go est recommandée. - Un processeur Pentium 3 fonctionnant à 2Ghz ou plus est recommandé et c’est préférable de déployer Nessus sur les systèmes 64 bits. Le système doit posséder au moins 30Go d’espace libre sur le disque dur pour Nessus et les données de scan générées. Télécharger Nessus depuis le site www.nessus.org pour linux. Avant d’installer Nessus sur Unix/Linux, Plusieurs bibliothèques sont requises. De nombreux systèmes d’exploitation les installent par défaut et , en général, elle ne nécessitent pas d’installation séparée :
- Zlib - GNU C Library (libc) - Oracle java (Java doit etre installé sur l’hôte avant Nessus .Si Java est installé après, il
faudra réinstaller Nessus.
Nessus – Metasploit
1.7.1. Installation :
Nessus – Metasploit
1.7.2. Utilisation :
(1). Scan : permet de définir les scans à effectuer. En cliquant sur‘6 ‘ (New Scan), vous pouvez définir le type de scan, la politique à appliquer et indiquer une cible (possibilité d’importer une liste) sur la figure suivante on a définit la cible 127.0.0.1 :
1
3 4 5
6
2
Nessus – Metasploit
(2). Résultat : permet de visualiser le résultat du scan en terme de vulnérabilités :
En cliquant sur le Scan test (le nom qu’on a définit pour notre scan ) on a la figure suivante :
Nessus – Metasploit
Sur cette figure on peut visualiser les hôtes sur lesquels le scan est lancé et ainsi les vulnérabilités de cette machine avec des niveaux de criticité :
et en cliquant sur une des vulnérabilité trouvé par le scan on peut voir toute les informations la concernant (numéro CVE par exemple) ainsi que le patch pour pouvoir corriger la faille :
On peut même exporter le résultat de scan vers un fichier qu’on peut choisir le type :
Nessus – Metasploit
(3).Policies : ce menu est le plus essentiel. Il permet de définir tout un tas d’options pour les scans à effectuer. 4 sous options disponibles :
- General Settings: l’onglet Général vous permet de nommer la politique et de configurer diverses opérations d’analyse. Six cases d’options sont disponibles pour contrôler le comportement du scanner. Quelques options utiles :safeChecks(permet de désactiver les plugins pouvant faire planter l’hôte distante),Port scan range (permet de définir une range de ports à scanner),
Nessus – Metasploit
- Credentials : l’onglet de credentiels permet de configurer des informations d’authentification lors du scan. Cette option permet à Nessus des tests en boite blanche afin d’effectuer une plus grande variété de contrôles qui se traduisent par des résultats plus précis.
- Plugins : l’onglet plugins permet à l’utilisateur de choisir des contrôles de sécurité spécifiques au moyen de divers modules (Backdoors, DNS, Databases, Firewall etc).
Nessus – Metasploit
- Préférences : l’onglet préférences permet d’affiner divers paramètres. Le menu déroulant propose des éléments de configuration supplémentaires pour la catégorie sélectionnée. Il est important de noter que ceci est une liste dynamique dépendante des plugins et des politiques que l’on a sélectionnée.
(4). USERS : permet d’ajouter /supprimer des utilisateurs ayant accès a Nessus.
(5). Configuration : permet la configuration de Nessus et de définir certain champs
Nessus – Metasploit
1.8. Conclusion
Nessus est un excellent outil qui peut aider à améliorer la capacité de tester et découvrir les problèmes de sécurité connus. Sa puissance doit être utilisée à bon escient car elle peut rendre les systèmes de production non disponibles avec certain plugins plus dangereux.
Nessus -- Metasploit
Chapitre 2 :Metasploit
Nessus -- Metasploit
2. Metasploit 2.1. Description :
Metasploit est un framework de développement pour créer des outils de sécurité et des exploit qui sert a exploiter des vulnérabilités scanné au préalable .Il a été écrit par HD Moore le fondateur du projet metasploit en 2003. Cet outil est utilisé lors de tests de pénétration pour vérifier les patchs de sécurité sur un système. La version 3 utilise Ruby alors que la version 2 est programmée en Perl. A la différence d’un scanner de vulnérabilités comme Nessus qui tente de déterminer si une cible est vulnérable, le framework pénètre la cible et confirme la vulnérabilité.
2.2. Les produits de metasploit : Metasploit est disponible dans diverses versions :
- MetasploitCommunity Edition : pour les gens qui veulent apprendre a utilisé Metasploit - Metasploit Pro : pour les professionnels (entreprise) - Metasploit Express :le petit frère de Metasploit Pro ,aide les administrateur réseau et les auditeurs
a découvrir les atout du réseau, la priorité des vulnérabilité , mot de passe de test, et de vérifier d’autre mesures .
- Metasploit Framework : et c’est ce qu’on va utiliser durant ce rapport destiné aux développeurs qui cherche à construire leurs propres outils et processus de recherche de vulnérabilités et de pénétrations.
Nessus -- Metasploit
2.3. Architecture du Framework de metasploit : Pour pouvoir comprendre comment fonctionne Metasploit on va jeter un coup d’œil sur la structure du framework.
On voit sur les figures ci-dessus l’architecture de Metasploit .Tout d’abord on remarque que l’architecture est modulaire (donne la possibilité d’utiliser des module tel que « Exploit »module, « Aux » module, etc) permettant d’adapter MSF (Metasploit Framework) et son utilisation selon le cas étudié : - Metasploit fonctionne sous divers interfaces qui interagissent avec le « MSF Base »(GUI), WEB,
CLI et msfConsole, mais le plus utilisé est msfConsole .
En effentmsfConsole offre le meilleur support/fonctionnalité du framework, d’autre part msfConsole est console interactive pour framework. Elle permet la complétion automatique (tab) et meme l’execution des commandes externes.
- L’interface la plus adaptée à l’utilisation complète de MSF. - La plupart des commandes sont assez intuitives - Il existe aussi des commandes de base de données qui permettent de gérer
l’enregistrement/l’archivage de tout ce qui est traité avec Metasploit. - Permet d’importer des logs de nmap, Nessus …
Nessus – Metasploit
2.3.1. Les modules de metasploit :
2.3.1.1. Exploit
Les exploits sont rangés par OS, puis par services. Ce sont des scripts Ruby qui contiennent le code d’exploit.
2.3.1.2. Aux Il s’agit de modules auxiliaires utilisés pour diverses taches comme le scan de port, sniffing, scan de services.
2.3.1.3. Payload Le Payload est le code exécuté une fois la vulnérabilité exploitée. On trouve trois types de Payload disponibles : § Single Payload : effectue une tache spécifique (crée un nouveau utilisateur, binder un
shell…). § StagerPayload : crée une connexion entre la victime et l’attaquant. § Stage Payload : il est téléchargé par le « stager »afin d’exécuter des taches un peu plus
complexes (exécuter shell Windows).
Une des puissances du framework c’est qu’il donne la possibilité de choisir parmi plusieurs Payload pour un même exploit.
2.4. Installation Connectez vous sur le site www.metasploit.com/download/ pour pouvoir récupérer le fichier d’installation en choisissant le fichier compatible avec votre système d’exploitation pour notre exemple on a choisit linux 32 bit .et les figures suivante montre la procédure a suivre pour installer Metasploit :
Nessus – Metasploit
Nessus – Métasploit
Poursuivre quand même
Nessus – Metasploit
Création d’un utilisateur : Avoir la clé du produit en cliquant sur Get Product Key
Choisir GET COMMUNITY EDITION remplissez les informations pour recevoir la clé a l’adresse de votre boite email
Cliquez sur ACTIVATE LICENSE
LA Clé à copier
Nessus – Metasploit
Activation avec succès on vérifie la base de donnée postgresql :
Maintenant on lance msfconcole (metasploit en mode console)
Maintenant notre Metasploit est prêt à utiliser
Nessus – Metasploit
2.5. Pénétrer un hôte en utilisant le rapport de Nessus : À la fin d'une analyse de vulnérabilité avec Nessus, nous avons enregistré les résultats au format nbe puis on a démarré le msfconsole. Ensuite, nous devons importer les résultats dans Metasploit.
Après l’importation du fichier résultat, on peut exécuter la commande ‘hosts’ pour lister les machine qui sont dans le rapport nbe importé, ainis la commande services et vulns pour lister tout les services détecté ouvert durant le scan et toutes les vulnérabilités trouvé dans le rapport de Nessus et enregistré dans le fichier nbe qu’on a importé
Nessus – Metasploit
Nessus – Metasploit
Maintenant on va exploiter la vulnérabilité apache_chunked en précisant la cible RHSOT (l’adresse de la machine cible) :
2.6. Conclusion Il faut savoir que l’utilisation de metasploit ne se limite pas à une ou deux failles. Des centaines d’exploits sont disponibles et permettront d’attaquer tout type de machines. C’est un outil puissant qui n’a pas fini de faire parler de lui.