Vous êtes sur la page 1sur 7

III) Récupération d’informations

(1) Scan de ports

Metasploit est un Framework (ensemble d’outils et de logiciels organisés qui simplifie


une tâche complexe) qui va nous être utile dans les différentes étapes d’un test
d’intrusion.

Nmap….. Scan de port :

Un port dans un système est une application utilisée comme une interface exécutant un
service, par exemple : le port 80 est réservé aux applications web dont toutes les
informations de cette application sont échangées depuis ce port.

Le fameux Nmap est un outil qui nous permet de scanner ces ports et d’identifier les
services en exécution ainsi que beaucoup d’autres fonctionnalités avancées (NSE).

Le principe du scan est simple, Nmap envoie un paquet au système dans un port
quelconque et si le système répond (n’importe quelle réponse) cela veut dire que le port
est ouvert. Si le système ne répond pas cela veut dire le port est fermé ou bien filtré.

(2) Test de bases

Metasploit est un outil très performant et très surprenant remplie de beaucoup de surprises.
Metasploit possède beaucoup d'exploit, de payloads et de modules auxyliare et c'est bien ces
modules auxyliare qui vont nous aider pour faire des scans Nmap. Ce qui est bien avec les scans
Metasploit c'est qu'il reste stocker en base de données et pouvoir lister les résultats à tout
moment. On peut aussi importer dans Metasploit des scans Nmap pour les utiliser lors de
l'exploitation avec Metasploit.

root@kali:~# msfconfole

Il faut savoir que l'outil Nmap est déjà intégrer dans Metasploit et qu'il utilise exactement la
même syntaxe que Nmap.

msf > db_nmap -v -sS -sV 192.168.1.22


