Structure d'une attaque, part I
Par 4n9e le 24-09-2004
Première partie d'une suite d'articles visant à décrire les différentes étapes typiques de l'attaque d'un système
La recherche d'information et leur collecte sur la cible
est la premiere etape de la structure d'une attaque. Nous verrons dans ce
cadre :
Sommaire :
I. l'identification de la cible
II. Les DNS, Domain Name System, et les Bases Ip
III. Moteurs de recherche
IV. Les pieges des Outils réseaux de diagnostic
V. Conclusion
I. Identification de la cible
Dans une première phase, il faudra identifier la cible
dans son environnement (Internet dans notre cas). En utilisant des informations
publiques pour la plupart, il découvre les localisations et interactions de
l.organisation avec le reste d'Internet, afin d'arriver à une liste complete des
accès extérieurs et donc des portes d'entrées potentielles à forcer.
Il dispose à la suite de cette phase d'un début de
cartographie des environs de la cible sur le réseau Internet, des partenaires et
prestataires ayant peut etre des liens physiques et logiques avec elle, de
données brutes telles que des noms d'employés ou numéros de téléphones, qui
seront potentiellement utiles pour des tentatives de social engineering ou de
wardialing.
En fonction des motivations et des résultats attendus,
cette phase peut être d'extrêmement rapide à assez longue, étant donné que le
fait que elle soit complete déterminera en grande partie le succès de
l.intrusion, en permettant de centrer directement l'attaque sur une porte
dérobée
Dans certains cas, cette phase n'est même pas présente :
il est fréquent que lorganisation agressée ne soit pas la motivation d'une
attaque. De nombreux pirates balaient des plages d'adresses ou des pays entiers
pour trouver des machines vulnérables qu'ils pourront compromettre, le plus
souvent pour servir comme point de départ pour d'autres attaques. La cible
elle-même est ainsi toute machine située dans le bloc balayé, quel que soit son
propriétaire. Ce qui importera ici sera plus ses caractéristiques techniques
comme sa disponibilité, surveillance d'administateurs sécurité, et tout ce
qu?elle pourrait offrir en terme de performances reseau comme machine-passerelle
vers la veritable attaque. La phase de recherche et d'identification de la cible
est donc ici quasiment
inexistante, elle se résume au balayage d'adresses IP ou
d.entrées DNS.
Etant donné que la majorité des informations recueillies
lors de cette phase d'identification sont publiques (on essaie d'éviter de «
toucher » directement la cible), elle est assez difficile, voire impossible à
détecter. Seules certaines techniques, en particulier les balayages DNS peuvent
être visibles par les administrateurs sécurité ou les mécanismes de détection
d.intrusion.
II. DNS, Domain Name System, et les Bases Ip
Le DNS est la base d'informations la plus évidente pour
la localisation d'une cible. Afin de connaître les noms de domaines possédés par
la victime, il est possible de procéder par essais ou aller consulter les
registres publiques des noms de domaines (whois).
L.interrogation des registres whois se fait directement
par nom de domaine ou par mots clef. Le résultat obtenu est la liste des
domaines correspondants aux mots clefs entrés, ainsi que toutes les
informations associées : entre autres, noms des contacts techniques,
administratifs, adresses postales, téléphones, et adresses IP des serveurs
DNS.
Une piste pourrait etre ensuite d'utiliser ces
renseignements pour étendre sa recherche en interrogeant par exemple le
registre avec comme mot clef le nom du contact technique. on obtient
ainsi une liste déjà importante de cibles potentiellement utiles pour notre
intrusion.
Fort de ces informations, il est ensuite utile
d.évaluer l'étendue des domaines, en utilisant une fois de plus les services
du DNS.
Nous pouvons ainsi déterminer si les serveurs DNS sont
hébergés chez des prestataires ou directement chez la victime. Si tel est le
cas, ce prestataire peut lui aussi devenir une cible, en cas d'attaque directe
infructueuse. Mais ce cas de figure est tres rare, étant donne qu'on supposera
facilement que les ISP sont mieux proteges que les particuliers !
Nous pouvons aussi demander une liste de tous les
couples nom/adresse IP enregistrés dans le DNS pour un domaine donné. Cette
fonctionnalité, dite AXFR, est nécessaire pour le transfert de zones
entre serveurs de noms. Elle est très intéressante pour un agresseur et est donc
communément restreinte aux seuls serveurs autorisés.
Le DNS nous permet finalement d'obtenir les adresses
des machines courantes, telles que www.x.com, ftp.x.com, mail.x.com ainsi
que les adresses des serveurs de messagerie externes (entrées MX, mail-exchanger,
des DNS).
Un dernier type de requête, dite HINFO (host info),
donne des renseignements sur la machine cible, tels que : modèle, système
d.exploitation. Les entrées HINFO des tables DNS, pour des raisons évidentes
de confidentialité et de sécurité ne sont maintenant quasiment jamais
renseignées.
Le DNS n'est cependant pas complet ; étant donné que
chaque
machine, donc chaque adresse IP, est potentiellement une
cible, il serait interressant d'etendre sa connaissance de quelques adresses
IP à des blocs entiers d'adresses au moyen des bases d'adresses que sont le
RIPE, l'ARIN et l'APNIC
Les bases sont séparées géographiquement en:
RIPE (Europe):
http://www.ripe.net,
ARIN (Amérique du Nord/Sud/Centrale, Caraibes,
Afrique sous saharienne):
http://www.arin.net,
APNIC (Asie, Pacifique): http://www.apnic.net
Ces bases sont nécessaires au bon fonctionnement
d.Internet car elles détaillent aussi bien les organismes propriétaires,
personnels à contacter que les étendues et les routages associés aux
netblocks, ces fameux pans d'adresses IP réservées sur Internet.
On pourra donc identifier les différentes adresses
recueillies avec DNS grâce aux moteurs d'interrogation des bases d'IP. Cette
identification permet de savoir à quel netblock appartient une adresse IP
donnée, et donc l'organisation propriétaire de l'adresse. On élargit donc son
champ d'attaque aux adresses non inscrites dans le DNS. Ou alors, confirmer
le résultat de ses recherches en interrogeant les bases d'adresses avec comme
critère de recherche le nom de la cible, des contacts techniques, etc.
III. Moteurs de recherche
L.interrogation des moteurs de recherche Web
classiques, tels qu'Altavista, Google, Yahoo, peut révéler de
nombreuses informations :
- noms d'employés, ayant par exemple postés dans
des mailing-lists ou adresses IP d'employés accédant à distance au réseau
interne (VPN)
- liens hypertextes à partir d'autres sites vers
le site cible
- communiqués de presse, détaillant des
partenariats, rapprochements...
D.autre part, des moteurs plus spécifiques révèlent en
plus potentiellement des éléments techniques intéressants : l'analyse des
en-têtes de messages envoyés sur Usenet permet de déterminer le
serveur de News utilisé par l'organisation cible, les versions des logiciels
clients utilisés. Ceci se complete de diverses tentatives de Bounce, le
fait de générer volontairement des messages d?erreur en retour contenant
eux aussi des informations techniques sur la cible.
IV. Outils réseaux de diagnostic
De nombreux outils de diagnostic réseaux permettent de
recueillir des informations utiles pour la phase d'identification de la cible.
Ainsi, le programme traceroute fournit-il la liste de tous les systèmes
(routeurs) entre la source du traceroute et la machine destination. Ces données,
à recouper avec celles issues des registres, permettent de recadrer l'attaque
vers un prestataire vulnérable, afin par exemple de prendre le contrôle du
tuyau utilisé par la cible. Traceroute et ses dérivés laissent cependant des
traces dans les systèmes de détection d'intrusion (ils utilisent couramment
des paquets UDP en incrémentant le numéro de port à chaque saut, la réponse est
un paquet ICMP) , et les informations peuvent être obtenues par d'autres moyens
publics. Leur utilisation dans cette phase est donc inutile et risque d'alerter
prématurément les administrateurs de la victime.
V. Conclusion
De nombreuses techniques devront etre mises en
euvre dans un plan d?action bien défini, apres une phase de recherche et de
reflexion tres poussee.
La somme de travail que ceci implique suppose la mise en
jeu de teams, voire dans certains cas de groupes de teams qui seules pourront
appliquer les moyens necessaires en materiels et hommes. Dans cette premiere
phase de collecte d'informations, le mot clef est la discretion, aucune methode
active ne devra etre mise en euvre afin de ne pas eveiller les soupcons de la
cible avant la deuxieme partie.
Ce sera les phase d'exploitation, qui fera l'objet dans
un prochain sujet.