La recherche d'informations

Aujourd'hui la sécurité informatique est un enjeux majeur du monde de l'entreprise et les technique des pirates informatique sont devenu de plus en plus sofistiqué. J'ai donc décidé de réaliser plusieur "articles" dans lesquels on pourra se mettre dans la peau d'un pirate informatique et voir au plus près, comment ces derniers réfléchissent pour trouver des technique pour compromettre la sécurité du système d'information d'une entreprise et parfois emportant avec eux des profit colosaux.

Avant toutes choses tout ce que vous lirez après ce disclamer est uniquement dans un but éducatif, je ne pourrai donc en aucun cas être tenu responsable des actes que vous réaliserai si celle-ci tombe sous le coup de la loi.

Cette première partie concernera la recherche d'informations.

A la récolte d'informations

La prise d'informations est l'étape la plus importante pour faire des tests de pénétration. La prise d'information publique consiste en la consultation sur internet des informations disponible sur l'entreprise (politique de sécurité, investisment SSI etc...). D'autres techniques de recherche d'informations publique existe tels que le social Engeenering.

Récupérartion d'information publique sur la cible

  • Les sites qui fournis des informations
    • http://www.archive.org
    • http://www.alexa.com
    • http://serversniff.net
    • https://www.whois.net

Les Outils utilisé pour récupérer des informations publique :

  • whois
  • Maltego
  • Dnsenum
  • Dig
  • Dmitry
  • Tcptraceroute
  • Theharvester

récupérer des information sur le(s) serveur(s) (DNS..) :

    whois www.google.com
    dig www.google.com

Récupérer l'adresse ipv4 et ipv6 du serveur :

    host www.google.com

Récupérer les enregistrement DNS du serveur et aussi les champs MX :

    dnsenum www.google.com

Récupérer les adresses IP hôtes, récupérer les informations du whois, informations au niveau des bases netcraft, les sous domaines et les adresses emails, affiche aussi les ports ouvert sur le serveur

    dmitry www.google.com

Prise d'information concernant le routage des données

    tcptraceroute www.google.com

Prise information au niveau des moteurs de recherche

    theharvester -d google.com -l 100 -b google

Enumération de domaine, de serveurs mails, d'adresse emails, ou des information sur des personne coté réseau sociaux moteur de recherche ect..

maltego :

Maltego est une La plate-forme Open Source de renseignement qui traque les informations personnel disponible publiquement. L'outil est présent dans Kali Linux.

Lancer l'application, s'enregistrer, choisir un domaine, une personne ... et choisir ce qu'on veux décliner dans les graphes ( site web, adresse IP serveur, schema du serveur, information sur une personne sur internet, mail, technologie utilisé sur le site etc...

Utilisé plusieurs outils de prise d'informations pour faire des comparaisons pour éviter les faux positive.

Enumération des machine

l'énumération des machines est le processus utilisé pour trouver et collecter des informations sur une machine cible

Des informations tel que :

  • Les Ports
  • Systèmes d'exploitation
  • Services

Réalisé après avoir vérifié que la machine est en ligne sur le réseau

Rappel TCP/IP :

Le modèle TCP/IP (modèle en 4 couche)

Couche Fonction
La couche 4 Application Englobe les application standard (telnet, smtp etc...)
La couche 3 Transport Assure l'acheminement des données ainsi que le mécanisme permettant de connaitre l' états de la transmission
La couche 2 Réseau charger de fournir le paquet de données (datagramme)
La couche 1 Accès au réseau spécifie la forme sous laquel les données doivent être acheminer et ce quelque soit le type de réseau utilisé

Identification des machines cibles :

Ping :

ping -c 10 @IP
ping -I eth0 -c 1 @IP
ping -s 1024 -c1 @IP #-s permet de spécifier la taille du paquet
  • analyser les paquets avec wireshark

