Scénario d’une intrusion

Un scénario d’intrusion sur un système peut se décomposer en six actions élémentaires, enchaînées selon un processus itératif :
renseignement : découvrir l'architecture du système, son plan d'adressage(, écoute, furetage, espionnage), cryptanalyse...

préparation: dégrader ou contourner la sécurité (leurrage, sabotage, bombe logique, parasitage, saturation)
intrusion : entrer par un point faible (usurpation de nom, d'adresse, cheval de Troie, essais exhaustifs)
installation:  installer une entrée permanente (porte dérobée, canal caché)
camouflage : cacher l'entrée permanente ( cacher les répertoires et fichiers pirates, inhiber la surveillance )
propagation : attaquer les machines ou systèmes en mutuelle confiance (rebond IP ou X25, rhosts, domaines WinNT, virus, ver )

Renseignement
Il s’agit ici de la phase préalable à toute attaque informatique. Dans tout scénario d’intrusion, l’identification précise de la cible est un pré-requis indispensable à la bonne conduite des agressions à venir. Le futur agresseur aura donc à coeur d’identifier le plus précisément possible les éléments matériels et logiques participant au système d’information. Ces investigations peuvent être mises en oeuvre passivement au travers de sources ouvertes (sites Internet, presse, plaquettes de présentations…) puis complétées par des investigations plus actives allant de la simple écoute d’un réseau à l’espionnage industriel pur et simple, en passant par des techniques de trashing2, de détections de services (port scanning) et de détections de systèmes d’exploitation (OS fingerprinting).
Préparation
La phase de préparation est à distinguer de celle du renseignement dans la mesure où il est surtout ici question de s’outiller correctement au vu des résultats des investigations précédentes. Le ciblage préalable permet alors de rentrer dans une logique d’adaptation active, où l’agresseur sélectionnera les actions futures qui ont le plus de chances d’aboutir à une intrusion sur le système considéré. Si, dans la phase de renseignement, l’agresseur aura pu repérer la présence de certains services pouvant potentiellement présenter des vulnérabilités (serveurs HTTP, accès de maintenance, équipements de réseau obsolètes, messagerie connue pour ses nombreuses vulnérabilités, etc.) ce dernier ira donc chercher tout ce qu’il peut collecter sur les vulnérabilités de ses services. Il est souvent aidé en cela par les moteurs de recherches de l’Internet et par les sites spécialisés dans ce domaine.
 Trashing : littéralement (et très concrètement) fouille des poubelles ! Egalement appelé « dumpster diving ».

Intrusion
Il s’agit ici de la partie la plus « active », au cours de laquelle l’agresseur met en oeuvre de manière effective les attaques pouvant potentiellement mener à la compromission du système visé. Les techniques utilisées ici sont pléthoriques et dépendent très étroitement du système cible, d’où l’importance de renseignements les plus précis possibles en phases initiales. Parmi les techniques les plus couramment utilisées, on peut cependant citer :
· Utilisation de bugs dans les services réseaux (« buffer overflow », contrôles de sécurité inopérants…),
· Exploitation d’une mauvaise configuration des systèmes (comptes sans mot de passe, systèmes déverrouillés « parce que ça marche mieux comme ça », …),
· Branchement physique « pirate » sur une infrastructure de communication,
· Utilisation des particularités des protocoles réseaux (usurpation d’adresse et / ou d’identité…). Lorsque la phase d’intrusion est couronnée de succès, le processus devient alors itératif dès ce stade : un attaquant s’étant introduit sur un système essayera alors de compléter ses renseignements initiaux en vue de découvrir d’autres failles exploitables et qui n’étaient pas nécessairement visibles de l’extérieur du système (systèmes de fichiers mal sécurisés, comptes avec mots de passe triviaux…).
Installation
Suite à une intrusion réussie, un agresseur tentera alors de mettre en place dans le système un ensemble de mécanismes lui assurant une entrée permanente. Une attaque suivant souvent un chemin long et fastidieux à dérouler, il est en effet tentant d’installer une porte dérobée, permettant de revenir sur sa cible sans avoir à suivre à nouveau ce chemin tortueux. En outre, une faille pouvant être exploitée à un instant donné peut avoir été corrigée lorsque l’agresseur reviendra sur sa cible.
Les techniques utilisées ici sont variées et plus ou moins discrètes : ajout d’un compte illicite, altération du filtrage réseau, service additionnel, shell distant, serveur FTP pirate, cheval de Troie évolué…
Camouflage
Le principe de ce stade consiste à camoufler ses actions sur le système afin de les dissimuler aux administrateurs systèmes : il est souvent étroitement lié à la phase d’installation (les deux phases sont
par ailleurs souvent confondues) : fichiers et répertoires cachés, utilisation de noms de programmes anodins pour cacher ses portes dérobées, stockages hors norme, effacement et inhibition des journaux d’audit, altération des commandes systèmes (ps, ls par exemple)…
Dans le monde UNIX, cette phase de camouflage est souvent mise en oeuvre au travers de « rootkits » (traduction littérale « kits pour devenir le root »). Le monde Windows NT a longtemps été épargné par ces techniques de camouflages sophistiqués, et ce en raison même de son architecture interne, mais cette période est désormais révolue : le premier rootkit fonctionnel pour Windows (le fameux ntrootkit) a été distribué au cours de l’année 2000.

Propagation
L’intrusion dans un système demeure souvent réalisée de façon unitaire, système par système. Il est en effet assez rare qu’un agresseur parvienne à pénétrer un système d’information dans son ensemble dès le début de son attaque : le plus souvent, l’intrusion sera réalisée sur une machine particulièrement vulnérable (serveur Web en DMZ, serveur de messagerie, routeur d’accès…) mais l’ensemble du système d’information ne lui sera alors pas nécessairement accessible. Dans ce cas de figure, un agresseur tentera alors de propager son intrusion à d’autres éléments du système d’information, jusqu’ici inaccessibles. Cette propagation peut également intervenir sur d’autres systèmes distants, le premier site compromis devenant alors un site de rebond pour des attaques ultérieures. C’est de cette manière qu’un pirate informatique allemand a procédé, en 1988, pour atteindre les machines de l’université de Berkeley : l’auteur de ces attaques n’utilisait pas
moins de six rebonds successifs pour attaquer ces systèmes, comme le décrit Clifford Stoll dans
« le nid du coucou ».

0 com:

Enregistrer un commentaire

Suggérer des améliorations à apporter au blog, des articles, des commentaires ou des liens sur la sécurité informatique.Merci