Don't Learn to Hack but Hack to Learn ***** Apprendre l'attaque pour mieux se défendre

dimanche 5 août 2012

0x001

1- Reconnaissance & Information Gathering:


En français (Reconnaissance et collecte de l'information) une tentative d'intrusion début toujours par une prise d'information  sur le système cible.Car un attaquant consacre au moins 90du temps dans le profilage d'une organisation et un autre 10% dans le lancement de l'attaque

Le domaines et l'information qui cherchent les attaquants:

● Nom de domaine, 
● Adresses IP du système accessible,
● Services Tcp et udp  en cours d'exécution,
● Architecture du système, 
● Recensement de système (utilisateur, grpoups, les tables de routage, informatioin SNMP, etc), 
● Protocoles réseau utilisés, etc.


Quelque outils:


Whois, Nslookup, ARIN, NeaTrace, VisualRoute Trace, EmailTrackPro,Website watcher, Google Earth
HTTrack web copie, E-mail Spider, etc.

Les bases de données WHOIS est librement consultable sur internet voir par exemple: Allwhois.com
détecte automatiquement le serveur approprié pour un nom de domaine particulier, envoie des requêtes base de données d'informations sur ce nom de domaine, et renvoie toutes les données disponibles. En outre, une vérification de disponibilité de noms de domaine seront également effectués, même si une extension de domaine particulier n'a pas une base de données whois consultable.consulter aussi:
 http://www.tamos.com/products/ip-location-database/

 Nslookup : DNS Enumeration (commande disponible sur windows)
http://www.serversniff.net/nsreport.php

Visual IPtrace :
Maltego tool: il est disponible sur la BackTrack

E-mail Spider
sous la BackTrack utilisez le script goog-mail.py :
---> cd /pentest/enumeration/google/
---> ls -l
---> ./goog-mail.p  <le nom de domaine>

2- Google hacking

Est un terme qui fait référence à l'art de créer  requêtes de recherche complexes afin de filtrer à travers de grandes quantités de résultats de recherche des informations relatives à la sécurité informatique.


Que faire Google Pour Un pirate? :

Dans son format malveillant, il peut être utilisé pour détecter des sites Web qui sont vulnérables à de nombreux exploits et des vulnérabilités ainsi que de localiser des informations sensibles comme les numéros de carte de crédit, numéros de sécurité sociale, et les mots de passe, etc.


Utiliser google comme un proxy anonyme:
Google parfois fonctionne comme un serveur proxy en utilisant:

 Google Traduction
Vous souhaitez cacher votre adresse IP au site visité.
Je vous ferai grâce de ce truc vieux comme le monde qui consiste à utiliser Google Translate en traduisant une même page du français au français : http://www.google.com/translate?langpair=frfr&u=itsecurityskills.blogspot.com. Notez que le principe de cette astuce repose simplement sur le fait de conserver dans sa langue originale la page que vous souhaitez afficher. Vous pouvez également vous amuser à afficher ce même site dans une langue exotique : http://www.google.com/translate?u=itsecurityskills.blogspot.com&langpair=en%7Czh-CN. Mais on peut le constater : cette manipulation révèle tout de même votre adresse IP. La preuve en testant cette adresse : http://www.google.com/translate?langpair=frfr&u=http://www.mon-ip.com. Il est donc beaucoup plus efficace d'utiliser un vrai serveur Proxy. Afin de trouver des services de référence, il vous suffit de lancer dans Google ce type de recherche.
inurl:"nph-proxy.cgi" cgiproxy OR cgi-based proxy.
Sélectionnez ensuite un des sites listés puis saisissez l'adresse URL que vous souhaitez atteindre.
N'oubliez pas de refaire le test de l'adresse IP !

 Google Cache :
Pour accéder à un site web sans que son propriétaire ne s’en rende compte, il suffit d’utiliser le cache « texte seul » de Google qui supprimera images, javascript… de la capture de la page. Ainsi, aucune trace ne sera laissée de notre visite dans les outils de webanalytics mis en place.

Pour ce faire, il faut utiliser la « version en texte seul » qui est stockée directement chez Google. Cela peut aussi se faire en utilisant le paramètre $strip=1 dans l’URL du cache.
À noter qu’il existe un script Greasemonkey qui permet d’ajouter le lien texte seul à Google.

Opérateurs de base -  Google :
Les opérateurs sont utilisés pour raffiner les résultats et maximiser la valeur d’une recherche.  Ils sont vos outils de même que des armes pour les pirates
Opérateurs de base :  +, -, ~ , ., *, “”, |, OU
(+) inclusion forcée d’un mot commun

(-) exclut un terme de recherche
    Exemple : apple –red
(“ ”) Utiliser les guillemets au début et à la fin d’une expression pour une recherche exacte :
     Exemple : “hacking”

(~) recherche de synonyme :
    Exemple: ~serveur
........

Opérateurs avancés :
Opérateurs :“site:”
Site: Domain_name
Permet de trouver seulement les pages Web du domaine spécifié.  Si nous recherchons un site spécifique, nous obtenons habituellement la structure Web du domaine  
Exemples :
     site:com
     site:nomde site.com ou site:www.nomde site.com

Opérateurs : “filetype:”
Filetype : extension_type
Permet de trouver les documents contenant des extensions spécifiques
Exemple: password filetype: xls
               filetype: log

Opérateurs: “intitle:”
Intitle: mot_cherché  (intitle: hacking)
Permet de trouver le terme de recherche à l’intérieur du titre d'une page Web 
Allintitle: search_term1 search_term2 search_term3
Permet de trouver de multiples termes de recherche qui inclut tous ces mots à l’intérieur du titre d’une page Web
Ces opérateurs sont particulièrement utiles pour trouver des listes de répertoire
Exemple :
     Find directory list:
     Intitle: Index.of “parent directory” 

Opérateurs: “inurl:”
Inurl: search_term
Permet de trouver le terme de recherche dans l’adresse Web d’un document 
Allinurl: search_term1 search_term2 search_term3
Permet de trouver de multiples termes de recherche dans l’adresse Web d’un document 
Exemples :
     Inurl: cgi-bin
     Allinurl: cgi-bin password

Opérateurs avancés : “intext:”
Intext: search_term
Permet de trouver un terme de recherche dans le corps du texte d’un document 
Allintext: search_term1 search_term2 search_term3
Permet de trouver de multiples termes de recherche dans le corps du texte d’un document 
Exemples :
     Intext: Administrator login
     Allintext: Administrator login

Opérateurs avancés : “cache”:
Cache: URL
Permet de trouver l’ancienne version dans la mémoire tampon de Google
Parfois, même après la mise à jour d’un site,  l’ancienne information peut être trouvée dans la mémoire tampon
Exemple :
     Cache: www.site.com

Opérateurs avancés : “link:”
Link: URL
Permet de trouver des pages Web possédant un lien au URL spécifiée
Exemple :
      link: www.unsite.com

Opérateurs :  “phonebook:”
Phonebook 
Recherche au complet l’annuaire téléphonique de Google

On peut combiner entre ces opérateurs

● Salary filetype: xls site: com

● Intitle: “Index of” finances.xls

Détection du système d’exploitation - Windows:
● “Microsoft-IIS/5.0 server at”


● Inurl: etc inurl: passwd
● Intitle: “Index of..etc” passwd
● Inurl: admin.pwd filetype: pwd
Manipulation de la base de données :
● “Welcome to phpMyAdmin” AND “Create new database”



3- Scaning
Est l'une des trois composantes de la collecte de l'information pour un attaquant.
L'attaquant découvre des informations sur les:

  • Adresses IP
  • Systèmes d'exploitation (système, version)
  • Architecture de système (x86, x64)
  • Services qui s'exécutent sur chaque ordinateur (ssh, ftp, etc)
Les différents types de scaning sont comme suit:
  • scan de  port
  • scan réseau
  • scan de vulnérabilité

Comme il y a beaucoup d'outils de scan on va prendre ici Nmap (que j'aime beaucoup)  le meilleur et le plus utilisé mais je vous conseiller d'utiliser avec Nmap les autres outils. 