ARPING : La commande arping permet de tester la connectivité d'une machine connectée sur le même sous-réseau, en envoyant des requêtes de type ARP. Elle est semblable à la commande ping, à la différence qu'elle n'utilise pas les requêtes de type ICMP. La commande arping opère sur le niveau 2 du modèle OSI (couche réseau)

arping @IP
arping @IP -c 10 (-c nombre de paquet)
arping -d @IP -c 10
arping -d -i @IP eth0 -c 10

FPING :

La commande fping permet d'envoyer des pings à plusieurs machines en même temps et renvoie un message selon que l'adresse est active sur le réseau ou pas.

    fping @IP
    fping @IP @IP @IP #ect...
    fping -g @IP/CIDR  #énumère les machines active sur une plage réseau en faisant un ping
    fping -r 1 g @IP/CIDR  #énumère les machines active sur une plage réseau en faisant un ping limité à un seul ping
    fping -s www.yahoo.com ==> fping sur un siteweb

HPING3 :

La commande hping3 permet de forger des paquets et les analyser, peut être utilisé à des fin de pentesting, scan de port, test de rôle de firewall, des IDS et exploitation des stack au niveau TCP/IP.

   hping3 -1 @IP -c 1

Options hping3 :

Options Description
-0 --raw-ip
-1 --icmp Envoie des paquets ICMP (TCP)
-2 --udp Envoie des paquets UDP
-8 --scan Indique le mode scan
-9 --listen Indique le mode écoute

Exemple : Tester une règle de firewall avec hping3 acepter n'importe quel trafic tcp en direction du port 22, acepter tout les paquet en relation avec une connexion établie et supprimer tous les paquets qui reste

    hpin3 @IP -c 1 -S -p 22 -s 6060
    hpin3 -2 @IP -c 1 -S -p 22 -s 6060 # même commande que précédente mais pour UDP

NPING

Permet de forger des paquets, identique à hping3 TCP/UDP/ARP/ICMP avec une analyse plus fine

    nping -c 1 @IP

permet de spéécier n'importe quel protocole à utilisé.

Exemple : Envoyer un ping via TCP pour vérifier le port 22

nping --tcp -c 1 -p 22 @IP

Prise d'empreinte des systèmes

Introduction

La prise d'empreintes des systèmes, aussi appelé OS fingerprint consiste à trouver l'OS qui tourne au sein d'une machine cible. Il existe deux méthode :

  • Méthode active

Consiste à utilisé une interaction direct avec la machine cible et utilisé les réponse de la machine pour en extraire des réponse concernant le système.

  • Méthode passive

Consiste à analyser les informations UDP qui transite à travers le réseau et en faire sortir les informations nécessaire à l'identification du système.

P0f : P0f est un outil de prise d'empreinte des systèmes de façon passive.

Elle permet d'analyser :

  • Les machines connectées en SYN ==> (Connecté au routeur)
  • Les machines connectées en SYN+ACK ==> (Vous pouvez vous y connecter)
  • Les machines connectées en RTS+ mode ==> ( Vous ne pouvez pas vous y connecter)
  • Analyse les paquets TCP

Le scan avec P0f prend un peu de temps

Utilisatiion de P0f (Méthode passive) :

    p0f -h   # afficher l'aide
    p0f -i eth0 -p -o p0f.log  # Faire un scan via l'interface eth0 en utilisant le mode promiscuité et envoi le résultat dans le fichier p0f.log

Nmap :

Nmap est un scanner de ports libre créé par Fyodor et distribué par Insecure.org. Il est conçu pour détecter les ports ouverts, identifier les services hébergés et obtenir des informations sur le système d'exploitation d'un ordinateur distant. Il peu être utilisé pour la prise d'empreinte d'OS (Beaucoup plus rapide et plus performant que P0f)

utilisation Nmap (méthode active)

    nmap -O @IP    # Identifier l'OS d'une machine cible

Scan de ports et prise d'empreinte des services

La prise d'empreinte de service est une méthode utilisé pour trouver le service et la version utilisé de ce dernier. Cette version va nous être très utile lors de la recherche de vulnérabilités.

