Outils d'analyse de la sécurité des réseaux HADJALI Anis VESA Vlad
Plan Introduction Scanneurs de port Les systèmes de détection d'intrusion (SDI) Les renifleurs (sniffer) Exemples d'utilisation Conclusions Questions
Introduction La croissance d'internet l'ouverture des systèmes de plus en plus d'attaques Nécessité d'identifier les menaces. Prévoir la façon de procéder de l' «ennemi» Limiter les risques Nécessité de connaître les menaces, les motivations des pirates et leurs façons de procéder
Scanneurs de port
Scanneur de port Permet d'indiquer pour une machine les services qui répondent. Correspondance entre service et port (standard) exemple: http->80 smtp->25 Fonction connect() du langage C Deux techniques les plus connues: Vanilla scan Half-open scan
Vanilla scan TCP connect() Si le port est ouvert alors la fonction connect() retourne un descripteur valide, autrement l appel échoue Le scanner accepte via l option -p une liste de ports à scanner. Par exemple 1-100 Le scanner via l option -h vous permet de spécifier la liste des machines à scanner. Par exemple 192.168.0.* Méthode de scan dites "normale", fiable, mais facilement détectable et donc repoussé par un système de sécurité.
Half-open scan Un scan de port en utilisant des paquets SYN Trouver les applications et versions associés. Le scan SYN est très rapide, c'est pour ces raisons qu'il est aussi rapidement détecté si un dispositif de sécurité tel qu'un pare-feu ou IDS est mis en place Le port est ouvert Le port est fermé
SDI: Les systèmes de détection d'intrusion
Définitions Intrusion lorsqu une tierce partie essaie d avoir de l information et/ou accéder à un système ou plusieurs systèmes connectés en réseau. Le rôle d un SDI est de détecter et avertir l administrateur système de l existence d une telle intrusion Système basé sur un renifleur et moteur qui analyse le trafic
Catégories de SDI HIDS :Host-based IDS Surveillance de l'activité d'une machine en examinant les différents fichiers système de journalisation Agent installé sur une machine NIDS :network-based IDS Basé sur une BDD des signatures Sniffant le trafic, examine chaque paquet.
Exemple: SNORT NIDS Open Source. Analyse en temps réel le trafic réseau Technique: Analyse des protocoles Recherche de signatures dans les paquets Utilisation: Détecter les scans de ports Attaques CGI Débordement de tampons
Architecture SNORT
Renifleur (sniffer)
Renifleur (définition) Sonde qu'on place sur le réseau pour l'écouter Consultation aisée des données non chiffrées Récupérer à la volée des informations sensibles Peut être un équipement matériel ou logiciel
Exemples pratique
Exemple Attaque: connaître la version d'un serveur Http : Connectez au serveur web sur le port 80 telnet www.commentcamarche.net 80 Demandez la page d'accueil: GET / HTTP/1.0 Réponse du serveur HTTP/1.1 200 OK Date: Thu, 21 Mar 2002 18:22:57 GMT Server: Apache/1.3.20 (Unix) Debian/GNU
Example Dump Ran tcpdump on the machine localhost.reggie. miller.31 First few lines of the output: 01:46:28.808262 IP localhost.reggie.miller.31.ssh > adsl-69-228-230-7.dsl.pltn13. pacbell.net.2481:. 2513546054:2513547434(1380) ack 1268355216 win 12816 01:46:28.808271 IP localhost.reggie.miller.31.ssh > adsl-69-228-230-7.dsl.pltn13. pacbell.net.2481: P 1380:2128(748) ack 1 win 12816 01:46:28.808276 IP localhost.reggie.miller.31.ssh > adsl-69-228-230-7.dsl.pltn13. pacbell.net.2481:. 2128:3508(1380) ack 1 win 12816 01:46:28.890021 IP adsl-69-228-230-7.dsl.pltn13.pacbell.net.2481 > localhost.reggie. miller.31.ssh: P 1:49(48) ack 1380 win 16560
What does a line convey? This is an IP packet Timestamp Source host name Source port number (22) 01:46:28.808262 IP localhost.reggie.miller.31.ssh > adsl-69-228-230-7.dsl.pltn13.pacbell.net.2481:. 2513546054:2513547434(1380) ack 1268355216 win 12816 Destination host name Destination port number DifferentTCP output formats for different packet types specific information
How a packet sniffer works - intercepting the information travelling over network - two types of network environments in which a sniffer works Shared Ethernet Switched Ethernet 1/29/2009
How a packet sniffer works Shared Ethernet When a message is to be sent to a machine, it is broadcasted over the network and machine for which the message is intended, reads the message Listen to all the traffic on the network. This type of sniffing is extremely difficult to detect 1/29/2009
How a packet sniffer works Shared Ethernet C1 C2 C4 1/29/2009 C3 Sniffer C5
How a packet sniffer works (contd...) Switched Ethernet - In this network formation, the machines are connected to a switch. The switch maintains a MAC table and keeps a track of each computer s MAC address and the physical port on the switch to which the MAC address maps - One can still sniff the traffic using techniques like ARP spoofing, which basically spoofs the MAC address of the gateway and makes the traffic route through the machine running the sniffer 1/29/2009
How a packet sniffer works Running sniffers on the gateway level Internet OR External Network LAN Gateway (running a sniffer) 1/29/2009
How a packet sniffer works Detect udp packets C1 AP C2 C3(running a sniffer) 1/29/2009
The general format of a tcp protocol line is: src > dst: flags data-seqno ack window urgent options Src and dst are the source and destination IP addresses and ports Flags are some combination of S (SYN), F (FIN), P (PUSH), R (RST), W (ECN CWR) or E (ECN-Echo), or a single. (no flags)
The general format of a tcp protocol line is: src > dst: flags data-seqno ack window urgent options Data-seqno describes the portion of sequence of the data in this packet Ack is sequence number of the next data expected the other direction on this connection
The general format of a tcp protocol line is: src > dst: flags data-seqno ack window urgent options Window is the number of bytes of receive buffer space available the other direction on this connection Urg indicates there is urgent data in the packet Options are tcp options
Conclusion Les outils présentés ici sont d'une simplicité étonnante et efficace. Scan n'est pas une attaque en soit, mais... cela représente une approche et donc un risque potentiel Dans un souci de sécurité, il faut mieux que vous soyez le premier à effectuer ces tests, avant que des pirates avec des objectifs différents le fassent pour vous. Nessus : www.nessus.org Nmap :Utilitaire libre d audits de sécurité et d exploration des réseaux : www.nmap.org
Bibliographie http://www.snort.org/ http://www.forum-intrusion.com/ http://doc.ubuntu-fr.org/snort http://www.webopedia.com/term/p/port_scanning.html http://www.tcpdump.org/ http://blog.nicolargo.com/2007/02/tutorial-tcpdump.html
Questions