Nous allons dans ce chapitre Bonus faire un premier point sur nos connaissances puis regarder ensemble ce qu'est SNMP , les Tools Kali-Linux qui l'affectent et comment les utiliser.
Petit Rappel :
La prise d'empreinte de la pile TCP/IP (en anglais : TCP/IP stack FingerPrinting ou OS FingerPrinting) est un procédé permettant en informatique de déterminer l'identité du système d'exploitation utilisé sur une machine distante en analysant les paquets provenant de cet hôte.
Il y a deux types différents de FingerPrinting :
• L'OS FingerPrinting passif qui consiste à identifier le système d'exploitation uniquement à l'aide des paquets qu'il reçoit et ce en n'envoyant aucun paquet.
• L'OS FingerPrinting actif qui, au contraire, envoie des paquets et en attend les réponses (ou l'absence de réponses). Ces paquets sont parfois formés de manière étrange car les différentes implémentations des piles TCP/IP répondent différemment face à de telles erreurs.
Quelques outils de détection d'OS :
• Actif : Nmap, xprobe [1], Scapy, Dns Enum
• Passif : p0f (basé sur ouvertures de connexion TCP, paquets TCP SYN), Scapy, Ettercap, le pare-feu Netfilter à partir du noyau 2.6.31 de Linux.
Udp ne cherchera pas à établir de Connexion entre les systèmes Si le pare-feu on passe par ICMP protocole d'erreur. La Recherche des bannières et signature du système pour ensuite recherche de failles.
FootPrinting :
Le FootPrinting est la technique consistant à récolter de l'information sur des systèmes informatiques et toutes les entités auxquelles ils sont rattachés. Cela est effectué par le biais de plusieurs techniques :
• Requêtes DNS ;
• Énumération réseau ;
• Requêtes réseau ;
• Identification du Système d'exploitation ;
• Requêtes sur l'organisation ;
• Balayage Ping ;
• Requêtes sur les points de contacts ;
• Scan de port ;
• Requêtes auprès des registrars (requêtes WHOIS) ;
• Requêtes SNMP ;
• Navigation du World Wide Web.
Nous allons ensuite nous intéresser au Whois, Traceroute, Code Source, Emails,…
Puis finir avec :
Vulnérabilités :
Nessus, Nexpose, Metasploit, Nikto, Acunetix, service cms
Exploits :
En se procurant un exploit.
En bypassant une faille pour accéder au système ou tout autre partie compromettante.
Post-Exploitation :
Maintenir un accès en Installant un backdoor.
Révision des principaux scans :
Nmap
Principales ports pour les scans :
Dns Enum
Voila qui nous a permis de faire un point sur ce que l’on a vus et de ce que l’on verra. Ce constat nous permet d’établie que toutes information internet ou en réseau passe par des règles qui se doivent d'être respecter. Ces règles se nomment protocoles et sont les types de communication entre les PC, Serveurs, Mails, Services de téléphonie et bien d'autres.
Connaître et savoir les identifier sont les B-a-Ba du Hackers. Ils existent une grande variété de protocoles. Notamment le plus connus de tous et plus simple le TCP/IP qui est le Saint-Patron d'internet Sa force il est compatible avec la plupart des systèmes d'exploitation.
En résumé ce que vous devez retenir c'est que Tcp est plus utilisé pour la transmission de message et l'IP plus pour la connexion réseaux.
Donc nous nous connectons avec des IP et transmettons des messages avec TCP. Ces messages ne se transmettent pas tel quel et je vous invite si vous désirez approfondir votre culture à étudier les réseaux.
Chaque réseau, PC, Serveurs a son IP propre à lui qui détermine son identité vis à vis de ses homologues au sein d'un réseau. Comme nous on a nos pseudo et l'on se reconnaît eux se reconnaissent grâce à leurs adresse IP.
Imaginons pour faire un exemple simple que Dany veuille aller voir Sophie pour lui transmette un message. Il va chez elle et sonne à la porte, elle ne répond pas et donc il décide de lui laisser une lettre dans sa boite. Le message est parti par TCP, l’IP est Dany et Sophie le protocole rencontrant un souci car sa porte fermé il a décidé de l’envoyer par STMP (Simple Mail Transfer Protocol). Il est en attente de la réponse. Vous voyez tout ceci forme un réseau. Mais pour aller plus loin chacun des outils qui ont contribué à ce que Dany apporte son message on communiquer par SNMP. Quand Dany a sonné à la porte, quand il a ouvert la boite aux lettres, …
Cette introduction simpliste nous amène à aborder enfin l’objet de ce chapitre Bonus.
A la suite je vous montre un réseau simple ceux qui ont étudié les réseaux reconnaitront le logiciel.
Bien, nous allons voir ensemble le protocole Snmp et son Tools Kali Linux.
Plutôt que paraphraser ce qui a été répété 200X sur internet, prenons sur par exemple la définition de developpez.com (Je fais le fainéant mais j’assume)
Nous avons donc par rapport à mon screen précédant 2 envoies certains : en vert actif et en rouge non-actif.
On continue avec le complément sur l'architecture de Snmp :
On dit que Ce protocole à une architecture feuille avec des branches, sous-branches,...Le MIB est un arbre et les OID sont ses feuilles, une succession de chiffres qui définissent chacun un objet du système. Voici un lien qui définie bien l’ensemble des OID.
http://d.nouchi.free.fr/SNMP/SNMP.htm
Ce qu'il faut retenir car je ne vais pas faire un cours la dessus : on a un protocole qui passe par un port délivre un message, reçois une réponse et sa transmission par réseau donc nous intéresse. Plus particulièrement à ses OID qui transitent des informations. Ce protocole est souvent négliger par les administrateurs réseaux car méconnus ou délaisser mais il existe et des informations importantes transitent et peuvent être récupérer.
SNMP fonctionne avec UDP sur le port 161 et 162 ,il permet à un administrateur de réseau de recueillir des informations et gérer les périphériques réseau. Chaque périphérique réseau répond avec des informations sur sa marque, son modèle, etc lorsqu'il est interrogé par le maître.
Toutes ces informations sont ensuite stockées dans une base de données appelée la base d'informations de Maître (MIB). Si nous pouvons accéder à la MIB et savoir lire et interpréter l'information, nous pouvons alors connaître chaque périphérique sur le réseau. Si nous pouvons casser le mot de passe SNMP, nous pourrions être en mesure de contrôler chaque périphérique réseau. Cela nous permettrait de modifier les configurations, prendre dispositifs en ligne, etc. Imaginez le potentiel peu exploité de ce protocole.
Il existe plusieurs versions SNMP : SNMPv1, SNMPv2 et SNMPv3.
Je ne vais pas rentrer dans les détails mais le moins sécuriser est SNMPv1 car le v2 n’est pas compatible avec la v1 et la v3 est la plus sécurisé. SNMPv1 a une chaîne comparable à un mot de passe root, avec ses id. Il est composé d’un accès public (Les infos public MIB lisible par tous) et un accès privé (Mot de passe) Pour que l’administrateur réseau puisse modifier les configurations de périphériques à distance. Beaucoup par paresse ou manque d’expérience laisse cette confi privé par défaut et en essayant avec les mots de passe usuels cela peut marcher (ou un brute force bien réglé et un bon dico txt).
Voici un site qui pourrait avoir son utilité
www.defaultpassword.com
Bien avant de commencer résumons la situation :
Donc chaque appareil, logiciel,... qui tourne sur un réseau génère un protocole Snmp et a son OID unique. Le port utilisé est UDP 161 et 162(Trap).
Qu'est-ce que SNMP énumération: utiliser le protocole SNMP pour énumérer les comptes utilisateurs et d'équipements sur un système cible. SNMP a deux mots de passe pour accéder et configurer l'agent SNMP de la station de gestion. Le premier est appelé une chaîne de communauté de lecture. Ce mot de passe vous permet de visualiser la configuration de l'appareil ou du système. La seconde est appelée la chaîne de communauté en lecture / écriture, pour changer son ou de la modification de la configuration de l'appareil.
Ce que l'on va chercher en priorité c'est Les OID correspondants aux utilisateurs des réseaux cible, les ports ouverts, les infos services, …
Sur Kali il y a 4 Tools différents :snmpalk, snmpget, snmptrap et snmpcheck.
ou
La différence entre les 3 premiers est que snmpget permet de récupérer la valeur d’un OID feuille alors que snmpwalk permet de récupérer toutes les valeurs d’un OID « nœud ».Snmptrap lui se concentre sur les Trap qui peuvent être utilisés par les entités du réseau pour signaler des conditions anormales dans les postes de gestion.
Un périphérique réseau (routeur, Switch, pare-feu, …) fait tourner un agent SNMP qui est en fait un processus démon qui répond aux requêtes du réseau. L'agent SNMP fournit un grand nombre d'identifiant d'objets (Object Identifier ou OID). Un OID est une paire clé-valeur unique.
http://www.alvestrand.no/objectid/1.3.6.1.2.1.html
Il y a d'autres possibilités pour ce protocole avec Snmpcheck.
Tapez:
Voila je pense que ce petit interlude sur ce protocole peu cité mérité ce hors série. Bien entendu cela reste une connaissance pour les Tools Kali. Vous pouvez ensuite à partir des liens que je vous ai remis approfondir l’étude. Voici le lien de Cédric qui se fait un plaisir de partager sa connaissance sur le sujet.
http://blog.cedrictemple.net/239-fai...nde-sous-linux
Dans le prochain on entre dans le vif du sujet avec les tests de vulnérabilités grâce encore aux Tools de Kali-Linux. Nous allons utiliser ceux qui sont à mon avis les mieux pour aborder le sujet. Une fois ceci fait nous passerons à l’exploitation toujours avec Kali, puis nous finirons avec la post Exploitation. Pour ce qui est de l’exploitation nous verrons les plus connus : SQL, XSS, Brute Forcing, utilisation d’un Exploits, Sniffage réseaux. Pour ce qui est du reste je pense que cela serais trop long à expliquer. Ensuite nous passerons à l’étude de Metasploit avec une exploitation d’un site Web.
Maintenant que nous avons rassemblé toutes ces informations sur le système, nous pouvons mieux développer une stratégie pour l'exploiter. Nous avons simplement besoin de trouver ensuite les vulnérabilités connues pour ce système d'exploitation, les services, les ports, etc
Je présenterais certains screen de mes compromissions web, certaines que j’aurais fait dans l’heure et d’autres en post exploitation qui sont encore vacantes. Bien entendu leurs identités seront caché.
Mais je trouve que l’on devient ridicule à détruire le travail des autres, je pense que notre devoir lorsque nous avons la connaissance est :
1. Respect des autres (Ne jamais se mettre au dessus, réprimé ou même dévalué les autres)
2. Ne jamais se montrer technico-arrogants.
3. Respecter le travail des autres et leur apporter aide et soutient.
4. Partager notre travail et nos connaissances avec des gens biens pas des simplets qui ne font ça que par complexe de leur vie ridicule.
Merci de m’avoir lu encore une fois je vous attends au prochain chapitre V-La vulnérabilité à tout prix
A bientôt
Petit Rappel :
La prise d'empreinte de la pile TCP/IP (en anglais : TCP/IP stack FingerPrinting ou OS FingerPrinting) est un procédé permettant en informatique de déterminer l'identité du système d'exploitation utilisé sur une machine distante en analysant les paquets provenant de cet hôte.
Il y a deux types différents de FingerPrinting :
• L'OS FingerPrinting passif qui consiste à identifier le système d'exploitation uniquement à l'aide des paquets qu'il reçoit et ce en n'envoyant aucun paquet.
• L'OS FingerPrinting actif qui, au contraire, envoie des paquets et en attend les réponses (ou l'absence de réponses). Ces paquets sont parfois formés de manière étrange car les différentes implémentations des piles TCP/IP répondent différemment face à de telles erreurs.
Quelques outils de détection d'OS :
• Actif : Nmap, xprobe [1], Scapy, Dns Enum
• Passif : p0f (basé sur ouvertures de connexion TCP, paquets TCP SYN), Scapy, Ettercap, le pare-feu Netfilter à partir du noyau 2.6.31 de Linux.
Udp ne cherchera pas à établir de Connexion entre les systèmes Si le pare-feu on passe par ICMP protocole d'erreur. La Recherche des bannières et signature du système pour ensuite recherche de failles.
FootPrinting :
Le FootPrinting est la technique consistant à récolter de l'information sur des systèmes informatiques et toutes les entités auxquelles ils sont rattachés. Cela est effectué par le biais de plusieurs techniques :
• Requêtes DNS ;
• Énumération réseau ;
• Requêtes réseau ;
• Identification du Système d'exploitation ;
• Requêtes sur l'organisation ;
• Balayage Ping ;
• Requêtes sur les points de contacts ;
• Scan de port ;
• Requêtes auprès des registrars (requêtes WHOIS) ;
• Requêtes SNMP ;
• Navigation du World Wide Web.
Nous allons ensuite nous intéresser au Whois, Traceroute, Code Source, Emails,…
Puis finir avec :
Vulnérabilités :
Nessus, Nexpose, Metasploit, Nikto, Acunetix, service cms
Exploits :
En se procurant un exploit.
En bypassant une faille pour accéder au système ou tout autre partie compromettante.
Post-Exploitation :
Maintenir un accès en Installant un backdoor.
Révision des principaux scans :
Nmap
Code:
nmap –O <nomdusite> -p 21 -sS
- 21-ftp
- 22-ssh
- 23-Telnet
- 25-stmp
- 80-http
- 3306-MySQL
Code:
nmap -sV <nomdusite> -p 21,22,23,25,80,3306 -sS
Code:
dnsenum.pl -enum <nomdusite>
Connaître et savoir les identifier sont les B-a-Ba du Hackers. Ils existent une grande variété de protocoles. Notamment le plus connus de tous et plus simple le TCP/IP qui est le Saint-Patron d'internet Sa force il est compatible avec la plupart des systèmes d'exploitation.
En résumé ce que vous devez retenir c'est que Tcp est plus utilisé pour la transmission de message et l'IP plus pour la connexion réseaux.
Donc nous nous connectons avec des IP et transmettons des messages avec TCP. Ces messages ne se transmettent pas tel quel et je vous invite si vous désirez approfondir votre culture à étudier les réseaux.
Chaque réseau, PC, Serveurs a son IP propre à lui qui détermine son identité vis à vis de ses homologues au sein d'un réseau. Comme nous on a nos pseudo et l'on se reconnaît eux se reconnaissent grâce à leurs adresse IP.
Imaginons pour faire un exemple simple que Dany veuille aller voir Sophie pour lui transmette un message. Il va chez elle et sonne à la porte, elle ne répond pas et donc il décide de lui laisser une lettre dans sa boite. Le message est parti par TCP, l’IP est Dany et Sophie le protocole rencontrant un souci car sa porte fermé il a décidé de l’envoyer par STMP (Simple Mail Transfer Protocol). Il est en attente de la réponse. Vous voyez tout ceci forme un réseau. Mais pour aller plus loin chacun des outils qui ont contribué à ce que Dany apporte son message on communiquer par SNMP. Quand Dany a sonné à la porte, quand il a ouvert la boite aux lettres, …
Cette introduction simpliste nous amène à aborder enfin l’objet de ce chapitre Bonus.
A la suite je vous montre un réseau simple ceux qui ont étudié les réseaux reconnaitront le logiciel.
Bien, nous allons voir ensemble le protocole Snmp et son Tools Kali Linux.
Plutôt que paraphraser ce qui a été répété 200X sur internet, prenons sur par exemple la définition de developpez.com (Je fais le fainéant mais j’assume)
Les buts du protocole SNMP sont de :
• connaître l'état global d'un équipement (actif, inactif, partiellement opérationnel...) ;
• gérer les évènements exceptionnels (perte d'un lien réseau, arrêt brutal d'un équipement...) ;
• analyser différents métriques afin d'anticiper les problèmes futurs (engorgement réseau...) ;
• agir sur certains éléments de la configuration des équipements.
• connaître l'état global d'un équipement (actif, inactif, partiellement opérationnel...) ;
• gérer les évènements exceptionnels (perte d'un lien réseau, arrêt brutal d'un équipement...) ;
• analyser différents métriques afin d'anticiper les problèmes futurs (engorgement réseau...) ;
• agir sur certains éléments de la configuration des équipements.
On continue avec le complément sur l'architecture de Snmp :
• Les agents SNMP : ce sont les équipements (réseau ou serveur) qu'il faut superviser.
• Le superviseur SNMP : c'est une machine centrale à partir de laquelle un opérateur humain peut superviser en temps réel toute son infrastructure, diagnostiquer les problèmes et finalement faire intervenir un technicien pour les résoudre.
• Le protocole SNMP : c'est le protocole utilisé par les agents SNMP et leur superviseur pour communiquer entre eux.
• La MIB : ce sont les informations dynamiques instanciées par les différents agents SNMP et remontées en temps réel au superviseur.
• Les outils SNMP. Ce sont les différents utilitaires utilisés par le superviseur pour l'aider à diagnostiquer un problème. Ces différents outils sont aussi utilisés lors de la configuration du superviseur pour prendre en compte les spécificités de l'infrastructure.
• Le superviseur SNMP : c'est une machine centrale à partir de laquelle un opérateur humain peut superviser en temps réel toute son infrastructure, diagnostiquer les problèmes et finalement faire intervenir un technicien pour les résoudre.
• Le protocole SNMP : c'est le protocole utilisé par les agents SNMP et leur superviseur pour communiquer entre eux.
• La MIB : ce sont les informations dynamiques instanciées par les différents agents SNMP et remontées en temps réel au superviseur.
• Les outils SNMP. Ce sont les différents utilitaires utilisés par le superviseur pour l'aider à diagnostiquer un problème. Ces différents outils sont aussi utilisés lors de la configuration du superviseur pour prendre en compte les spécificités de l'infrastructure.
On dit que Ce protocole à une architecture feuille avec des branches, sous-branches,...Le MIB est un arbre et les OID sont ses feuilles, une succession de chiffres qui définissent chacun un objet du système. Voici un lien qui définie bien l’ensemble des OID.
http://d.nouchi.free.fr/SNMP/SNMP.htm
Ce qu'il faut retenir car je ne vais pas faire un cours la dessus : on a un protocole qui passe par un port délivre un message, reçois une réponse et sa transmission par réseau donc nous intéresse. Plus particulièrement à ses OID qui transitent des informations. Ce protocole est souvent négliger par les administrateurs réseaux car méconnus ou délaisser mais il existe et des informations importantes transitent et peuvent être récupérer.
SNMP fonctionne avec UDP sur le port 161 et 162 ,il permet à un administrateur de réseau de recueillir des informations et gérer les périphériques réseau. Chaque périphérique réseau répond avec des informations sur sa marque, son modèle, etc lorsqu'il est interrogé par le maître.
Toutes ces informations sont ensuite stockées dans une base de données appelée la base d'informations de Maître (MIB). Si nous pouvons accéder à la MIB et savoir lire et interpréter l'information, nous pouvons alors connaître chaque périphérique sur le réseau. Si nous pouvons casser le mot de passe SNMP, nous pourrions être en mesure de contrôler chaque périphérique réseau. Cela nous permettrait de modifier les configurations, prendre dispositifs en ligne, etc. Imaginez le potentiel peu exploité de ce protocole.
Il existe plusieurs versions SNMP : SNMPv1, SNMPv2 et SNMPv3.
Je ne vais pas rentrer dans les détails mais le moins sécuriser est SNMPv1 car le v2 n’est pas compatible avec la v1 et la v3 est la plus sécurisé. SNMPv1 a une chaîne comparable à un mot de passe root, avec ses id. Il est composé d’un accès public (Les infos public MIB lisible par tous) et un accès privé (Mot de passe) Pour que l’administrateur réseau puisse modifier les configurations de périphériques à distance. Beaucoup par paresse ou manque d’expérience laisse cette confi privé par défaut et en essayant avec les mots de passe usuels cela peut marcher (ou un brute force bien réglé et un bon dico txt).
Voici un site qui pourrait avoir son utilité
www.defaultpassword.com
Bien avant de commencer résumons la situation :
Donc chaque appareil, logiciel,... qui tourne sur un réseau génère un protocole Snmp et a son OID unique. Le port utilisé est UDP 161 et 162(Trap).
Qu'est-ce que SNMP énumération: utiliser le protocole SNMP pour énumérer les comptes utilisateurs et d'équipements sur un système cible. SNMP a deux mots de passe pour accéder et configurer l'agent SNMP de la station de gestion. Le premier est appelé une chaîne de communauté de lecture. Ce mot de passe vous permet de visualiser la configuration de l'appareil ou du système. La seconde est appelée la chaîne de communauté en lecture / écriture, pour changer son ou de la modification de la configuration de l'appareil.
Ce que l'on va chercher en priorité c'est Les OID correspondants aux utilisateurs des réseaux cible, les ports ouverts, les infos services, …
Sur Kali il y a 4 Tools différents :snmpalk, snmpget, snmptrap et snmpcheck.
Code:
snmpwalk -v <laversion> -c <lacommunaute> <adresseip> <oid> snmpwalk -v 2c -c public 192.168.1.13 1.3.6.1.2.1.2.2.1.10
Code:
snmpget -v <laversion> -c <lacommunaute> <adresseip> <oid> snmpget -v 2c -c public 192.168.1.13 1.3.6.1.2.1.2.2.1.10.1
La différence entre les 3 premiers est que snmpget permet de récupérer la valeur d’un OID feuille alors que snmpwalk permet de récupérer toutes les valeurs d’un OID « nœud ».Snmptrap lui se concentre sur les Trap qui peuvent être utilisés par les entités du réseau pour signaler des conditions anormales dans les postes de gestion.
Un périphérique réseau (routeur, Switch, pare-feu, …) fait tourner un agent SNMP qui est en fait un processus démon qui répond aux requêtes du réseau. L'agent SNMP fournit un grand nombre d'identifiant d'objets (Object Identifier ou OID). Un OID est une paire clé-valeur unique.
http://www.alvestrand.no/objectid/1.3.6.1.2.1.html
Il y a d'autres possibilités pour ce protocole avec Snmpcheck.
Tapez:
Code:
snmpcheck
Usage snmpcheck -t <IP address>
-t: IP cible
-p: SNMP port (port par défaut est 161)
-c: SNMP public
-v: SNMP version (1,2) par défaut c’est 1
-r: Demande de requête par défaut c’est 0
-w: Détecter les accès écriture (action distincte par énumération)
-d: désactiver 'TCP connections' énumération!
-T:; forcer attente en seconds par défaut est 20. Max is 60
-D: activer le débogage
-h : menu d’aide
-t: IP cible
-p: SNMP port (port par défaut est 161)
-c: SNMP public
-v: SNMP version (1,2) par défaut c’est 1
-r: Demande de requête par défaut c’est 0
-w: Détecter les accès écriture (action distincte par énumération)
-d: désactiver 'TCP connections' énumération!
-T:; forcer attente en seconds par défaut est 20. Max is 60
-D: activer le débogage
-h : menu d’aide
http://blog.cedrictemple.net/239-fai...nde-sous-linux
Dans le prochain on entre dans le vif du sujet avec les tests de vulnérabilités grâce encore aux Tools de Kali-Linux. Nous allons utiliser ceux qui sont à mon avis les mieux pour aborder le sujet. Une fois ceci fait nous passerons à l’exploitation toujours avec Kali, puis nous finirons avec la post Exploitation. Pour ce qui est de l’exploitation nous verrons les plus connus : SQL, XSS, Brute Forcing, utilisation d’un Exploits, Sniffage réseaux. Pour ce qui est du reste je pense que cela serais trop long à expliquer. Ensuite nous passerons à l’étude de Metasploit avec une exploitation d’un site Web.
Maintenant que nous avons rassemblé toutes ces informations sur le système, nous pouvons mieux développer une stratégie pour l'exploiter. Nous avons simplement besoin de trouver ensuite les vulnérabilités connues pour ce système d'exploitation, les services, les ports, etc
Je présenterais certains screen de mes compromissions web, certaines que j’aurais fait dans l’heure et d’autres en post exploitation qui sont encore vacantes. Bien entendu leurs identités seront caché.
Mais je trouve que l’on devient ridicule à détruire le travail des autres, je pense que notre devoir lorsque nous avons la connaissance est :
1. Respect des autres (Ne jamais se mettre au dessus, réprimé ou même dévalué les autres)
2. Ne jamais se montrer technico-arrogants.
3. Respecter le travail des autres et leur apporter aide et soutient.
4. Partager notre travail et nos connaissances avec des gens biens pas des simplets qui ne font ça que par complexe de leur vie ridicule.
Merci de m’avoir lu encore une fois je vous attends au prochain chapitre V-La vulnérabilité à tout prix
A bientôt