[*] Nmap: Starting Nmap 7.60 ( https://nmap.org ) at 2017-11-11 19:49 GMT
[*] Nmap: NSE: Loaded 42 scripts for scanning.
...
[*] Nmap: 8009/tcp open ajp13 Apache Jserv (Protocol v1.3)
[*] Nmap: 8180/tcp open http Apache Tomcat/Coyote JSP engine 1.1
[*] Nmap: MAC Address: 08:00:27:27:8B:14 (Oracle VirtualBox virtual NIC)
[*] Nmap: Service Info: Hosts: metasploitable.localdomain, localhost, irc.Metasploitable.LAN;
OSs: Unix, Linux; CPE: cpe:/o:linux:linux_kernel
[*] Nmap: Read data files from: /usr/bin/../share/nmap
[*] Nmap: Service detection performed. Please report any incorrect results at
https://nmap.org/submit/ .
[*] Nmap: Nmap done: 1 IP address (1 host up) scanned in 27.85 seconds
[*] Nmap: Raw packets sent: 1026 (45.128KB) | Rcvd: 1026 (41.120KB)

Afficher les scans effectués avec Metasploit

msf > db_hosts


[-] The db_hosts command is DEPRECATED
[-] Use hosts instead

Hosts
=====

address mac name os_name os_flavor os_sp purpose info comments


------- --- ---- ------- --------- ----- ------- ---- --------
192.168.1.22 08:00:27:27:8b:14 Linux server
msf >

Afficher le résultat de notre scan :

msf > services 192.168.1.22

Services
========

host port proto name state info


---- ---- ----- ---- ----- ----
192.168.1.22 21 tcp ftp open vsftpd 2.3.4
192.168.1.22 22 tcp ssh open OpenSSH 4.7p1 Debian 8ubuntu1 protocol 2.0
192.168.1.22 23 tcp telnet open Linux telnetd
192.168.1.22 25 tcp smtp open Postfix smtpd
192.168.1.22 53 tcp domain open ISC BIND 9.4.2
192.168.1.22 80 tcp http open Apache httpd 2.2.8 (Ubuntu) DAV/2
192.168.1.22 111 tcp rpcbind open 2 RPC #100000
192.168.1.22 139 tcp netbios-ssn open Samba smbd 3.X - 4.X workgroup: WORKGROUP
192.168.1.22 445 tcp netbios-ssn open Samba smbd 3.X - 4.X workgroup: WORKGROUP
192.168.1.22 512 tcp exec open netkit-rsh rexecd
192.168.1.22 513 tcp login open OpenBSD or Solaris rlogind
192.168.1.22 514 tcp tcpwrapped open
192.168.1.22 1099 tcp rmiregistry open GNU Classpath grmiregistry
192.168.1.22 1524 tcp shell open Metasploitable root shell
192.168.1.22 2049 tcp nfs open 2-4 RPC #100003
192.168.1.22 2121 tcp ftp open ProFTPD 1.3.1
192.168.1.22 3306 tcp mysql open MySQL 5.0.51a-3ubuntu5
192.168.1.22 5432 tcp postgresql open PostgreSQL DB 8.3.0 - 8.3.7
192.168.1.22 5900 tcp vnc open VNC protocol 3.3
192.168.1.22 6000 tcp x11 open access denied
192.168.1.22 6667 tcp irc open UnrealIRCd
192.168.1.22 8009 tcp ajp13 open Apache Jserv Protocol v1.3
192.168.1.22 8180 tcp http open Apache Tomcat/Coyote JSP engine 1.1

Maintenant nous allons voir comment exporter un scan Nmap dans Metasploit.

Tout d'abord il faut lancer notre scan Nmap avec l'option -ox outpout pour enregistrer le résultat
au format xml.

root@kali:~# nmap -v -sS -sV -A -oX mon_scan 192.168.1.22


Warning: The -o option is deprecated. Please use -oN

Une fois que cela est fait nous retournons dans Metasploit pour importer notre scan.
L'importation de scan dans Metasploit est très simple il suffit de :

msf > db_import mon_scan


[*] Importing 'Nmap XML' data
[*] Import: Parsing with 'Nokogiri v1.8.1'
[*] Importing host 192.168.1.22
[*] Successfully imported /root/mon_scan
msf >

Notre scan a bien été importé dans Metasploit et pour lister le résultat dans Metasploit rien de
plus simple.

msf > services 192.168.1.22

Services
========

host port proto name state info


---- ---- ----- ---- ----- ----
192.168.1.22 21 tcp ftp open vsftpd 2.3.4
192.168.1.22 22 tcp ssh open OpenSSH 4.7p1 Debian 8ubuntu1 protocol 2.0
192.168.1.22 23 tcp telnet open Linux telnetd
192.168.1.22 25 tcp smtp open Postfix smtpd
192.168.1.22 53 tcp domain open ISC BIND 9.4.2
192.168.1.22 80 tcp http open Apache httpd 2.2.8 (Ubuntu) DAV/2
192.168.1.22 111 tcp rpcbind open 2 RPC #100000
192.168.1.22 139 tcp netbios-ssn open Samba smbd 3.X - 4.X workgroup: WORKGROUP
192.168.1.22 445 tcp netbios-ssn open Samba smbd 3.0.20-Debian workgroup:
WORKGROUP
192.168.1.22 512 tcp exec open netkit-rsh rexecd
192.168.1.22 513 tcp login open OpenBSD or Solaris rlogind
192.168.1.22 514 tcp tcpwrapped open
192.168.1.22 1099 tcp java-rmi open Java RMI Registry
192.168.1.22 1524 tcp shell open Metasploitable root shell
192.168.1.22 2049 tcp nfs open 2-4 RPC #100003
192.168.1.22 2121 tcp ftp open ProFTPD 1.3.1
192.168.1.22 3306 tcp mysql open MySQL 5.0.51a-3ubuntu5
192.168.1.22 5432 tcp postgresql open PostgreSQL DB 8.3.0 - 8.3.7
192.168.1.22 5900 tcp vnc open VNC protocol 3.3
192.168.1.22 6000 tcp x11 open access denied
192.168.1.22 6667 tcp irc open UnrealIRCd
192.168.1.22 8009 tcp ajp13 open Apache Jserv Protocol v1.3
192.168.1.22 8180 tcp http open Apache Tomcat/Coyote JSP engine 1.1

(3)Test de services

Scan sur le service SSH

Lors de notre scan Nmap on a pu déterminer que le service SSH écoutait sur le port 22.
Cependant on aurait très bien pu le faire avec Metasploit qui a un module pour déterminer la
version du SSH présent sur un port.

msf auxiliary(scanner/ip/ipidseq) > search ssh_version

Matching Modules
================

Name Disclosure Date Rank Description


---- --------------- ---- -----------
auxiliary/fuzzers/ssh/ssh_version_15 normal SSH 1.5 Version Fuzzer
auxiliary/fuzzers/ssh/ssh_version_2 normal SSH 2.0 Version Fuzzer
auxiliary/fuzzers/ssh/ssh_version_corrupt normal SSH Version Corruption
auxiliary/scanner/ssh/ssh_version normal SSH Version Scanner

Nous allons ici utiliser le module ssh_version

msf auxiliary(scanner/ip/ipidseq) > use auxiliary/scanner/ssh/ssh_version


msf auxiliary(scanner/ssh/ssh_version) > show options

Module options (auxiliary/scanner/ssh/ssh_version):

Name Current Setting Required Description


---- --------------- -------- -----------
RHOSTS yes The target address range or CIDR identifier
RPORT 22 yes The target port (TCP)
THREADS 1 yes The number of concurrent threads
TIMEOUT 30 yes Timeout for the SSH probe

La seule option que nous avons à fournir est l'IP de la cible.

msf auxiliary(scanner/ssh/ssh_version) > set RHOSTS 172.16.86.131


RHOSTS => 172.16.86.131
msf auxiliary(scanner/ssh/ssh_version) > exploit
[+] 172.16.86.131:22 - SSH server version: SSH-2.0-OpenSSH_4.7p1 Debian-8ubuntu1 (
service.version=4.7p1 openssh.comment=Debian-8ubuntu1 service.vendor=OpenBSD
service.family=OpenSSH service.product=OpenSSH os.vendor=Ubuntu os.device=General
os.family=Linux os.product=Linux os.version=8.04 service.protocol=ssh
fingerprint_db=ssh.banner )
[*] Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed

On obtient donc la version du service SSH sur la cible qu'on peut comparer avec c'elle scanner
par Nmap

msf > services

Services
========

host port proto name state info


---- ---- ----- ---- ----- ----
...
172.16.86.131 22 tcp ssh open OpenSSH 4.7p1 Debian 8ubuntu1 protocol 2.0
...

Scan du service FTP

Toujours dans la même optique de récolter un maximum de preuve et de comparer le résultat


de plusieurs outils de scan afin d'éviter les faux positif on va s'attarder sur le service FTP. Sachant
que le protocole FTP est un protocole pas très sécurisé il se peut que nous récoltions des
informations plus fines en le scannant de manière plus ciblé et précise. On pourrait trouver une
porte d'entrée facile à exploité.

On procède comme à l'habitude en cherchant le module correspondant.

msf > search ftp_version

Matching Modules
================

Name Disclosure Date Rank Description


---- --------------- ---- -----------
auxiliary/scanner/ftp/ftp_version normal FTP Version Scanner

On affiche et renseigne les options nécessaires

msf > use auxiliary/scanner/ftp/ftp_version


msf auxiliary(scanner/ftp/ftp_version) > show options

Module options (auxiliary/scanner/ftp/ftp_version):

Name Current Setting Required Description


---- --------------- -------- -----------
FTPPASS mozilla@example.com no The password for the specified username
FTPUSER anonymous no The username to authenticate as
RHOSTS yes The target address range or CIDR identifier
RPORT 21 yes The target port (TCP)
THREADS 1 yes The number of concurrent threads

msf auxiliary(scanner/ftp/ftp_version) > set RHOSTS 172.16.86.131


RHOSTS => 172.16.86.131

Ensuite on lance le module de scan

msf auxiliary(scanner/ftp/ftp_version) > exploit

[+] 172.16.86.131:21 - FTP Banner: '220 (vsFTPd 2.3.4)\x0d\x0a'


[*] Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed
msf auxiliary(scanner/ftp/ftp_version) >

Scanner le service SMTP

Ici plutôt que la version nous allons faire ce qu'on appelle dans le jargon de l'énumération.
Comme vous l'aurez deviné nous allons énumérer les utilisateurs du service SMTP.

Comme d'habitude :

msf > search smtp_enum

Matching Modules
================

Name Disclosure Date Rank Description


---- --------------- ---- -----------
auxiliary/scanner/smtp/smtp_enum normal SMTP User Enumeration Utility

On renseigne les options :

msf > use auxiliary/scanner/smtp/smtp_enum


msf auxiliary(scanner/smtp/smtp_enum) > show options

Module options (auxiliary/scanner/smtp/smtp_enum):

Name Current Setting Required Description


---- --------------- -------- -----------
RHOSTS yes The target address range or CIDR identifier
RPORT 25 yes The target port (TCP)
THREADS 1 yes The number of concurrent threads
UNIXONLY true yes Skip Microsoft bannered servers when
testing unix users
USER_FILE /usr/share/metasploit-framework/data/wordlists/unix_users.txt yes The file
that contains a list of probable users accounts.

msf auxiliary(scanner/smtp/smtp_enum) > set RHOSTS 172.16.86.131


RHOSTS => 172.16.86.131

Puis on lance le module d'énumération.

msf auxiliary(scanner/smtp/smtp_enum) > exploit

[*] 172.16.86.131:25 - 172.16.86.131:25 Banner: 220 metasploitable.localdomain ESMTP


Postfix (Ubuntu)

Vous aimerez peut-être aussi