NMAP Nmap est un scanner de ports open source. Il détecte les pports ouverts, les services hébergés et les informations sur le systèmed'exploitation d'un ordinateur cible. Nmap est une référence pour les administrateurs réseau, il fournit des indications sur la sécurité d'un réseau. Il existe une version graphique appelé Zenmap

Utilisation Nmap :

   nmap @IP               # scan simple d'une machine
   nmap @IP/24            # scan simple sur un réseau
   nmap -sN -p 22,25 @IP  # montre si des port sont filtré par le firewall
   nmap -sU @IP -p 53,161 # scan via UDP pour voir les ports ouvert/fermer grâce au réponse ICMP de la cible (si le firewall bloque ICMP impossible de savoir)
   nmap -sV @IP -p 80     # Permet d'analyser les banière applicative d'un programme (prologue envoyé par un programme our souhaiter la bienvenue à un utilisateur)
   nmap -A @IP            # permet de faire des scans agressif (systeme d'exploitation, port ouvert, service qui tourne et leur version etc...), créé un fichier myscan.xml qui peut être converti en HTML (xsltproc myscan.xml -o myscan.html)

Utilisation Zenmap :

  • lancer avec la commande zenmap
  • présence de topologie sous forme de graphe

NESSUS :

Nessus est un outil de sécurité informatique qui signal les faiblesses potentielles ou avérées sur les machines testées. Ceci inclut, entre autres :

  • Les services vulnérables à des attaques (lecture de fichiers confidentiels par exemple), des déni de service....
  • Les fautes de configuration (relai de messagerie ouvert par exemple)
  • Les mot de passe par défaut, quelque mot de passe communs, et l'absence de mot de passe sur certains comptes systèmes.
  • Nessus peut aussi appeler le programme externe Hydra pour attaquer les mots de passe à l'aide d'un dictionnaire.
  • Les services jugés faibles (on suggère par exemplpe de remplacer telnet par SSH)
  • Les denis de service contre la pile TCP/IP

Télécharger Nessus :

Aller sur le site officiel de www.tenable.com pour télécharger le paquet nessus. Une fois téléchargé installer le paquet avec la commande :

    dpkg -i paquet

Ensuite dans votre navigateur préféré tapez localhost:8834 et s'enregistrer

D'AUTRES OUTILS

Unicornscan :

Permet de récupérer des information sur les ports TCP/UDP, OS et aussi les identifications d'applications. Il utilise le concepte de PPS, la manipulation de ces PPS peut overloader le réseau

Utilisation :

   unicornscan -h                                # afficher l'aide
   unicornscan -m U -Iv @]IP:1-65535             # scan sur les ports  UDP en affichant les information d'une façon détailler sur tous les ports
   unicornscan -m U -Iv @]IP:1-65535 -r 10000    # scan sur les ports  UDP en affichant les information d'une façon détailler sur tous les ports et en augmentant le nombre de paquets envoyés pour amélioré la performance du scan

Amap :

amap est une application qui toune au niveau port et récupère des triggers au niveau du port pour pouvoir les analyser et définir des informations sur les applications qui tourne au niveau du ports qui seront disponnible dans:

            cd /etc/amap
            vi appdefs.trig
            vi appdefs.resp

Utilisation Amap

amap -bq @IP 22   # Récupérer des informations sur le service qui tourne sur un port

Nbtscan :

Outil d'énumération SMB pour récupérer le nom netbios, on peut aussi récupérer des informations comme le service le login l'adresse MAC et autres ...

nbtscan 192.168.233.1-255
nbtscan -hv 192.168.233.1-255  # pour avoir plus de détail sur ce qui tourne au niveau  SMB sur la machine

Onesixtyone : SNMP

Permet de récupérer des informations sur tous ce qui tourne au niveau SNMP sur la cible.

onesixtyone @IP
onesixtyone -d @IP  # pour avoir un peut plus de détail