Définition  
Nmap = Network Mapper
Nmap est un scanner de ports open source créé par Fyodor et distribué par Insecure.org. 
Il est conçu pour scanner rapidement les grands réseaux

Pour scanner les ports d'un ordinateur distant, Nmap utilise diverses techniques d'analyse basées sur des protocoles tels que TCP, IP, UDP ou ICMP.
Par défaut Nmap scanne les port de 1 à 1024 et les ports indiqués dans le fichier nmap-services.

6 états de ports reconnus par Nmap:
-Open (Une application qui tourne sur la machine cible accepte les connexions TCP
  ou les paquets UDP sur ce port.)
-Closed(Accessible (reçoit et répond aux paquets envoyés par Nmap) mais il n'y a 
  pas d'application à l'écoute sur ce port.)
-Filtered(Nmap ne peut déterminer si le port est ouvert car il est intercepté avant d'atteindre le port
  Peut être causé par un firewall.)
-Unfiltered(Le port est accessible, mais nmap est incapable de déterminer s'il est ouvert/fermé.)
-Open | Filtered (Nmap est incapable de déterminer si le port est ouvert ou filtré.)
-Closed | Filtered(Cet état est utilisé quand Nmap est incapable de déterminer si un port est 
  fermé ou filtré.)

Différentes options
commande de base:
nmap <machine_cible>   /*machine_cible= l'@ip ou le nom de la machine */

● Scan de ping:
nmap  -sP <machine_cible>

●SYN Scanning:
nmap -sS <machine_cible> (envoyer un paquet de type SYN pour la synchronisation)

● Scan UDP:
nmap -sU <machine_cible> (Cette option ne fonctionne pas en IPv6)

● Découvrir application/services en écoute sur les ports TCP:
nmap  -sV <machine_cible>

● Découvrir le système d'exploitation:
nmap  -O <machine_cible>

● Spécifier les ports:
nmap -p 21, 22 <machine_cible> ou  nmap -p1-65535 <machine_cible>

Et bien sur y a d'autre options comme par exemple l'option « -n » qui permet de désactiver la résolution
DNS et ainsi accroître la rapidité du balayage et « -v » pour le mode verbose etc.

NI: Notez bien que on peut combiner entre ces différentes options.

Exemlpe de scan: cliquer sur l'image pour l'agrandir.

Aucun commentaire:

Enregistrer un commentaire