Sunteți pe pagina 1din 84

hakin9

Actus 06
Virus ou pas virus ? Vous trouverez ici les nouvelles du monde de la sécu-
Il n'y a pas si longtemps, le bruit avait couru que le premier rité des systèmes informatiques.
virus agissant autant dans différentes versions de Windows
que dans les systèmes Linux avait été créé. Pour rappeler
(d'après Wikipédia) – Un virus informatique est un logiciel CD-ROM
malveillant écrit dans le but de se dupliquer sur d'autres
ordinateurs. [...]. Il peut se répandre à travers tout moyen hakin9.live 10
d'échange de données numériques [...]. Comment, suivant Nous vous présentons le contenu et le mode de fonc-
les informations ci-dessus, comprendre la description de tionnement de la version récente de notre principale
laquelle il résulte que pour activer le virus sous Linux, l'uti- distribution hakin9.live.
lisateur doit télécharger l'archive, le compiler et exécuter le
fichier binaire ? Pourquoi Kaspersky Lab – où certainement
travaillent des spécialistes de ce domaine – a appelé si Outils
volontiers une application malicieuse un virus multiplatefor-
mes et l'a nommé Virus.Linux.Bi.a/Virus.Win32.Bi.a, bien TTpU (TDFS's TCP/IP Packets
qu'à première vue, ce ne soit pas un virus ? Pourquoi (si Unlimited)
c'est vrai) avec les noyaux plus récents de la série 2.6, est-il
12
nécessaire d'appliquer un correctif écrit par Linus Torvalds Alberto Maria Scattolo
pour faire fonctionner le virus ? Pourquoi a-t-on annoncé TTpU est un outil capable de générer n'importe quelle
que l'apparition de ce programme termine l'époque où les sorte de paquets TCP/IP en permettant de spécifier
systèmes avec un pingouin étaient sûrs, bien que ce ne un grand nombre d'options IP et TCP.
soit qu'un POC (Proof of Concept), et les virus pour Linux
(à présent, il en existe environ 40), MacOS (quelques dizai- Amap 13
nes) et systèmes commerciaux UNIX (quelques) étaient déjà
Konrad Kierys
conçus depuis longtemps ? Est-ce que – à la fin – ces faits
sont liés aux tentatives de grands éditeurs des programmes Amap est un outil, qui, contrairement aux autres
anti-virus d'entrer sur le marché des systèmes Linux ? scanneurs, identifie les démons de l'ordinateur donné
La conviction de la résistance totale de Linux aux virus d'après les réponses sur les paquets envoyés et non
est erronée et on le sait depuis quelques temps. D'ailleurs, d'après les numéros de ports où ils sont lancés.
au fur et à mesure que ce système devient de plus en plus
populaire non seulement dans les environnements indus-
triels mais aussi dans les bureaux, la probabilité de conce-
Interview
voir des programmes malicieux s'approchent de 1. Linux de
bureau avec Firefox et Thunderbird n'atteindra jamais une On ne peut être jamais
telle vulnérabilité à tous les types de virus que Windows totalement sûr 14
avec Internet Explorer et Outlook (à présent, il existe plus de Interview avec dr Lars Packschies
60 000 de ce type de programmes dont la plupart sont très
destructifs et se répandent facilement).
Malgré tout, le comportement de Kaspersky Lab (qui
à présent ne fournit pas des informations sur le virus détecté)
Dossier
m'étonne. Je suis curieux de savoir quand on commencera
une promotion agressive des outils anti-virus pour Linux, qui
Protection réseaux grâce aux puits
d'ailleurs existent déjà.
stationnaires et aux puits IP basés
Encore une explication de ce phénomène me vient sur les évènements 16
à l’esprit : Microsoft avant la première de Windows Vista sur Victor Oppleman
le marché veut discréditer Linux comme système sûr et con- Rien n'est plus efficace que la présentation, même
vaincre les personnes qui voudraient passer à un système succincte, des techniques de protection des réseaux
gratuit, que celui-ci est tout aussi vulnérable aux dangers afin de mieux se défendre contre les attaques de déni
provenant du réseau. Cette opinion certainement aiderait les de service ou attaques DoS.
utilisateurs à prendre une décision d'acheter une nouvelle
version d'un système déjà connu au lieu de passer à un nou-
veau système, difficile et aussi vulnérable aux attaques... Focus
Il ne faut pas oublier une chose – même les programmes
anti-virus très avancés ne sont pas capables de penser Sécurité d'IPv6 30
à la place des utilisateurs et des administrateurs. Le plus
important est d'être conscient des dangers et de savoir où Rita Pužmanová
trouver les informations sur les méthodes de défense et de Le présent article est consacré à la sécurité intégrée,
prévention. Ces informations – indépendamment du niveau l'un des principaux avantages d'IPv6 par rapport
de danger de la part de Virus.Linux.Bi.a/Virus.Win32.Bi.a à son prédécesseur IPv4. Nous comparerons aussi
– sont constamment fournies par le magazine hakin9. les deux protocoles en ce qui concerne la sécurité
Je vous invite à la lecture. de la communication en tenant compte des failles de
Marek Bettman sécurité.

4 hakin9 Nº 4/2006 www.hakin9.org


Le périodique hakin9 est publié par

Fiche technique Software-Wydawnictwo Sp. z o.o.


Piaskowa 3, 01-067 Varsovie, Pologne
Tél. +48 22 887 10 10, Fax. +48 22 887 10 11
Analyse du trafic réseau 46 www.hakin9.org

Bartosz Przybylski Directeur de la publication : Jarosław Szumski


Pcap est une des libraires les plus utilisées servant
Imprimerie, photogravure : 101 Studio, Firma Tęgi
à chiffrer le trafic réseau. Elle offre un accès très Ekonomiczna 30/36, 93-426 Łódź
détaillé aux couches ISO/OSI spécifiques. Imprimé en Pologne/Printed in Poland

Abonnement (France métropolitaine, DOM/TOM) : 1 an


Pratique (soit 6 numéros) 38 €

Dépôt légal : à parution


Construction d'un désassembleur ISSN : 1731-7037
de taille orienté Hooking 52 Distribution : MLP
Parc d’activités de Chesnes, 55 bd de la Noirée
Rubén Santamarta BP 59 F - 38291 SAINT-QUENTIN-FALLAVIER CEDEX
Les différents domaines du reverse engineering se (c) 2005 Software-Wydawnictwo, tous les droits réservés
convergent dans un point. Nous présentons diffé-
Rédacteur en chef : Marek Bettman marekb@software.com.pl
rentes techniques pour faciliter notre analyse des Rédacteurs : Aneta Cejmańska anetta@software.com.pl
programmes malveillants. Ewa Dudzic ewal@software.com.pl
Préparation du CD : Aurox Core Team
Problèmes d'authentification Maquette : Anna Osiecka annao@software.com.pl
Couverture : Agnieszka Marchocka
HTTP 64 Traduction : Iwona Czarnota, Aneta Lasota, Marie-Laure Perrotey,
Grażyna Wełna
Emilio Casbas Bêta-testeurs : Thomas Bores, Tony Boucheau, Pascal Foulon, Pascal
Le protocole HTTP nous offre le mécanisme d'autori- Miquet, Romain Lévy, Augustin Pascual, Julien Poulalion, Alain Ribault
sation de type requête-réponse qui peut être exploité
par un serveur en réseau ou un proxy pour accepter Les personnes intéressées par la coopération sont priées de nous
contacter : cooperation@software.com.pl
ou refuser l'accès aux ressources du réseau.
Abonnement : abonnement@software.com.pl

Alentours
Fabrication : Marta Kurpiewska marta@software.com.pl
Diffusion : Monika Godlewska monikag@software.com.pl
Publicité : publicite@software.com.pl

Social engineering 70 Si vous êtes intéressé par l’achat de licence de publication de revues
merci de contacter :
Tomasz Trejderowski
Monika Godlewska
La sociotechnique existe depuis le début de l'hu- e-mail : monikag@software.com.pl
manité, mais l'exploitation de ses règles pour les tél : +48 (22) 887 12 66
attaques vers les entreprises et les systèmes infor- fax : +48 (22) 887 10 11
matiques n'est présente que depuis quelques derniè- La rédaction fait tout son possible pour s’assurer que les logiciels sont à jour,
res années. pourtant elle décline toute responsabilité pour leur utilisation. Elle ne fournit pas
de support technique lié à l’installation ou l’utilisation des logiciels enregistrés

Bibliothèque
sur le CD-ROM. Tous les logos et marques déposés sont la propriété de leurs
78 propriétaires respectifs.

Absolument à lire : 19 Deadly Sins of Software La rédaction utilise le système PAO


security: Programming flows and how to fix them ; Pour créer les diagrammes on a utilisé le programme

Network Security Bible ; Linux Server Security ; Intro- Le CD-ROM joint au magazine a été testé avec AntiVirenKit de la société G Data
duction aux scripts shell. Software Sp. z o.o.

Éditorial La revue hakin9 est publiée en 7 versions :


FR PL CZ EN

Où sont passés les anti-virus ? 80 IT DE ES


Konstantin Klyagin

Dans le prochain numéro : 82 AVERTISSEMENT


Les articles qui seront publiés dans le numéro de Les techniques présentées dans les articles ne peuvent
hakin9 à venir. être utilisées qu'au sein des réseaux internes.
La rédaction du magazine n'est pas responsable de l'utili-
sation incorrecte des techniques présentées.
L'utilisation des techniques présentées peut provoquer la
perte des données !

www.hakin9.org hakin9 Nr 2/2006 5


Actus

Failles dans MacOS X Failles en SSH et SSL/TLS


Tom Ferris, spécialiste d'analyses
de sécurité dans les systèmes
informatiques, a publié les détails
concernant les failles découver-
L es spécialistes de l'École Poly-
technique de Wrocław (Polo-
gne) travaillant sous la direction du
de disposer des clés cryptographi-
ques supplémentaires, connues
au concepteur du virus. De plus, le
tes dans le système d'exploitation professeur Mirosław Kutyłowski ont programme infecté se comporte de
Mac OS X. La plus importante découvert les failles de protocoles la même manière que le programme
faille se trouve dans le naviga-
SSL/TLS et SSH, les protocoles sain.
teur Safari. Elle permet à l'intrus
d'installer n'importe quel code les plus populaires garantissant La faille découverte dans les
ou l'endommager. Une autre une communication sécurisée sur protocoles est très importante, vu
faille peut être utilisée à l'aide Internet. la possibilité d'un espionnage éco-
d'un fichier graphique au format Lorsque le virus utilise le méca- nomique potentiel, un accès non
TIFF, BMP et GIF. L'attaque nisme découvert et infecte les logi- autorisé aux banques Internet, etc.
efficace provoque la panne du
programme qui a servi à ouvrir le
ciels de l'utilisateur, il peut déchiffrer Il est important d'avoir confiance en
fichier préparé. Une autre erreur tous les messages envoyés et reçus les producteurs qui fournissent des
se trouve dans la manière de par l'utilisateur à l'aide de ces proto- logiciels sans codes sources.
gérer les fichiers compressés. coles. Les spécialistes ont aussi pro-
Elle endommage l'application ou La nouveauté de l'attaque con- posé des modifications de standards,
exécute n'importe quel code dans
siste à avoir une sorte de monopole : permettant d'éliminer les menaces
l'ordinateur attaqué.
La première de failles a été même une information complète sur analysées. Ils ont mis au courant
considérée par Ferris comme très le virus (et le matériel cryptographi- les organismes de sécurité et on va
importante, les autres étant moins que y compris) ne permet pas d'ef- bientôt proposer une correction du
menaçantes. fectuer l'attaque. Il est nécessaire standard international SSL.
Les organisations spécialisées
dans la sécurité informatique,
comme SANS Internet Storm
Centre, évaluent la menace
Chine, piratage et Microsoft
comme critique car les failles
permettent de lancer à distance
n'importe quel code ou d'effectuer
L es ordinateurs produits par les
producteurs chinois doivent être
dotés d'un système d'exploitation
dans les administrations a déjà coûté
17,5 millions de dollars au gouverne-
ment de Pékin.
l'attaque DoS. avant de quitter l'usine – c'est le décret Comme vous pouvez le consta-
Attaques des anti-virus officiel du gouvernement à Pékin. Cela ter, Microsoft bénéficie de cette lutte
Les spécialistes de la sécurité doit résoudre le problème de piratage contre les pirates ; cette semaine,
informatique ont informé les dans le pays et atténuer le conflit avec l'entreprise a officiellement signé
internautes du courriel, déguisé en les États-Unis. les contrats avec quatre producteurs
lettre d'un de producteurs de pro- La Chine est un paradis pour d'ordinateurs pour vendre le système
grammes anti-virus, qui constitue
les vendeurs de logiciels piratés. Windows. On prévoit que, Microsoft
une menace importante pour les
systèmes informatiques. D'après l'agence Reuters, il est pos- gagnera 1,6 milliards de dollars au
Le faux courriel sert en réalité sible d'acquérir la version piratée de cours de cette année.
aux cyber-criminels à rendre Windows XP Professional pour 30
impossible l'actualisation de yuans. La version originale coûte
logiciels anti-virus, installés sur environ 2 milles yuans (249 dollars).
l'ordinateur attaqué.
On estime que neuf programmes
Le courriel informe que l'ordina-
teur du destinataire a été infecté informatiques sur dix en Chine sont
par le virus w32.aplore@mm. Il des copies illégales. Les États-Unis
joint aussi un lien pour supprimer n'aime pas ce fait car le pays est
le virus. Après que l'utilisateur ait expéditeur de la plupart des logiciels.
cliqué sur le lien, un code s'exé-
La question a été discutée pendant
cute et modifie la configuration de
l'ordinateur de sorte que le logiciel la récente rencontre du président de
anti-virus n'effectue plus les mises Chine Hu Jintao avec le président
à jour. Bush.
Le faux courriel a d'abord été Le décret concernant l'installa-
découvert en Asie qui a ensuite tion en fabrique du système d'exploi-
transmis les informations le
tation doit démontrer que la Chine se
concernant en Europe et en
Amérique. préoccupe sérieusement de la lutte
contre les pirates. Ce n'est pas tout
– l'action d'échange des logiciels
piratés contre les logiciels légaux Figure. Nouveau contrat ?

6 hakin9 Nº 4/2006 www.hakin9.org


En bref

Escrocs dans les enchères Actualisation de Bagle


Les ordinateurs infectés par le ver

U n client polonais a trouvé une


Land Rover de 1998, état
parfait, à 2900 euros (y compris le
services près du domicile du client
où il pourrait effectuer un virement.
Plusieurs jours plus tard, le client
Bagle ont commencé récemment à
télécharger la mise à jour, permet-
tant d'équiper le ver de plusieurs
transport) sur un service d'enchères a reçu un courriel de ICS contenant nouvelles fonctions – informent
http://www.mobile.de. Une certaine le numéro du colis. Il a pu suivre son les représentants de la société
F-Secure. D'après leurs analyses,
Alexa Mangel voulait vendre cette parcours via Internet mais il était
l'objectif principal de l'actualisation
voiture. Elle parlait de son divorce et méfiant : il a tapé le nom de l'entre- consiste à installer un nouvel outil
de déménagement en Grande Bre- prise dans un moteur de recherche. plus performant pour envoyer les
tagne dans ses courriels. Elle expli- Il s'est avéré qu'on parlait beaucoup pourriels.
quait que la voiture avait été achetée de ICS sur les forums de discussion Selon Mikko Hypponen, chef du
en Allemagne, ce qui lui posait des pour avertir des gens contre ces département d'étude de F-Secure,
les concepteurs de Bagle ont com-
problèmes vu que le volant se trou- escrocs (notamment aux Pays-Bas, mencé l'actualisation de leur ver.
vait à droite et non à gauche. en Allemagne et en République On ne connaît pas le nombre exact
La transaction devrait se dérouler Tchèque). L'entreprise existait sous des ordinateurs, infectés par ce
via l'entreprise International Cargo des noms divers : World Shipping, ver. Selon F-Secure, la mise à jour
Spedition (ICS). International Cargo Spedition, Euro a été déjà installée sur des milliers
d'ordinateurs.
Le scénario est suivant : Mangel Parcel Distribution, etc. Elle changeait
Les entreprises, chargées de pro-
livre la voiture à l'intermédiaire (ICS) aussi les adresses Web toutes les duire les logiciels anti-virus, tentent
et couvre les frais du transport. Dès semaines : il en existe plusieurs dizai- d'arrêter le processus de mise à jour
que l'entreprise reçoit la voiture, elle nes, comme autoscoutmarket.com, en bloquant les serveurs les pro-
contacte le client et lui demande de eu r o p e - t r a ns c o n t i n en ta ls .c o m, posant. Hélas, les concepteurs de
payer sous 24 heures. global-shipping.org, express-ic.com, Bagle travaillent aussi ; après qu'un
serveur soit désactivé, l'actualisation
Pour l'instant, rien n'est sus- international-cargo-express.com,
apparaît sur un autre (les serveurs
pect : quand on achète des objets cargo-worldwide.com, onlineshipping- hôtes slovaques et américains ont
d'une grande valeur sur Internet, on worldwide.com,tt-transports.com.Tous pour l'instant été fermés).
s'adresse souvent aux services inter- les sites sont des vitrines profession- Rappelons les faits : Bagle n'est
médiaires (Escrow.com appartenant nellement préparées (actuellement, ils pas destructif et sa présence sur
à eBay est le plus connu). Le client sont tous inaccessibles). Ces escrocs l'ordinateur infecté est quasi invisi-
ble (le ver infecte le système Win-
verse l'argent sur le compte bancaire changent en revanche rarement les dows). Il est toutefois dangereux
de l'entreprise, le vendeur envoie coordonnées téléphoniques (impossi- car il permet aux utilisateurs non
la marchandise. Et lorsque le client ble de les joindre) et les adresses du autorisés d'accéder à l'ordinateur
confirme sa réception, l'argent est siège, souvent les mêmes. infecté. Les programmes, comme
versé sur le compte du vendeur. Mais Le mécanisme de l'escroquerie Bagle, sont utilisés pour créer des
botnets, réseaux d'ordinateurs
ici, le client devait payer à l'avance en est simple : pas de voiture, le ven-
contrôlés à distance, via lesquels
espèces via Western Union à un des deur et l'entreprise intermédiaire les criminels envoient des pourriels
agents ICS à Londres. sont fictifs et servent à escroquer de ou effectuent des attaques DoS.
Alexa Mangel soulignait que le l'argent.
client avait 10 jours pour tester la Les faux intermédiaires sont Oracle corrige
voiture et s'il ne l'aimait pas, il avait la apparus en 2002. En Europe, on Oracle a publié une actualisation
collective de son logiciel (Oracle
possibilité de la retourner sans avoir a parlé des cas des personnes qui
Critical Patch Update).
des frais supplémentaires. Elle a ont perdu des milliers euros à cause L'actualisation corrige 36 failles
même envoyé une liste de points de d'eux. dans plusieurs produits, notamment
Oracle Database, Oracle Applica-
tion Server, Oracle Collaboration
Suite, Oracle E-Business Suite and
Applications, Oracle Pharmaceutical
Applications et Oracle Enterprise
Manager. De plus, il a publié une
version actualisée pour vérifier les
mots de passe par défaut dans les
produits Oracle (Oracle Default
Password Scanner).
Pour plus d'informations, visitez le
site officiel http://www.oracle.com/
technology/deploy/security/pdf/
cpuapr2006.html
Figure. La vente par Internet – est-elle sécurisée ?

www.hakin9.org hakin9 Nº 4/2006 7


Actus

Le premier spammeur aus- Microsoft contre la Commission


tralien derrière les barreaux
L'organisme australien ACMA
Européenne
(Australian Communications &
Media Authority) a informé qu'il avait
réussit à condamner la première
A près sept années de débats
juridiques, la rencontre finale
entre Microsoft et la Commission
soft ne divulgue pas l'information sur
la façon dont les serveurs communi-
quent avec le système Windows. Pour
personne, accusée d'après la loi Européenne va débuter. cette raison, les programmes des con-
anti-spam Australian Spam Act.
Un procès-marathon commence currents sont moins efficaces.
Wayne Mansfield a été reconnu
coupable d'avoir envoyé 56 millions à mi-avril ; l'entreprise américaine Le géant de Redmond rejette les
de courriels non sollicités. L'accusé Microsoft veut essayer d'annuler les reproches et essaie de persuader
expliquait que les utilisateurs de amandes pour l'abus apparent de que la décision de la Commission
messageries électroniques avaient la position sur le marché. C'est pro- Européenne était injuste car blo-
accepté de recevoir ces messages.
bablement le procès anti-monopole quait l'innovation. La question est
Mansfield a également essayé de
préciser que la liste d'adresses le plus important dans l'histoire de de savoir si les entreprises peuvent
auxquelles il avait envoyé des l'Union Européenne. La plus grande améliorer leurs produits en y ajou-
pourriels avait été créée avant la entreprise informatique dans le monde tant les nouvelles fonctionnalités et
mise en place de Australian Spam demande que le Tribunal de Première si l'entreprise, qui réalise des béné-
Act, l'argument qui a été rejeté par Instance de l'union annule la décision fices, doit partager son savoir avec
le juge Nicholson.
bruxelloise d'il y a deux ans. les concurrents est le véritable enjeu
La cour fédérale n'a pas encore
décidé de la sentence. Le 24 mars 2004, la Commission de ce procès – dit le communiqué
Européenne a considéré que Micro- officiel de Microsoft publié avant le
Cheval de Troie réclame soft abusait de sa position dominante débat en justice de lundi.
de l'argent sur le marché et l'a condamné à une Ce sera en quelque sorte un
Le code nuisible Ransom.A crée amende record s'élevant à 497 mil- spectacle. Cinq jurés (et non 13
des fichiers .exe sur le disque et
en informe ensuite l'utilisateur ; les lions euro. La commission a égale- comme d'habitude) entendront les
fichiers supprimés seront sauve- ment demandé à Microsoft de changer parties ; ces jurés font partie de la
gardés dans un répertoire caché sa stratégie commerciale et de vendre Grande Chambre du Tribunal de
et récupérés lors du processus de le système d'exploitation Windows en Première Instance présidée par Bo
désinstallation. Le cheval de Troie version dépourvue du lecteur multi- Vesterdorf, président-juge de SPI.
informe aussi qu'il supprimera un
média Windows Media Player (WMP) Les meilleurs avocats doivent repré-
fichier toutes les 30 minutes.
Les images pornographiques et de partager avec les concurrents senter les deux parties. Le PDG de
s'affichent à l'écran de l'ordinateur (contre un paiement) le savoir sur le Microsoft, Steve Ballmer, suit de près
infecté. Il y a aussi une information fonctionnement du système d'exploi- le déroulement du procès.
qu'à chaque démarrage de l'ordi- tation Windows notamment. La Commission Européenne est
nateur, d'autres copies du cheval Ces deux demandes ont fait convaincue que son expertise de 2004
arrivent sur le disque et supprime-
le plus mal à Microsoft. Payer une pourrait se défendre devant le tribunal.
ront d'autres fichiers importants. En
affichant le Gestionnaire de tâches, amende aussi élevée ne posait pas Nous avons de bons arguments,
l'utilisateur verra des processus de problème à une entreprise dont assure la commissaire à la concur-
lancés par le troyen. Si l'utilisa- les bénéfices net de l'année fiscale rence, Neelie Kroes. La coalition
teur tente d'arrêter l'un d'entre dernière s'élevaient à 12,25 milliards des entreprises, comme IBM, Nokia,
eux, il verra s'afficher une image dollars. La stratégie contestée par Oracle et Sun Microsystems supporte
et un message : Nous ne mou-
rons pas. Nous nous multiplions. Bruxelles est une base de l'expansion la Commission Européenne.
Ctrl+Alt+Supp ne marche pas de Microsoft. Profitant du fait qu'envi- L'enjeu du procès devient de plus
aujourd'hui, n'est-ce pas ? ron 90 % des ordinateurs fonctionnant en plus important car l'histoire peut
Les concepteurs du code informent dans le monde est équipé du système bientôt se répéter. L'année prochaine,
qu'il n'existe qu'une seule manière Windows, Microsoft affaiblit lentement Microsoft a en effet prévu de publier un
de se débarrasser du troyen. Il faut
les concurrents dans d'autres seg- nouveau système d'exploitation, Vista.
envoyer la somme de 10,9 dollars
américains via le service Wes- ments du marché. De nouvelles applications seraient y
tern Union et indiquer le numéro En vendant le système d'exploita- jointes : protection Internet, création
4870930101308697 à la place du tion avec WMP, Microsoft a miné les et lecture des documents électroni-
numéro d'utilisateur. Une fois la produits concurrentiels (par exemple ques, etc. La commissaire Kroes a
somme demandée versée, l'utilisa- RealPlayer de RealNetworks) car les déjà annoncé que Vista (ou plutôt son
teur reçoit une confirmation avec un
consommateurs n'avaient pas besoin contenu) inquiétait la Commission. Si
numéro d'identification. Il faut saisir ce
numéro sur l'ordinateur infecté pour d'installer des applications concurren- toutefois le Tribunal de Première Ins-
désinstaller le cheval de Troie. tielles. De l'autre côté, les entreprises tance conteste son analyse et annule
proposant les produits de gestion de la décision de 2004, l'Union aura les
serveurs y ont aussi perdu car Micro- mains liées.

8 hakin9 Nº 4/2006 www.hakin9.org


En bref

Virus multi plates-formes Google achète un nouvel


algorithme
U n virus est apparu sur Internet.
Il infecte aussi bien le système
Windows que Linux.
RuxCon est un e-zin distribué dans
les années 90 par les spécialistes de
la sécurité.
L'étudiant israélien Ori Alon a vendu
à Google les droits concernant le
nouvel algorithme de recherche
Les employés de Kaspersky On analyse toujours le code de du texte sur les sites Internet. La
Lab l'ont découvert et lui ont donné Linux.Bi.a/Virus.Win32.Bi.a. Grâce technologie appelée Orion fait partie
de sa thèse de doctorat sur laquelle
le nom suivant : Virus.Linux.Bi.a/ aux récents tests, on a découvert
Alon travaille à l'Université de la Nou-
Virus.Win32.Bi.a. que le virus ne travaillait pas avec velles Galles du Sud en Australie.
Le code (car il ne s'agit pas les versions les plus récentes de Le concepteur du nouvel algo-
d'un virus sensu stricte mais plutôt noyaux, série 2.6. rithme a avoué qu'il y travaillait
de proof of concept) ne fait pas de Après une comparaison à la série toujours et la version finale
devrait être disponible dans 18
grands dommages et son fonction- 2.4, il s'est avéré qu'à l'origine de
mois. Les sources proches de
nement est restreint. Il est incapa- cette incapacité de travail se trouvait Google ont en revanche annoncé
ble de se propager, il n'infecte que l'utilisation manuelle dans l'assem- que l'Isralélien avait déjà quitté
les fichiers du répertoire où il a été bleur de l'ancien appel système, une l'université et avait été embauché
installé. Pour qu'il infecte les fichiers, erreur minime du traitement de regis- dans la centrale principale de
l'utilisateur doit le télécharger depuis tres par GCC et les modifications l'entreprise où il continuait les
travaux sur la nouvelle techno-
Internet et le lancer. dans la configuration standard de
logie. Le rectorat de l'université
La menace d'infection est donc noyaux 2.6.16.x. La personne qui a de la Nouvelles Galles du Sud
minime, en particulier pour les ordi- permis au virus de fonctionner dans a informé que l'achat de l'algo-
nateurs équipés du système Linux car les noyaux les plus récents est Linus rithme Orion avait été également
leurs utilisateurs utilisent rarement les Torvalds, auteur du correctif ! discuté avec Microsoft et Yahoo.
droits d'administrateur et s'ils lancent L'utilisation de l'appel du système,
Internet Explorer dangereux
les programmes externes, ils le font abandonnée depuis longtemps, dans Michał lcamtuf Zalewski a décou-
dans les répertoires créés spéciale- le code du virus peut suggérer que vert une faille importante dans le
ment pour ces programmes. Virus.Linux.Bi.a a été créé par un navigateur Internet Explorer, per-
Linux.Bi.a/Virus.Win32.Bi.a cons- éditeur de logiciels anti-virus à des mettant probablement d'exécuter
titue une preuve en plus qu'il est possi- fins de marketing. Ces expériences n'importe quel code.
La faille est liée à la gestion
ble décrire un virus qui fonctionne sur peuvent avoir du sens lorsque les
incorrecte des balises intégrées
deux plates-formes. systèmes d'installation et de lance- OBJECT. En téléchargeant une
Il a été probablement créé par ment de logiciels par les utilisateurs, page préparée, il est possible
une personne de la vieillie école qui par exemple Klik et FUSE seront de forcer le navigateur à gérer
a démontré ainsi qu'elle était capa- plus répandus sous Linux. incorrectement la mémoire. Il est
ble d'écrire ce code. La plupart de Les spécialistes de Kaspersky probable de choisir le code HTML,
de sorte que le système exécute
logiciels nuisibles sont créés actuel- Lab soulignent que le code Bi.a peut
une suite d'instructions.
lement à la demande des groupes être utilisé pour créer des applica- Pour se servir de la faille, l'utili-
spécialisés pour lesquels infecter tions plus malicieuses. Ils pensent sateur doit ouvrir la page préparée
les ordinateurs est un moyen de faire aussi que le nombre de virus, dans le navigateur.
des bénéfices. Plusieurs messages capables d'infecter simultanément
ont été trouvés à l'intérieur du virus : Windows, Linux et Mac OS X, aug- Salon de discussion !
Un salon de discussion IRC
Greetz to: Immortal Riot, #RuxCon! mentera dans le futur. (Tchat) pour les personnes
désireux d’avoir de l’aide sur les
différents tutoriels. Vous pourrez
aussi poser vos questions directe-
ment aux nombreux correcteurs/
beta-testeurs présents sur le
salon, partager vos idées et vos
connaissances sur la sécurité IT.
Nous espérons que vous serez
nombreux !
Le salon se trouve sur le serveur
Epiknet : irc.epiknet.org dans la
salle #hakin9. Avec mIRC/XChat:
„/server irc.epiknet.org” puis „/join
#hakin9”. L’administrateur du salon
est m0rtix.

Figure. Site officiel de Kaspersky

www.hakin9.org hakin9 Nº 4/2006 9


CD-ROM

hakin9.live

L
e CD joint au magazine contient hakin9.live
(h9l) en version 3.0-aur – une version bootable Attention !
d'Aurox contenant divers outils, de la documen- Safety-Lab propose aux lecteurs du magazine Hakin9 la ver-
tation, des tutoriaux et les matériaux complémen- sion complète de Shadow Database Scanner valable sur 2
taires des articles. Pour commencer le travail avec adresses IP pendant 30 jours. Vous devez indiquer 2 adresses
hakin9.live, il vous suffit de démarrer l'ordinateur à par- IP de serveur de base de données par email à l'adresse sui-
tir du CD fournit. Après le démarrage du système, vous vante : support@safety-lab.com.
pouvez ouvrir la session en tant qu'utilisateur hakin9 La version complète sera valable pendant 30 jours dès
réception des adresses IP. Pour recevoir dès à présent votre
sans mot de passe.
version, veuillez écrire à support@safety-lab.com en indiquant
La structure des répertoires se présente comme
dans l'objet de votre message hakin9-safety-lab-offer. Offre
suit : valable jusqu'au 30 septembre 2006.

• doc – la documentation au format HTML,


• hit – à la une du numéro Safety Lab Shadow Data- Il y a eu un ensemble de modifications par rapport
base Scanner – un scaner excellent de la sécurité des à la version h9l 2.9.1-ng, tout d'abord la distribution a été
bases de données, changée ainsi que le passage de Fluxbox à l'environne-
• art – matériaux complémentaires aux articles : lis- ment graphique KDE
tings, scripts, programmes indispensables,
• tut – tutoriaux, Tutoriaux et documentation
• add – livres et autres documents au format PDF La documentation contient, entre autres, les tutoriaux pré-
(Linux IPv6 HOWTO, Securing Debian Manual, Snort parés par la rédaction avec les exercices pratiques pour
Users Manual, SQL Injection Protection). les titres tel que : Problèmes d'authentification HTTP,
Analyse du trafic réseau. Tours de passe-passe pour
Les anciens outils se trouvent dans les sous-répertoires pare-feux sont conçus pour être utilisés sur hakin9.live.
_arch, par contre les nouveaux –sont dans les répertoires Grâce à cette solution, vous évitez tous les problèmes
principaux à l'image de la structure ci-dessus. Si vous relatifs aux différentes versions de compilateurs, à la
parcourez le CD, cette structure est disponible dans le localisation de fichiers de configuration ou aux autres op-
sous-répertoire /mnt/cdrom. tions nécessaires pour démarrer les programmes dans
La version 3.0-aur h9l est basée sur la distribution un environnement donné.
Aurox Linux et les scripts générés automatiquement Nous vous souhaitons un travail agréable avec
sur (http://www.aurox.org/pl/live). Les outils non dis- hakin9.live et nous attendons vos suggestions. l
ponibles sur le CD joint au magazine sont installés à
partir des paquets du répertoire d'Aurox à l'aide du Rédaction de hakin9
répertoire yum.

Figure 1. Bootez hakin9.live Figure 2. Écran de bienvenue

10 hakin9 Nº 4/2006 www.hakin9.org


S’il vous est impossible de lire le CD, et que ce dernier n’est pas en-
dommagé physiquement, essayez de le lire dans au moins 2 lecteurs
différents.

En cas de problème avec votre CD, envoyez-nous un


message à l’adresse suivante : cd@software.com.pl
TTpU
(TDFS's TCP/IP Packets Unlimited)
Système d'exploitation : Linux
Licence : distribution, téléchargement et utilisation libre
Application : générateur de paquets TCP/IP
Outils Page d'accueil : http://www.poetidistrada.com/ttpu/

TTpU est un outil capable de générer n'importe quelle sorte de paquets TCP/IP
en permettant de spécifier un grand nombre d'options IP et TCP.

La majorité des connexions sur un réseau repose sur les séquence et celui de l'accusé de réception. Ces numéros
protocoles TCP (Transmission Control Protocol) et IP (Inter- sont utilisés afin de maintenir les paquets dans le bon ordre,
net Protocol). Le protocole TCP définit comment établir et de sorte que le système puisse déterminer leur traitement.
fermer une connexion, comment conserver les paquets Supposons, par exemple, que le serveur cible soit
dans le bon ordre et comment agir lorsque certains paquets 192.168.0.94:65534. Grâce à un renifleur de réseau,
manquent ou en cas d'erreurs. Le protocole TCP réalise nous parviendrons à intercepter les informations sui-
toutes ces tâches en utilisant des options particulières, vantes : le client est 192.168.0.23:33128, le numéro de
appelées drapeaux TCP, ainsi que les numéros de séquen- séquence, 1674837801, et le numéro d'accusé de récep-
ces et d'accusés de réception. Ces opérations sont gérées tion, 1682618503. Si nous envoyons un paquet avec les
par le système d’exploitation de sorte que les utilisateurs numéros de séquence et d'accusé de réception corrects, le
n'aient pas à s'en soucier. Et s'il était possible d'indiquer l'IP serveur le validera. En revanche, si nous le marquons avec
source et de destination, le port source et de destination, des drapeaux sans sens comme SYN PSH ACK, le serveur
les numéros de séquences et d'accusés de réception, les nous retournera un paquet RST et fermera la connexion.
drapeaux TCP, la taille des fenêtres et les données faculta-
tives à envoyer avec les paquets ? TTpU peut s'en charger. # ttpu eth0 192.168.0.94 33128 192.168.0.23 65534 1674837801
Les possibilités sont réellement nombreuses. Un renifleur 1682618503 0 1 1 0 1 0 8192
de réseau fonctionnant en mode espion doit, par exemple,
pouvoir observer le trafic TCP. Grâce à TTpU, vous pouvez Grâce à TtuP, il est possible de réaliser certaines actions
lancer de nombreux types de scans, comme par exemple permettant de tester les vulnérabilités de systèmes d'ex-
les scans syn et connect. ploitation à distance.
Le concept du scan syn est très simple : un paquet Certains systèmes d'exploitation sont connus pour
marqué SYN est envoyé à l'hôte distant sur un certain être vulnérables aux paquets déclarant les mêmes hôtes
port. Si le port est fermé, un paquet marqué RST et ACK et ports en tant que source et destination. Windows
sera retourné. Si rien n'est retourné, il est probable qu'un XP SP2 (sans pare feu) en fait partie. Supposons que
élément (un pare feu, par exemple) bloque ce paquet, ce 192.168.0.94 exécute un système vulnérable à ce genre
qui signifie que le port est filtré. Si vous souhaitez lancer d'attaques alors que le port 139 est ouvert.
un scan de type connect, il faut essayer d'établir une con-
nexion en envoyant un paquet SYN. Si le port distant est # ttpu eth0 192.168.0.94 139 192.168.0.94 139 1674837801 0 0
ouvert, un paquet SYN et ACK envoyé par l'hôte distant 1 1 0 1 0 8192
sera retourné. Voici la syntaxe des TTpU :
Sur un système Windows XP SP2, cette action produira
# ttpu <network interface> <source IP> <source port> en 15 secondes à peine un déni de services, avec une
<destination ip> <destination port> <sequence number> utilisation totale de l'unité centrale.
<acknowledgment number> Il existe bien d'autres vulnérabilités pouvant être tes-
<urg> <ack> <psh> <rst> <syn> <fin> <window size> [data] tées grâce à TTpU. Il est ainsi possible d'inonder un ser-
veur de requêtes de connexion, au moyen d'une attaque
Supposons que vous souhaitiez scanner le port 80 sur d'inondations SYN, en envoyant une grande quantité de
l'hôte 192.168.0.94 ; le code sera le suivant : paquets SYN à partir de différents hôtes et ports.
TTuP permet également de détecter un système d'ex-
# ttpu eth0 192.168.0.23 32456 192.168.0.94 80 3718131341 0 ploitation à distance. Chaque dispositif utilisant le protocole
0 0 0 0 1 0 8192 TCP pour communiquer avec d'autres dispositifs sur un
réseau doit respecter la référence TCP. Vous trouverez de
Pour pouvoir injecter des données dans une connexion plus amples informations sur le site http://www.insecure.org/
établie, il faut maîtriser quelques notions fondamentales. nmap/nmap-fingerprinting-article.html
Chaque paquet TCP stocke deux numéros, le numéro de Alberto Maria Scattolo

12 hakin9 Nº 4/2006 www.hakin9.org


Outils

Amap
Système d'exploitation : *NIX, Windows
Licence : GPL
Objectif : Identification de services fonctionnant sur les ports donnés
Page d'accueil : http://thc.org/thc-amap/

Amap est un outil, qui, contrairement aux autres scanneurs, identifie les
démons de l'ordinateur donné d'après les réponses sur les paquets envoyés et
non d'après les numéros de ports où ils sont lancés.

Démarrage rapide : Imaginez que vous avez besoin Les valeurs de paquets spéciaux, envoyées par
d'informations sur les services lancés sur un ordina- Amap, sont enregistrées dans le fichier appdefs.trig ;
teur donné. Aussi bien Nmap, le plus populaire de il se trouve dans le répertoire /usr/local/etc/ et il est
scanneurs, que d'autres outils de ce type, scannent fourni avec la distribution standard du programme. On
par défaut les ordinateurs sélectionnés d'après les compare les réponses reçues par Amap aux réponses
ports ouverts. Ensuite, ils attribuent les services aux enregistrées dans le fichier appdefs.resp, disponible
ports ouverts, d'après les schémas par défaut. C'est par défaut dans le même répertoire. Il est également
un mécanisme très simple qui n'analyse pas en fait les possible d'utiliser votre propre fichier avec les valeurs
démons lancés sur le serveur mais les ports ouverts de paquets pour scanner le programme. N'oubliez pas
dessus. Chaque administrateur conscient peut alors se toutefois de le préparer au préalable. Pour l'employez,
protéger facilement contre les résultats du scannage optez pour le paramètre -D. Si vous voulez obtenir
de ce type car il suffit de modifier le socket traditionnel davantage d'informations, utilisez l'option -b. Une fois
où écoute chaque service. Que peut-on faire dans une que le port, où par exemple sshd a été lancé, est véri-
telle situation ? Amap, l'outil de nouvelle génération de fié, cette option vous permettra d'obtenir l'information
tests de pénétration vous vient en aide. Son fonction- suivante : SSH-1.99-OpenSSH _ 3.9p1\n. D'après elle, la
nement consiste à envoyer les paquets spéciaux au version du protocole SSH porte le numéro 1.99 et celle
port donné et à comparer les réponses qu'il reçoit à de OpenSSH - 3.9p1.
une liste spéciale. Grâce à cette technique, on vérifie Vous pouvez enregistrer les résultats de l'analyse
les applications vraiment lancées sur le serveur et non dans le fichier pour les analyser ultérieurement. Pour ce
les ports ouverts. faire, lancez Amap avec l'option -o nomdufichier. Il est
Il est possible de télécharger le programme depuis également possible de vérifier les services fonctionnant
le site officiel. Ensuite, décompressez-le dans n'im- sur les ports appartenant au protocole UDP.
porte quel répertoire. Pour installer l'application, l'étape Défauts : Amap n'identifie pas encore les réponses de
suivante consiste à donner trois commandes standards services rarement rencontrés. Si vous rencontrez un
dans la console : ./configure && make && make install. résultat, inconnu à l'application, vous pouvez envoy-
N'oubliez pas que vous avez besoin de droits de root pour er un message à l'adresse de messagerie électroni-
effectuer la dernière d'entre elles. que de concepteurs. Ils pourront ainsi résoudre des
Il est temps de tester l'application en pratique. problèmes existants.
Imaginez que sur l'ordinateur à scanner fonctionnent Konrad Kierys
le démon sshd sur le port 80 et le démon httpd sur le
port 23. Si vous utilisez le programme Nmap, vous
apprendrez que les ports sont ouverts et les services :
http (80) et telnet (23) y fonctionnent. La réalité est
toute autre.

Figure 1. Résultats de l'analyse par Amap Figure 2. Résultats de l'analyse par Nmap

www.hakin9.org hakin9 Nº 4/2006 13


On ne peut être jamais
totalement sûr
Interview avec dr Lars Packschies
Interview

Interview

Avec notre invité, docteur Lars Packschies, scientifique et


administrateur des programmes et de la protection des données
dans l'environnement Linux , SunOS/Solaris, IRX et AIX du
Centre Régional des Calculs (Regionales Rechenzentrum,
RRZ) à l'Université de Cologne, nous parlons sur l'utilisation
de la cryptographie. Dr Packschies est auteur de l'ouvrage
Cryptographie pratique sous Linux.

H9 : Vous travaillez comme scientifique a eu le courage de faire le premier pas et a


dans le Centre Régional de Calculs (RZZ) à généré une paire de clés ou un certificat, il se
l'université de Cologne ; vous avez publié aussi heurte à un autre obstacle – comment les utili-
l'ouvrage Cryptographie pratique sous Linux. ser dans la pratique.
Est-ce que, selon vous, la conscience seule H9 : Est-il possible d'estimer approximati-
des choses suffit pour que les utilisateurs dans vement quel pourcentage d'utilisateurs protè-
RRZ puissent se sentir sûrs ? gent leurs emails ou au moins se conforment
LP : Oui, on peut dire que la plupart des aux principales règles de sécurité ?
utilisateurs dans mon milieu se redent compte LP : Les analyses d'Ostermann Research
des problèmes généraux, surtout les problè- (http://www.ostermanresearch.com) de 2004
mes dans la communication via emails. Mais indiquent que 20% des employés des gran-
après plusieurs conversation j'ai constaté que des entreprises sont des utilisateurs qui
même si plusieurs d'entre eux veulent utiliser le chiffrent souvent leurs emails, en admettant
chiffrage, mais à vrai dire, ils ne savent pas par que l'employeur assure les solutions permet-
quoi commencer. Certains utilisateurs avouent tant le chiffrage. Je ne sais pas exactement
qu'ils sont trop paresseux pour appliquer la clé comment cela se répartit entre OpenPGP, S/
GPG à laquelle ils ont accès. Quant aux autres, MIME et autres techniques. Dans les milieux
ils voudraient déchiffrer, mais ils ont du mal à en universitaires, j'estime que ce pourcentage
convaincre les autres. S'il s'agit de SSH dans est plus élevé.
mon milieu, les choses se présentent tout à fait H9 : D'après vous, combien d'utilisateurs
autrement. Par exemple les utilisateurs d'ordina- dans votre milieu sont sensibles à ces ques-
teurs très performants ne peuvent disposer de tions ?
SSH que s'ils s'enregistrent sur ces ordinateurs. LP: Les utilisateurs d'ordinateurs très
H9 : Selon vous, pourquoi la clé GPG est si performants dans les universités ont souvent
peu utilisée dans la pratique ? seulement un accès chiffré aux périphéri-
LP : En général, parce que les gens ne ques, alors ils travaillent avec le matériel
savent pas par quoi commencer. Si quelqu'un standard, mais doté d'une forte cryptogra-

14 hakin9 Nº 4/2006 www.hakin9.org


Interview avec dr Lars Packschies

phie. Ce qui est intéressant, la plupart d'eux ne se LP : Depuis plusieurs mois, le développement va vers
rendent pas compte qu'ils procèdent ainsi, pour l'uti- la simplification de la gestion. De bons exemples sont les
lisateur ordinaire cette technique est cachée. SSH projets Thunderbird, éventuellement Mozilla Mail avec
est un exemple d'une technique de chiffrage qui a Enigmail Plug-in, ainsi que le projet Kmail, qui offrent une
été implémentée dans l'environnement IT d'une façon excellente intégration avec les technologie de chiffrage.
complètement incohérente, et n'a pas été encore perçu Il existe plusieurs autres clients de messagerie qui sont
ou considérée comme nuisible. On peut dire que c'est dotés de fonctions Open PGP et S/MIME. Pour plusieurs
une situation idéale. espaces utilisateurs, certains projets offrent directement
Ce qui paraît moins compliquée, c'est l'application de les paramètres pour la génération et l'utilisation de la clé
VPN qui est introduit par l'utilisateur à partir de la maison de GnuPG, par exemple Gnu Privacy Tray sous Windows
dans le réseau universitaire grâce à un tunnel crypto- ou Kgpg sous KDE. Il s'agit ici des programmes très clairs
graphique déprotégé. Ce tunnel doit être tout d'abord et simple d'emploi, grâce auxquels le travail avec le chif-
construit à l'aide des programmes clients spéciaux pour frage est intuitif et facile.
que les services universitaires particuliers puissent être H9 : D'après vous, comment faut-il procéder dans le
envoyés à la maison. Et à ce moment, beaucoup d'uti- travail quotidien du point de vue de la sécurité ?
lisateurs se heurtent aux petits problèmes qui – pour LP : Consacrer un peu de temps et être prêt
eux – sont un obstacle sérieux. Nous montrons à nos à résoudre les problèmes. Les questions importantes
clients la nécessité d'appliquer les moyens appropriés et pendant le chiffrage du courrier électronique sont :
ainsi la conscience dans ce domaine augmente. Et alors, savoir utiliser les clés, créer les certificats de retour et
l'accès aux emails sur notre serveur chiffré uniquement la connaissance des points faibles dans la chaîne des
au moyen de SSL ou TLS n'est pas un problème. Cela moyens assurant la sécurité, c'est-à-dire les phrases
concerne chaque utilisateur et tout le monde doit devenir des mots de passe pour les clés privés et elles-mêmes.
de plus en plus conscient. On pense très rarement, et je le rappelle souvent aux
H9 : Et quoi concrètement, vous et votre centre, que utilisateurs, que les méthodes de cryptographies se
faites vous pour sensibiliser les utilisateurs à cette ques- basent sur les hypothèses et la théorie. On ne peut être
tion ? jamais totalement sûr. Par exemple, si nous trouvons
LP: Nous offrons les formations spécialisées concer- une méthode très rapide de décomposition de grands
nant ce sujet et qui sont destinés surtout aux débutants. produits de nombres premiers, certaines méthodes
Les formations avancées concernant Linux en général deviendront moins sûres. Jusqu'au moment où les
et l'email ou l'utilisateur de serveur abordent souvent ce ordinateurs quantiques deviennent la réalité. On oublie
sujet. Des informations claires sont très importantes pour souvent qu'à ce moment, il sera possible de déchiffrer
les clients qui ne veulent ou ne peuvent pas participer non seulement les messages chiffrés, mais aussi tous
à ces types de formations. ce qui ont été créés par le biais de cette méthode. Il
Par exemple, dans notre bulletin d'information, nous faut en être conscient pour savoir comment procéder
publions régulièrement les articles ou les nouveautés sur avec ces machines puissantes.
le chiffrage des emails ou l'accès sûr au serveur. Toutes Pour apprendre les bases, il suffit de quelques heu-
les publications sont disponibles sur Internet. res. La gestion des plug-ins des programmes de messa-
H9: Est-ce que la paresse est un prétexte que tu gerie, l'intégration de SSH, SFTP ou SCP dans plusieurs
acceptes ? L'utilisateur a-t-il toujours du mal à mettre la produits, sont assez faciles, comme par exemple dans
cryptographie en pratique ? Konqueror (gestionnaire de fichiers du projet KDE).dans
LP : Tout d'abord, il faut dire que les méthodes cryp- les dernières années, plusieurs choses sont devenues
tographiques dans le trafic du courrier électronique sont plus simples et il ne faut pas craindre les problèmes liés
optionnelles. Bien sûr, ces méthodes sont fortement à la gestion. Si on a bien compris les problèmes, il est
recommandées. Si quelqu'un ne les souhaite pas, c'est plus facile de les résoudre. La cryptographie est en pra-
bien. La paresse est parfois le voile qui couvre le vrai tique moins compliquée que l'on ne croît. En quelques
souci, si nous avons négligé nos devoir. J'essaie de ren- étapes, il est possible de mettre en oeuvre les moyens de
dre conscients les utilisateurs quelle est leur situation, de sécurité appropriés, et de convaincre les amis.
décrire les problèmes auxquels ils se sont heurté et de Une chose est sûre : il est possible de nous pénétrer
proposer la solution à ces problèmes. Et ainsi je les guide de plusieurs manières, alors les agences d'assurance,
pas à pas vers la solution – une simple implémentation de les institutions d'état et les agences de publicité seront
la signature et au chiffrage par un clic ou un appui sur une fortement intéressées par nos données confidentielles.
touche. Mais je me préoccupe du respect des principales Et nous, par quelques étapes simples, nous pouvons
règles, ce qui permet de créer un environnement clair et rendre notre communication plus sûre.
compréhensible. Dans ces conditions, la paresse n'est en H9 : Merci beaucoup de votre entretien.
aucun cas un argument.
H9 : S'il s'agit des programmes du courrier électroni-
que, beaucoup a changé du point de vue de l'utilité ? Interview faite par Ulrich Wolf et Heike Jurzik

www.hakin9.org hakin9 Nº 4/2006 15


Protection réseaux grâce aux
puits stationnaires et aux puits
Dossier
IP basés sur les évènements
Victor Oppleman

Degré de difficulté

Rien n'est plus efficace que la présentation, même succincte,


des techniques de protection des réseaux afin de mieux se
défendre contre les attaques de déni de service ou attaques DoS.
Nous vous présentons la technique connue sous le no sinkhole
permettant d’obtenir les informations intéressantes sur les
menaces auxquelles est confronté votre réseau.

L
a technique des puits a été déployée par tration, ainsi que d'autres évènements liés
les fournisseurs d'accès à Internet de à la surveillance de votre réseau comme la
manière générale afin de protéger leurs détection d'intrusions.
clients finaux. Comme nous allons l'expliquer • Protection contre les attaque de type DoS :
dans le présent article, cette technique, connue comment certaines organisations et leurs
sous le nom de puits ou sinkhole en anglais, fournisseurs d'accès à Internet ont déve-
permet également d'obtenir des informations loppé un moyen de protection contre le
intéressantes sur les menaces auxquelles est déni de service au moyen de déploiements
confronté votre réseau. En implémentant des extensifs et basés sur les évènements.
puits, vous ajoutez une protection supplémen- • Rétrodiffusion et pisteurs : brève explica-
taire à votre réseau tout en pouvant glaner tion de la rétrodiffusion et de l'utilisation du
des informations sur les menaces et certaines pistage afin d'identifier le point d'entrée des
erreurs évidentes de configuration présentes attaques DoS dans un réseau important.
dans votre réseau.
Destiné principalement aux utilisateurs de
réseaux savvy, le présent article présentera les Cet article explique...
éléments suivants :
• Comment utiliser les techniques de puits (sin-
khole en anglais) afin de se protéger contre les
• Contexte et fonction des puits : brève ex- attaques de type DoS.
plication des puits IP et de leur installation
réussie par un certain nombre d'organisa- Ce qu'il faut savoir...
tions.
• Déploiement de réseaux leurres : applica- • Maîtriser le fonctionnement des attaques DoS.
tion des techniques de puits au moyen de • Connaître les problèmes liés au trafic des
réseaux invisibles et de réseaux de pots réseaux du côté des Fournisseurs d'Accès
de miel, afin de piéger et d'analyser des à Internet (abrégés ci-après en FAI).
scans malveillants, des tentatives d'infil-

16 hakin9 Nº 4/2006 www.hakin9.org


Protection réseau

IP plus spécifique attaquée ne peut


entrer en relation avec aucun systè-
me à distance sous Internet à moins
de supprimer le puits (à priori une
fois l'attaque éloignée). De toutes
évidences, il est possible d'envoyer
les services fournis originellement
par le dispositif cible vers un autre
dispositif sous une adresse IP diffé-
rente, mais de nombreuses autres
considérations doivent également
être prises en compte en termes de
délai d'expiration DNS TTL, et ainsi
de suite.
Cet exemple décrit simplement
Figure 1. Attaque sur l'adresse IP 192.0.2.13 (avant installation du puits) un type de puits possible, généra-
lement décrit comme un chemin
Contexte et fonction cible plus spécifique (192.0.2.13/32) menant vers un trou noir généré par
Tout au long de cet article, le terme dans son ossature, dont l'attribut le FAI. Vous voilà donc familiarisé
puits désignera un moyen géné- next-hop est une interface de sup- avec le concept. Nous pouvons donc
ralisé de rediriger un trafic réseau pression sur le routeur périphérique vous présenter divers autres usages
IP spécifique dans différents buts (également connu sous le nom de des puits.
sécuritaires dont l'analyse et l'ex- null0 ou bit bucket), comme l'illustre
pertise, la diversion des attaques, la Figure 2.
et la détection d'activités anormales. Cette tactique permet de re-
Utiliser les puits pour
Les FAI tier-1 ont été les premiers diriger le trafic malveillant vers le déployer des réseaux
à installer ce type de tactiques, puits du FAI sans lui permettre d'at- leurres
afin de protéger leurs clients finaux teindre sa cible originale. Ainsi, le Une utilisation bien plus innovante
contre les attaques. Depuis, les tech- temps que le puits entre en action, des puits consiste à déployer diver-
niques ont été adaptées afin de col- les clients adjacents du FAI ne se- ses sortes de réseaux leurres dans
lecter des informations intéressantes ront probablement pas touchés par le but de piéger, d'exposer ou de
sur les menaces à des fins d'analyse des dommages collatéraux (dans rassembler des informations sur les
sécuritaire. Afin de vous faire une la mesure où le FAI aura prévu de attaques.
idée de la forme la plus simple que concevoir ses propres puits de dé- Leurre ou Decoy en anglais
peut revêtir un puits, nous prendrons fense), la cible visée par l'attaque \De*coy"\, n. : tout dispositif destiné
l'exemple suivant. aura retrouvé sa connexion Inter- à conduire dans des rets ; leurre cen-
Un trafic malveillant et dérangeant net et son accès local au dispositif sé tromper et induire en erreur sur le
issu de divers réseaux est destiné au spécifiquement ciblé. Malheureuse- véritable danger, ou la puissance de
réseau 192.0.2.13, comme l'illustre la ment, une adresse (ou un dispositif) l'ennemi ; appât.
Figure 1. L'organisation ciblée par ce
trafic utilise 192.0.2.0/24 en tant que
bloc d'adresse de son réseau, lequel
est acheminé par son FAI en amont.
Cette attaque devient rapidement
dangereuse en interrompant les ac-
tivités de l'organisation ciblée et en
augmentant considérablement ses
coûts en raison d'une utilisation de
la bande passante plus importante
que de coutume. Le FAI est ainsi
contraint au vu du trafic surchargé
généré par l'attaque susceptible de
déranger des clients adjacents sous
forme de dommage collatéral.
Le FAI réagit en initiant tempo-
rairement un puits de type trou noir. Figure 2. Attaque de l'adresse IP 192.0.2.13 (avec mécanisme de protection
Il injecte pour ce faire un chemin de du puits)

www.hakin9.org hakin9 Nº 4/2006 17


Dossier

invisible. Donc, les paquets qui s'y


Listing 1. Extrait de la configuration du protocole BGP retrouvent sont arrivés soit par er-
router bgp XXX
reur de configuration, soit, et c'est
redistribute static route-map static-to-bgp le plus fréquent, par un scénario en-
# La carte des chemins est un mécanisme stratégique voyé par malveillance. Ce program-
# permettant de modifier les attributs des préfixes, ou certaines me malveillant, à la recherche de
# politiques particulières de filtrage
dispositifs vulnérables, va envoyer
route-map static-to-bgp permit 10
match tag 199
des paquets dans le réseau invisi-
set ip next-hop 192.0.2.1 ble, et s'exposer ainsi au contrôle
set local-preference 50 de sécurité administrative. Assez
set community no-export géniale, cette approche permet de
set origin igp
détecter des vers ainsi que d'autres
programmes malveillants. Excep-
tion faite des fausses alertes, des
Listing 2. Configuration de base du côté des fournisseurs d'accès signatures et des dispositifs d'ana-
à Internet lyses statistiques complexes, tout
router bgp XXX
administrateur de la sécurité ayant
# La carte des chemins est un mécanisme stratégique permettant de correctement déployé des réseaux
# manipuler des informations sur le routage telles que invisibles pourra détecter des scans
# le paramétrage de l'attribut next-hop malveillants (tentatives lancée par
neighbor < customer-ip > route-map customer-in in
un programme malveillant dans le
# La liste des préfixes est une liste statique de préfixes clients et de
longueur de masques autorisés.
but de découvrir des hôtes adja-
# Les clients doivent pouvoir indiquer à un seul hôte leur(s) préfixe(s) cents candidats à la propagation)
comme quelle que soit la taille du réseau.
# 172.16.0.1/32, par exemple. Il s'agit là d'un outil de sécurité réel-
neighbor < customer-ip > prefix-list 10 in
lement puissant. Par ailleurs, les
# ebgp-multihop est nécessaire car il permet d'éviter
# l'annonce continuelle de préfixes ainsi que leur
paquets introduits dans le réseau
# retrait. invisible révèlent également des
neighbor < customer-ip > ebgp-multihop 2 erreurs anodines de configuration
# Nous définissons désormais la carte des chemins pour la correspondance dans le réseau dont les adminis-
entre politiques
trateurs réseau apprécieront de
# et paramétrons l'attribut next-hop des trous noirs.
route-map in-customer permit 5
se débarrasser. Bien évidemment,
# Le client règle cette communauté de son côté, les réseaux invisibles multiplient
# et le FAI la fait corréler de son côté. les usages dans le domaine de la
# XXXX représentera un client ASN, sécurité. Ils peuvent ainsi être uti-
# et NNNN un nombre arbitraire approuvé par
lisés pour héberger des collecteurs
# le FAI et le client.
match ip community XXXX:NNNN
de flux de données, des détecteurs
set ip next-hop < blackhole-ip> de rétrodiffusion, des renifleurs de
set community additive no-export paquets, et des systèmes de dé-
tection d'intrusion. L'avantage du
Nous allons présenter plus en considérés comme “invisibles” en réseau invisible est qu'il permet de
détails deux types de réseaux leur- raison de l'apparente obscurité qui réduire considérablement le nom-
res : le réseau invisible et le réseau y règne. Toutefois, un réseau invisi- bre de fausses alertes au moyen
de pots de miel. Ces deux types de ble comprend en réalité un serveur, d'une simple diminution du trafic et
réseaux peuvent être utilisés pour agissant comme un aspirateur de ce, quel que soit le dispositif ou la
glaner des informations sensibles, paquets. Ce serveur se charge technologie utilisée.
mais l'un d'entre eux est plus particu- de rassembler et d'organiser les L'installation d'un réseau invisible
lièrement utile dans le domaine des paquets entrant dans le réseau est relativement simple. Il suffit en
réseaux sécurisés. invisible, et se révèle ainsi très utile réalité de suivre cinq étapes fonda-
pour des analyses en temps réel ou mentales.
Déployer des réseaux des expertises de réseaux post- Commencez par sélectionner
invisibles évènements. une ou plusieurs régions inutilisées
En règle générale, un réseau Il faut en effet savoir que l'intru- dans l'espace de votre adresse IP
invisible désigne une partie d'es- sion de paquets dans un réseau in- à partir de votre réseau que vous
pace IP acheminée et allouée, visible est a priori inattendue, dans acheminerez ensuite vers le réseau
complètement dépourvue de ser- la mesure où aucun paquet légitime invisible. Il peut s'agir d'un préfixe
vice sensible. De tels réseaux sont ne doit apparaître dans un réseau /16 ou plus d'adresses, ou tous

18 hakin9 Nº 4/2006 www.hakin9.org


Protection réseau

www.hakin9.org hakin9 Nº 4/2006 19


Dossier

externes, et un commutateur interne


de couche 3 pour vos réseaux invi-
sibles internes. Quel que soit votre
choix, l'essentiel est de configurer
ce dispositif de routage de manière
à ce qu'il transfère le trafic destiné
au réseau invisible reçu en dehors
d'une interface Ethernet de réseau
invisible (grâce au commutateur)
vers le serveur collecteur configuré
pour accepter de tels paquets. Le
serveur collecteur doit également
être doté d'une interface spécifique
de réseau invisible chargée de re-
cevoir ces paquets. Au niveau de
sa gestion, le serveur collecteur
nécessitera également au moins
une interface Ethernet supplé-
Figure 3. Topologie physique de référence pour les réseaux invisibles
mentaire (à placer sur un LAN de
les chemins menant à une seule le trafic de 10.0.0.0/8 exception gestion indépendant). Veillez à bien
adresse (/32). Plus vous sélection- faite des réseaux que vous utilisez/ respecter les consignes de sécurité
nez d'adresses, plus la détection acheminez de manière spécifique édictées pour tous les dispositifs de
d'activités réseau non sollicitées (ces derniers sont probablement votre réseau, car vous pouvez être
sera pertinente d'un point de vue dotés d'entrées de routage stati- sûr que toutes sortes de program-
statistique. Il est recommandé de ques dans votre infrastructure de mes malveillants s'engouffreront
choisir plusieurs segments d'adres- réseau). très rapidement dans ce segment
ses, comme un /29 de chacun des Il faut ensuite configurer la to- de réseau. Vous pouvez utilisez un
réseaux internes à votre disposi- pologie physique de votre réseau commutateur de zone DMZ existant
tion, et un /25 de votre allocation de invisible. Pour ce faire, il vous fau- afin de connecter ces composants,
réseau public (externe), par exem- dra un routeur ou un commutateur à moins que la configuration du
ple. Rien ne vous empêche non (couche 3) chargé de transférer le VLAN ne vous effraie nullement.
plus de rendre invisible une région trafic vers votre réseau invisible, un Ainsi, aucun paquet largement
de votre espace interne d'adresses serveur à grande capacité de stoc- diffusé n'entrera dans le réseau in-
privées (comme par exemple, l'es- kage pour collecter vos données, et visible. N'oubliez pas qu'un réseau
pace RFC 1918, 10.0.0.0/8, etc.). un commutateur Ethernet afin de invisible est conçu pour piéger le
En sélectionnant des régions de connecter ces composants ainsi trafic illégitime sans prendre le ris-
votre réseau interne pour les ren- que des composants facultatifs que de voir les paquets légitimes de
dre invisibles, vous serez capable ultérieurement comme un capteur vos autres LAN empiéter sur la zo-
de détecter des scans internes qui IDS (système de détection d'intru- ne de votre réseau invisible. Nous
vous auraient échappé si seuls des sion) ou un analyseur de protocole. avons exposé dans la Figure 3
segments de votre réseau externe Il est recommandé de choisir pour un exemple de cette configuration.
(public) avaient été acheminés vers le routeur un dispositif de passe- Dans les exemples suivants, nous
votre réseau invisible. Les organi- relle existant interne ou externe (ou utiliserons un routeur ou un commu-
sations utilisant des routages parti- les deux à la fois, bien que cette tateur chargés de faire fonctionner
culiers pour leurs réseaux internes solution reste à éviter). La plupart Cisco IOS avec une licence logiciel-
peuvent envisager une autre straté- des réseaux invisibles “entreprise” le de couche 3, un serveur basé sur
gie fondée sur la règle du chemin (par opposition à ceux relevant du FreeBSD, et un commutateur d'ob-
le plus spécifique (généralement domaine des télécommunications) jets non gérés de couche 2 chargé
distribué selon certains protocoles sont situés dans une des zones de connecter les dispositifs.
de passerelles intérieures). Ainsi, si tampon ou DMZ de l'organisation et Afin que votre serveur collecteur
vous utilisez les réseaux 10.1.1.0/24 séparés du reste du réseau. C'est la évite d'avoir recours au protocole
et 10.2.1.0/24 de manière interne, raison pour laquelle vous devez uti- ARP (Address Resolution Protocol)
vous pouvez tout simplement ache- liser un pare feu pour réaliser cette sur chaque adresse de votre espa-
miner le réseau 10.0.0.0/8 entier tâche à la place de l'un de vos rou- ce de réseau invisible, il vous faut
vers votre réseau invisible. Si votre teurs. Il est, toutefois, recommandé configurer le routeur de manière à
réseau est correctement configuré, d'utiliser un routeur de passerelle transférer le trafic destiné au réseau
votre réseau invisible recevra tout externe pour vos réseaux invisibles invisible vers une seule adresse IP

20 hakin9 Nº 4/2006 www.hakin9.org


Protection réseau

différents choix de matériel et de


logiciel ainsi que la taille de votre
réseau invisible, l'activation du jour-
nal peut diminuer considérablement
la performance de votre réseau
invisible. Afin de compléter vos
mesures de sécurité (les pares feu
ne sont pas à l'abri de panne ou de
déconnexion accidentelle), il peut
s'avérer judicieux de transférer le
trafic de votre réseau invisible vers
une destination vide dans le cas où
ce trafic passerait accidentellement
sans avoir été préalablement filtré.
Un tel exemple sous FreeBSD res-
semblerait à ceci :

route add –net 10.0.0.0/8 §


Figure 4. Topologie logique de référence pour les réseaux invisibles
127.0.0.1 –blackhole
finale sur l'interface Ethernet du Que faire de ce trafic une fois
réseau invisible de votre serveur. obtenu. Le serveur doit être confi- Votre réseau invisible est désormais
Pour ce faire, il est recommandé guré de manière à ne pas répondre fonctionnel et votre serveur collecteur
de consacrer un réseau /30 à ce à toutes les données qu'il reçoit sur protégé. Il vous reste à stocker les
transfert point par point entre le son interface de réseau invisible. données dans un format lisible par
routeur et l'interface du réseau Bien évidemment, le serveur uti- vos outils d'analyse et d'expertise.
invisible, comme 192.0.2.0/30, par lisera le protocole ARP pour son Des fichiers formatés en pcap sem-
exemple. Ainsi, l'interface Ethernet adresse configurée (192.0.2.2/30 blent assez évidents en raison de leur
de votre routeur prendra l'adresse uniquement) afin d'établir les quasi universalité sur la plupart des
192.0.2.1/30 et le serveur collecteur communications nécessaires vers applications d'analyse réseau pouvant
pourra être atteint via 192.0.2.2/30. le routeur. En revanche, tous les travailler dessus. La méthode la plus
La configuration de l'interface dé- autres paquets doivent être suppri- simple et la plus répandue consiste
pend dans une large mesure des més au moyen de pares feu basés à utiliser la fonctionnalité intégrée de
plate-formes sélectionnées. Nous sur l'hôte. Comme nous l'avons pivotement du programme tcpdump
supposerons donc que vous maî- mentionné plus haut, aucune sorte proposé par le Groupe de Recher-
trisez parfaitement ce sujet. Nous de gestion ne doit apparaître sur ches en Réseaux du Laboratoire
utiliserons dans les exemples Cisco l'interface du réseau invisible. Vous National Lawrence Berkeley. Afin de
IOS avec une licence logicielle de devez configurer une autre inter- lancer la fonctionnalité de pivotement
couche 3. Une fois cette tâche réa- face Ethernet sur laquelle seront de journal en ligne de commande
lisée, il vous suffit d'entrer les dé- réalisées les tâches de gestion et tcpdump, vous pouvez par exemple
claration de routage correctes dans d'administration. Le chemin par taper la déclaration suivante :
le commutateur afin de transférer défaut menant vers le système doit
l'ensemble du trafic de votre réseau être la passerelle vers l'interface tcpdump -i en0 -n -w darknet_dump –C125
invisible vers 192.0.2.2 dans le ser- de gestion. Le choix du pare feu
veur collecteur, et de libérer votre nécessaire dépendra de la plate- Dans cet exemple, nous ordonnons
espace personnel, de la manière forme que vous aurez sélectionnée au programme tcpdump d'écouter
suivante : pour votre serveur. Il est, toutefois, l'interface en0. La résolution nom
recommandé d'utiliser un système à nombre (DNS) est désactivée, et
router#conf t basé sur BSD et pf ou ipfw2 en tant un fichier intitulé darknet_dumpN est
router(config)# ip route 10.0.0.0 § que pare feu. Qu'il soit activé ou rédigé tous les 125 millions d'octets,
255.0.0.0 192.0.2.2 pas le journal du pare feu dépendra où chaque augmentation de N rend
router(config)# ^Z largement de l'utilisation que vous le nom des fichiers uniques. Là en-
router# wr en ferez. Dans nos exemples, nous core, cette commande produira un
utilisons des outils d'analyse de fi- fichier binaire formaté en pcap con-
Vous devriez ainsi recevoir le trafic chier journal nécessitant d'être acti- tenant le trafic du réseau invisible.
du réseau invisible. Nous avons ex- vés (de manière à pouvoir analyser Vous pouvez ensuite entrer ledit fi-
posé dans la Figure 4 une topologie les journaux et générer des alertes chier dans votre logiciel d'analyse de
logique de référence. si nécessaire). Toutefois, selon les réseau préféré, avec pour objectif de

www.hakin9.org hakin9 Nº 4/2006 21


Dossier

conserver une copie des données et réseau invisible. Pour commencer, Pots de miel virtuels
d'utiliser un grand nombre d'outils dif- vous trouverez ci-après une liste de Sont désignés par pots de miel vir-
férents chargés de relire les fichiers certains de nos outils : tuels des systèmes complets de pots
ultérieurement à la recherche de de miel “sur le modèle logiciel” char-
caractéristiques pertinentes du trafic • Capteur IDS (Bro, Snort, et al.). gés de reproduire des conditions en-
analysé. La règle générale veut que • Renifleur de paquet (tcpdump tel vironnementales comme le système
vous utilisiez un programme de type que décrit plus haut). d'exploitation, la pile du réseau et
tcpdump combiné à une expression • Programme d'analyse des flux les services fournis sous forme de
spécifique BPF (Berkeley Packet Fil- de données (Argus, exportations leurres. Un serveur physique peut
ter, ou filtre de paquets de Berkeley) des flux du réseau à partir du proposer un réseau de milliers de
afin de détecter des éléments dans routeur, SiLK, outils de flux de pots de miel virtuels.
ces fichiers. Comme cette tâche peut données).
être lancée au moment de l'exécution • Analyseur des fichiers journal Pots de miel à basse
(ou de la capture), en conservant un de pare feu venant alimenter les interaction
enregistrement de l'ensemble du bases de données RRD pour les Les pots de miels dits à basse inte-
trafic, vous pouvez utiliser différents graphiques. raction (type le plus répandu de pots
outils ultérieurement sans prendre le • MRTG afin de représenter les de miel aujourd'hui) ont été conçus
risque de perdre des informations de compteurs de trafic sous forme afin de tromper les programmes mal-
grande importance. de graphiques. veillants au moyen d'une ou plusieurs
Argus (Audit Record Generation • p0f (par Michal Zalewski) afin vulnérabilités supposées exploita-
and Utilization System) pour les de classer les plate-formes de bles, d'établir avec ces programmes
réseaux développé par Qosient est dispositifs infectés ou servant un dialogue, et de capturer les tout
un autre outil très utile capable de à réaliser des scans malveillants. premiers paquets de communication
simplifier la visualisation des flux de avec le programme malveillant. De
données relatives au trafic. Bien que Déployer des réseaux toutes évidences, le programme
nous puissions exposé ici en détail la de pots de miel malveillant ou le logiciel malicieux
configuration complexe de cet outil, À l'instar d'un réseau invisible, un autonome en conversation avec le
nous utilisons Argus régulièrement réseau de pots de miel désigne pot de miel se rendra compte que
afin de détecter des flux de données en général une partie d'espace IP sa cible ne peut être exploitée, mais
intéressants dans nos réseaux invisi- acheminée et allouée. Toutefois, au avant de s'en apercevoir réellement,
bles. Argus propose une interface de lieu de fournir une destination vers des informations de grande impor-
résumé des flux de données agréa- laquelle les paquets vont s'échouer, tance peuvent déjà être exposées,
ble censée vous aider à comprendre ici la destination imite un service comme la tactique d'exploitation ou
exactement ce qui se passe en ter- réel (ou plusieurs services), afin de la signature du logiciel malveillant.
mes de trafics malveillants. permettre la connexion (poignée de De tels pots de miel à basse inte-
Afin de pouvoir visualiser le volu- mains), et d'établir un dialogue à deux raction sont de nos jours utilisés afin
me de trafic entrant dans votre réseau sens. Un pot de miel ou honeypot en de modéliser les tactiques d'attaque
invisible, des outils de compteur d'in- anglais, soit le système chargé d'imi- des polluposteurs (qui tentent de
terface comme MRTG (veuillez con- ter un service réel, désigne en réalité dériver les heuristiques comme les
sulter le site http://www.mrtg.org/) de une ressource étroitement et réguliè- caractéristiques temporelles des
Tobias Oetiker devraient vous aider. rement contrôlée destinée à tromper transactions SMTP des pollupos-
MRTG vous permet de produire des les programmes malveillants afin de teurs, par exemple).
graphiques lisibles du trafic de votre les infiltrer et de les examiner. Quoi- Il n'existe que très peu d'ins-
réseau invisible relativement illisible. que de différents types, l'objectif des tallations commerciales de cette
Il existe également une douzaine pots de miel reste toujours le même : technologie liée aux pots de miel,
d'autres outils capables d'analyser apprendre les tactiques et recueillir mais la plupart des implémentations
les journaux des pares feu, pouvant autant d'informations que possible les plus utilisées sont disponibles
remplacer rapidement et facilement sur le programme malveillant. via un projet libre intitulé honeyd,
les outils d'analyse plus complexes dirigé par Niels Provos. Vous trou-
basés sur le format pcap ou Argus. Il Pots de miel physiques verez plus d'amples informations sur
ne faut pas ignorer les problèmes que Sont désignées par pots de miel phy- l'obtention et la configuration d'ho-
soulèvent les journaux du filtre des siques d'importantes machines resi- neyd à l'adresse suivante : http://
paquets au format texte et l'analyse dant dans le réseau de pots de miel www.honeyd.org.
supplémentaire que de tels fichiers et dotées de leur propre adresse IP, Astuce : honeyd a été conçu
exigent. de leur propre système d'exploitation sous forme de pot de miel/ réseau
Vous pouvez utiliser au bas mot et de leurs propres outils d'imitation de pots de miel virtuel capable
des douzaines d'outils sur votre de services. de simuler un certain nombre de

22 hakin9 Nº 4/2006 www.hakin9.org


Protection réseau

www.hakin9.org hakin9 Nº 4/2006 23


Dossier

systèmes d'exploitation différents Pots de miel à haute Utilisation des réseaux


ainsi que des composants logiciels interaction de pots de miel
permettant d'attirer les programmes Quoique moins utilisés, les pots de Les pots de miel ne sont d'aucune
malveillants. miel à haute interaction se révèlent utilité aux organismes de recher-
Il faut également noter une nou- extrêmement utiles. Contrairement che ou aux sociétés disposant de
velle forme de pots de miel à basse à la simple capture des toutes beaucoup d'argent et de temps
interaction fondée sur un nouveau premières transactions dans un à consacrer à la sécurité (en con-
concept élaboré par Tom Liston in- dialogue entre un programme mal- naissez-vous beaucoup ?). Il est
titulé LaBrea. LaBrea (ainsi désigné veillant et le pot de miel, le pot de toutefois déconseillé aux entreprises
après la fonctionnalité tar pit) est miel dit à haute interaction autorise de tous les jours d'avoir recours
un démon logiciel (service) capable une attaque à infiltrer entièrement aux pots de miel. En revanche,
de générer des réponses autono- le système sur lequel il réside. bien qu'inadéquat dans le cadre
mes à des requêtes de connexion Dans un tel cas de figure, les infor- d'un usage quotidien, il est possible
au travers de blocs d'adresses IP mations utiles capturées compren- d'installer un réseau de pots de miel
éventuellement considérable. En nent non seulement les techniques sur demande en cas d'apparition de
bref, cet outil peut créer un envi- d'examen et le type d'exploitation programme malveillant que ni des
ronnement capable d'attirer des utilisée, mais permettent également outils d'expertise ni des renifleurs ne
programmes malveillants de scan à l'administrateur de la sécurité de peuvent identifier ni aider votre admi-
et/ou de propagation, mais présente surveiller le programme malveillant nistrateur à résoudre les problèmes.
toutefois un grave inconvénient. Dès une fois obtenu l'accès au système, Ce réseau de pots de miel permet
que le programme malveillant tente exposant sans le vouloir ses inten- ainsi d'établir une communication
de se connecter, LaBrea ralentit la tions et ses outils. en imitant le comportement de la
pile réseau de l'émetteur, de manière Une organisation à but non lucra- cible visée par le programme mal-
parfois significative. Au sens figuré, tif connue sous le nom de Honeynet veillant, lequel exposera malgré lui
la pile réseau du système infecté par Project (veuillez consulter le site un nombre d'informations suffisant
le programme malveillant se retrouve http://www.honeynet.org/) produit à identifier correctement le type d'at-
coincée dans un tar pit. De ce fait, un grand nombre d'informations et taque menée. Une autre utilisation
il n'y a plus d'interaction au niveau d'outils faciles d'utilisation conçus sur demande consiste à contrôler
de la couche application, mais une pour permettre aux utilisateurs de des infiltrations suspectes. Le ré-
interaction significative au niveau déployer des pots de miel à haute seau de pots de miel constitue ainsi
de la couche 4 lors des tentatives interaction. Cette organisation pro- une autre arme à la disposition de
de connexion (TCP). LaBrea est pose également des outils de type l'administrateur de la sécurité.
même capable d'utiliser le protocole expertise chargés d'analyser les Que dire enfin de cette instal-
ARP sur l'ensemble des adresses données collectées lors des infiltra- lation concrète chez l'un des plus
IP virtuelles dans sa configuration tions dans les pots de miel. grands fabricants de puces ? Ce
sans les assigner aux interfaces du Astuce : le projet Honeynet fabriquant possède dans tout son
système hébergeur, ce qui facilite (http://www.honeynet.org/ ) publie réseau des serveurs Linux exécu-
considérablement son réglage. Vous un certain nombre d'outils incroya- tant VMWare, sur lequel fonctionne
trouverez plus d'amples informations bles pouvant être utilisés pour quatre machines virtuelles, une pour
sur LaBrea à l'adresse suivante : déployer vos propres réseaux de chaque version les plus répandues
http://labrea.sourceforge.net/labrea- pots de miel. Les outils intitulés du système d'exploitation Windows
info.html. Honeywall, Termlog, et Sebek sont dans le monde des entreprises, NT,
Remarque : plusieurs organis- plus particulièrement intéressants. 2000, 2003, et XP. Chacune de ces
mes de recherche sont parvenus Dans le même ordre d'idée, l'équi- machines est mise à jour grâce aux
à la conclusion que les pots de miel pe du projet a également développé niveaux standards des programmes
à basse interaction représentent une un excellent ouvrage sur la psycho- correcteurs de la société. Le systè-
tactique viable contre la propagation logie, les tactiques et les outils me d'exploitation Linux contrôle ces
extrêmement performante de vers utilisés par les pirates, informations machines pour le trafic et les modifi-
en les ralentissant, ce qui permet recueillies grâce à la technique des cations afin de détecter de nouveaux
de protéger les infrastructures du réseaux de pots de miel. Ce livre vers (ou autres menaces) suscepti-
réseau. Certes, la configuration intitulé Know Your Enemy, déjà bles de circuler dans la réseau de la
requise pour pouvoir tirer parti de à sa seconde édition au moment de société. Ce fabriquant utilise essen-
cet avantage est au mieux obtuse. rédiger le présent article, est dispo- tiellement cet environnement sous
Toutefois, LaBrea et honeyd peuvent nible sur le site Web honeynet.org. forme de réseau de pots de miel
tout deux être configurés de sorte L'argent récolté de sa vente sert combiné à un système de détection
à créer un environnement hostile à financer la recherche sur les ré- des intrusions de type vers. Vous
aux vers. seaux de pots de miel. trouverez plus d'amples informations

24 hakin9 Nº 4/2006 www.hakin9.org


Protection réseau

Tableau 1. Paquets ICMP (Internet Control Massage Protocol) annoncés à l'échelle du réseau au
Paquets ICMP Signification moyen de leurs routeurs périphé-
riques ayant recours au protocole
BGP (Border Gateway Protocol). Le
3.0 Réseau inatteignable
trafic malveillant est ainsi acheminé
3.1 Hôte inatteignable vers un trou noir à chaque point d'en-
trée, lequel peut noyer les attaques
3.3 Port inatteignable
dès leur arrivée et (dans la plupart
3.4 Fragmentation requise des cas) éviter une congestion de
l'ossature ainsi que des périphéries
3.5 Echec du chemin source
du réseau. Certains fournisseurs ont
3.6 Erreur inconnue sur le réseau de même étendu le contrôle et l'automa-
destination tisation de cette technique au client
3.7 Erreur inconnue sur l'hôte de desti- final au moyen des dénommés trous
nation noirs en temps réel amorcés par le
3.10 Hôte administrativement interdit client.
3.11 Type de service réseau inatteigna-
Declancher un routage
ble
vers un trou noir
3.12 Type de service hôte inatteignable
Comme nous venons de le men-
3.13 Communication administrativement tionner plus haut, d'importants
interdite fournisseurs d'accès à Internet ont
11.0 Expiration TTL lors du transit installé un système distribué et
11.1 Réassemblage des fragment trop automatisé capable de declancher
long un routage vers des trous noirs
sur des adresses IP ciblées. Ce
Paquets TCP (Transmission Signification déclanchement peut être provoqué
Control Protocol) par le fournisseur d'accès à Internet
RST bit set Redémarrage du protocole TCP ou par les clients eux-mêmes, soit
de manière manuelle soit automa-
tiquement. Le routage provoqué
sur cette installation à l'adresse sui- fois protéger entièrement la perfor- vers un trou noir utilise la technique
vante : http://phoenixinfragard.net/ mance de tout le réseau, notamment du simple puit évoquée plus haut
meetings/past/200407hawrylkiw.pdf les clients adjacents partageant dans la partie intitulée Contexte
certaines parties de la topologie et fonction. Le puit peut être confi-
périphérique du transporteur sur le guré sur tous les routeurs d'entrée
Installer des puits pour réseau cible. Aujourd'hui, les grands (périphériques) au sein du réseau
se protéger contre les fournisseurs en télécommunications du fournisseur d'accès à Internet
attaques DDoS ont structuré leurs réseaux pour y dans lequel celui-ci échange du
Récemment la technique des puits inclure des versions sophistiquées trafic avec d'autres fournisseurs ou
connaît une nouvelle application de cette mesure de défense dans le clients. Une fois la nature de l'atta-
sous forme de tactique de défense cadre de leur politique de conception que dirigée contre le réseau ciblé
contre les attaques de déni de servi- des réseaux. Dans de nombreux cas, identifiée, le fournisseur d'accès à
ce (distribuées). Le premier exemple ces fournisseurs sont désormais ca- Internet ou le client peut indiquer le
exposé dans la partie intitulée Con- pables d'utiliser une technique de préfixe attacked (ou un préfixe plus
texte et fonction illustrait la forme la pistage afin de localiser les points spécifique) dans la table de routage
plus simple que peut prendre cette d'entrée de l'attaque et rediriger vers BGP. Le préfixe attaqué est marqué
nouvelle technique de réacheminer un trou noir les paquets de données d'un attribut next-hop acheminé de
le trafic vers un trou noir. Une fois la malveillants (vers leurs propres manière statistique vers l'interface
cible exacte d'une attaque identifiée, points d'entrée), sans permettre au de suppression sur tous les rou-
l'adresse IP ciblée a été détournée programme malveillant d'attaquer teurs périphériques, puis propagé
vers l'interface de suppression si- l'ossature du réseau jusqu'au lien dans le réseau du fournisseur d'ac-
tuée à la périphérie du réseau, avant du réseau ciblé. Cette technique cès à Internet via un protocole BGP
de traverser le lien final vers la cible. de pistage demeure toutefois inutile interne (ou iBGP). Ainsi, quelle que
Cette technique a permis d'éviter au bien souvent dans la mesure où les soit l'entrée des paquets destinés
réseau cible un arrêt total provoqué chemins conduisant aux trous noirs au préfixe attaqué dans le réseau
par la saturation du lien, sans toute- des fournisseurs sont habituellement du FAI (point d'entrée), ces derniers

www.hakin9.org hakin9 Nº 4/2006 25


Dossier

Tableau 2. Récapitulatif des étapes clés next-hop permettant d'acheminer


Étape Description vers un trou noir n'importe quel
préfixe d'attaque. L'utilisation
Comprendre comment votre FAI Élaborer un plan d'actions à mener
d'un préfixe de longueur 24 per-
peut vous aider en cas d'attaque contre les attaques DDoS com-
met d'avoir recours à plusieurs
DDoS. prenant des stratégies capable
adresses IP différentes pour des
d'augmenter les capacités de votre
types spécifique de routages
FAI dans le domaine des trous noirs
vers des trous noirs. Il est en effet
en temps réel. Amorcer le dialogue
plus judicieux de différencier les
entre votre organisation et votre FAI
chemins de trous noirs clients,
afin de pouvoir créer des trous noirs
internes ou externes.
en temps réel déclanchés par les
• configurer un chemin statique
clients dans le but de vous protéger
sur chaque routeur d'entrée/
sans perdre trop de temps dans
interrogateur pour le préfixe
leurs procédures d'intensification.
192.0.2.0/24, lequel pointe vers
Envisager l'installation d'un réseau Un réseau invisible vous permet l'interface de suppression. Par
invisible interne. d'attraper des vers avant l'anti-virus exemple : ip route 192.0.2.0
de votre fournisseur. De la même 255.255.255.0 Null0
manière, ce type de réseau révèle • configurer le protocole BGP et la
des erreurs de configuration sur vo- politique de cartes des chemins
tre réseau que vous serez heureux afin de mentionner les préfixes
de connaître. à diriger vers un trou noir, comme
Envisager l'installation d'un réseau Les réseaux invisibles externes l'illustre le Listing 1.
invisible externe. peuvent vous permettre de connaî-
tre la nature du programme dirigé Dans cet exemple de configuration,
contre votre réseau d'un point de des chemins statiques sont redistri-
vue extérieur et les outils pouvant bués dans le protocole BGP corres-
être utilisés avec ce type de réseaux pondant à la balise “tag 199” (voir
vous seront certainement plus ci-dessous), en paramétrant l'attribut
lisibles que des journaux standards next-hop sur une adresse IP achemi-
de pare feu. Les messages rétro- née vers l'interface de suppression,
diffusés collectés à partir de votre et la préférence locale sur 50 (valeur
réseau invisible externe peut vous la moins préférée). Il faut enfin veiller
fournir des informations précieuses à ne pas laisser fuir ces chemins
sur le moment où votre réseau est vers un de vos pairs externes (pas
impliqué dans une attaque sur une d'exportation).
tierce partie. Une fois cette configuration élé-
Explorer le réseau au moyen de Bien que la plupart des organisa- mentaire réglée, le déclencheur peut
pots de miel si vous avez le temps tions n'y voient que peu d'intérêt, être initié par le fournisseur d'accès
et les ressources nécessaires. l'installation d'un réseau de pots à Internet. Il lui suffit d'entrer un
de miel peut se révéler fort utile chemin statique chargé de diriger le
pour les chercheurs en sécurité de préfixe d'attaque (ou l'hôte) vers un
l'information. Il peut être judicieux trou noir, de la manière suivante, par
d'envisager cette solution au sein de exemple :
votre organisation, sans oublier de
tenir compte de la législation en vi- ip route 172.16.0.1 255.255.255.255
gueur sur l'exploration des données 192.0.2.1 Null0 tag 199
pouvant avoir une incidence sur
votre décision. Le chemin statique mentionné ci-
dessus agit comme déclencheur
sont immédiatement envoyés vers installer un mécanisme de trou noir chargé de lancer le processus de
l'interface de suppression du rou- distribué : routage vers les trous noirs. Le rou-
teur le plus proche en indiquant le teur sur lequel est configuré ce che-
préfixe attaqué. • sélectionner un préfixe routé de min indiquera le chemin au moyen
Les fournisseurs d'accès à In- manière non globale, comme le d'iBGP à l'ensemble des routeurs
ternet doivent généralement suivre Test-Net (RFC 3330) 192.0.2.0/ internes, y compris les routeurs pé-
les étapes suivantes afin de pouvoir 24, de sorte à servir d'attribut riphériques. Ainsi, tout routeur doté

26 hakin9 Nº 4/2006 www.hakin9.org


Protection réseau

d'un chemin statique vers l'interface


de suppression pour 172.16.0.1/32
acheminera immédiatement le trafic
local vers un trou noir.
Le fournisseur peut également
créer un déclencheur automatisé
grâce au protocole BGP, de manière
à permettre à un client BGP de de-
clancher le chemin vers le trou noir
indépendamment de l'intervention
du FAI. Il s'agit en réalité de l'aspect
le plus puissant du routage vers les
trous noirs. Du côté du fournisseur
d'accès à Internet, la configuration
est légèrement différente dans la
mesure où il va utiliser les commu-
nautés et les attributs ebgp-multihop
afin de recevoir et de baliser correc-
tement les chemins communiqués Figure 5. Exemple d'une rétrodiffusion lors d'une attaque DdoS
par les clients. Nous avons exposé
dans le Listing 2 la configuration de à une configuration très simple dans et des arnaques tout en pistant le
base du côté des fournisseurs d'ac- BGP, et l'aide de votre FAI, vous dis- pirate malveillant.
cès à Internet. posez désormais d'une méthode très
Le fournisseur d'accès à Inter- rapide vous permettant de répondre Rétrodiffusion
net a déjà acheminé de manière aux attaques de type DoS menées Il serait insensé, après avoir évoqué
statique le < blackhole-ip > vers sur un seul hôte, ou sur un préfixe les réseaux leurres et les attaques
les interfaces de suppression dans entier. de type DdoS, de ne pas évoquer la
tout le réseau. Donc, dès l'annonce Remarque : n'oubliez pas de notion de rétrodiffusion. Durant tout
du client d'un préfixe à diriger vers tout contrôler avec le contact tech- un semestre de ma première année
un trou noir, le FAI le redistribue de nique de votre FAI avant d'installer de lycée, j'ai écrit des lettres (oui,
manière interne et le trafic vers ce votre solution de déclanchement oui, de véritables lettres en papier)
préfixe est acheminé vers un trou de trous noir dans la mesure où les à divers amis qui devaient déména-
noir à la périphérie du réseau du implémentations des FAI de ce con- ger. Étant de nature assez étourdie,
fournisseur d'accès. cept diffèrent légèrement de l'une j'indiquais régulièrement sur mes
Nous avons exposé dans le Lis- à l'autre. enveloppes une fausse adresse de
ting 3 la configuration de base du retour. J'avais en effet omis d'ins-
côté du client. Rétrodiffusion crire mon numéro de chambre (je
Une fois la configuration du pro- et pisteurs venais de découvrir la bière à cette
tocole BGP en place, il suffit au client Cette partie est consacrée aux époque). Il arrivait parfois que l'un
d'installer un chemin statique pour le usages créatifs des réseaux leurres de mes amis à qui j'avais écrit ait
préfixe # visé par l'attaque. Grâce dans le but de détecter des attaques déménagé. La lettre m'était donc
renvoyée avec la mention de la pos-
Listing 3. Configuration de base du côté du client te retour à l'expéditeur. Seulement,
en raison de l'adresse incorrecte
router bgp XXXX (customer’s ASN) que j'avais indiquée, la lettre ne
# Le client va installer un chemin statique,
m'était pas directement retournée
# redistribué dans le protocole BGP,
# lequel redistribue la carte des chemins statiques vers bgp, mais était renvoyée au bureau de la
# à l'instar des FAI. Le client utilise la carte des chemins pour paramétrer résidence du rez-de-chaussée qui
et faire correspondre m'appelait et m'informait de l'arrivée
# les attributs de préfixes spécifiques. des lettres (en voyant mon nom bien
route-map static-to-bgp permit 5
sûr). Il ne me restait plus qu'à récu-
# Fait correspondre la balise arbitraire,
# préalablement approuvée par le client et le FAI pérer la lettre renvoyée. Ce retour
match tag NNNN à l'expéditeur n'est ni plus ni moins
set community additive XXX:NNNN qu'une sorte de rétrodiffusion. Bien
# NNNN représente la balise, approuvée par le client et le FAI évidemment, le facteur indiquait au
ip route 192.168.0.1 255.255.255.255 Null0 tag NNNN
bureau de la résidence que j'avais
envoyé une lettre (et à qui).

www.hakin9.org hakin9 Nº 4/2006 27


Dossier

Sur Internet, lorsqu'une partie A


tente de réaliser une attaque DoS Sur Internet
contre une partie B, en souhaitant • Extreme Exploits : Advanced Defenses against Hardcore Hacks, publié par
dissimuler son identité, elle écrit en McGraw-Hill/Osborne, tous droits réservés 2005, http://www.amazon.com/gp/
règle générale une adresse source product/0072259558/
erronée sur les paquets de son at- • RFC 3330 (adresses Ipv4 d'utilisation spéciale) et 3882 (configuration du protocole
taque (les en-têtes IP sont falsifiés BGP afin de bloquer les attaques DoS) Internet
de manière à donner l'impression • Projet sur les réseaux invisibles de l'équipe Cymru, http://www.cymru.com/
Darknet/
de venir des parties A-Z, par exem-
• Page d'accueil des outils tcpdump et libpcap, http://www.tcpdump.org/
ple ; seul A-Z sous IPv4 correspond
• Page d'accueil de l'outil ARGUS, http://www.qosient.com/argus/flow.htm
à des permutations 2^32). Lors
• Page d'accueil de Honeyd, http://www.honeyd.org
de telles attaques, les routeurs et • Page d'accueil du projet HoneyNet, http://www.honeynet.org
autres dispositifs du réseau ainsi • Page d'accueil de l'outil p0f, http://lcamtuf.coredump.cx/p0f.shtml
que le chemin qui y mène renvoient • Article de Chris Morrow et de Brian Gemberling sur les trous noirs des FAI et l'ana-
inévitablement une variété de mes- lyse de la rétrodiffusion, http://www.secsup.org/Tracking/
sages allant du redémarrage de la • Présentation de Dan Hawrylkiw sur les réseaux de pots de miel, http://
connexion à des requêtes quench phoenixinfragard.net/meetings/past/200407hawrylkiw.pdf
sur des notifications inatteignables. • Questions les plus fréquentes sur le filtre de paquets OpenBSD, http://
Dans la mesure où ces messages www.openbsd.org/faq/pf/
sont retournés à l'expéditeur, lequel
est falsifié, l'ensemble des parties
A-Z recevront ces messages qui les
informera d'une attaque dirigée con- À propos de l'auteur
tre la partie B, à l'instar du bureau Auteur et orateur reconnu, M. Oppleman enseigne dans le domaine de la sécurité
des réseaux tout en travaillant comme consultant auprès de sociétés parmi les plus
de ma résidence informé des lettres
prestigieuses au monde. Le logiciel libre élaboré par M. Oppleman a été distribué
que j'envoyais. La Figure 5 illustre le
sur des centaines de milliers d'ordinateurs dans le monde entier. M. Oppleman dé-
mécanisme. tient par ailleurs la propriété intellectuelle de certaines applications client sans fil et
Dans le filtrage de paquets dé- de routage adaptable distribué. Une grande partie du contenu du présent article est
sormais pratiqué, la plupart de ces tiré du livre de M. Oppleman intitulé Extreme Exploits : Advanced Defenses Against
messages renvoyés sont ignorés de Hardcore Hacks, publié par McGraw-Hill/Osborne (tous droits réservés 2005) et
manière silencieuse par les pares disponible en librairie.
feu. En effet, ces messages sont
considérés comme des réponses
à des messages que nous n'avons particulièrement virulente. Cette description certaines dépendances
pas envoyés. Toutefois, grâce à l'ins- technique connue sous le nom de supplémentaires parmi lesquelles
tallation d'un réseau invisible externe pistage, ou traceback en anglais, est l'utilisation du mécanisme de défen-
expliquée plus haut, il est possible de d'autant plus pratique qu'une fois le se des trous noirs à chaque passe-
retrouver ces paquets renvoyés afin point d'entrée spécifique sur le ré- relle Internet. Dans la mesure où les
de déterminer le moment où notre seau (ou le réseau du FAI) identifié, FAI les plus importants procèdent de
espace d'adresse est impliqué dans il est possible de lâcher le trafic à cet cette manière ainsi qu'une poignée
une attaque sur une autre partie. Les endroit et de réduire la charge sur les de réseaux entreprise mondiaux,
types suivants de paquets suscep- liens, en permettant éventuellement nous allons tout de même expliquer
tibles d'apparaître dans un réseau au bon trafic de passer (via des pas- en quoi consiste ce processus.
invisible peuvent être définis comme serelles alternatives), contrairement Supposons que vous disposiez
rétrodiffuseurs et vous informent gé- à la tactique plus simple du trou d'un réseau configuré comme décrit
néralement de l'implication de votre noir DdoS, évoquée plus haut. Cette plus haut, vous pouvez alors réaliser
espace d'adresse (ou de réseau technique du pistage permet d'utili- un pistage au beau milieu d'une atta-
invisible) dans une attaque : ser les rétrodiffuseurs collectés dans que DoS. Il vous suffit de suivre les
le(s) réseau(x) invisible(s) comme trois étapes suivantes :
Pistage moyen de recherche du point d'en-
Vous connaissez désormais la tech- trée de l'attaque dans le réseau. Mal- • identifier la cible et contrôler que
nique de rétrodiffusion, mais com- heureusement, cette technique n'est le trafic de l'attaque est bien falsi-
ment l'utiliser à bon escient ? Dans véritablement viable que du côté des fié (si tel n'était pas le cas, cette
un réseau à plusieurs passerelles de FAI ou sur les réseaux de données tactique de pistage deviendrait
transit Internet, il peut s'avérer utile éloignés dotés de nombreuses inutile).
de localiser le point d'entrée de ces passerelles Internet. Il faut en effet • diriger vers un trou noir le chemin
mauvais paquets en cas d'attaque comprendre en plus de la présente des hôtes spécifiques (vraisem-

28 hakin9 Nº 4/2006 www.hakin9.org


Protection réseau

blablement de type /32) ciblés sidérées comme sources des pa- lequel vous pouvez cherchez les
par l'attaque pour chacune de quets rétrodiffuseurs valident le adresses IP de vos passerelles.
vos passerelles. La plus grande fait que ces passerelles sont en Cette tactique de pistage combi-
attention est requise en termes réalité des points d'entrée pour née à une défense de type trou noir
de transfert vers l'interface de le trafic de l'attaque. Voilà ! Vous contre les attaques DDoS se révèle
suppression venant remplacer venez de trouver le point d'entrée utiles dans des situations où les flux
l'utilisation d'un filtre à paquets de l'attaque dans votre réseau. de trafics malveillants ont falsifié les
censé stopper les paquets de Même si vous ne disposez pas en-têtes. Il s'agissait jusqu'à très ré-
l'attaque. Cette opération de d'outils de réseau invisibles cemment de la forme la plus répan-
trou noir obligera le routeur de la sophistiqués, une simple liste due pour lancer ce type d'attaques.
passerelle concernée à générer d'accès appliquée à l'interface du Toutefois, avec la prolifération des
des messages ICMP inatteigna- routeur de votre réseau invisible machines zombies et des réseaux
bles, retournés (ou tentés d'être suffira à faire le travail à votre de zombies, de nombreux pirates
retournés) vers les sources falsi- place, de la manière suivante : ont désormais cessé la falsification
fiées des paquets de l'attaque. access-list 105 permit icmp any des paquets DdoS. En effet, nul be-
• utiliser dans les réseaux invisibles any unreachables log; access- soin de falsifier les en-têtes si votre
des outils chargés de détecter le list 105 permit ip any any armée de systèmes d'attaque se
trafic de rétrodiffusion (vraisem- trouve partout. C'est la raison pour
blablement sous la forme de Enfin, si vous entrez en mode con- laquelle les administrateurs réseau
messages ICMP inatteignables) trôle terminal dans cette liste d'accès observent une chute considérable
à l'aide de l'adresse IP des rou- (ou tout simplement si vous suivez le des attaques DdoS falsifiées au pro-
teurs de passerelles. Toutes les journal), vous obtiendrez un modeste fit du large déploiement des uRPF et
adresses IP des passerelles con- rapport sur les rétrodiffuseurs dans du filtrage de points d'entrée. l

P U B L I C I T É

www.hakin9.org hakin9 Nº 4/2006 29


Sécurité d'IPv6

Focus

Rita Pužmanová

Degré de difficulté

IPv6 est un protocole IP de nouvelle génération à côté duquel


on ne peut pas passer avec indifférence. On ressent de plus en
plus souvent la pression pour commencer à l'utiliser. Ce n'est pas
étonnant car IPv6 possède beaucoup d'avantages par rapport
à son prédécesseur. Ce protocole a non seulement un espace
d'adresses plus large, mais il implémente aussi le support pour
les solutions sans fil, les applications distribuées et la sécurité.

B
ien que la plupart des systèmes d'ex- nération. IPv6 offre des adresses uniques aux
ploitation d'aujourd'hui et des périphé- différents périphériques et senseurs. Il permet
riques réseau supportent déjà IPv6 aussi la mobilité et une communication peer-to-
(Internet Protocol version 6), l'utilisation de ce peer effective.
protocole dans les réseaux n'est pas encore La sécurité dans IPv6 est similaire à celle
universelle. Cette situation est due aux plu- dans IPv4. C'est une nouvelle bonne et mau-
sieurs facteurs. Ce sont avant tout les coûts vaise à la fois. Tout d'abord, grâce à la pro-
liés au passage d'IPv4 à IPv6 et le fait que tection réseau, nous voulons savoir qui nous
les utilisateurs ne se rendent pas compte des envoie des messages, qui lit les messages
avantages apportés par ce dernier. Le présent que nous envoyons et que les messages ne
article est consacré à la sécurité intégrée, l'un sont pas modifiés lors de la communication.
des principaux avantages d'IPv6 par rapport De plus, il est nécessaire que le réseau soit
à son prédécesseur IPv4. Nous comparerons
aussi les deux protocoles en ce qui concerne la
sécurité de la communication en tenant compte Cet article explique...
des failles de sécurité.
• Comment évaluer les propriétés d'IPv6 et les
profits liés à son utilisation.
Sécurité dans IPv4 • S'il faut l'utiliser.
La sécurité dans IPv4, de même que dans • Quels sont les principaux dangers d'IPv6 et
IPv6, est en développement permanent ce quels moyens de défense on peut appliquer.
qui les expose à un certain risque. Certaines
questions, telles que la sécurité des applica- Ce qu'il faut savoir...
tions mobiles ou multidiffusion (multicast) ne
seront pas analysées car le sujet est trop large. • Les notions de base de TCP/IP, notamment
Par contre, vous allez voir que la sécurité n'est l'adressage IPv4 (éventuellement Ipv6).
qu'un des avantages dont nous bénéficierons • La sécurité dans les réseaux IP, surtout IPSec.
après le passage au protocole de nouvelle gé-

30 hakin9 Nº 4/2006 www.hakin9.org


Sécurité d'IPv6

façon unique par trois variables : l'in-


dex du paramètre de sécurité (SPI,
Security Parameter Index), l'adresse
IP destination, et l'identifiant du pro-
tocole de sécurité (51 pour AH et 50
pour ESP). SPI est une valeur de 32
bits utilisée pour choisir parmi les
différentes SA ayant la même desti-
nation et utilisant le même protocole
IPsec. SA ne contient pas d'identi-
fication de l'adresse IP source car
– pour assurer une communication
bilatéralement sûre – encore une as-
sociation de sécurité doit être créée
(pour la direction inverse). IPSec
admet qu'une SA existe déjà et ne
protège que la création appropriée
des datagrammes.
Chaque nœud IPSec maintient
deux bases de données : la base de
données de la politique de sécurité
(SPD, Security Policy Database) et
la base de données des associa-
tions de sécurité (Security Policy
Figure 1. Une communication à travers le réseau public avec IPSec Associations). Le jeu de paramètres
pour chaque SA (SPI, protocole de
opérationnel et accessible à tous offrant les services de sécurité. Ils se sécurité, mode, algorithme de cryp-
les utilisateurs autorisés et que nous composent de protocoles de sécuri- tage, clé et autres) est stocké dans
ayons le contrôle sur notre périphéri- té : Authentication Header (AH), En- la base de données SPA. La base de
que connecté au réseau. capsulating Security Payload (ESP) données SPD contient le sommaire
et les mécanismes pour la gestion des préférences de sécurité suivant
IPSec : architecture de des clés de cryptage : IP Security l'ordre de leur utilisation dans le da-
sécurité IP du réseau Association and Key Management tagramme IP. Chaque entrée dans
Tout d'abord, analysons l'architec- Protocol (ISAKMP), RFC 4306 et cette base se compose d'un sélec-
ture de sécurité utilisée par les deux Internet Key Exchange (IKE). IPSec teur et d'une action (utiliser IPSec,
protocoles. L'architecture de sécurité définit ce qu'on appelle le concept détruire le datagramme ou ne pas
IP (IPSec, Internet Protocol Security d'association de sécurité (SA, Se- utiliser IPSec). Si un datagramme
Architecture, RFC 4301) est conçue curity Association) qui détermine contient des valeurs correspondant
pour donner une sécurité de haute la politique de sécurité entre deux au sélecteur enregistré, l'action qui y
qualité pour IPv4 et IPv6. En fait, parties de la connexion appliquée au est associé est utilisée.
l'architecture IPSec a été conçue datagramme en fonction de son ex- Quand le système envoie un pa-
justement pour IPv6 (RFC 1883). péditeur, son destinataire et de son quet nécessitant une protection par-
IPSec inclut l'intégrité, l'authentifica- contenu. Une SA est identifiée de ticulière, il recherche dans la base de
tion et une certaine confidentialité au
niveau des datagrammes. L'architec-
ture se compose de quelques proto-
coles servant à envoyer les données
authentifiées ou chiffrées à travers
les réseaux IP (Figure 1).
IPSec est placé dans la couche
réseau – elle est donc une architec-
ture transparente par rapport aux
protocoles applicatifs qui possèdent
leurs propres mécanismes de sé-
curité, comme par exemple SSL ou
PGP. Pourtant, ce n'est pas un seul
protocole, mais un jeu de protocoles Figure 2. Le format de l'en-tête d'authentification (AH)

www.hakin9.org hakin9 Nº 4/2006 31


Focus

chage avec une clé secrète. Il est


possible de hacher un texte quel-
conque en obtenant en résultat un
condensé d'une taille déterminée.
À la différence d'une signature nu-
mérique, pendant le cryptage du
condensé, on se sert d'une clé privée
de la même longueur. HMAC utilise
l'algorithme MD5 (RFC 2085 et 2403)
ou SHA-1 (RFC 4305), un algorithme
plus fort et plus puissant. L'AH est
une bonne méthode là où l'authen-
tification de chaque datagramme
Figure 3. Le format de l'en-tête ESP à part est suffisant. L'AH possède un
données une association de sécurité, la meilleure version du protocole identifiant du protocole de sécurité, le
exécute les opérations appropriées IKEv2 (RFC 4306) a été publiée à la numéro de séquence et la somme de
et met le SPI de l'association de sé- fin de l'année dernière. Néanmoins, contrôle (Figure 2).
curité dans l'en-tête du datagramme. son implémentation est pour l'instant Le second protocole d'IPSec,
Le récepteur, à partir de la com- assez rare, bien que sans le protoco- Encapsulating Security Payload
mande du datagramme, retrouve la le spécial permettant la distribution (ESP, RFC 4303), assure la confi-
SA dans la base de données suivant des clés il soit impossible d'utiliser dentialité des données en cryptant le
l'adresse destination/SPI et réalise IPSec... contenu et l'en-tête du paquet. Il offre
les opérations appropriées. aussi les services d'authentification
La gestion des associations de Protocoles AH et ESP similaires à AH (la comparaison de
sécurité se fait à travers le proto- L'authentification et l'intégrité des l'AH et de l'ESP est présentée dans
cole ISAKMP. Pourtant, ISAKMP ne messages IP sont assurés par un le Tableau 1). L'ESP convient mieux
définit pas son propre mécanisme complément au datagramme IP sous dans les cas plus sérieux, quand
d'échange des clés secrètes entre forme d'un en-tête d'authentification il est nécessaire d'authentifier et
les récepteurs et les stations en- (Authentication Header, RFC 4302) de chiffrer le contenu des data-
voyant les paquets avec ESP ou AH, saisi à la place de l'en-tête IP orginal grammes pour les protéger contre
c'est pourquoi, en cas d'un échange qui utilise le chiffrement à l'aide de la l'écoute ou les abus. L'ESP permet
automatique des clés (l'échange clé publique. Le chiffrement concer- le chiffrement avec l'authentification
manuel est compliqué), il faut utiliser ne toutes les partie du datagramme (null encryption, RFC 2410). L'ESP
Internet Key Exchange, qui est une qui ne change pas. On utilise ici définit le contenu possible du data-
composante du contenu concret de l'algorithme de chiffrement MD5. Le gramme IP. Il se compose d'un en-
l'association de sécurité. On utilise chiffrement se fait à la source avant tête qui comprend les informations
ici les algorithmes d'échange des la fragmentation du datagramme, et concernant la politique de sécurité
clés de type Diffie-Hellman en ad- le déchiffrement est effectué après (SPI), du numéro de séquence, et
mettant que les deux parties de la la réception par la station de desti- éventuellement spécifie l'algorithme
communication sont connues. Cet nation. de chiffrement (par exemple DES),
échange est assuré à l'avance par L'authentification AH se fait à voir la Figure 3. Les données sont
les mots de passe et les certificats l'aide de ce qu'on appelle code chiffrées d'une façon appropriée, et
numériques communs. d'authentification de message (MAC, à la fin, il y a la somme de contrôle
Pour la gestion des clés dans Message Authentication Code). Si qui permet de confirmer la validité du
IPSec, une infrastructure d'authen- l'on utilise le hachage à sens unique, datagramme.
tification homogène PKI est néces- on obtient HMAC (Hash-Based L'AH et l'ESP utilisent le hachage
saire. Le développement IKE était MAC) ; il est en fait le résultat de la pour vérifier si lors de la communi-
très complexe et la spécification de combinaison d'une fonction de ha- cation, un changement du paquet

Tableau 1. Comparaison des protocoles AH et ESP


AH ESP
authentification de la source du oui au choix
message
intégrité des données transférées oui (y compris l'en-tête) oui (excepté l'en-tête)
protection contre le rejeu au choix oui
chiffrement non oui

32 hakin9 Nº 4/2006 www.hakin9.org


Sécurité d'IPv6

tions transmises, il faut utiliser la


combinaison de l'AH avec l'ESP en
deux modes : aussi bien en mode
transport que tunnel.

Translation des adresses :


NAT
La translation des adresses (NAT,
Network Address Translation; RFC
Figure 4. La protection de l'association en deux modes 3022) est souvent utilisée dans la
pratique. Dans Ipv4, il y a deux rai-
n'a pas eu lieu. Vu que pendant la IP encapsulé constituent les vérita- sons principales : limiter le nombre
transmission, l'en-tête change, les bles adresses source et de destina- d'adresses IP uniques nécessaires
deux protocoles ajoutent la valeur tion. Ce mode est utile pour protéger pour les réseaux privés et amélio-
du contrôle d'intégrité (ICV, Integrity le trafic entre les différents réseaux rer la sécurité de la communication
Check Value) aux certains en-têtes et fonctionne entre les routeurs et les entre les réseaux privés et Internet.
appartenant aux couches supérieu- systèmes terminaux. Les routeurs La NAT a été mise au point pour
res. reçoivent uniquement les en-têtes répondre au manque d'adresses IP
des datagrammes extérieures. Le dans le protocole dû au fait que l'es-
Modes tunnel et transport mode tunnel est utilisé par défaut pace adressable n'est pas utilisé de
L'association de sécurité fonctionne pour la construction de VPN (Virtual manière optimale - une adresse est
en deux modes : transport et tunnel Private Network, voir la Figure 6). définie seulement sur 32 bits. Cette
(Figure 4). En mode transport, l'en- L'utilisation de l'ESP en mode situation provisoire durera jusqu'au
tête de sécurité est mis entre l'en- transport et en mode tunnel – en moment du passage à la nouvelle
tête origine du datagramme IP et les fonction des parties du datagramme sixième version du protocole IP, per-
données, tandis qu'en mode tunnel, authentifiées et chiffrées – est pré- mettant l'adressage unique du plus
un nouvel en-tête est créé pour le da- sentée sur la Figure 7. grand nombre de nœuds du réseau.
tagramme, après lequel vient encore Les mécanismes ESP et AH Maintenant ces adresses ont une
l'en-tête de sécurité. peuvent être exploités entre deux longueur de 128 bits.
L'ESP en mode transport chiffre nœuds du réseau (entre les utilisa- La fonction NAT est bien con-
et authentifie les données trans- teurs finaux ou entre les routeurs), nue, alors nous la rappellerons en
mises, mais n'authentifie pas de en transmission multicast et unicast. quelques mots. Tout d'abord, il ne
l'en-tête du datagramme. L'AH en Les mécanismes de protection peu- faut pas oublier que le réseau des
mode transport authentifie authen- vent s'ajouter, ce qui veut dire qu'un connexions à Internet via la NAT doit
tifie les données transmises et les datagramme peut contenir les deux embrasser au moins une adresse
champs sélectionnés de l'en-tête du en-têtes : AH et ESP. AH assure l'in- IP importante qui est affectée à un
datagramme. En mode transport, le tégrité des données en mode sans routeur ou à une machine connectée
protocole ESP est identifié dans l'en- connexion et l'authentification de la à Internet. Une application spéciale
tête IP à l'aide de l'ID de protocole source IP des paquets, mais n'offre NAT (appelée NAT box) traduit les
IP 50 et le protocole AH – 51. Les pas la confidentialité des données adresses dans les datagrammes
deux en-têtes contiennent aussi le au moyen du chiffrement. L'ESP entrants et sortants de façon à
champ identifiant le type de données permet le chiffrement, mais ne pro- remplacer l'adresse source dans
que comprend la charge utile, com- tège pas de nouveaux en-têtes IP les datagrammes sortants par son
me TCP ou UDP. Le mode transport du paquet origine encapsulé. Pour adresse globale et l'adresse destina-
convient pour les communications avoir une authentification puissante tion dans les datagrammes entrants
de bout en bout effectuées via un avec la confidentialité des informa- par l'adresse privée de la station ci-
réseau externe (Figure 5).
Quant au mode tunnel, le data-
gramme entier (intérieur) est encap-
sulé dans un autre datagramme avec
(c'est-à-dire, il sera chiffré avant l'en-
capsulation) un en-tête non chiffré
(datagramme extérieur) qui servira
à tracer la route dans le réseau. Les
adresses IP de l'en-tête IP extérieur
représentent les points d'arrêt du
tunnel, alors que celles de l'en-tête Figure 5. L'utilisation du mode transport

www.hakin9.org hakin9 Nº 4/2006 33


Focus

ble donnée (d'après RFC 1918). Du Network Address and Port Trans- sans intermédiaire entre les stations
point de vue d'un utilisateur externe, lation), on utilise une adresse IP et basée sur la règle peer-to-peer. Il
tous les datagrammes arrivent à la plusieurs ports TCP et UDP (l'ob- supporte mieux que son prédéces-
NAT et en réponse, sortent à partir jectif : économiser les adresses IP). seur de nouvelles applications et
de celui-ci. Du point de vue d'un utili- La NAT établit les valeurs des ports services tels que VoIP, les jeux en li-
sateur interne, la NAT est un routeur juste après l'en-tête IP dans l'unité gne menés par plusieurs utilisateurs,
connecté à Internet. de données. Avec l'IPSec, le principe les vidéoconférences, les services
précédent ne peut pas être satisfait. de transfert des données avec la
Inconvénients de la NAT De plus, l'ESP chiffre l'en-tête TCP téléphonie mobile, ainsi que la con-
Dans plusieurs applications, les ou UDP encore en mode tunnel, ce nexion à distance des senseurs (par
règles de la NAT sont inaccepta- qui est inadmissible pour la NAT ; exemple RFID, Radio Frequency
bles car celles-ci ne peuvent pas pour cette raison, la translation des IDentification), les ménages infor-
fonctionner correctement avec la adresses doit avoir lieu avant l'appli- matisés, les bâtiments intelligents ou
translation des adresses. La NAT ne cation d'IPSec. Plusieurs nouveaux grid computing.
peut pas coopérer avec les protoco- produits IPSec supportent l'utilisa- Mais il ne s'agit pas tout à fait
les qui utilisent les informations sur tion de la NAT en implémentant l'en- d'une nouvelle architecture réseau
les adresses à l'intérieur d'un simple capsulation UDP, mais ce n'est pas car IPv6 a hérité beaucoup de ca-
datagramme. L'en-tête contient les une solution universelle. ractéristiques d'IPv4. Il y a le même
adresses traduites à l'aide de la NAT, service datagramme, les mêmes pro-
mais à l'intérieur des datagrammes, tocoles de transport et pratiquement
Protocole de nouvelle
la NAT n'effectue pas l'opération de les mêmes applications. Pourtant,
translation d'adresses. La nouvelle génération IP version 6 IPv6 offre aussi de nouveaux élé-
version de la NAT est capable de et sa protection ments, tels que l'espace d'adressage
résoudre ce problème. En générale, La nouvelle version du protocole IP plus étendu, l'autoconfiguration, le
la NAT n'est pas adaptée aux diffé- (IPng, IP next generation), portant support des technologies mobiles et
rentes tâches d'IP, il ne faut donc pas le numéro 6 (IPv6; RFC 2460) a été la politique de sécurité intégrée.
s'attendre à ce que les applications élaborée il y a dix ans. La nécessité
fonctionnent aussi efficacement en d'apporter les améliorations à IPv4 Adressage dans le protocole
présence de la NAT dans leur con- était liée au système d'adressage in- IP version 6
ception initiale. Il serait peut-être suffisant et à son utilisation ineffica- Pour satisfaire aux exigences liées
juste que toutes les applications ce en allouant des blocs d'adresses à l'élargissement de l'espace
supportent la NAT, mais à vrai dire, trop grands. IPv6 résout tous ces d'adressage pour IP, IPv6 utilise
cette solution n'est pas bonne vu la problèmes grâce au format permet- 128 bits au lieu de 32 (RFC 4291).
performance, l'extensibilité et l'implé- tant d'utiliser 1038 d'adresses uni- L'espace d'adressage devient alors
mentation des applications. ques, mais sa mise en point dans les quasi infini : 2128. L'adresse IPv6
La NAT pose des problèmes réseaux modernes est motivée aussi type est divisée en deux parties : le
même sous IPSec où la communi- par d'autres facteurs que seulement préfixe et l'identificateur d'interface.
cation se fait entre deux extrémités. l'espace d'adressage plus large. Un identificateur d'interface peut
Cette situation ne peut pas être com- Grâce à l'adressage individuel, avoir plusieurs adresses IPv6. Il
parée à une adresse de substitution. IPv6 permet une communication existe différents types d'adresses
IPSec, qui utilise l'en-tête authentifié,
calcule la valeur d'authentification
à partir du datagramme entier
– y compris son adresse IP source et
destination. Une modification quel-
conque de l'adresse IP, par exemple
au moyen de la translation, entraîne
le calcul d'une autre valeur, et
à cause de cela, l'authentification est
refusée. La NAT doit être donc utili-
sée avant le traitement avec IPSec.
En cas d'ESP, l'authentification ne se
fait pas à partir d'un en-tête extérieur,
alors la translation NAT peut avoir
lieu après l'application d'IPSec.
Si l'on combine la translation
d'adresses et de ports (NAPT, Figure 6. L'utilisation du mode tunnel

34 hakin9 Nº 4/2006 www.hakin9.org


Sécurité d'IPv6

www.hakin9.org hakin9 Nº 4/2006 35


Focus

Ipv6 : adresses mono-utilisateur


(unicast; RFC 3587), multidestina-
taires (multicast; RFC 3306, 3307 et
3956) et les adresses correspondant
à un groupe d'interfaces (anycast)
– seuls les deux premiers types sont
utilisés dans IPv4. Le nouveau type
d'adresse anycast est fort utile dans
plusieurs applications modernes qui
utilisent les serveurs dissminés dans
le réseau. D'autre part, les adresses
réservées peuvent être pour un intrus
un but d'attaque intéressant – par
conséquent, les adresses anycast
disponibles globalement devraient
être définies uniquement pour les
routeurs. Pour une adresse anycast
destination, il n'existe aucun méca-
nisme d'autorisation ce qui rend plus
faciles les attaques de type spoofing Figure 7. ESP en mode transport et tunnel
et masquerade.
Les adresses ont deux fonctions du chemin de paquet dans le réseau suivant l'état de la configuration
de base, coexistantes dans IPv4, car elles permettent une agrégation (RFC 2462) en préférées (prefer-
mais séparées dans Ipv6 – la fonc- plus facile des adresses suivant les red) et déconseillées (deprecated) ;
tion de localisation et la fonction niveaux hiérarchiques du réseau, le éventuellement, conformément à
d'identification. Les informations sur FAI (connexion), l'entreprise utilisant RFC 304, en publiques (public ad-
la localisation sont nécessaires au Internet et autres (RFC 3587). dresses) et temporaires (temporary
routeur parce qu'elles déterminent La notation des adresses IPv6 addresses).
la façon de trouver le chemin vers diffère de celle d'IPv4. Les adresses La connexion aux plusieurs FAI,
le but. Elles offrent au moins trois sont écrites en notation hexadécima- c'est-à-dire multihoming, permet
niveaux d'agrégation : (TLA, Top- le où les 8 groupes de 16 bits sont d'affecter plusieurs adresses à un
Level Aggregator; NLA, Next-Level séparés par deux-points. L'adresse nœud – aussi pour les interfaces
Aggregator oraz SLA, Site-Level peut se présenter par exemple virtuelles ou l'interface tunnel. De
Aggregator, RFC 3587). ainsi : FBCD:1234:5678:9001:2222: cela, pendant l'établissement d'un
L'identification (identificateur) AB12:2345:6789. Il est permis de connexion, les implémentations
identifie un périphérique spécifique supprimer de la notation les zéros d'IPv6, dans les nœuds extrêmes et
ou son interface. L'agrégation et non significatifs, mais une seule fois les routeurs, doivent souvent choisir
l'allocation hiérarchique des adres- dans une notation donnée, autre- parmi plusieurs adresses sources et
ses sont utilisées effectivement pour ment cela pourrait porter à confu- destination. Ces situations sont réso-
router globalement les données, vu sion. Par exemple, l'adresse FEDC: lues par l'intermédiaire du mécanis-
que les décisions concernant le trajet 0000:0000:0000:0000:0000:0000: me de choix d'adresses (RFC 3484),
du paquet dans le réseau sont prises 0110 peut notée comme FEDC::110. commun à toutes les implémenta-
à partir des bits initiaux de l'adresse IANA(Internet Assigned Numbers tions, mais qui n'est pas prioritaire
suivant les préfixes de plus en plus Authority) a affecté à RIPE NCC (Ré- par rapport au choix des adresses
longs et spécifiques. seaux IP Européens Network Coor- définies par chaque application. En
Dans Ipv6, les 64 premiers bits dination Centre) la plage d'adresses cas d'implémentations double (IPv4
déterminent en général l'information (hex2001:600::/23). Quand nous
sur la localisation pour qu'il soit pos- récapitulons tous les types d'adres-
Avantages d'IPv6 par
sible d'atteindre un certain intervalle sages IPv6, nous obtienons une liste
(site). Les 64 bits suivants identifient assez longue. L'IPv6 permet d'affec- rapport à IPv4
le périphérique dans le domaine ter à une interface réseau plusieurs • l'espace d'adressage plus étendu,
défini. Le passage à un nouvel FAI adresses individuelles qui peuvent • la simplification du format de l'en-
nécessite le changement du locateur, être globalement uniques (global), tête du datagramme,
mais pas de l'identificateur. Les adres- seulement locales (site-local) ou cel- • le support obligatoire pour IPSec,
ses hiérarchiques IPv6 plus longues les dont la validité est restreinte à un • le support élargi pour les protoco-
satisfont avant tout les exigences lien (link-local). Dans le cadre d'IPv6, les IP mobiles.
concernant la recherche effective les adresses peuvent être divisées

36 hakin9 Nº 4/2006 www.hakin9.org


Sécurité d'IPv6

avec IPv6), il faut décider quel type assurer l'unicité des adresses et sup- communiquer sans l'intermédiaire
d'adresses doit être utilisé. porter IP sur les équipements qui ne des serveurs ou routeurs.
sont pas surveillés par un administra- Les équipements suivent les
Configuration automatique teur réseau (il s'agit par exemple des messages des routeurs qui envoient
IPv4 n'offre pas directement une dispositifs récepteurs domestiques). régulièrement l'information (router
configuration automatique de la L'auto configuration sans état permet advertisement) annonçant aux équi-
machine lors de sa connexion au aussi aux nœuds une communica- pements l'adresse du préfixe (prefix
réseau. L'alternative pour la configu- tion dans les réseaux sans routeurs adress) d'un réseau donné et l'infor-
ration manuelle de chaque machine (réseaux ad hoc). mation sur la passerelle (default ga-
est le protocole DHCP. À partir de L'autoconfiguration utilise le teway) et sa durée de vie. En même
la requête de la machine, le serveur protocole ICMPv6 (Internet Control temps, grâce à ces informations,
DHCP lui affectera une adresse IP et Message Protocol) et est basée sur l'équipement saura s'il faut utiliser la
fournira les informations nécessaires la découverte des voisins (NDP, configuration avec état ou sans état.
pour le travail dans le réseau donné. Neighbor Discovery Protocol, RFC L'équipement nouvellement con-
Dans IPv6, il est possible d'utiliser le 2461 et RFC 3122). L'équipement necté peut demander tout seul ces
protocole DHCPv6 remanié, mais connecté au réseau IPv6, en premier informations à partir des routeurs,
l'apport positif d'IPv6 est la confi- lieu crée son adresse locale (link- alors il ne doit pas attendre leur
guration automatique (RFC 2462 local) à partir du préfixe prédéfini annoncepériodique. Dans le cadre
et RFC 3041) qui n'exige aucun hexFE80, et ensuite, ajoute à celui- de la configuration sans état, à partir
serveur. ci son identificateur (EUI, End User du préfixe annoncé, l'équipement
L'autoconfiguration n'a pas été Identifier). L'équipement vérifie dans construira sa propre adresse IPv6
intégrée dans le projet IPv6 pas le réseau si cette adresse n'est pas unique en ajoutant à ce préfixe l'EUI
à cause du manque de confiance utilisée par quelqu'un d'autre. Tous de l'adresse locale. Si l'équipement
envers les utilisateurs finaux, mais les nœuds dans un segment répon- effectue la configuration avec état,
pour faciliter les modifications d'ISP, dront à une station donnée, et après DHCPv6 est utilisé.
supporter les technologies mobiles, l'échange des informations pourront Pour des raison de sécurité, il
faut vérifier si l'information diffusée
dans le réseau provient d'un routeur
Format de l'en-tête obligatoire autorisé et avec quelles exigences
• version (version) – numéro de la version du protocole (6), de sécurité en ce qui concerne la dé-
• priorité (priority) – permet à la source d'identifier la priorité de chaque datagramme couverte des voisins que nous avons
par rapport au reste des datagrammes provenant d'une même source ; il s'agit de déjà mentionné.
la priorité du point de vue de la transmission et de la livraison, SEND (SEcure Neighbor Disco-
• étiquette de flux (flow label; RFC 3697) – permet d'identifier les datagrammes very; RFC 3971) définit de nouvelles
spécialement traités lors du routage ; les équipements et les routeurs qui ne sup- possibilités d'ICMPv6 dans le cadre
portent pas ce champ, ne peuvent pas le changer. Le flot de données est défini du protocole NDP, sur la base des si-
comme une suite de datagrammes envoyés d'une source à un destinataire ou à gnatures utilisant les clés publiques.
un groupe de destinataires. Le marquage du flux et le champ précédent priority
La fonction de hachage de la clé
permettent ensemble de définir la priorité de la transmission dans le cadre de
publique est utilisée pour la géné-
QoS (Quality of Service) – le contrôle de la bande passante. Vu qu'il n'existe pas
ration de l'adresse, les routeurs sont
de mécanisme d'authentification, les attaques DoS (Denial of Service) ou les vols
du service peuvent avoir lieu. C'est pourquoi, les mécanismes de type pare-feu ne certifiés par l'intermédiaire de X.509,
doivent pas baser entièrement sur les marquages du flux pour prendre les déci- les données sont signées et les mar-
sions, queurs de temps confirment le mo-
• longueur des données dans le datagramme (payload length) – la longueur de la ment de la création du message.
partie restante du datagramme Ipv6, c'est-à-dire la longueur de tous les en-têtes
complémentaires et la longueur du champ de données, Datagramme IP version 6
• en-tête suivant (next header) – identifie le type de l'en-tête directement après l'en- IPv6 transmet efficacement aux
tête obligatoire du datagramme IPv6, extensions des en-têtes optionnels
• nombre maximal de routeurs (hop limit) – le nombre de routeurs permis (une ana-
les informations qui ne sont pas
logie au champ de durée de vie sous IPv4 – TTL, Time To Live) ; chaque routeur le
nécessaires dans le datagramme.
réduit d'une unité. Si cette valeur est réduite à 0, le datagramme ne peut pas être
L'en-tête obligatoire ( Figure 9) a la
transmis plus loin ni qu'un message ICMP soit généré,
• adresse source (source address) – l'adresse de la source d'une longueur de 128 longueur constante (40 octets) et ne
bits, contient que 8 champs. La Figure 8
• adresse destination (destination address) – l'adresse du destinataire voulu d'une présente le format du datagramme
longueur de 128 bits (dans certains cas, il ne s'agit pas d'un périphérique cible, IPv4). Après l'en-tête obligatoire
à moins qu'une extension de l'en-tête pour diriger n'ait été utilisée). peuvent venir les en-têtes option-
nels d'une longueur variable. Les

www.hakin9.org hakin9 Nº 4/2006 37


Focus

Tableau 2. Les en-têtes d'extension vent identique à celui d'IPv4 (6 pour pourquoi la présence de la protection
et leurs identificateurs TCP, 17 pour UDP ou 46 pour RSVP, au niveau de transport ne dépend que
identifi- en-tête d'extension mais 58 pour ICMPv6). La valeur 59 de l'utilisateur et des applications. On
cateur dans le champ En-tête suivant indi- ne peut donc pas prétendre qu'IPv6
que que rien ne suit cet en-tête – s'il soit un protocole plus sécurisé que
0 hop-by-hop
y a quand même des données, elles son prédécesseur, mais on peut
43 routing seront négligées. dire qu'IPv6 est un pas en avant pour
44 fragment l'élargissement de l'authentification
50 encapsulating security Sécurité d'IPv6 et de la protection au niveau des
payload header, ESP IPv6 utilise obligatoirement le proto- protocoles de transmission. L'AH
51 authentication header, cole de sécurité IPSec, ce qui signifie assure l'intégrité des données (MAC)
AH qu'il supporte nativement l'authenti- et l'authentification (vérification de
fication, le chiffrement, VPN. Avec l'identité de la source), mais ne garan-
59 no next header
le nouveau protocole, de nouveaux tit pas la confidentialité. Le calcul de
60 destination options types d'attaques apparaissent, il ne MAC est réalisé par la source avant la
62 mobility faut donc pas attendre qu'IPv6 sera fragmentation du datagramme, et le
supersécurisé. En particulier, il faut se contrôle de l'intégrité se fait après la
données qu'ils contiennent seront rendre compte du fait qu'IPSec veille à reconstitution du datagramme dans le
utilisées dans les nœuds extrêmes, la sécurité de la couche réseau et pas nœud destination. Le MAC concerne
mais très rarement dans les rou- des applications spécifiques, et qu'il toutes les parties du datagramme qui
teurs. Ainsi, les routeurs ne s'occu- ne préviendra les attaques contre cel- ne changent pas pendant le trajet
pent que de l'en-tête d'une longueur les-ci. IPv6 ne protégera pas non plus dans le réseau (comme pour quel-
constante, moins compliqué que contre les attaques par inondation de ques types d'en-têtes). Pour le MAC,
dans IPv4, ce qui a permis d'accé- datagrammes. on utilise MD5 et SHA-1.
lérer son fonctionnement. Les mécanismes d'authentifica- L'ESP a pour but de chiffrer les
À la différence d'IPv4, l'en-tête tion et de chiffrement sont ajoutés données. On peut chiffrer soit les don-
obligatoire ne contient pas ici une au datagramme IPv6 au moyen nées de niveau transport, c'est-à-dire
information superflue sur la longueur des en-têtes d'extension optionnels. le segment TCP/UDP ou le message
de l'en-tête, et en même temps, il ne Même si le support de ces en-têtes ICMP (transport-mode), soit le data-
contient pas non plus la somme de est obligatoire, IPv6 ne les détermine gramme IPv6 entier (tunnel-mode,
contrôle en se référant aux autres pas à l'aide des applications, c'est voir la Figure 11). Dans le premier cas,
couches. Dans IPv6, contrairement
à IPv4, la fragmentation d'après la
longueur admissible de l'unité de Ordre des en-têtes optionnels
données (MTU, Maximum Trans- Une revue des en-têtes et leurs identificateurs sont présentés dans le Tableau 2 :
mission Unit) n’est réalisée que par
• en-tête des options sauts après sauts (hop-by-hop options header) – définit les
les nœuds sources et les routeurs
options qui doivent être examinées et traitées par chaque routeur le long du chemin
sur le trajet ne le peuvent pas. Cela emprunté par le datagramme, par exemple l'avertissement du routeur sur le contenu
veut dire que la MTU minimale d'un du datagramme intéressant (RFC 2711, le choix de l'identificateur 5) ou le support
transfert donné doit être déduite par de l'emploi de ce qu'on appelle jumbogrammes (RFC 2675, le choix de l'identifica-
l'ordinateur source (RFC 1981) avant teur 194), les datagrammes d'une taille supérieure à 65 Ko et inférieure à 4 Mo,
l'envoi du datagramme. Le fait de • en-tête des options de destination (destination options header) – contient les infor-
défendre la fragmentation des data- mations optionnelles pour la destination (l'en-tête optionnel peut être placé après
grammes aux routeurs réduit dans tous les autres en-têtes et définit l'action du dernier nœud destination).
une certaine mesure les abus de la • en-tête de routage (routing header) – donne une liste des routeurs qui doivent être
fragmentation qui ont pour but de visités le long du trajet vers la destination ; la destination doit ensuite utiliser cet
en-tête pour déterminer le trajet dans le sens inverse,
violer la sécurité de la transmission.
• en-tête de fragmentation (fragment header) – contient les informations servant à
Après l'en-tête obligatoire IPv6,
fragmenter et rassembler les datagrammes. La fragmentation n'est réalisé que par
peuvent venir certains en-têtes un nœud source, c'est pourquoi le nœud source doit être capable de déterminer
d'extension optionnels. Chaque la MTU pour que le datagramme ne soit pas détruit lors de la transmission. La
en-tête identifie l'en-tête suivant – il reconstitution du datagramme est effectué par la station destination,
contient le champ définissant le type • en-tête d'authentification (AH) – assure l'intégrité et la véracité du datagramme,
de l'en-tête consécutif (l'exemple sur • en-tête d'encapsulation de charge utile sécurisée (ESP) – assure la protection des
la Figure 10). Si il n'y aucun en-tête données transférées dans le datagramme, leur authenticité et leur intégrité ; si le
suivant, le protocole de transport est chiffrement est nul (null), seuls les services d'authentification et d'intégrité sont
spécifié par l'intermédiaire du numé- assurés.
ro du protocole, qui est le plus sou-

38 hakin9 Nº 4/2006 www.hakin9.org


Sécurité d'IPv6

SDJE

www.hakin9.org hakin9 Nº 4/2006 39


Focus

Ainsi, de nouvelles solutions (tempo-


raires) ont pu voir le jour :

• translation des adresses réseau


(NAT) – pour remédier à la pénu-
rie d'adresses routables,
• masque de sous-réseau à lon-
gueur variable (VLSM) – une
adresse du réseau IPv4 peut être
divisée en plusieurs sous-réseaux
(subnetting) ; avant VLSM, ce type
d'adressage était possible, mais il
fallait opérer sur un nombre cons-
tant de bits destinés à adresser un
sous-réseau (longueur du masque
ou, éventuellement, une machine.
Figure 8. Le format du datagramme IPv4 VLSM a éliminé cette limitation
et a permis l'adressage efficace
des sous-réseaux avec plusieurs
machines terminales (Ethernet
et autres réseaux utilisant les
moyens de transmission) et des
connexions entre deux point né-
cessitant uniquement deux adres-
ses de nœuds terminaux,
• routage inter domaine sans classe
IPv4 (CIDR) – le routage des proto-
coles modernes, notamment avec
Figure 9. Le format de l'en-tête obligatoire du datagramme IPv6
BGP (entre les domaines ou les
le chiffrement est réalisé par le nœud heureuse car on ne profite pas de systèmes autonomes), n'est pas
source, et lors du trajet, les routeurs l'authentification. effectué via les classes d'adres-
ne s'intéressent qu'aux en-têtes obli- Le protocole IPv6 n'assure pas la ses, mais par une agrégation de
gatoires non chiffrés du datagramme protection contre la non-repudiation, plusieurs réseaux (supernetting).
IPv6 et aux en-têtes d'extension non le rejeu (replay) et notamment contre Ainsi, on obtient un masque uni-
chiffrés. Quant au mode tunnel, tout les attaques de type denial-of-ser- que pour représenter des réseaux
le datagramme est chiffré (intérieur) vice (DoS). multiples en une seule entrée
et il est encapsulé dans un autre data- Le mécanisme NAT élargi dans de table de routage. Une pause
gramme avec l'en-tête non chiffré (da- les protocoles IPv4 n'est pas néces- dans le transfert vers les adresses
tagramme extérieur). Cette méthode saire dans IPv6, bien qu'il existe une destination d'un bloc d'adresses
ne fonctionne qu'entre les routeurs certaine analogie. Il s'agit du fait de agrégées n'entraîne pas la néces-
qui collaborent et pas entre les nœuds supporter la translation des adresses sité de recalculer toute la table de
extrêmes. Les routeurs identifient les IPv4 et IPv6 (RFC 2766). Ce méca- routage.
datagrammes uniquement avec l'en- nisme comprend la façon de traduire
tête extérieur. le format de l'en-tête les deux proto- Ces solutions n'ont pas éliminé les
Les mécanismes de protection coles, c'est pourquoi il a dans son problèmes liés à IPv4 : la NAT en-
peuvent être combinés, ce qui veut nom la notion de translations de pro- traîne les problèmes dus à l'instal-
dire qu'un datagramme IPv6 peut tocoles (PT, Protocol Translation). lation des mécanismes de protection
contenir les deux en-têtes : AH et ESP réseau (IPSec) et ne permet pas la
(Figure 12). Vu que le chiffrement est Passage à IPv6 ? communication peer-to-peer. CIDR
réalisé avant l'authentification, le da- Vu que le fait de migrer vers un nou- seul ne suffit pas pour limiter la taille
tagramme entier est authentifié avec veau protocole nécessitait une modi- des tables de routage.
les parties chiffrées et non chiffrées ; fication complète des adresses IPv4
vu que c'est l'authentification qui est en adresses Ipv6) et un changement Comparaison détaillée d'IPv6
effectuée en premier lieu, l'en-tête coûteux des équipement et des pro- avec IPv4
est insérée dans le datagramme inté- grammes, parallèlement au dévelop- Les différences concernant les ser-
rieur qui est ensuite chiffré dans son pement d'IPv6, on a tenté de mieux vices dans IPv4 et IPv6 sont présen-
entier. Cette solution n'est pas trop aménager l'espace adressable IPv4. tées dans le Tableau 3.

40 hakin9 Nº 4/2006 www.hakin9.org


Sécurité d'IPv6

peuvent facilement endommager le


réseau IPv4.

Importance d'IPv6 dans les


réseaux modernes
Figure 10. L'exemple des en-têtes d'extension du datagramme IPv6 pour les Le Japon et la Chine sont les pays
données TCP où IPv6 règnent non seulement dans
Les différences dans le format tionnels ou bidirectionnels ; pour les réseaux nouvellement construits,
des datagrammes IPv4 et IPv6 sont ce faire les paquets IPv6 sont mais aussi dans les réseaux de l'ad-
présentées dans le Tableau 4 (Fi- encapsulés dans des paquets ministration publique. En Asie, on
gure 8 et 9). IPv4 (RFC 2893), craint souvent que l'espace adressa-
• double implémentation d'Pv4 et ble ne soit pas suffisant, ce qui est un
Passage d'IPv4 à IPv6 IPv6 (dual-stack, voir Figure 14.) danger réel en prenant en considéra-
Si les implémentations complètes – les implémentations de deux tion la vitesse du développement des
d'IPv6 supportent IPSec, la pro- protocoles au sein du même technologies et des réseaux dans
tection d'IPv6 est aussi puissante équipement, cette région. Au Japon, IPv6 devien-
qu'IPv4 avec IPSec. Mais grâce • translation – la communication dra bientôt le protocole de commu-
à l'élimination de la NAT, l'implé- entre l'équipement IPv4 et IPv6 nication dans les réseaux publiques
mentation d'IPSec, surtout dans les est possible. et d'entreprise. L'année passée,
réseaux importants est devenue plus en Chine, le plus grand réseau de
simple. Mais les mécanismes de transition recherche et d'éducation, appelé
ouvrent de nouvelles possibilités CERNET2 (http://www.edu.cn), qui
Mécanismes d'intégration pour les attaques : surtout les tun- relie actuellement environ deux cent
entre IPv4 et IPv6 nels créés automatiquement sont université, a été entièrement basé
L'implémentation d'IPv6 dans les vulnérables à la modification des sur le protocole IPv6.
réseaux implique non seulement le paquets et aux attaques de type En Europe, comme aux États
changement du protocole du réseau DoS, c'est pourquoi ils doivent être Unis, l'utilisation d'IPv6 se limite
principal et de l'adressage, mais protégés par IPSec. Il s'agit du seulement aux réseaux de recher-
aussi d'autres protocoles connexes : même type d'attaques qu'en cas che et universitaires ou aux projets
ICMP, les protocoles routeur et ap- de tunnels utilisés dans IPv4 – il ne futurs. Pourtant, les organisations
plicatifs. L'ICMPv6 contient aussi diffèrent que par la méthode de réa- de l'état des États Unis ont l'intention
les fonctions des protocoles ARP lisation. Les tunnels statiques sont de passer à IPv6 en 2008. Les FAI
(Address Resolution Protocol) et plus sûrs, mais leur extensibilité n'est sont en train d'apprendre IPv6, mais
IGMP (Internet Group Management pas élevé. De plus, les tunnels sont même le support assez pauvre des
Protocol) en version 4. Le protocole capables de contourner les services réseaux basés uniquement sur Ipv6,
RARP a été exclu de l'architecture pare-feux. Ils doivent être mis au les utilisateurs peuvent profiter des
de la nouvelle génération. Les pro- point uniquement entre les systèmes possibilités offertes par la tunneli-
tocoles de transport TCP et UDP autorisés. Dans le cas de la double sation d'IPv6 pour les réseaux IPv4.
fonctionnant dans IPv6 ne diffèrent implémentation (dual stack), il faut Grâce aux tunnels, l'environnement
pas trop des protocoles de transport veiller à assurer la protection de deux IPv6 est accessible pratiquement
existants dans Ipv4. protocoles. Les attaques contre IPv6 pour tous.
Parmi les protocoles applicatifs
(administratifs), le support pour IPv6
est développé par l'extension des
protocoles DNS et FTP. Les protoco-
les applicatifs de l'utilisateur, tels que
HTTP et SMTP, ne changent pas. La
transition d'IPv4 à IPv6 est résolue à
l'aide des mécanismes de base sui-
vants (il existe d'autres méthodes qui
en sont la combinaison) :

• tunnellisation (RFC 3056, voir


la Figure 13.) – pour assurer la
communication entre deux ma-
chines , il est impératif de mettre
en place des tunnels unidirec- Figure 11. Le chiffrement des données dans le datagramme IPv6

www.hakin9.org hakin9 Nº 4/2006 41


Focus

Tableau 3. Différences dans les services d'IPv4 et IPv6


Service solution IP version 4 solution IP version 6

adressage adressage sur 32-bits : monoutilisateur adressage sur 128-bits : monoutilisateur


(unicast), multiutilsateur (multicast), (unicast), multiutilisateur (multicast), inter-
global(broadcast) face dans le groupe (anycast)
autoconfiguration DHCP possible pour les nœuds termi- DHCPv6 (stateful, avec état) ; autoconfigu-
naux ration (stateless, sans état), rénumérotation
des routeurs (router renumbering)
qualité des services bits IP (dans le champ Type of Service), classes d'exploitation, identification des flux
(QoS) changement en bits pour DiffServ ; de données (priority a flow) directement
autre mécanisme IntServ dans le datagramme
extensibilité routage avec CIDR, agrégé d'adresses routage hiérarchique à partir des structures
(bloc d'adresses) hiérarchiques
émission adressage multiutilisateur (multicast) adressage multiutilisateur (multicast)
– à tous les utilisateurs d'un groupe (par adressage à une interface (la plus proche)
exemple vidéoconférences, formations d'un groupe (anycast)
en ligne)
protection IPSec – ajout possible support obligatoire ; une partie du data-
gramme : l'en-tête d'extension (AH, ESP)
technologies mobiles Mobile IP – routage via home agent élimination du tunneling via home agent,
à travers un tiers agent auquel l'utilisa- routage direct
teur est connecté (triangle routing)

En Europe, le retard ne concerne IPv6 (mais pas avec la méthode de tains réseaux terminaux connectés
pas les exigences envers les blocs tunnellisation). à CESNET2 supportent aussi IPv6
d'adresses IPv6 provenant de RIPE Le réseau CESNET2 basé sur outre IPv4 en mode dual stack, alors
NCC, mais il est dû au manque de le protocole IPv6 a été mis en place une connexion au réseau MPLS par
support pour IPv6 dans chaque équi- déjà en 1999, et depuis 2004, le pro- un routeur du côté client est simple.
pement réseau dans le domaine des tocole IPv6 est offert comme service Dans d'autres cas, il est nécessaire
services et des applications. Plu- standard. Au lieu de la tunnellisation d'implémenter les routeurs spéciaux
sieurs applications utilisent actuelle- ordinaire IPv6 dans Ipv4, CESNET2 supportant Ipv6 ; il faut aussi utiliser
ment les adresses IPv4 au lieu des implémentait le mécanisme de la le mécanisme d'après IEEE 802.1Q
noms (hostname), alors le passage transmission des datagrammes pour séparer l'exploitation d'IPv6 de
vers IPv6 nécessite le changement IPv6 via MPLS (MultiProtocol Label celle d'IPv4.
du côté clients et serveurs. Switching) basée sur la technologie Le réseau national pour les
Le premier réseau mis en place 6PE (supporté par Cisco Systems et recherches et l'éducation (NREN)
pour tester IPv6 était 6Bone, créé dé- Juniper) qui consistait à la commuta- CESNET2 fait aussi partie d'un ré-
jà en 1995. En Europe, c'était le pro- tion des paquets IPv4 en IPv6. Cer- seau européen IPv6 GÉANT dans
jet Euro6IX (http://www.euro6ix.org)
qui a permis de mettre en place une
véritable infrastructure d'IPv6. Il était
la base pour construire le premier
réseau européen non commercial
IPv6 – Internet Exchange et 6NET
(http://www.6net.org). Cela a con-
firmé la nécessité de passer à IPv6
pour permettre le développement
d'Internet. Environ trente partenaires
ont participé à la construction du
réseau 6NET, y compris l'entreprise
tchèque CESNET, qui déjà au début
de 2003 a mis au point dans son
pays – dans le cadre de 6NET – le
premier réseau basé sur le protocole Figure 12. Le chiffrement et l'authentification dans IPv6

42 hakin9 Nº 4/2006 www.hakin9.org


Sécurité d'IPv6

Tableau 4. Les différences dans les en-têtes des datagrammes IPv4 et IPv6
Informations dans le datagramme IP version 4 IP version 6
longueur du datagramme variable – spécification de la lon- constante – sans devoir spécifier la
gueur nécessaire longueur dans le datagramme
Longueur du datagramme spécifiée dans le champ longueur n'est pas donnée; seule longueur du
totale paquet après en-tête est donnée – le
champ payload length
type de service champ ToS – actuellement pour champ de priorité et flow label
DSCP
durée de vie Définie dans le champ TTL définie dans le champ hop limit
fragmentation champ d'identification, fragmentation fragmentation uniquement par la
par routeurs source – seule l'en-tête d'extension
protocole supérieur numéro du protocole l'en-tête
somme de contrôle de l'en-tête protection protocole supérieur
possibilités longeur du datagramme l'en-tête

lequel Ipv6 est disponible en stan- pour l'instant en abondance. D'après matériel). Environ 17% craignent les
dard depuis 2003. Son successeur, les analyses effectuées par Juniper problèmes techniques.
GÉANT2 (http://www.geant2.net), Networks sur un groupes de respon- La plupart des applications IPv6
un nouveau réseau européen cons- sables IT et les cadres de l'adminis- se heurtent au problèmes liés aux
truit à des fins éducatives, supporte tration du gouvernement des États coûts que beaucoup d'utilisateurs
IPv6 et IPv4 en mode dual stack. Unis, seulement 7% sur 349 per- ne peuvent pas franchir, d'autant
GÉANT2, dont la première phase a sonnes questionnées considèrent plus s'ils ne sont pas capables de
été déjà terminée, servira pour tester le protocole IPv6 comme important prévoir les bénéfices potentiels. On
les technologies réseaux et les appli- dans leur travail, bien que la gestion a toujours l'impression qu'il n'existe
cations, y compris IPv6. facile des réseaux et l'amélioration pas encore d'application (killer ap-
Il existe un organisme inter- de la qualité de la communication plication) pour laquelle il vaudrait la
national qui surveille et supporte soient dans leur intérêt. De plus, le peine de passer à IPv6. Mais une
l'application du protocole IPv6 dans protocole de la nouvelle génération justification suffisante pour passer au
différents types de réseaux. Il s'ap- peut réduire les coûts de la transmis- nouveau protocole est le nombre im-
pelle IPv6 Forum. En 2003, il a lancé sion multiutilisateur (multicast), vidéo portant d'utilisateurs des téléphones
un programme international de certi- et simplifier le passage vers VoIP. Ce mobiles ou la popularité croissante
fication des composants Ipv6 appelé qui est très important – pour un tiers des réseaux informatiques domesti-
IPv6 Ready Logo Program! (http:// des personnes interrogées par Juni- ques. Et on peut encore ajouter un
www.ipv6ready.org). Le forum a pu- per Networks, la raison pour rester électronique portative, les minisen-
blié aussi une analyse dans laquelle sur IPv4 est... le manque de motiva- seurs et la technologie RFID...
il avertit de l'épuisement potentiel tion pour les changements. Un autre
des adresses IPv4 déjà en 2008 tiers serait pour le changement, mais Plages à problèmes
(pour plus d'informations : Internet – d'après eux – les coûts liés à ce IPv6 est un protocole réseau du fu-
Protocol Journal 9/2005). changement sont importants (sur- tur, mais sa sécurité n'est pas encore
Dans les réseaux scientifiques tout ceux concernant l'échange du complète. La politique de sécurité,
et universitaires, IPv6 est soumis
aux tests permanents, mais dans les
autres, il est utilisé plutôt par obliga-
tion car les personnes intéressées
par ce protocole ne sont pas nom-
breuses. Il y a un véritable abîme
entre les concepteurs et les implé-
mentateurs, et la vulgarisation de ce
protocole et son utilisation dans la
pratique dépendent justement de ces
derniers. Quand le premier groupe
déclare la nécessité d'utiliser IPv6,
le second le voit autrement : IPv4 est
encore très bon et les adresses sont Figure 13. La tunnellisation d'IPv6 à IPv4

www.hakin9.org hakin9 Nº 4/2006 43


Focus

automatique est aussi difficile. De


l'autre côté, IPv6 signifie une com-
plexité plus élevée de l'adressage
et de la configuration. De nouveaux
éléments IPv6, de même que ses
applications immatures, sont plus
vulnérables aux failles de sécurité.
Il faut consacrer assez de temps
au passage d'IPv4 à Ipv6 car la mi-
gration ne sera pas effectuée sur-le-
champs – les deux environnements
devront coexister encore longtemps.
Ce sont justement les mécanismes
transitoires – les tunnels, une double
Figure 14. Dual stack implémentation sur les équipements
– qui peuvent poser des problèmes
les processus et les moyens doi- IPSec est obligatoire pour IPv6, en ce qui concerne la sécurité. Outre
vent être ajustés à IPv6. Il ne faut mais ne résout pas le problème de ces obstacles, la protection des
pas oublier d'installer un pare-feu protection réseau. Les autres pro- systèmes terminaux, la protection
avec un support approprié – cela priétés d'IPv6 supportent aussi la des applications et l'audit resteront
est parfois problématique car les protection plus avancée par rapport toujours une question très impor-
produits présents actuellement sur le à Ipv4 : de grands sous-réseaux tante. l
marché ne prennent pas en compte rendent plus difficiles les attaques
les besoins typiques pour IPv6. Il en à l'aide des vers, et le scannage
est de même s'il s'agit de la stabilité
et du support complet de tous les
éléments d'IPv6 dans les routeurs et
Littérature
• Protection de la communication distante, Computer Press, ISBN 8025107914
les systèmes d'exploitation. • TCP/IP w skrócie, Kopp, ISBN 8072322362
Le pare-feu dans les réseaux IPv6 • Routing and Switching: Time of Convergence?, Addison Wesley Longman Limited
change son caractère, ce qui est dû ISBN 0201398613
aux modifications dans le modèle
réseau général. Sa position dans le
réseau ou dans le système final (pare-
feu personnel) change et de cela Sur Internet
– change la gestion (administrateur ou • http://www.ins.com/downloads/surveys/sv_ipv6_1205.pdf
– INS IT Industry Survey: Ipv6
utilisateur) car il n'existe pas de limite
• http://hexateuch.6net.org/thebook/ – Ipv6Deployment Guide (sous le patronage
que l'on doive défendre. Les systèmes
de CESNET dans le cadre du projet 6NET)
terminaux doivent être protégés avec
• http://www.cisco.com/web/about/ac123/ac147/archived_issues/ipj _8-3/ipv4.html
plus de précaution : accès par mot de – A Pragmatic Report on IPv4 Address Space Consumption, Tony Hain, Internet
passe, protection anti-virus, cryptage Protocol Journal Vol. 8, No. 3
des données et autres. • http://www.SANS.org – SANS Institute
Si les réalisateurs des réseaux • http://www.ietf.org/rfc.html – RFC
pouvaient déjà offrir IPv6, proba- • http://www.ripe.net/rs/ipv6/stats/ – RIPE
blement ils n'entreprendraient pas • http://www.ipv6forum.org – IPv6 Forum
des actions spéciales pour un petit • http://www.ipv6tf.org – IPv6 Task Force
groupe de clients. NTT America en • http://www.ipv6style.com/en/ – IPv6 Style
• http://www.ipv6.org/ – IPv6 Information Page
est une exception notable, car en
• http://www.ist-ipv6.org/index.php – IPv6 Cluster
précurseur d'IPv6 aux États Unis, il
• http://www.6bone.net – 6Bone
offre depuis quelque temps la pro-
• http://www.6ren.net – 6REN (IPv6 Research and Education Networks)
tection d'IPv6 pour le même prix que • http://www.6net.org/ – 6NET
le pare-feu pour IPv4. • http://www.euro6ix.org/ – Euro6IX
Malheureusement, même dans • http://www.euro6ix.org/ – 6IX (IPv6 Internet Exchanges)
le cas de Linux, il n'existe pas as- • http://www.6qm.org/ – 6QM (IPv6 QoS Measurement)
sez de scripts qui pourraient aider • http://www.seinit.org – SEINIT (Security Expert Initiative)
à créer des pare-feux appropriés. • http://www.geant2.net – GÉANT2
C'est pourquoi, les attaques sur les • http://www.cesnet.cz – CESNET
réseaux IPv6 ne sont pas rares.

44 hakin9 Nº 4/2006 www.hakin9.org


Analyse du trafic réseau

Fiche technique

Bartosz Przybylski

Degré de difficulté

Si vous administrez un réseau quelconque, vous pouvez être sûrs


que, tôt ou tard, il deviendra un but d' une attaque. Mais vous êtes
capables de l'empêcher. Plusieurs possibilités se présentent : en
commençant par la désactivation des services, par les pare-feux
jusqu'aux IDS. Mais il se peut que la question la plus importante
soit le fait de savoir distinguer les bons paquets des mauvais.

P
cap est une des libraires les plus utili- Tcpdump
sées servant à chiffrer le trafic réseau. Tcpdump est encore un très bon sniffeur. Ce
Elle offre un accès très détaillé aux sont ses auteurs qui ont conçu la bibliothè-
couches ISO/OSI spécifiques. De plus, elle est que Pcap. Le programme possède quelques
disponible sur plusieurs systèmes d'exploitation front-end non officiels, mais il a été conçu
(pour plus d'informations, lisez l'article de Kon- spécialement pour être utilisé directement
rad Malewski Plein contrôle ou accès de bas à partir de la ligne de commande (shell) du
niveau au réseau du numéro 5/2005 de hakin9) système.
et dans plusieurs langages de programmation.
Notre armement
Marteau, tourne-vis, sniffeur Voici la liste des programmes et scripts que
ou outils pour l'analyse nous allons utiliser pour l'analyse du trafic
Si nous voulons envisager l'analyse réseau, il réseau :
est impossible de nous débrouiller sans outils
qui pourrait nous faciliter la tâche. Commen-
çons par les sniffeurs. Cet article explique...
• Comment analyser le trafic réseau.
Ethereal • Comment détecter les tentatives d'attaque
Ethereal est l'un des outils le plus connu servant grâce à l'analyse.
à analyser les réseaux. Il possède beaucoup • Comment bloquer ces tentatives.
d'options très utiles pour l'analyse. Les deux
caractéristiques dominantes de ce projets sont : Ce qu'il faut savoir...
l'enregistrement du trafic réseau sous différents
formats et l'interface graphique. Bien que nous • Les notions de base du fonctionnent des ré-
n'avions pas besoin directement de la seconde seaux (ISO/OSI).
caractéristique pour l'analyse, elle est un complé- • Utiliser le shell de Linux.
ment très agréable et facilite le travail.

46 hakin9 Nº 4/2006 www.hakin9.org


Analyse du trafic réseau

du trafic intercepté. Pour pouvoir ef-


Listing 1. La vérification d'authenticité de deux fichiers (aut.sh) fectuer l'analyse, il faut collecter des
#!/bin/sh
informations de base concernant
if [ -z $2 ]; then le trafic intercepté. Pour cela, nous
echo "Usage: $0 authentic_file file_for_check"; allons utiliser le programme capinfo
exit qui est un composant du paquet
if
ethereal.
md5sum $1 | cut -c1-32 > /tmp/f1.cksum
Consultons le Listing 2 pour sa-
md5sum $2 | cut -c1-32 > /tmp/f2.cksum voir quels types d'informations nous
sha1sum $1 | cut -c1-40 >> /tmp/f1.cksum pouvons obtenir grâce à capinfo.
sha1sum $2 | cut -c1-40 >> /tmp/f2.cksum La première ligne (File name)
n'est pas importante, elle contient
res=`/usr/bin/cmp /tmp/f1.cksum /tmp/f2.cksum`
le nom du fichier. La deuxième con-
if [ -z "$res" ]; then tient l'information sur le format du
echo "File is authentic" fichier. Dans ce cas, c'est un fichier
else au format pcap. Un autre système
echo "File is not authentic"
d'enregistrement du trafic réseau
fi
très populaire est Microsoft Network
rm /tmp/f1.cksum /tmp/f2.cksum Monitor x.x, x.x étant la version de
la bibliothèque. La version la plus
utilisée est la version 2.x (bien sûr,
Listing 2. La sortie du programme capinfo ce ne sont pas seulement les formats
d'enregistrement des fichiers de tra-
$ capinfo traffic.cap fic réseau).
1 File name: traffic.cap
La ligne suivante (3) affiche le
2 File type: libpcap (tcpdump, Ethereal, etc.)
3 Number of packets: 1194
nombre de paquets qui ont passés
4 File size: 93506 bytes à travers notre réseau lors du snif-
5 Data size: 213308 bytes fing. Ensuite vient (4) la taille du
6 Capture duration: 342.141581 seconds fichier et (5) la taille des données du
7 Start time: Thu Jun 23 14:55:18 2005
trafic enregistré. Après, nous avons
8 End time: Thu Jun 23 15:01:01 2005
9 Data rate: 623.45 bytes/s
respectivement : (6) la durée exacte
10 Data rate: 4987.60 bits/s de l'interception, (7) la date du début
11 Average packet size: 178.65 bytes et (8) de la fin du sniffing, (9) le flux
de données moyen en octets/s et
• capinfos (une partie du paquet affecter au fichier et au répertoire les (10) en bits/s, par contre la dernière
ethereal), droits en lecture seule (read-only). ligne (11) montre la taille moyenne du
• tcpdstat, Pour ce faire, tapez : paquet.
• zonk.pl (un simple script pour À cette étape de l'analyse, nous
les administrateurs des réseaux mkdir ~/analyze pouvons déjà tirer certaines con-
– écrit par l'auteur du présent cp ./traffic.cap ~/analyze clusions concernant le trafic non
article), chmod 444 ~/analyze/traffic.cap autorisé éventuel (il s'agit avant tout
• quelques propres scripts. ~/analyze/ de grandes entreprises). Si dans un
petit lap de temps (la valeur Capture
Garantie d'authenticité Si la copie est sûre, il faut encore duration n'est pas élevée), nous ob-
Si les résultats de l'analyse effectuée prouver son authenticité. C'est le servons un nombre important de pa-
doivent nous servir de pièce de con- script du Listing 1 qui nous aidera quets ou la taille moyenne du paquet
viction contre l'intrus, il est important à le faire. est grande, nous pouvons soupçon-
de prouver l'authenticité du fichier Ce script peut s'avérer utile pour ner que les programmes supportant
avec le trafic réseau enregistré et démontrer l'authenticité du trafic le téléchargement via Internet sont
du fichier sur lequel basait notre intercepté. Il est aussi conseillé de utilisés dans notre réseau. Pourtant,
analyse. garder les sommes de contrôle pour ce n'est pas toujours vrai car un tel
Il est important que le fichier le fichier original, ce qui sera encore trafic peut être dû au téléchargement
originale servant de pièce de convic- plus convaincant. des mises à jour des programmes.
tion principal ait la date de création Le pas suivant consiste à la re-
la plus proche de l'intrusion. Pour Analyse réseau connaissance plus précise du trafic,
l'assurer, il faut copier le fichier avec Passons maintenant à notre tâche cette fois-ci au niveau des paquets.
le trafic dans un répertoire à part et principale, c'est-à-dire à l'analyse Ce qui nous intéresse, ce sont le

www.hakin9.org hakin9 Nº 4/2006 47


Fiche technique

type de protocole et la taille du pa-


quet. Nous prendrons également Listing 3. La sortie du programme tcpdstat
connaissance plus précisément de DumpFile: traffic.cap
la caractéristique du chargement de FileSize: 0.09MB
la connexion. Pour cela, nous nous Id: 200506231455
servirons du programme de Dave StartTime: Thu Jun 23 14:55:18 2005
EndTime: Thu Jun 23 15:01:01 2005
Dittrich tcpdstat, avec modifications.
TotalTime: 342.14 seconds
Le Listing 3 nous servira de base. TotalCapSize: 0.07MB CapLen: 68 bytes
Nous pouvons lire les données # of packets: 1194 (208.31KB)
de base identiques à celles obtenues AvgRate: 5.08Kbps stddev:30.22K
auparavant au moyen du programme ### IP flow (unique src/dst pair) Information ###
# of flows: 66 (avg. 18.09 pkts/flow)
capinfos. Mais cette fois-ci, nous
Top 10 big flow size (bytes/total in %):
disposons du plus grand nombre 20.0% 16.3% 15.7% 12.9% 4.8% 4.0% 2.9% 1.3% 1.3% 1.2%
d'informations. Il s'agit ici du nombre ### IP address Information ###
de paquets dans une plage de tailles # of IPv4 addresses: 68
donnée, et des informations plus pré- Top 10 bandwidth usage (bytes/total in %):
69.9% 21.5% 18.5% 17.5% 16.9% 13.9% 5.4% 5.2% 4.5% 4.3%
cises sur les protocoles du trafic (ces
# of IPv6 addresses: 4
informations sont disponibles sous le Top 10 bandwidth usage (bytes/total in %):
titre Protocol Breakdown). Les lignes 81.5% 59.2% 40.8% 18.5%
successives ont été enregistrées au ### Packet Size Distribution (including MAC headers) ###
format suivant : <<<<
[ 32- 63]: 857
[ 64- 127]: 104
[niveau du protocole] protocole
[ 128- 255]: 79
nombre_de_paquets (pourcentage_de_tous_ [ 256- 511]: 61
les_paquets) nombre_d'octets [ 512- 1023]: 14
pourcentage_de_tout) nombre_moyen_ [ 1024- 2047]: 79
### Protocol Breakdown ###
d'octets_par_paquet
<<<<
protocol packets bytes bytes/pkt
Grâce à ces informations, nous ------------------------------------------------
pouvons vérifier quels paquets des [0] total 1194 (100.00%) 213308 (100.00%) 178.65
familles de protocoles données [1] ip 988 ( 82.75%) 198381 ( 93.00%) 200.79
[2] tcp 884 ( 74.04%) 180408 ( 84.58%) 204.08
traversent notre réseau. Il faut faire
[3] http(s) 219 ( 18.34%) 124825 ( 58.52%) 569.98
attention à ce fait car à partir des [3] other 665 ( 55.70%) 55583 ( 26.06%) 83.58
protocoles présents, il est possible [2] udp 94 ( 7.87%) 17247 ( 8.09%) 183.48
de déduire si notre réseau n'est [3] dns 9 ( 0.75%) 2752 ( 1.29%) 305.78
pas le but d'une analyse distante ou [3] other 85 ( 7.12%) 14495 ( 6.80%) 170.53
[2] icmp 7 ( 0.59%) 546 ( 0.26%) 78.00
d'une attaque.
[2] igmp 3 ( 0.25%) 180 ( 0.08%) 60.00
Il faut faire attention au grand [1] ip6 5 ( 0.42%) 422 ( 0.20%) 84.40
nombre de paquets TCP. À moins [2] icmp6 5 ( 0.42%) 422 ( 0.20%) 84.40
que les informations sur les pa-
quets HTTP ne suscitent pas notre
inquiétude (à condition que ce ne sont indispensables seulement pour rifier si aucune adresse n'appartient
soit pas une exploitation abusive de la création des données statistiques. à bogone space.
nos applications PHP), nous devons Maintenant, quand nous avons Si c'est le cas, cela veut dire
réfléchir ce qui peut être la source des informations sur les paquets et les qu'une attaque DDoS non réussie a
d'un tel trafic des autres paquets protocoles, il faudrait savoir plus sur eu lieu dans notre réseau. Dans ce
TCP (other). C'est un trafic défini les expéditeurs et les destinataires des cas, il faudrait utiliser (pour quelques
dans pcap à partir de la couche ré- paquets. Pour cela, nous disposons jours) le script qui bloquera dans le
seau, mais il n'est pas défini suivant d'un simple script du Listing 4. pare-feu les adresses bogone (ce
les ports. Le plus souvent, c'est un Ce script affiche à la sortie les script est disponible sur le site http:
trafic output, mais pas toujours. Cela adresses IP des paquets traversant //completewhois.com/).
peut être également une tentative de notre station (il faut se rendre compte Une petite modification dans
scannage de notre système. que ce ne sont que les adresses searchip peut nous fournir des in-
Une autre information transmise sources). À partir de ces informa- formations sur les adresses MAC
par tcpdstat est, entre autres, dix tions, nous pouvons préparer les des interfaces à partir desquelles
chargements du réseaux les plus règles de refus ou d'acception d'une proviennent les paquets analysés.
importants. Mais ces informations IP donnée pour le pare-feu. Il faut vé- Mais cela n'est pas nécessaire car

48 hakin9 Nº 4/2006 www.hakin9.org


Analyse du trafic réseau

nous analysons le trafic provenant


d'Internet et pas celui provenant du Listing 4. Le script servant à rechercher différentes ip du fichier pcap
réseau local. (searchip.pl)
S'il s'agit des attaques DoS et #!/usr/bin/perl
DDoS, c'est un sujet très vaste et
ils exigent un article à part. Dans le use Switch;
numéro 5/2004 du hakin9, Andrzej use Net::Pcap;

Nowak et Tomasz Potęga présentent


my $err;
comment se protéger contre les atta- my $rep;
ques de ce type. my $curr_ip;
Il faut ajouter que le blocage des my @ip_table = ();
attaques DDoS qui ont déjà eues
sub connread;
lieu n'a pas de sens car les intrus uti-
liseront sans doute une autre plage if ($ARGV[0] eq "")
d'adresses. {
print "Usage: ./search_ip <filename/filepath>";
HTTP, FTP – analyse exit;
des informations }

Posons-nous des questions sui- if($pcap = Net::Pcap::open_offline($ARGV[0], \$err)) # ouvrez le fichier


vantes : sommes-nous capables {
d'empêcher une analyse détaillée de Net::Pcap::loop($pcap, -1, \&connread, ''); # transférez chaque paquet dans
notre serveur Web et de prévenir les # la fonction connread
}
conséquences de cette opération ?
else
sommes-nous capables de prévenir {
l'utilisation de notre serveur ftp pour print "Error\n";
le scannage des ports ? La réponse exit;
est oui, mais ce n'est pas si simple }

que ça. Si nous le faisons manuel-


print "Founded different IP:\n";
lement, cela prend beaucoup de foreach $ip_table(@ip_table)
temps. Effectuons un fragment d'une {
telle analyse pour voir comment elle print $ip_table."\n";
est fastidieuse. }

Ouvrons le fichier avec le trafic


sub connread # fonction principale
réseau enregistré à l'aide du paquet {
ethereal (nous l'utilisons pour son my($data, $header, $packet) = @_;
interface graphique). Nous choisis- my $packet = unpack('H*', $packet);
sons l'un des paquets commençant $rep=0;
# recherchez dans le paquet ip
le téléchargement des documents
if ($packet =~ m/^\w{44}(..)(..)(\w{4}|\w{8})(..)(..)(..)(..)\
à partir du Web (le paquet dans son w{8}(....)(....)\w+(.*)/)
contenu doit posséder la phrase {
GET ou HEAD). # enregistrez dans la variable et comparez aux ajoutés
L'exemple de ce paquet est $curr_ip = hex($4).".".hex($5).".".hex($6).".".hex($7);
foreach $ip_table(@ip_table)
présenté sur la Figure 1. On voit
{
if($ip_table eq $curr_ip)
{
Bogon space $rep = 1;
En bref, bogon space est une zone }
d'adressage dans Internet à laquelle }
aucun possesseur n'a été affecté. Les if ($rep == 0) { # si ce ip n'existe pas encore, ajoutez-le au tableau
paquets provenant de ces adresses push(@ip_table, $curr_ip);
}
doivent être considérés comme incor-
}
rects et éliminés. La liste de bogon cou-
}
rante est disponible à l'adresse http://
completewhois.com/.
Vous trouverez les informations que chaque bonne connexion pos- version du navigateur (User-agent),
plus détaillées sur bogon space et bo- sède des informations transmises le type de fichiers accepté (Accept),
gon packets dans hakin9 n° 5/2005. automatiquement par le navigateur. le codage (Accept-Encoding), la
Ce sont, par exemple : le type et la langue préférée (Accept-Language).

www.hakin9.org hakin9 Nº 4/2006 49


Fiche technique

De plus, nous pouvons obtenir les


informations si la connexion doit être Listing 5. Script fhelp.pl
maintenue et pour quel temps et l'ID #!/usr/bin/perl
du témoin de connexion (cookie). use Switch;
Pratiquement tous les intrus, use Net::Pcap;
pendant l'analyse des informations
my $dev = "eth0"; # interface d'écoute
fournies par le serveur (ses pages
my $pcap;
d'ouverture) ne fournissent pas les my $err;
données ajoutées par défaut par le my $packet;
navigateur (car le serveur élimine les
connexions qui restent inactives pen- sub connread;

dant quelque temps). Nous pouvons


if ($ARGV[0] eq "-h") {
exploiter ce fait. print "Usage: ./fhelp.pl <filename>\n\r If no filename given will start live
Si, lors de la recherche du trafic, capture\n";
nous retrouvons les en-têtes incom- exit;
}
plètes, nous pouvons soupçonner
# vérifiez s'il y a le nom du fichier, si oui, ouvrez-le,
que notre serveur a été l'objet d'une # dans le cas contraire, ouvrez “live capture”
analyse déjà terminée et que nous if ($ARGV[0] == "") {
devons nous attendre à une attaque. if($pcap = Net::Pcap::open_live($dev, 2000, 1, 1000, \$err)) {
Malheureusement, ou heureuse- Net::Pcap::loop($pcap, -1, \&connread, '');
}
ment, ce n'est pas toujours vrai car
else {
les navigateurs texte (par exemple print "Error\n$err\n";
Lynx, links) ne laissent pas de car- exit;
tes de visite. Une erreur est donc }}
bien possible. Mais ils laissent les else {
if($pcap = Net::Pcap::open_offline($ARGV[0], \$err)) {
informations sur cookies, ce qui les
Net::Pcap::loop($pcap, -1, \&connread, '');
distingue des intrus examinant les }
pages d'accueil du serveur. else {
Occupons-nous maintenant du print "Error\n$err\n";
exit;
FTP. Si nous donnons accès à un
}}
serveur ftp anonyme, il peut être
utilisé pour le scannage les ports
sur un serveur quelconque. Cela sub connread {
est possible grâce à la commande my ($data, $header, $packet) = @_; $get = "n";
my $packet = unpack('H*', $packet); # chargez et décompactez le paquet
PORT. Bien sûr, nous pouvons le
# recherchez les connexions avec les ports 80 et 21
désactiver, mais ainsi la réalisation if ($packet =~ m/^\w{44}(..)(06)(\w{4}|\w{8})(..)(..)(..)(..)\w{8}(....)(005
des connexions actives avec notre 0|0015)(.*)/) {
serveur ne sera plus possible. Mais $curr_ip = sprintf("%d.%d.%d.%d", hex($4), hex($5), hex($6), hex($7));
si, pour une raison ou une autre, $traffic = sprintf("%s",$10);

nous avons besoin des connexions


# recherchez les paquets http incomplets
actives, il est conseillé d'effectuer if ($traffic =~ /(474554|48454144)/) {
de temps en temps une analyse du if (!($traffic =~ m/^(.*)\w(20485454502f312e(31|30)0d0a)(.*)(557365722d416765
trafic ftp sur notre serveur. De même 6e743a)(.*)/)) {
qu'en cas de http, nous pourrions print "incomplete http header from $curr_ip\n";
print "do you want to block ip $curr_ip on iptables? [y/N]: ";
rechercher le trafic pendant des
$get = <>;
heures et bloquer les adresses IP if (($get eq "y")|($get eq "Y")) {
spécifiques sur le pare-feu, mais system("iptables -A INPUT -p tcp -s $curr_ip -j DROP");
nous tenons beaucoup à l'efficacité. }
}}
Le script fhelp.pl (voir le Listing 5)
# recherchez les commandes port dans les paquets ftp
nous vient à l'aide. if ($traffic =~ /(706f7274|504f5254)/) {
Ce simple script recherche le print "PORT command used in ftp connection from $curr_ip\n";
fichier donné au format pcap, ou print "do you want to block ip $curr_ip on iptables? [y/N]: ";
travaille directement en recherchant $get = <>;
if (($get eq "y")|($get eq "Y")) {
dans les paquets http les cas où il y
system("iptables -A INPUT -p tcp -s $curr_ip -j DROP");
n'a pas des informations sur le navi- }}
gateur du client. Il analyse également }}
le trafic ftp à la recherche de la com-

50 hakin9 Nº 4/2006 www.hakin9.org


Analyse du trafic réseau

mande PORT. S'il retrouve ce type à rechercher et à éliminer l'utilisa-


de trafic, il demande à l'utilisateur s'il tion abusive des ressources par les
veut bloquer une adresse IP appro- employés au sein d'une entreprise.
priée dans le pare-feu (il ne coopère Zonk, et d'autres scripts mentionnés
qu'avec iptables). Il est évident que le dans l'article, sont disponibles sur la
script doit être démarré en root. page de l'auteur (Encadré Sur Inter-
net). Vous y trouverez aussi d'autres
SSL – le talon d'Achille outils indispensables pour les admi-
Chaque personne qui effectue des nistrateurs.
analyses réseau, tôt ou tard, se
heurte à un trafic chiffré. C'est le Pourquoi tout cela ?
principal problème de la plupart des Tenant compte des limitations pré-
analyses. sentées dans l'article, nous pouvons
Il est possible de déchiffrer ce nous poser la question s'il vaut la
trafic, mais la pratique montre que peine d'effectuer l'analyse du trafic
cela ne sert à rien. Premièrement, dans notre réseau ?
dans 999 cas sur 1000 c'est un trafic Certainement, elle n'est pas le
autorisé. Deuxièmement, le déchif- remède à tous nos problèmes, mais
frage des paquets prend beaucoup les informations obtenues à la suite
de temps car il faut trouver la clé de d'une bonne et due analyse sont
séquence pour chaque transmission. très précieuses. Ainsi, nous sommes
Si nous réfléchissons un peu plus capables de détecter les attaques
à la question de ce type de transmis- brute force, DoS et DDoS, le trafic
sion, nous pouvons constater que p2p et im et l'utilisation abusive des
la seule solution raisonnable est de connexions http.
permettre les connexions chiffrées Bien sûr, le plus difficile détermi-
uniquement aux hôtes de confiance. ner ce bon et dû temps quand il faut
Hélas, cette solution n'est pas bonne effectuer l'analyse. C'est pourquoi,
si notre serveur doit être accessible il est recommandé de l'effectuer ré-
au public et offrir aux clients des ser- gulièrement et utiliser les scripts qui
vices deconnexions chiffrées. seront capables de détecter automa-
tiquement les anomalies importan-
Employés paresseux tes. N'oubliez pas que l'élément le
Maintenant, il est temps de parler plus important de l'analyse effectuée
du script écrit en Perl – zonk.pl (par n'est pas la collecte des données,
l'auteur de cet article). mais l'interprétation appropriée du
Cette simple application basée trafic intercepté.
sur les expressions conditionnelles Il faut aussi être conscient
et la bibliothèque pcap recherche qu'après l'exploitation de tous les
dans le trafic réseau courant de sim- scripts et outils, il faudrait consulter
ples abus de la connexion (le trafic de nouveau tout le trafic pour dé-
p2p, im, irc). Pour cela, elle utilise tecter les anomalies plus détaillées,
les numéros des ports des serveurs mais chaque analyseur réseau de-
exploités par les transmissions in- vrait s'en rendre compte. l
terdites. Ce script peut s'avérer fort
utile pour les administrateurs des
réseaux d'entreprises et leurs aider

Sur Internet
• http://www.ethereal.com/ – le site du projet du sniffeur ethereal,
• http://www.tcpdump.org/ – le site de libpcap et tcpdump,
• http://www.netfilter.org/ – le site du projet iptables.
• ftp://tracer.csl.sony.co.jp/pub/mawi/tools/ – à partir de ce site, vous pouvez télé-
charger tcpdstat
• http://aqu.banda.pl/scripts/network_analyzing/ – à partir de ce site, vous pouvez
télécharger zonk.pl

www.hakin9.org hakin9 Nº 4/2006 51


Construction d'un
désassembleur de taille
Pratique
orienté Hooking
Rubén Santamarta

Degré de difficulté

Jour après jour, les chercheurs des programmes malveillants, les


analystes juridiques ou les administrateurs doivent faire face aux
dangers menaçant la sécurité des systèmes informatiques. Leur
objectif est d'expliquer les intrusions non autorisées, de protéger
les utilisateurs contre les virus ou de protéger les systèmes
contre différents dangers.

P
our atteindre ces buts, une analyse très De cela, nous prendre des mesures suffi-
détaillée du fonctionnement des logiciels santes pour résoudre chaque type de problè-
malveillants est nécessaire ; c'est l'ingé- mes auxquels nous pouvons nous heurter.
nierie inverse qui entre ici en jeu.Les concepteurs
des programmes malveillants (virus, troyens, Hooking
rootkits) essaient de rendre cette analyse extrê- Comme on peut remarquer, il existe beaucoup
mement difficile, par exemple à l'aide des techni- d'astuces qui ont pour but de rendre difficile
ques empêchant le déboguage, des techniques l'utilisation du débogueur (aussi bien au niveau
polymorphiques, des techniques stealth ou des Ring0 que Ring3) qui est un principal outil dans
programmes pour la compression des fichiers ; l'ingénierie inverse. De cela, il est nécessaire
ces derniers non seulement réduisent la taille des
fichiers exécutables, mais aussi ajoute une cou-
che protectrice plus ou moins complexe. Cet article explique...
Dans ces situations, c'est le temps qui
• Comment utiliser hooking pour l'analyse des
compte avant tout : grâce à une analyse longue
programmes malveillants (malware).
et précise, tôt ou tard, nous atteindrons notre
• Comment exploiter Structure Exception Han-
but et pourrons connaître tous les détails du dling pour la création d'un désassembleur de
danger. Hélas, il arrive que nous n'avons pas taille.
assez de temps et dans ce cas il faut optimiser
les opérations liées aux procédures de l'ana-
Ce qu'il faut savoir...
lyse. Imaginez un ver exploitant une erreur
inconnue d'un programme qui lui permet de • Connaître Assembleur x86 y C.
se répandre via Internet. Le temps investi dans • Connaître Win32 Api et Structure Exception
l'analyse et la compréhension du fonctionne- Handling.
ment de ce ver marque la limite entre la vrai • Avoir les notions de base des techniques utili-
catastrophe des utilisateurs et le danger réduit sées par les logiciels malveillants et les virus.
et neutralisé.

52 hakin9 Nº 4/2006 www.hakin9.org


Reconnaître l'adversaire

d'élaborer une méthode qui, dans


Techniques utilisées contre désassembleurs les conditions appropriées, permet-
et débogueurs trait d'influencer le comportement
Pendant des années, les concepteurs des programmes malveillants, les auteurs du fichier exécutable analysé et le
des virus ou même les développeurs des programmes commerciaux, dotaient modifier.
leur programmes des méthodes anti-debug et anti-disasm. La plupart d'elles sont L'une des techniques les plus
destinées à détecter si un programme donné est suivi par un débogueur. Si c'est utilisées servant à atteindre ce but
le cas, le programme peut entreprendre différentes actions, en commençant par est hooking.
l'arrêt immédiat du démarrage et en terminant par le redémarrage de l'ordinateur On peut distinguer différentes
ou même par des opérations plus agressive, ce qui, heureusement, est peu po- techniques d'accrochage en fonction
pulaire.
de l'endroit où il a lieu. Chaque type
• Une très vielle astuce utilisée pour détecter la présence de SoftIce, le débogueur est destiné à d'autres applications.
Ring0 le plus connu, employé dans le monde entier dans l'ingénierie inverse, Ainsi, on obtient les types suivants :
était une tentative d'accéder aux mécanismes créés par l'un de ses pilotes -
NtIce. • Inline Hooking,
• L'instruction RDTSC dans l'assembleur x86 : un mnémonique de Read • Import Address Table hooking,
Time−Stamp Counter. Cette instruction stocke dans EDX:EAX (64 bits) la valeur • System Service Table hooking
timestamp du processeur. Imaginons que RDTSC est lancée au début du bloc (Ring0),
du code, et la valeur retournée est stockée. À la fin de ce bloc du code, nous • Interrupt Descriptor Table hoo-
lançons encore une fois RDTSC et soustrayons la valeur obtenue de la valeur
king (Ring0),
stockée. Quand le programme est démarré de façon ordinaire, le résultat de
• IRP hooking (Ring0),
cette opération aura les valeurs rationnelles, en tenant bien sûr compte de la
vitesse et de l'utilisation du processeur. Mais si nous nettoyons ce bloc du code,
• Filter drivers (NDIS,IFS...Ring0).
l'incrément de timestamp entre deux lecture sera très élevé par rapport à celui
trouvé dans le débogueur. Dans notre cas, nous allons utiliser
• La manipulation des interruptions pour modifier le flux du code. Une possibilité la méthode Inline Hooking. Nous
très puissante de l'architecture Win32 est la fonction Structure Exception Handling l'employons parce qu'elle permet
(SEH) qui permet de déterminer les schémas de la fonction callback pour contrôler Nous utilisons cette technique parce
les exceptions. Vu que les débogueurs s'occupent de toutes les exceptions ayant qu'elle permet de retoucher la fonc-
lieu lors du fonctionnement du programme, les procédures définies par le pro- tion à intercepter quand elle est char-
grammeur pour la gestion des exceptions ne seront jamais utilisées. Admettons gée dans la mémoire. Ainsi, nous ne
que nous avons basé le flux de notre programme sur la procédure de ce type.
devons pas nous soucier de quel en-
Si après une génération expresse de l'exception (par exemple, au moyen de xor
droit proviennent les appels ou com-
eax,eax, et ensuite mov [eax],eax ), nous ne parvenons pas à l'espace du code
admis, nous sommes probablement sous la surveillance d'un débogueur.
bien de fois ils ont eu lieu, mais nous
• Autres astuces, moins élaborées, basés sur les propriétés spécifiques de chaque attaquons directement le noyau. Un
débogueur : les tentatives de retrouver certains types ou titres de fenêtres enregis- appel quelconque de la fonction sera
trés par le programme ou bien des clés dans le registre de Windows qui pourraient intercepté par notre crochet.
le dévoiler.
Interception et modification
du flux de code
Admettons que nous voulons inter-
cepter tous les appels API Close-
Handle qui se produisent lors du
démarrage du programme. L'API se
trouve dans kernel32.dll, donnons
un coup d'œil sur ses premières
instructions :

01 8BFF mov edi,edi


02 55 push ebp
03 8BEC mov ebp,esp
04 64A118000000 mov eax,fs:[00000018]
05 8B4830 mov ecx,[eax][30]
06 8B4508 mov eax,[ebp][08]

Ce bloc du code présente les pre-


miers octets du point d'entrée Clo-
Figure 1. Le schéma de base d'Inline Hooking seHandle, ce qui signifie que chaque

www.hakin9.org hakin9 Nº 4/2006 53


Pratique

Tableau 1. Les données disponibles pour la gestion des exceptions, si celle- C'est pourquoi, il faut développer
ci est active une technique le moins agressive
T Données envers le code source qui permet-
trait à la fonction accrochée de fonc-
ESP+4 Pointeur à la structure
tionner normalement tout en restant
EXCEPTION_RECORD
constamment sous contrôle. Cette
ESP+8 Pointeur à la structure ERR technique est appelée Detour (elle
ESP+C Pointeur à la structure a été présenté par Galen Hunt et
CONTEXT_RECORD Doug Brubacher des laboratoires
Microsoft)
appel de la fonction démarrera sans à détecter parce qu'il est suspect si le
doute le code précédent. En nous point d'entrée d'une fonction système Detour
servant du schéma d'Inline Hooking, contient le saut inconditionnel vers une Par rapport à Inline hooking, la
nous remplacerons ces premières autre adresse dans la mémoire. Nous technique Detour implémente deux
instructions par notre propre crochet pouvons utiliser une autre option étant nouvelles conceptions : la fonction
qui modifiera le flux normal de la la combinaison de PUSH + RET . Detour et la fonction Trampoline.
fonction dans la direction du filtre.
01 68EFBEADDE push 0DEADBEEF • Fonction Detour doit se compo-
Différentes possibilités 02 C3 retn ser d'une partie dans laquelle
pour le même objectif 03 A118000000 mov eax,[00000018] sont réalisées les premières
Il existe différentes méthodes de chan- opérations sur les données ob-
gement du flux dans la direction du Dans ce cas, nous remplaçons les tenues, ensuite vient l'appel à la
notre code. La plus simple consiste à 6 premiers octets. Si nous regar- fonction Trampoline et à la fin, se
changer les premiers octets de Close- dons ce fragment avec attention, trouve la partie du code qui sera
Handle par un saut inconditionnel. nous constatons que le code origi- lancé après la terminaison de la
nal CloseHandle est effectivement fonction Trampoline.
01 E9732FADDE jmp 0DEADBEEF changé, mais non du point de vue • Fonction Trampoline contient aussi
02 64A118000000 mov eax,fs:[00000018] des instructions ajoutées, mais aussi bien les instructions de la fonction
certaines d'entre elles sont perdues cible, remplacées complètement
Nous avons remplacé 5 premiers et d'autres ont changé. C'est une par le saut inconditionnel, que
octets par un saut vers l'adresse question à discuter. Bien que nous celles qui ont été changées par-
0xDEADBEEF. Bien sûr, cette avions atteint notre objectif et inter- tiellement. Ensuite, il y a un saut
adresse n'est pas valide car nous cepté tous les appels de la fonction, à l'instruction suivante correspon-
travaillons en mode utilisateur. la modification étaient si importante dant à la fonction cible.
À cette adresse, il y aurait le code qu'elle a entraîné les anomalies du
que nous avons introduit dans l'espa- comportement, ce qui en résultat Ainsi, nous pouvons résoudre le
ce adressable du fichier exécutable. pourrait provoquer la fin inattendue problème lié aux données perdues
Vu que c'est la méthode la plus du programme pendant le premier ou aux instructions modifiées qui
simple, elle est aussi la plus facile appel CloseHandle. se produisait dans Inline Hooking.
Il s'agit de sauver ces instructions
dans la fonction Trampoline pour
qu'elles puissent être exécutées. En-
suite, nous sautons à une instruction
suivante où la fonction cible fonction-
nera normalement. Une fois la fonc-
tion cible terminée, nous reprenons
le contrôle sur la fin de la fonction
Detour. Elle est capable de récupérer
le chemin de démarrage en restau-
rant le contrôle de la fonction source
ou la possibilité de réaliser un autre
type d'opération.
Mais comment savoir combien
d'instructions faut-il copier dans la
fonction Trampoline à partir de la
fonction cible ? Chaque fonction
Figure 2. Le schéma de base de la technique Detour cible sera différente, et de cela il

54 hakin9 Nº 4/2006 www.hakin9.org


Reconnaître l'adversaire

tion SEH définie pour le thread, la


Codes des exceptions gestion définie dispose des données
Une exception due à un accès à la zone de la mémoire invalide et une exception pro- suivantes.
duite à la suite de l'opération de division par 0 ne peuvent pas être traitées de la même Si une exception se produit, le
façon. Le système identifie chaque situation pour faciliter la tâche de la gestion des système démarre la gestion des
exceptions. Les codes des exceptions les plus répandues sont : exceptions pour qu'elle décide des
actions ultérieures. À ce moment esp
• C0000005h – Violation des droits d'accès aux opérations de lecture ou d'écriture.
pointe vers différentes structures.
• C0000017h – Pas de mémoire libre.
Dans la structure EXCEPTION_
• C00000FDh – Stack Overflow.
RECORD, l'attention est attirée sur
Les codes suivants sont les plus importants pour notre projet : les champs ExceptionCode et Ex-
ceptionAddress :
• 80000003h – Breakpoint généré par l'instruction int 3.
• 80000004h – Single step généré par l'activation de Trap Flag dans le registre
• ExceptionCode identifie le type
EFLAGS.
de l'exception créée. Dans le
système, différents codes sont
sera impossible de copier le nombre le problème dont nous avons parlé définis pour chaque type ; de
d'octets déterminé car les instruc- auparavant. plus, il est possible de définir
tions pourraient être coupées. Ce À partir du potentiel de Structure nos propres codes pour person-
problème est résolu à l'aide du dé- Exception Handling, nous explique- naliser les exceptions via API
sassembleur de taille. rons la technique innovatrice de la RaiseException.
création des désassembleurs dyna- • ExceptionAddress est une adresse
Désassembleurs de taille miques de taille. Au boulot. de la mémoire appartenant à l'ins-
Les désassembleurs de taille diffè- truction créée par une exception ;
rent des désassembleurs ordinai- elle correspondrait au registre eip
res par leur fonction qui consiste
Utilisation de Structure au moment où une exception s'est
à obtenir la taille des instruction et Exception Handling produit.
pas leur présentation. Ce type de (SEH)
désassembleurs était utilisé par les Premièrement, nous devons nous Une autre structure de base qu'il
virus cavités, polymorphiques, etc. concentrer sur les caractéristiques faut connaître est CONTEXT. Cette
C'est pourquoi, les deux des désas- du problème auquel nous voulons structure contiendra toutes les va-
sembleurs de taille (les vraie perles trouver la solution. leurs des registres au moment où
de l'optimisation) les plus utilisés ont l'exception se produit.
été programmés par les concepteurs • Les premières instructions des Il ne faut pas oublier que c'est la
des virus connus : Zombie et RGB. fonctions cibles ne diffèrent pas possibilité de contrôler chaque instruc-
Ils sont basés sur un désassem- trop, mais les différences sont tion démarrée est la plus importante,
balge statique des instructions. Pour aussi importantes qu'il est né- comme cela se fait dans le débogueur.
cela, ils utilisent les tableaux des co- cessaire d'envisager chaque cas En fait, notre désassembleur aura tou-
des des opérations de l'architecture séparément. tes les fonctionnalités du débogueur.
sur laquelle ils fonctionnent, dans ce • Le saut inconditionnel (jmp) ou
cas x86. Push + ret n'occupent pas plus
Outre le fait qu'ils sont utilisés de 6 octets. Il faudra analyser de Programmation
pour la création des virus comple- 4 à 5 instructions au maximum. du désassembleur de
xes, on l'emploie aussi pour le hoo- • Les premières instructions exécu- taille
king car ils permettent de résoudre tent généralement les opérations Premièrement, il faut définir l'en-
liées à l'ajustement de la pile. vironnement dans lequel nous dé-
Tableau 2. Champs de la structure
• L'idée consiste à pouvoir lancer marrerons les fonctions surveillées ;
EXCEPTION_RECORD
ces premières instructions dans ainsi, nous appellerons les instruc-
Offset Données l'environnement contrôlé, ce qui tions appartenant à la fonction cible
nous permettra de calculer leur dont la longueur nous voudrons
+0 ExceptionCode
longueur. connaître, pour pouvoir ensuite les
+4 ExceptionFlag copier entièrement dans la fonction
+8 NestedExceptionRecord Pour savoir comment construire cet Trampoline.
+C ExceptionAddress environnement, il faut saisir les infor- Pour cela, premièrement il faut
+ 10 NumberParameters mations apportées par SEH. déterminer l'étendue de SEH, SEH_
Pour chaque exception que a eu SEHUK étant une routine gérant les
+ 14 AdditionalData
lieu dans le code protégé par la fonc- exceptions qui se produisent.

www.hakin9.org hakin9 Nº 4/2006 55


Pratique

01 push dword SEH_SEHUK interruption, après le démarrage Tableau 3. Le champ CONTEXT


02 push dword [fs:0] de l'instruction suivante, l'excep- appartenant aux registres généraux
03 mov [fs:0], esp tion Single Step sera automatique- et de contrôle
ment générée. Ainsi, le contrôle Offset Registre
Dès ce moment, tout le code dé- est restauré. Nous avons obtenu la
+ 9C EDI
marré après ces instructions sera même information qu'à la suite des
protégé. L'étape suivante consiste opérations effectuées pas à pas. + A0 ESI
à copier un nombre déterminé d'oc- + A4 EBX
tets qui contiendront les instructions Consultons ces points créés dans le + A8 EDX
surveillées, à partir de la fonction code de l'assembleur : + AC ECX
cible vers la zone réservée à l'inté-
+ B0 EAX
rieur de notre code. Sa taille peut 12 SEH_SEHUK:
changer. Dans notre cas, nous avons 13 mov esi, [esp + 4] + B4 EBP
choisi 010h car elle est assez large ; EXCEPTION_RECORD + B8 EIP
pour contenir en entier les premières 14 mov eax, [esi] + BC CS
instructions. ; ExceptionCode
+ C0 EFLAGS
15 test al, 03h
+ C4 ESP
04..mov esi,TargetFunction ; Int3 Exception Code
05 mov..edi,Code 16 mov eax, [esi + 0Ch] + C8 SS
06..push 010h ; Eip Exception
07 pop ecx 17 mov esi, [esp + 0Ch] (code de l'exception 80000003h), ou
08..rep movsb ; CONTEXT record au contraire, il s'agit d'une exception
18 mov edx, [esi + 0C4h] provoquée par Trap Flag ou un autre
Quand nous sommes arrivés à ce ; Esp Exception évènement. S'il s'agit de l'exception
point, il ne nous reste qu'une seule 19 jz Int1h BreakPoint, nous effectuerons les
étape avant de démarrer les instruc- 20 mov eax, [esi + 0B4h] opérations expliquées auparavant
tions surveillées. Voyons : ; Ebp Exception (lignes 20, 21, 22).
21 mov [OrigEbp], eax Il est nécessaire de modifier EIP
09 int 3 22 mov [OrigEsp], edx du contexte pour qu'au moment de la
10 Code: 2 inc dword [esi + 0B8h] restauration du contrôle dans le sys-
11 ModCode times 12h db (90h) ; Eip++ (Int3->Instruction suivante) tème, il pointe vers l'instruction qui
24 mov eax,Code vient après int 3, autrement, nous
ModCode est la zone dans laquelle 25 mov [PrevEip],eax serions dans une situations sans is-
nous avons copié les instructions 26 jmp RetSEH sue. Pour éviter cela, comme on voit
surveillées ; avant d'arriver à ce dans la ligne 23, nous incrémentons
point, nous avons mis la constante On voit que dans la ligne 15, nous la valeur d'une unité. Cela est dû au
int 3. Pourquoi ? Il y en plusieurs comparons al avec 03 pour savoir si fait que le code de l'opération pour
raisons : l'exception a été produite par int 3 int 3 a 1 octet.

• Comme nous l'avons déjà men-


tionné, les premières instructions
d'une fonction cible quelconque
réalisent d'habitude les opérations
de modification de la pile. De cela,
il faut s'assurer que notre pile ne
sera pas détruite par ces actions.
Après l'appel d'int 3, une excep-
tion qui nous permettra d'accéder
à SEH_SEHUK (notre gestion),
est générée. Ainsi, en accédant
à la structure CONTEXT, nous
sauvons les registres ESP et EBP
pour restaurer l'état de notre pile
aux valeurs précédentes après la
terminaison de l'analyse.
• L'activation de Trap Flag dans le
registre EFLAGS. Grâce à cette Figure 3. Le schéma du fonctionnement de notre désassembleur de taille

56 hakin9 Nº 4/2006 www.hakin9.org


12 Nos
OFFRES DE COUPLAGE
6 Nos 12 Nos 6 Nos

+ +

147 €
12 Nos 6 Nos

99 € 12 Nos 6 Nos

+ +

OUI, je m’abonne et désire profiter des offres spéciales de couplage


Abonnez – vous !!!
Référence de l’offre : Prix : Qté : À partir du
numéro : l par courrier en nous
renvoyant le bon ci-dessous
12 Nos Linux+ DVD + 6 Nos PHP 99 € l par le web, sur notre site :
http://buyitpress.com/fr
12 N Linux+ DVD + 6 N Hakin9 comment se défendre ?
os os
99 €
l par téléphone entre 10-17
12 Nos Linux+ DVD + 6 Nos SDJ Extra 99 € au 00 48 22 887 13 44
l par fax au 00 48 22 887 10 11
12 Nos Linux+ DVD + 6 Nos Programmation sous Linux 99 €

Commande
Merci de remplir ce bon de commande et de nous le retourner par fax : 0048 22 887 10 10 ou par courrier :
Software-Wydawnictwo Sp. z o. o., Piaskowa 3, 01-067 Varsovie, Pologne ; E-mail : abonnement@software.com.pl

Prénom Nom ..................................................................................... Entreprise .........................................................................................

Adresse ...........................................................................................................................................................................................................

Code postal ...................................................................................... Ville ...................................................................................................

Téléphone ......................................................................................... Fax ....................................................................................................

E-mail ................................................................................................

Je règle par :

¨ Carte bancaire n° CB expire le date et signature obligatoires


type de carte .......................................................................... code CVV/CVC
¨ Virement bancaire :
Nom banque : Société Générale Chasse/Rhône
banque guichet numéro de compte clé Rib
30003 01353 00028010183 90

IBAN : FR76 30003 01353 00028010183 90


Adresse Swift (Code BIC) : SOGEFRPP
Pratique

Dans la ligne 25, nous enregis- Objectif Taille 2 octets +3 octets des précé-
trons l'adresse de la mémoire où Le but de cette partie du code est dents = 5 octets. On continue
commencent nos instructions sur- l'analyse de la longueur des instruc-
veillées, ce qui nous permettra au tions surveillées jusqu'à trouver la 04 64A118000000 mov eax,fs:[00000018]
moment de l'émulation des appels valeur supérieure ou égale à celle
et des sauts conditionnels et incon- qui occuperait notre crochet, indé- Taille 6 octets +5 octets des précé-
ditionnels. pendamment du fait, si ce serait un dents = 11 octets. C'est déjà fait !
saut inconditionnel (jmp 5 octets) ou Notre désassembleur de taille
push+ ret (6 octets). Imaginons par retournera 11. Que cela signifie-t-il ?
Analyse exemple que le type de notre cro- Cela veut dire que pour un crochet
des instructions chet est push+ret et nous essayons composé de six octets, pour ne pas
surveillées d'accrocher CloseHandle. Nous perdre aucune instruction, il faut co-
Jusqu'alors, tout ce que nous avons indiquons au désassembleur que pier onze octets de la fonction cible
présenté, pourrait être contenu dans notre crochet occupe 6 octets (Hoo- dans la fonction Trampoline.
le bloc préparation de l'environne- kLength = 6). Il commencera alors
ment. Nous allons commencer à exa- à compter la longueur de la première Analyse des données
miner le code appartenant à l'analyse instruction Nous avons ici un bloc initial de l'ana-
des instructions surveillées. lyse. Jusqu'à la ligne 46, nous avons
01 8BFF mov edi,edi l'algorithme permettant d'émuler les
Listing 1. Observation du code appels et les sauts. Cet algorithme
Taille 2 octets. Vu qu'il est inférieure consiste à vérifier le décalage entre
27 Int1h: à 6, il continue comme suit EIP dans lequel l'exception s'est pro-
28 mov ecx, eax duite et la valeur précédente du re-
29 sub eax, [PrevEip]
02 55 push ebp gistre. Si ce décalage est important,
30 cmp ax, 10h
31 jb NoCall nous avons à faire avec un appel ou
32 mov ebx, dword [edx] Taille 1 octet +2 octets de l'instruc- un saut, c'est pourquoi nous passe-
33 mov edx,ebx tion précédente = 3 octets. Toujours rons à la récupération du contexte
34 sub ebx, [PrevEip] inférieur à 6. pour qu'il pointe vers une instruction
35 cmp bl, 7
surveillée suivante au lieu d'exécu-
36 jbe HabemusCall
37 mov edi,[PrevEip] 03 8BEC mov ebp,esp ter le processus jusqu'à l'adresse 4
38 inc edi
39 inc edi
40 mov dword [esi + 0B8h], edi
41 mov ecx,edi
42 jmp NoCall
43 HabemusCall:
44 mov dword [esi + 0B8h], edx
45 mov ecx,edx
46 NoCall:
47 mov [PrevEip], ecx
48 sub ecx, Code
49 cmp ecx, [HookLength]
50 jge Success
51 RetSEH:
52 or word [esi + 0C0h], 0100h
; Activation de Trap Flag
53 xor eax,eax
54 ret
55 Success:
56 mov [LenDasm], ecx
;Nous restaurons la longueur
de l'instruction
57 mov esp, [OrigEsp]
;Nous récupérons Esp
58 mov ebp, [OrigEbp]
; Nous récupérons Ebp
59 pop dword [fs:0]
;Nous nettoyons l'étendue SEH
60 add esp, 4
;Nous ajustons la pile

Figure 4. Le registre EFLAGS

58 hakin9 Nº 4/2006 www.hakin9.org


Reconnaître l'adversaire

laquelle pointait l'appel ou le saut. ver. Imaginons aussi que ce petit empêche notre analyse et l'utilisation
Nous compterons aussi avec notre code était compacté avec le pro- du débogueur. Il ne reste pas aussi
compteur combien d'octets occupe gramme contenant plusieurs types longtemps dans la mémoire qu'il soit
notre instruction. de protections anti-déboguage et possible de le décompresser sur le
Dans les lignes 47, 48, 49, nous anti-désassemblage. Nous devons disque dur à l'aide d'un outil de dé-
vérifions s'il y a suffisamment d'ins- vite savoir comment il s'infiltre dans compactage (ProcDump...). En fait,
tructions pour mettre notre crocher. un autre fichier exécutable et quel le fichier exécutable ne reste dans la
La partie la plus principale du dé- code il introduit. Pour tout cela, il mémoire que pendant des dizaines
sassembleur sont les lignes 52, 53 et serait nécessaire d'effectuer sur- de secondes empêchant également
54. Là, nous activons Trap Flag en le-champ le désassemblage du de capturer son image. Que pou-
configurant à 1 le bit approprié dans fichier exécutable, mais comme vons-nous faire ?
le registre EFLAGS. C'est la base nous l'avions dit, il contient un pro- Pour résoudre ce problème, on
pour le nettoyage pas à pas. gramme de compactage (packer) qui pourrait accrocher ExitProcess, la
À partir de moins de 256 octets,
nous avons construit un désassem- Listing 2. ACPInject
bleur de taille tout à fait opérationnel.
Maintenant nous pouvons l'appliquer #include <stdio.h>
#include <windows.h>
dans la pratique.
typedef BOOL (WINAPI *PQUEUEAPC)(FARPROC,HANDLE,LPDWORD);
int main(int argc, char *argv[])
Application pratique {
PROCESS_INFORMATION strProces;
pour l'analyse d'un STARTUPINFOA strStartupProces;
programme malveillant PQUEUEAPC QueueUserApc;
DWORD MessageAddr,Ret1,Ret2,Longueur;
On utilise les techniques differentes : char *szExecutableName;
unsigned char Snippet[]=
• Pour nos besoins, nous allons "\x90" /* nop */
créer un programme qui intro- "\x6A\x00" /* push NULL */
"\x6A\x00" /* push NULL */
duira et démarrera du code dans
"\x6A\x00" /* push NULL */
le fichier exécutable qui lui sera "\x6A\x00" /* push NULL */
passé en paramètre. Les techni- "\xB9\x00\x00\x00\x00" /* mov ecx,MessageBox*/
ques d'insertion du code dans les "\xFF\xD1" ; /* Call ecx */
processus sont bien connues. Il Longeur = (DWORD) strlen(
"c:\\windows\\system32\\calc.exe") + 1;
en existe différents types, mais
ZeroMemory( &strStartupProces, sizeof( strStartupProces) );
toutes sont basées pratiquement strStartupProces.cb = sizeof( strStartupProces );
sur les mêmes API. ZeroMemory( &strProces, sizeof( strProces) );
• VirtualAllocEx sert à allouer de la szExecutableName = (char*) malloc( sizeof(char) * Długość);
mémoire dans le processus cible. if( szExecutableName ) strncpy(szExecutableName,
"c:\\windows\\system32\\calc.exe",Longueur);
Le code sera introduit dans cet
else exit(0);
espace mémoire. Pour cela, nous _QueueUserApc = (PQUEUEAPC)GetProcAddress( GetModuleHandle (
utiliserons WriteProcessMemory. "kernel32.dll" ), "QueueUserAPC");
• Au moment du démarrage du MessageAddr = (DWORD) GetProcAddress ( LoadLibraryA(
code, nous pouvons choisir "user32.dll") , "MessageBoxA" );
// U32!MessageBoxA
parmi CreateRemoteThread ou
*( DWORD* )( Snippet + 10 ) = MessageAddr;
SetThreadContext. Ret1 = CreateProcessA( szExecutableName, NULL, NULL, NULL,
0, CREATE_SUSPENDED,
Mais nous nous servirons d'une NULL,NULL,
autre fonction : QueueUserAPC. &strStartupProces,&strProces);
Ret2 = (DWORD) VirtualAllocEx( strProces.hProcess,NULL,sizeof(Snippet),
MEM_COMMIT,
Domaines d'application PAGE_EXECUTE_READWRITE);
Ce programme introduit dans la
calculette Windows un petit code WriteProcessMemory(strProces.hProcess,(LPVOID)Ret2, Snippet,
qui entraîne l'affichage d'une boîte sizeof(Snippet), NULL);
_QueueUserApc((FARPROC)Ret2,strProces.hThread,NULL);
de message (Message Box). La
ResumeThread(strProces.hThread);
calculette ne s'affichera pas après return 0;
le démarrage de ce code. Imaginons }
qu'au lieu d'un code innocent, nous
introduisons un code malicieux d'un

www.hakin9.org hakin9 Nº 4/2006 59


Pratique

Listing 3. Outils API

unsigned char HookCode[]=


"\x90"
/* nop */
"\x68\x38\x03\x00\x00"
/* push 3E8h */
"\x6A\x6E"
/* push 6Eh */
"\xB9\x00\x00\x00\x00"
/* mov ecx,00h */
"\xFF\xD1"
/* Call K32!Beep */
"\x68\x00\x00\x00\x00"
/* push dword 00h */
"\xB9\x00\x00\x00\x00"
/* mov ecx,00h */
"\xFF\xD1"
/* Call K32!Sleep */
"\x90\x90\x90\x90"
/* Espace pour les instructions
surveillées */
"\x90\x90\x90\x90"
"\x90\x90\x90\x90"
"\x90\x90\x90\x90"
"\x90\x90\x90\x90"
"\x68\x00\x00\x00\x00"
Figure 5. Le schéma d'accrochage d'ExitProcess
/* push dword 00h */
"\xC3" figer dans la mémoire du processus En tant que technique de hoo-
/* ret */ (à l'aide de Sleep) et le maintenir king, nous utiliserons Inline Hooking
"\x90";
dans cet état aussi longtemps qu'il avec certains éléments de la techni-
/* nop */
unsigned char ExitHook[]=
soit possible de la capturer et ensui- que Detour
"\x68\x00\x00\x00\x00" te reconstruire cette capture binaire HookCode contient les éléments
/* push dword 00h */ pour le désassembler et restaurer étant le prologue de la fonction
"\xC3"; à l'état initial. Pourquoi accrocher Detour. La tâche de ce prologue
/* ret */
ExitProcess ? 90% de programme consiste à nous informer que le
malveillant, après avoir arrivé programme malveillant a atteint
à ExitProcess est décompressé dans ExitProcess par un signal sonore
Listing 4. Nous construisons la mémoire. Il peut arriver que seule en appelant API Beep. Ensuite,
notre HookCode à l'aide des une partie du fichier exécutable se comme nous avions mentionné,
adresses obtenues décompacte, mais cela n'est pas trop nous appellerons Sleep au moyen
fréquent parce que c'est trop difficile du paramètre envoyé via la ligne
printf("[+]Rebuilding à concevoir. Quant à nous, nous de commande. Ce paramètre sera
HookCode...");
nous concentrerons à construire un assez fort pour nous permettre les
// K32!Beep
outil qui nous permettrait de s'accro- opérations de capture, ainsi que
*( DWORD* )( HookCode + 9 ) = cher rapidement à une API d'une dll d'autres que nous voudrions exécu-
BeepAddr; quelconque utilisée par un program- ter. Une fois le prologue terminé, les
me malveillant. Pour ce faire, nous premières instructions d'ExitProcess
// Sleep param
allons utiliser bien sûr nous nouveau seront démarrées (les instructions
Parameter = atoi( argv[2] );
*( DWORD* )( HookCode + 16 ) =
désassembleur de taille. contrôlés par le désassembleur
Parameter;

// K32!Sleep Sur Internet


*( DWORD* )( HookCode + 21 ) = • http://www.reversemode.com/index.php?option=com_remository&Itemid=2&fun
SleepAddr; c=select&id=8 – Le code source complet de toutes les applications mentionnées
dans l'article. Le désassembleur de taille. L'exemple d'un programme malveillant et
*( DWORD* )( HookCode + 48) = d'une application pour hooking,
HookAddr + LenDasm; • http://research.microsoft.com/~galenh/dfPublications/HuntUsenixNt99.pdf
– Detours: Binary Interception of Win32 Functions,
printf("[OK]\n");
• http://msdn2.microsoft.com/en-us/library/ms253960(VS.80).aspx
– Structure Exception Handling in x86.

60 hakin9 Nº 4/2006 www.hakin9.org


Reconnaître l'adversaire

valeurs obtenues à partir du désas-


Listing 5. ProcessusA sembleur de taille.
Ret1 = CreateProcessA( szExecutableName, NULL, NULL, NULL,0,
Ensuite, nous créons un proces-
CREATE_SUSPENDED,NULL,NULL, sus en mode suspendu et nous al-
&strStartupProceso,&strProceso); louons de la mémoire dans l'espace
adressable.
if( !Ret1 ) ShowError();
À la fin, nous restaurons Exi-
printf("[OK]\n");
tHook à l'aide de l'adresse obtenue
via VirtuaAllocEx, nous retouchons
printf("[+]Allocating remote memory..."); Entry Point de la fonction cible (dans
Ret2 = (DWORD) VirtualAllocEx( strProceso.hProcess,NULL,sizeof(HookCode), ce cas ExitProcess) au moyen d'Exit-
MEM_COMMIT,
Hook.
PAGE_EXECUTE_READWRITE);
La façon d'appeler le programme
était le suivant :

Listing 6. Nous restaurons ExitHook congrio c:\acpinject.exe 10000


Kernel32.dll ExitProcess
*( DWORD* )( ExitHook + 1 ) = Ret2;

• en premier argument, nous avons


printf("[OK]->Address : 0x%x",Ret2);
printf("\n[+]Hooking %s...",argv[4]);
path malware,
printf("\n\t[-]Reading %d bytes from %s Entry Point ...", LenDasm, argv[4]); • en deuxième argument, l'interval-
Ret1 =(DWORD) memcpy( (LPVOID)( HookCode + 27 ),(LPVOID)HookAddr, LenDasm); le en millisecondes du passage
if( !Ret1 ) ShowError(); à Sleep,
printf("[OK]\n");
• le troisième argument est DLL qui
printf( "\t[-]Hooking %s...", argv[4] );
exporte la fonction cible,
Ret1=0; • la fonction cible est ici ExitPro-
while( !Ret1 ) cess.
{
ResumeThread(strProceso.hThread);
Sleep(1);
Conclusion
SuspendThread(strProceso.hThread);
Comme on a pu voir dans l'article,
Ret1 = WriteProcessMemory(strProceso.hProcess, (LPVOID)HookAddr, les différents domaines de l'ingénie-
/ * Nous retouchons la fonction cible */ rie inverse se convergent dans un
ExitHook, HookLength, NULL); point. Nous avons couplé différentes
/* dans la mémoire */
techniques, comme par exemple
}
les désassembleurs de taille, le et
printf("[OK]\n"); l'introduction des processus pour fa-
ciliter notre analyse des programmes
printf("\t[-]Injecting Hook..."); malveillants.
Ret1 = WriteProcessMemory(strProceso.hProcess,(LPVOID)Ret2,
Paradoxalement, ces mêmes
/* Nous copions le code dans l'espace adressable*/
HookCode, sizeof(HookCode), NULL);
techniques sont exploitées par les
programmes malicieux, ce qui aide
/* du processus récemment créé */ aussi le développement de l'ingé-
/* Nous permettons au processus de se dérouler */ nierie inverse. Plus les rootkits, les
ResumeThread(strProceso.hThread);
virus, etc. sont complexes, plus l'ana-
lyse des techniques utilisées et des
de taille), et ensuite, le contrôle de Ensuite, il faut reconstruire Hoo- façons dont elles sont appliquées est
l'instruction convenable suivante kCode et ExitHook au moyen des détaillée. Ainsi, nous avons une sor-
(ExitProcess+7) sera restauré. adresses de la mémoire API et des te d'une course à laquelle participent
les chercheurs, les programmeurs
des programmes malveillants ou les
À propos de l'auteur auteurs des virus, mais les effets en
L'auteur s'intéressent depuis 16 ans de l'environnement de l'ingénierie inverse et en seront ressentis par millions d'utilisa-
général de la sécurité informatique. À l'âge de 19 ans, en parfait autodidacte, il a com- teurs. Pourtant, on ne peut pas nier
mencé à travailler comme programmeur. Ensuite, il se développé dans les domaines le fait que les recherches et les in-
liés au bas niveau, aux programmes anti-virus et à la vulnérabilité aux attaques. Ac- novations proviennent de deux côtés
tuellement, il se concentre sur ce dernier domaine.
de la barricade. l

www.hakin9.org hakin9 Nº 4/2006 61


www.buyitpress.com

Vous recevrez vite de très beaux cadeaux !


Abonnez-vous à vos magazines préférés
et commandez des anciens numéros !

Vous pouvez en quelques minutes et en toute sécurité vous abonner à votre magazine préféré.
Nous vous garantissons :
• des tarifs préférentiels,
• un paiement en ligne sécurisé,
• la prise en compte rapide de votre commande.
Abonnement en ligne sécurisé à tous les magazines de la maison d’édition Software !
bulletin d’abonnement
Merci de remplir ce bon de commande et de nous le retourner par fax : 0048 22 887 10 11 ou par courrier :
Software-Wydawnictwo Sp. z o.o., Piaskowa 3, 01-067 Varsovie, Pologne ; Tél. 0048 22 887 13 44 ;
E-mail : abonnement@software.com.pl

Prénom Nom ............................................................................................... Entreprise ...................................................................................................

Adresse .................................................................................................................................................................................................................................

Code postal ................................................................................................ Ville ..............................................................................................................

Téléphone ................................................................................................... Fax ...............................................................................................................

Je souhaite recevoir l'abonnement à partir du numéro .....................................................................................................................................................

E-mail (indispensable pour envoyer la facture) .................................................................................................................................................................

o Prolongement automatique d’abonnement

Nombre de Nombre

Titre
À partir du
numéros d’abonne- Prix
numéro
annuels ments
Programmation sous Linux (1 CD ou DVD)
Bimestriel pour les programmeurs professionnels 6 38 €

Software Developer’s Journal Extra ! (1 CD ou DVD)


– anciennement Software 2.0 Extra 6 38 €
Bimestriel sur la programmation
Linux+DVD (2 DVDs)
Mensuel unique avec 2 DVDs consacré à Linux et à ses utilisateurs 12 86 €

Linux+ Extra Pack (4-7 CDs ou 1-3 DVDs)


Distributions Linux les plus populaires 6 50 €

PHP Solutions (1 CD)


Le plus grand magazine sur PHP au monde 6 38 €

Hakin9 – comment se défendre ? (1 CD)


Bimestriel destiné aux personnes qui s’intéressent à la sécurité des 6 38 €
systèmes informatiques
.PSD (2 CDs)
Bimestriel pour les utilisateurs d’Adobe Photoshop 6 39 €
Tutoriels dans chaque numéro
MSCoder (1 CD)
Independent magazine for software developers 6 38 €

Total

Je règle par :
¨ Carte bancaire n° CB expire le date et signature obligatoires
type de carte .......................................................................... code CVC/CVV
¨ Virement bancaire :
Nom banque : Société Générale Chasse/Rhône
banque guichet numéro de compte clé Rib
30003 01353 00028010183 90
IBAN : FR76 30003 01353 00028010183 90
Adresse Swift (Code BIC) : SOGEFRPP
Problèmes
d'authentification HTTP
Pratique

Emilio Casbas

Degré de difficulté

Le protocole HTTP nous offre le mécanisme d'autorisation de


type requête-réponse qui peut être exploité par un serveur
en réseau ou un proxy pour accepter ou refuser l'accès aux
ressources du réseau.

A
ctuellement dans le réseau, des millions • Serveurs réseau sur Internet – c'est une
de transactions ont lieu et les données situation la plus populaire. À partir de la
privées et confidentielles sont rendues maison ou d'un cyber-café, l'utilisateur se
publiques. Dans le réseau, tout cela est possi- connecte sur un serveur sur lequel l'authen-
ble, mais pour des raisons de sécurité, il faut tification HTTP est configurée pour accéder
savoir qui a accès aux données vulnérables et à certaines ressources. Si vous consultez
qui peut exécuter des opérations privilégiées. les pages Web des entreprises, vous pou-
Nous devons être sûrs que les utilisateurs vez observer que beaucoup de pages utili-
non autorisés ne peuvent pas consulter les sent ce type d'authentification pour donner
documents auxquels ils n'ont pas d'accès. Les accès aux parties protégées du site.
serveurs essaient de savoir qui est l'utilisateur • Serveurs réseau dans un Intranet- dans ce
et à partir de ces informations décider quel type cas, le domaine d'application est plus restreint
d'action ceux-ci peuvent exécuter. L'authentifi-
cation est une technique d'identification qui
consiste à vérifier l'identité d'une personne à Cet article explique...
partir de certaines preuves telles que mot de
• Différents niveaux d'autorisation HTTP.
passe ou PIN. HTTP fournit une fonctionnalité
• Différences dans l'autorisation HTTP sur les
naturelle permettant une authentification. niveaux différents.
En fait, HTTP définit deux protocoles offi- • Exemples pratiques de communication HTTP.
ciels d'authentification : une authentification de • Faiblesses de l'autorisation.
base et une authentification digest. Dans cet • Solutions et alternatives.
article, je me concentrerai particulièrement sur
la méthode d'authentification de base qui est Ce qu'il faut savoir...
largement utilisée par les clients et les serveurs
réseau et est moins sûre. • Modèle OSI.
Les domaines d'application de cette mé- • Connaissance du protocole HTTP.
thode d'authentification :

64 hakin9 Nº 4/2006 www.hakin9.org


Authentification HTTP

à Internet est réalisée via un ser-


Brève introduction à l'authentification digest veur proxy, ce qui a pour but de
Le but de l'authentification digest n'est jamais d'envoyer en clair le mot de passe contrôler pleinement l'utilisation
à travers le réseau, mais de l'envoyer en tant que condensé crypté de manière irré- d'Internet. C'est pourquoi la con-
versible. figuration du serveur proxy pour
L'authentification digest a été développé de façon compatible comme une alternati- qu'il contrôle les utilisateurs est
ve plus sûre par rapport à l'authentification de base, mais ce n'est pas un unique proto- tout à fait normal dans ce cas.
cole appelé sûr comparable à ceux utilisant les mécanismes de clé publique (SSL) ou Normalement, ce type de vali-
les mécanismes d'échange de tickets (kerberos). L'authentification digest n'est pas une
dation sera intégrée à d'autres
authentification forte et n'offre pas la confidentialité des données outre la protection du
mécanismes existant dans le
mot de passe (l'autre partie de la requête et de la réponses passent en texte clair).
réseau intranet, ce qui aggrave le
Authentification de base :
problème de Single Sign On dont
• L'authentification de base est l'un des protocoles d'authentification HTTP les plus nous nous occuperons plus tard.
utilisés. Elle est implémentée dans la plupart des clients et serveurs réseaux. Pour
mieux comprendre ce qu'est c'est, regardez sa description graphique. Exemple pratique
• Au-dessous, nous présenterons les étapes précédents l'authentification HTTP. Dès que nous savons déjà ce que
• L'utilisateur veut accéder à une ressource réseau (par exemple une image) c'est l'authentification HTTP et quel-
• Le serveur vérifie que cette ressource est protégée et envoie au client une de-
les sont les étapes de son fonction-
mande de mot de passe avec l'en-tête HTTP Authorization Required et le code
nement, analysons ces étapes d'une
401.
façon plus détaillée, à l'aide de notre
• Le navigateur de l'utilisateur obtient le code et l'en-tête d'authentification et affiche
la boîte de dialogue utilisateur/mot de passe. Quand l'utilisateur saisit les données, navigateur Web mozilla. Pour cela,
le navigateur effectue le chiffrement en base64 des données saisies et les envoie nous aurons besoin d'une extension
au serveur dans l'en-tête utilisateur Authorization. pour capturer les en-têtes HTTP que
• Le serveur déchiffre le nom de l'utilisateur et le mot de passe et vérifie s'il a accès nous réalisons.
à la ressource protégée. L'extension dont nous avons
besoin s'appelle livehttpheaders et
Comme on voit, l'authentification de base envoie une paire utilisateur:mot de passe
nous pouvons la télécharger à partir
sous une forme non cryptée à partir du navigateur vers le serveur et en tant que telle
du site http://livehttpheaders.mozde
ne devrait pas être employée pour les connexions sensibles, à moins qu'on ne travaille
v.org/. Nous l'installons suivant les
dans un environnement chiffré tel que SSL.
pas décrits sur le site, et ensuite,
dans mozilla, l'option Live HTTP
car il est limité à l'Intranet d'une en- l'accès, on puisse le faire unique- Headers devient disponible (présen-
treprise, mais les problèmes liés ment à travers le serveur proxy tée sur la Figure 6).
à ce type d'authentification sont de cette institution. Pour cela, Nous cliquons sur cette option et
identiques à ceux étudiés dans le l'authentification HTTP peut être il s'affiche une fenêtre présentée sur
cas précédent, et les ressources aussi implémentée dans le proxy la Figure 2.
disponibles à l'intérieur du réseau pour que toutes les données pas- Dès ce moment, nous obtien-
sont tout aussi vulnérables. sent via Internet. drons toutes les informations sur les
• Serveurs proxy sur Internet – il • Serveurs proxy dans un Intranet en-têtes HTTP de tous les sites que
se peut aussi que pour naviguer – il arrive aussi souvent qu'au nous visitons en interceptant les en-
dans certaines ressources d'un sein d'un réseau d'entreprise, têtes expliqués ci-dessous.
réseau donné ou pour contrôler l'unique possibilité d'accéder
En-têtes
et explications
Le client envoie une requête HTTP
standard demandant une ressource
donnée.

GET /doc/ecasbas/ HTTP/1.1\rn


Host: www.prueba.es\rn
User-Agent: Mozilla/5.0
(Windows; U;
Windows NT 5.1; en-US; rv:1.7.12)
Accept: text/xml,text/html;q=0.9,
text/plain;q=0.8,
image/png,*/*;q=0.1\rn
Figure 1. Les serveurs réseau sur Internet Accept-Language: en-us,en;

www.hakin9.org hakin9 Nº 4/2006 65


Pratique

Si l'autorisation ne réussit pas, le


serveur renvoie l'en-tête de l'auto-
risation souhaitée HTTP 401. Si les
données saisies sont correctes, le
serveur affichera la ressource vou-
lue. Ensuite, le serveur passe à la
ressource sollicitée :

HTTP/1.0 200 OK\rn


Date: Mon, 16 Jan 2006 11:17:58 GMT\rn
Server: Apache/2.0.55 (Unix)
mod_ssl/2.0.55
OpenSSL/0.9.7g PHP/5.1.1\rn
Last-Modified:
Fri, 13 Jan 2006 10:31:02 GMT\rn
Figure 2. Les serveurs réseaux dans un Intranet
ETag: "125b019-5-f636a580"\rn
q=0.7,es;q=0.3\rn GET /doc/ecasbas/ HTTP/1.1\rn Accept-Ranges: bytes\rn
Accept-Encoding: gzip,deflate\rn Host: www.unav.es\rn Content-Length: 5\rn
Accept-Charset: ISO-8859-1, User-Agent: Mozilla/5.0 Content-Type: text/html\rn
utf-8;q=0.7,*;q=0.7\rn (Windows; U; Windows NT 5.1; X-Cache:
Keep-Alive: 300\rn en-US; rv:1.7.12) MISS from www.prueba.es\rn
Connection: keep-alive\rn Accept: text/tml+xml,text/html, Connection: keep-alive\rn
image/jpeg,image/gif;
Le serveur lit son archive de confi- q=0.2,*/*;q=0.1\rn Dans les champs précédents, nous
guration et détermine si la ressource Accept-Language: avons vu les champs spéciaux qui
sollicitée est protégée par un mot de en-us,en;q=0.7,es;q=0.3\rn ont été ajoutés aux différentes en-
passe. Le serveur peut donner accès Accept-Encoding: gzip,deflate\rn têtes HTTP. Dans l'étape 3, quand le
à celle-ci seulement aux utilisateurs Accept-Charset: serveur envoie la réponse avec l'en-
connus. Alors le serveur répond au ISO-8859-1,utf-8;q=0.7,*;q=0.7\rn tête 401, il ajoute un champ spécial.
client par une demande d'autorisa- Keep-Alive: 300\rn
tion en l'indiquant par le code HTTP Connection: keep-alive\rn WWW-Authenticate:
401. Authorization: Basic realm="ByPassword"\rn
Basic ZWNhc2JhczpwcnVlYmE=\rn
HTTP/1.0 401 Unauthorized\rn La valeur Basic montre que nous
Date: Ensuite, le serveur compare l'infor- demandons au navigateur d'utiliser
Mon, 16 Jan 2006 11:17:51 GMT\rn mation provenant du client avec sa l'authentification de base. La chaîne
Server: Apache/2.0.55 (Unix) liste des utilisateurs/mots de passe. de caractères realm est une chaîne
mod_ssl/2.0.55 OpenSSL/0.9.7g
PHP/5.1.1\rn
WWW-Authenticate:
Basic realm="ByPassword"\rn
Accept-Ranges: bytes\rn
Content-Length: 3174\rn
Content-Type: text/html\rn
X-Cache:
MISS from www.prueba.es\rn
Connection: keep-alive\rn

Le navigateur interprète ce code


HTTP 401 comme requête à authen-
tifier et affiche alors l'invite utilisateur:
mot de passe en montrant le nom de
l'hôte et realm, ce qui est illustré sur
la Figure 3.
Le client renvoie la requête avec
les données sur l'utilisateur/le mot de
passe saisies :

66 hakin9 Nº 4/2006 www.hakin9.org


Authentification HTTP

Listing 1. Le code perl pour


décoder la chaîne en base64

#!/usr/bin/perl
use MIME::Base64;
while (<>) {
print MIME::Base64::decode_
base64($_);
}

mais il faut faire attention à ce que les


ressources que l'on veut ainsi protéger
ne soient pas trop vulnérables et que
ces authentifications ne fonctionnent
pas dans d'autres services tels que
le courrier électronique et l'accès aux
Figure 4. Les serveurs proxy dans un Intranet informations privées.
arbitraire envoyée pour afficher Si l'on possède le code précé-
à l'utilisateur l'information sur le type dent, le nom de l'utilisateur en texte Authentification proxy
d'authentification. La Figure 3 mon- clair peut être facilement déchiffré au Les séquences précédentes concer-
tre comment la fenêtre de mozilla de- format utilisateur:mot de passe. nent le client demandant au serveur
mande l'authentification en affichant Web un accès à une ressource
le realm et l'hôte. ZWNhc2JhczpwcnVlYmE= protégée. Mais cette procédure peut
L'utilisateur remplit le formulaire --> base64Decode() --> "ecasbas:essai" être aussi employée si le serveur
et l'envoie. Le navigateur renvoie proxy nécessite une authentification
automatiquement sa demande. L'implémentation de l'authentifica- pour obtenir un accès à une ressour-
Comme on a pu voir auparavant, tion digest est exactement le même ce. Nous analyserons aussi cette
certains champs ont été ajoutés processus que l'authentification de situation et verrons quels codes sont
à une requête HTTP standard : base. L'unique différence est dans affichés dans le cas d'un proxy.
le nombre d'arguments soumis par le Avec un serveur proxy configuré
Authorization: navigateur et dans le format du nom dans le navigateur, nous exécutons
Basic ZWNhc2JhczpwcnVlYmE=\rn de l'utilisateur retourné. une requête pour pouvoir naviguer.
Les deux types d'authentification,
À ce moment, le navigateur Web digest et basic sont utilisés par les GET
envoie une information sur l'autorisa- clients et les serveurs Web, mais il ne http://www.google.com/ HTTP/1.1\rn
tion actuelle au serveur. On voit que faut pas les utiliser pour la protection Host: www.google.com\rn
le champ Authorization se compose des informations sensibles ou l'accès User-Agent: Mozilla/5.0 (Windows; U;
de deux valeurs. Le mot Basic mon- sécurisé. L'utilisation du même nom Windows NT 5.1; en-US; rv:1.7.12)
tre que le nom de l'utilisateur a été de l'utilisateur et mot de passe pour Accept: application/x-shockwave-flash,
envoyé conformément à la méthode différents services est très fréquente, text/xml,application/xml,*/*;q=0.1\rn
d'authentification de base. Le bloc de
données qui vient après celui-ci est
le nom de l'utilisateur actuel envoyé
par le navigateur. Nos données con-
cernant le nom de l'utilisateur n'ap-
paraissent pas directement, mais ce
n'est pas le chiffrement, mais seule-
ment le codage en 64. En résumé,
le codage en base64 présente les
séquences d'octets arbitraires de
façon illisible pour un être humain.
Les algorithmes de codage et de
décodage sont simples, mais les
données codées sont d'habitude de
33% que les données non codés.
Pour en savoir plus, lisez l'encadré
Sur le réseau. Figure 5. L'authentification de base

www.hakin9.org hakin9 Nº 4/2006 67


Pratique

Accept-Encoding:
gzip,deflate\rn
Accept-Charset:
ISO-8859-1,utf-8;q=0.7,*;q=0.7\rn
Keep-Alive: 300\rn
Proxy-Connection:
keep-alive\rn
Proxy-Authorization:
Basic
ZWNhc2Jhc0B1bmF2Lm
VzOnBydWViYTAx\rn

Figure 6. L'option Live HTTP Headers Le serveur proxy vérifie intérieurement


si effectivement le nom de l'utilisateur
Accept-Language: vite pour y saisir le données exigées, et le mot de passe sont valides et nous
en-us,en;q=0.7,es;q=0.3\rn ce qui est illustré sur la Figure 9. donne accès à la ressource.
Accept-Encoding: gzip,deflate\rn Certains navigateurs n'interprè-
Accept-Charset: tent pas correctement realm, c'est HTTP/1.0 200 OK\rn
ISO-8859-1,utf-8;q=0.7,*;q=0.7\rn pourquoi ils affiche dans la fenêtre Cache-Control: private\rn
Keep-Alive: 300\rn présentée ci-dessous le message Content-Type: text/html\rn
Proxy-Connection: keep-alive\rn Proxy Authentication (user/passwd). Content-Encoding: gzip\rn
Ce cas est un peu différent, mais il Server: GWS/2.1\rn
Le proxy nous répond en nous in- nous servira d'exemple. Content-Length: 1408\rn
diquant que pour pouvoir naviguer, Nous saisissons le nom de l'uti- Date: Mon, 16 Jan 2006 13:05:40 GMT\rn
une autorisation est nécessaire. lisateur et le mot de passe, et notre X-Cache: MISS from filter\rn
client envoie les données de retour Proxy-Connection: keep-alive\rn
HTTP/1.0 407 suivantes au proxy.
Proxy Authentication Required\rn Au lieu du code 401 HTTP, le serveur
Server: squid/2.5.STABLE12\rn GET proxy affiche le code 407 (authentifica-
Mime-Version: 1.0\rn http://www.google.com/ HTTP/1.1\rn tion par proxy nécessaire), et l'en-tête
Date: Mon, 16 Jan 2006 13:01:19 GMT\rn Host: www.google.com\rn ajouté dans le cas du serveur réseau
Content-Type: text/html\rn User-Agent: Mozilla/5.0 WWW-authenticate, pour le serveur
Content-Length: 3283\rn (Windows; proxy est Proxy-Authenticate. Tout le
Expires: U; Windows NT 5.1; processus est identique à celui de l'ac-
Mon, 16 Jan 2006 13:01:19 GMT\rn en-US; rv:1.7.12) cès restreint à une ressource réseau,
X-Squid-Error: Accept: excepté ces petites différences.
ERR_CACHE_ACCESS_DENIED 0\rn application/x-shockwave-flash,
Proxy-Authenticate: Basic realm= text/xml, Vision générale de
""Proxy Authentication image/gif;q=0.2,*/*;q=0.1\rn l'authentification HTTP
(user/passwd)""\rn Accept-Language: Le schéma d'authentification de
X-Cache: MISS from proxy.es\rn en-us,en;q=0.7,es;q=0.3\rn base n'est pas une méthode sûre
Proxy-Connection: keep-alive\rn

Alors notre navigateur interprète


cela comme requête/réponse pour
l'authentification de base et affiche l'in-

Figure 7. La fenêtre Live HTTP


Headers Figure 8. La fenêtre Live HTTP Headers

68 hakin9 Nº 4/2006 www.hakin9.org


Authentification HTTP

Tableau 1. L'authentification de serveur réseau et l'authentification proxy authentifications pour différents ser-
Serveur réseau Serveur Proxy. vices, mais les réutilisent.

Code d'état sans autorisation : 401 Code d'état sans autorisation : 407 Conclusion
WWW-authenticate Proxy-Authenticate L'authentification HTTP de base est
Authorization Proxy-authorization simple et commode, mais ce n'est
pas une méthode sûre. Il faut l'em-
Authentication-Info Proxy-Authentication-Info.
ployer dans les cas où l'accès aux
informations doit avoir le caractère
privé et son utilisation ne peut pas
compromettre la sécurité des autres
systèmes.
Les gens utilisent souvent le
même nom d'utilisateur et le même
mot de passe à des fins différentes.
De cela, même si ceux-ci sont uti-
lisés dans des environnements de
confiance et dans les cas d'un accès
aux informations non sensibles, il
existe toujours un risque que les
mêmes authentifications pourraient
nous donner accès aux services
plus importants tels que courrier
électronique, documents privés ou
Figure 9. La fenêtre Live HTTP Headers bases de données.
Au moyen d'un sniffeur réseau
d'authentification des utilisateurs. réseau (IPSEC), les programmes et de quelques scripts permettant
Elle ne protège pas l'identité de l'utili- avec une connexion sécurisée, etc. d'interpréter le trafic intercepté, en
sateur et celle-ci est transmise à tra- Si l'une des ressources emploie ce quelques minutes on peut obtenir
vers le réseau en texte clair. D'autre type d'authentification, vous avez un des centaines de paires utilisateur/
part, HTTP ne refuse pas l'utilisation accès immédiat à tous les services mot de passe par la méthode décrite
des schémas d'authentification addi- disponibles. ci-dessus. Dans l'authentification
tionnels et des mécanismes de cryp- Un champ idéal pour implémen- HTTP, les mots de passe traversent
tage qui augmentent et améliorent la ter ce type d'authentification serait, le réseau en texte clair, et lors de
sécurité d'authentification de base. par exemple, l'accès aux statistiques la connexion, les en-têtes avec les
Malgré les faiblesses de ce type d'utilisation d'un serveur donné ou mots de passe le traversent plus
d'authentification, comme on a pu l'accès à une autre ressource, si d'une fois. Pendant la connexion,
voir ci-dessus, cette méthode est vous trouvez qu'un accès illégal ils sont renvoyés pour chaque tran-
utilisée dans différents environne- à celle-ci n'est pas dangereux. De saction réalisée. Cela est dû à la
ments où le plus grand danger est cela, les authentifications d'accès propriété du protocole HTTP qui ne
lié à l'existence de Single Sign On, doivent être fournies par l'adminis- conserve pas l'état et il est nécessai-
quand un seul mot de passe vous trateur du site ou par un programme re de rappeler les données qui sont
sert à vous identifier auprès de tou- générateur. Elles ne doivent jamais fournies pendant chaque connexion
tes les ressources. Ainsi, il n'est pas être choisies par l'utilisateur car ainsi au serveur ou au proxy. Pour amé-
important si vous utilisez les méca- on se retrouvera avec le même pro- liorer cette manière d'authentification
nismes d'accès sécurisé par le biais blème qu'auparavant. Les gens n'ont ou la remplacer par d'autres métho-
de SSL, les connexions chiffrées au pas l'habitude d'utiliser différentes des plus sûres, il faudrait :

• le combiner avec SSL pour ren-


Sur Internet forcer la sécurité en chiffrant
• http://livehttpheaders.mozdev.org/ – le plug-in pour mozilla,
toutes les données de la trans-
• ftp://ftp.isi.edu/in-notes/rfc2617.txt – l'authentification HTTP : l'authentification
Basic et Digest,
mission
• http://www.faqs.org/rfcs/rfc2045.html – le chiffrage du transfert en Base64, • le remplacer par l'authentification
• http://httpd.apache.org/docs/1.3/howto/auth.html – la configuration d'apache pour digest
qu'il demande l'authentification, • utiliser Kerberos
• http://rfc.sunsite.dk/rfc/rfc2617.html – RFC 2617. • le supprimer de tous les endroits
où il n'est pas nécessaire. l

www.hakin9.org hakin9 Nº 4/2006 69


Social engineering

Alentours

Tomasz Trejderowski

Degré de difficulté

Quelqu'un a appelé le social engineering intrusion dans


l'esprit. C'est une moyenne arithmétique de la sociotechnicien
(manipulation d'autrui) et du cracking (intrusion dans les
systèmes informatiques). À partir de ces deux mécanismes,
un outil très puissant est né. Beaucoup ne se rendent pas compte
de sa force destructrice.

A
lbert Einstein a dit une fois : Il n'existe mais probablement longtemps après l'évè-
que deux choses infinies, l'univers et la nement, ne feront pas le lien entre certains
bêtise humaine... mais pour l'univers, je faits. Bien que cela paraisse perfide – l'attaque
n'ai pas de certitude absolue. Plusieurs person- sociotechnicien est une subtilité. Kevin Mitnick
nes associent cette citation à la sociotechni- – le sociotechnicien le plus célèbre (et pas le
que et au social engineering. À moins que cracker – comme il est injustement appelé par
dans le premier cas cela ait du sens, je suis les média) du monde répétait toujours dans ses
plus sceptique en ce qui concerne le social interviews qu'il avait obtenu les informations
engineering. Il s'agit plutôt d'inconscience que seulement parce qu'il les demandait. Évidem-
de bêtise. Le fait de ne pas se rendre compte ment, de la manière appropriée.
de certaines règles est à la base de la plupart
des attaques sociotechniciens contre les entre- Sociotechnicien
prises. Par contre, on peut qualifier de bêtise le Les principes théoriques du social engineering
comportement des employés seulement quand constituent la sociotechnicien qui est une scien-
ils acceptent consciemment les méthodes ce de la manipulation des êtres humains. Dans
exploitées par un sociotechnicien s'attaquant chaque attaque exploitant le social engineering,
à leur entreprise. nous pouvons retrouver les traces des règles
C'est dans cette inconscience que réside la communes à la base de la sociotechnicien :
puissance du social engineering. Si un cracker
expérimenté casse la protection réseau d'une • Règle de réciprocité – chaque chose posi-
entreprise, il y aura toujours quelqu'un qui vou- tive (aide, support, cadeau) obtenue de la
drait expliquer la situation par l'inconscience part d'une personne, génère la volonté de
et l'incompétence des administrateurs ou des rendre la politesse
utilisateurs du réseau. Par contre, si un socio- • Règle de preuve de justification sociale
technicien s'attaque à une entreprise – les – 10 mille clients ne se trompent pas ! Con-
victimes de cette attaque non seulement ne formément à cette règle, il est plus facile de
se rendront pas compte qu'ils sont manipulés, nous convaincre de quelque chose, si l'on

70 hakin9 Nº 4/2006 www.hakin9.org


Social engineering

nous démontre que les autres fluence totale sur les sociétés entiè- les mécanismes sont réflexifs et
pensent ou se comportent de la res (de grands groupes sociaux) est automatiques. Contre ces attaques,
même manière. le social engineering. Une manipu- aucun pare-feu, ni programme anti-
• Règle de sympathie – si nous lation informative d'un individu (d'un virus, ni des millerrs dépensées pour
aimons quelqu'un ou il nous paraît petit groupe de gens) est un social la sécurité informatique, ne sont pas
sympathique, nous répondrons engineering. Dans le deuxième cas, capables de nous protéger. Seuls
plus volontiers à ses demandes. on utilise aussi les notions socioin- les cours de sociotechnicien perma-
• Règle d'autorité – nous n'avons formatique et sociohacking. nents peuvent nous protéger contre
pas assez de courage pour nous Beaucoup de gens trouvent que ce danger car ils éliminent l'incons-
opposer à quelqu'un de plus sage, l'informatique et le totalitarisme (et cience dont j'ai parlé au début de
plus expérimenté ou plus haut que également le marketing, les médias, l'article.
nous dans la hiérarchie. Ce méca- les affaires, etc.) sont des domaines Dans la suite de l'article, je mon-
nisme fonctionne même si nous très éloignés. Malgré tout, on peut trerai que c'est seulement en appa-
sommes contraints que la décision considérer l'exercice de l'influence rence que le danger ne nous con-
ou que l'action prises par cette per- sur les êtres humains sur ces ni- cerne pas. En fait, il est présent dans
sonne sont erronées. veaux comme mécanismes équiva- chaque entreprise, chaque ville et
• Règle d'engagement et de con- lents et identiques. C'est pourquoi, à tout moment.
séquence – si nous sommes en- on utilise dans tous les cas la même
gagés dans quelque chose, nous expression – social engineering. Qui et pourquoi ?
allons viser à réaliser le but. La notion la plus populaire est Il n'est pas possible de déterminer qui
• Règle d'indisponibilité – la valeur le social engineering et elle a été a utilisé la sociotechnicien pour la
d'une chose donnée augmente, si utilisée dans ce texte, bien qu'elle première fois. Il y a quelques milliers
celle-ci est temporairement ou con- ait autant de partisans que d'adver- d’années que les prêtres égyptiens
stamment indisponible. Il y a aussi saires. utilisaient les moments de l'éclipse du
une Règle inversée d'indisponibi- Soleil calculées mathématiquement
lité – les choses fréquentes, évi- Niveau d'insécurité pour manipuler leurs peuple et se
dentes et facilement disponibles ne La conscience du danger qui me- faire obéir.
présentent pas une grande valeur nace de la part de la sociotechnicien Quant au social engineering, alors
à nos yeux. et du social engineering est négligée l'exploitation de la sociotechnicien pour
• Règle de valeur et de profit – il dans la plupart des entreprises. s'attaquer aux entreprises et aux sys-
vaut la peine de lutter pour les cho- D'où je prends ces données ré- tèmes informatiques, la question de
ses de valeur (y compris spirituelles vélatrices ? Je me baserai sur mon la première utilisation de ce mécanis-
telles que l'honneur, la bonne re- propre exemple qui, selon moi, mon- me n'est pas facile à déterminer. Plu-
nommée, la gloire). Si une so- tre très bien l'étendue du problème. sieurs personnes croient que pour la
ciotechnicien suscite en nous Outre les articles, je donne aussi des première fois, cette méthode a été
l’impression que ces aspects de cours. Le centre des formations où utilisée par le célèbre Kevin Mitnick.
notre vie sont menacés, il peut je travaille est le seul dans la région Moi, personnellement, je suis d'avis
facilement nous contraindre aux à organiser des cours du domaine qu'il a seulement rendu plus po-
actions que nous-mêmes n'avons de la sociotechnicien et du social pulaire cette technique de collecte
jamais entreprises. engineering. Au cours de l'année, des données. Le social engineering
nous organisons deux cours et nous existe aussi longtemps qu'il existe de-
Ces règles sont très souvent exploi- avons des difficultés pour trouver dix puis probablement aussi lengtemps
tées dans la manipulation sociotechni- clients. Et j'habite et je travaille dans qu’il existe des ordinateurs. C’est à dire
cien (dans le média, la politique, la vie une ville (Katowice, Pologne) qui a depuis les années soixante ou même
professionnelle). Quand on parle du 300 mille d’habitants et 50-80 mille cinquante du siècle passé.
social engineering, différentes com- entreprises (comme dans plusieurs La réponse à la question pour-
binaisons de ces règles sont utilisées. villes européennes). C'est la preuve quoi ce mécanisme est utilisé ? est
Il ne faut pas oublier que le méca- suffisante d'une très basse cons- banale et je l'ai donnée dans les pa-
nisme le plus populaire utilisé par les cience dans cette matière. ragraphes précédents. C'est tout sim-
sociotechniciens dans les attaques En attaquant, un sociotechnicien plement fructueux. En Europe, c'est
sur les entreprises est tout simple- touche le point le plus faible de cha- encore (heureusement) la phase ini-
ment le mensonge. que entreprise – homme. La socio- tiale qui domine, pendant laquelle la
technicien et le social engineering plupart des attaques sont exécutées
Manque d'équivalence s'attaquent au niveau subconscient par des sociotechniciens - amateurs.
des notions de l'esprit humain – les régions Ils le font surtout pour résoudre leurs
Certaines personnes sont d'avis qu'il dont les actions sont souvent nous ne petits problèmes privés qui ne peu-
faut séparer ces deux notions. L'in- hors de champ de la conscience ; vent pas être réglés par voie tradi-

www.hakin9.org hakin9 Nº 4/2006 71


Alentours

cien – le mensonge – la solution la


plus simple vient automatiquement
à l'idée. C'est la vérification. S'il est
possible de se faire passer pour un
autre, il faut vérifier, vérifier et encore
une fois vérifier – à chaque pas. Pra-
tiquement chaque entretient au sein
d'une entreprise concernant ces
aspects stratégiques (informations
confidentielles, sécurité, argent) doit
Figure 1. Qui découvrira le mot de passe caché dans cette impression ?
être suivi d'un rappel téléphonique.
tionnelle. Très souvent, ils utilisent le sur ce sujet quand ces données sont Si l'administrateur du réseau, Jean
social engineering uniquement pour le plus grand secret de chaque en- Martin, téléphone à l'employé Jean
démontrer à eux-mêmes comment treprise. L'attaque sociotechnicien, Dubois, alors ce dernier raccroche
ils sont doués (Sociotechniciens outre les pertes financières remar- et rappelle lui-même Jean Martin
à White hat ?). Mais cette étape ne quables, est aussi une confirmation (bien sûr, au numéro qu'il connaît
durera pas longtemps. Le temps de la faiblesse. Une chose inadmis- et pas à celui donné), pour s'assurer
quand les sociotechniciens seront sible. que c'était vraiment Jean Martin et
embauchés par la concurrence pour pas un sociotechnicien qui s'était fait
voler les secrets commerciaux ou Tel est pris qui croyait passer pour lui.
pour mener les entreprises à la fail- prendre C'est la théorie. Dans la pratique,
lite – modèle américain – n'est pas Quand on prend connaissance des les entreprises sont loin d'implémen-
trop lointain. C'est la question de techniques de social engineering et ter une telle solution. Le problème
quelques années. des façons de s'en défendre, très sou- n'est pas financier. Vu que la com-
vent on est tenté de l'utiliser pour ses munication téléphonique interne est
Question de réputation propres buts. Je laisse au lecteur le gratuite, le coût de l'implémentation
En premier, il faut se poser la ques- jugement moral et les chances de de cette solution ne devrait pas être
tion si un employeur ou un proprié- découvrir cette activité. Je voudrais élevé. Mais très souvent, les respon-
taire d'une entreprise est capable seulement signaler que le social en- sables considèrent que les moyens
de relier certains évènements (le gineering, comme toute autre forme de sécurité si avancés ne sont pas
plus souvent la perte des données de manipulation des gens, contre nécessaires. Hélas, c'est une façon
confidentielles) à l'action d'un socio- leur gré et à leur insu, pour en tirer d'aborder le problème très dange-
technique ? Ce sont des attaques profit, est un acte punissable en reuse.
très subtiles (disons –difficiles à dé- France (les réglementations appro-
tecter) et qui ne laissent pas tout priées existent dans chaque pays).
de suite des désastres visibles (tels L'article 226-15 du Code pénal dit : Quand une information
qu'un disque dur formaté, une page Le fait, commis de mauvaise foi, innocente est-elle
Web remplacée – le résultats de d'ouvrir, de supprimer, de retarder nuisible ?
l'activité du cracker). C'est pour- ou de détourner des correspondan- Toujours ! Toute information est dan-
quoi les chances pour les détecter ces arrivées ou non à destination et gereuse. Même celle la plus simple
(mêmes quelques semaines plus adressés à des tiers, en d'en pren- – comme le prénom et le nom de
tard) par une équipe non formée dre frauduleusement connaissance, la collègue qui est assise de l'autre
et n'ayant pas connaissance du est puni d'un an d'emprisonnement côté du bureau. Si elle n'aide pas di-
problème sont – selon mon avis et de 300 000 F d'amende. Est puni rectement au sociotechnicien, il peut
– minimales. des mêmes peine le fait, commis l'exploiter pour vérifier son identité
Si, pourtant, l'entreprise détecte de mauvaise foi, d'intercepter, de artificielle pendant la conversation
qu'elle a été l'objectif de la cible d'un détourner, d'utiliser ou de divul- avec une autre personne. Je le ré-
sociotechnicien, reconitra-t-elle ce fait ? guer des correspondances émises, pète encore une fois. Chaque infor-
Non. Parce qu'elle ne gagne rien et transmisses ou reçues par la voie de mation, même celle la plus banale
peut beaucoup perdre – à commen- télécommunications ou de procéder – qui sort en dehors de l'entreprise,
cer par la confiance des ses clients à l'installation d'appareils conçus peut être dangereuse.
et sa réputation. pour réaliser de telles intercep- La conclusion en est simple. Il est
C'est pourquoi, bien que les don- tions. impossible de se défendre contre la
nées statistiques n’existent pas pour sociotechnicien et le social enginee-
ce sujet, leur véracité est redoutable. Pas de vérification ring. La façon efficace de s'y défen-
Comment alors, par qui et comment Si l'on comprend l'outil le plus simple dre n'a jamais existé, n'existe pas et
obtenir les informations véridiques et le plus populaire du sociotechni- n'existera pas. On peut, à la limite,

72 hakin9 Nº 4/2006 www.hakin9.org


Social engineering

tenter de réduire ses effets et limiter sont souvent publiées sur la page envoyant un email ou en glissant
le risque au minimum. IL est impossi- Web de l'entreprise ; une disquette contenant les don-
ble de l'éliminer complètement. • on peut téléphoner à cet employé, nées apparemment confidentiel-
se faire passer pour l'administra- les (le système de primes, les
Tisser la toile teur et par le biais d'une simple rémunérations de l'administration,
Le plus grand avantage du socio- manipulation obtenir son nom les détails piquantes de la vie
technicien et en même temps le plus d'utilisateur et le mot de passe au privée, etc.). Après l'ouverture du
grand danger pour les entreprises réseau d'entreprise. Mais ce n'est document joint (le démarrage du
est le fait que l'attaquant a du temps pas l'objectif en tant que tel ; programme), un troyen est ins-
et beaucoup de patience. L'attaque • si l'on possède l'adresse de la tallé sur l'ordinateur de la victime.
sociotechnicien n'est pas effectuée messagerie, il sera facile de se Ainsi, l'assaillant obtient l'accès
n'importe comment, par un blanc- procurer le numéro interne de au réseau de l'entreprise et aux
bec qui a lu une traduction (le plus cet employé (p.ex. sur la liste des données enregistrées sur le disque
souvent mauvaise) d'un ouvrage rémunérations, le numéro d'enre- dur.
américain concernant ces problèmes gistrement, etc.). • À l'aide de la règle d'autorité,
et veut se lancer. C'est un jeu straté- l'attaquant peut se faire passer
gique très bien préparé, élaboré pour Si l'on connaît le prénom, le nom, le pour un supérieur et contraindre
plusieurs éventualités, contenant les département, l'adresse du courrier le subordonné à révéler certai-
solutions alternatives et les scénarios électronique, et souvent aussi le nom nes informations. S'il connaît le
pour les situations atypiques. de l'utilisateur et le mot de passe, on prénom et le nom de l'assistante
Le mécanisme de cette attaque dispose de la base pour voler l'iden- du président, il peut ensuite té-
est en général identique ou très simi- tité d'une personne. Un sociotechni- léphoner à une autre personne
laire. Il ressemble au tissage d'une toile cien muni de ces informations peut et lui dire qu'il se contacte à la
d'araignée. À partir des fils très fins avec succès se faire passer pour demande de cette personne.
qui en tant que tels ne constituent pas l’employé d'une entreprise et conti- Aux membres de la direction,
obstacle même pour une mouche du nuer son attaque sociotechnicien personne ne refusera rien.
vinaigre, une toile raffinée est créée dans la direction souhaitée. • La règle de sympathie peut être
pouvant capturer non seulement un Pourtant, l'attention est attirée non exploitée dans une situation
troupeau de mouches, mais aussi un sur le contenu, mais sur l'idée de ce imaginée quand une personne
grand moustique et plusieurs d'autres plan d'actions. En tout cas, le sociotech- connue et aimée est menacée.
insectes. nicien téléphone à une autre person- Un sociotechnicien peut télépho-
Pour un sociotechnicien, aucune ne, se fait passer pour quelqu'un d'au- ner à l'entreprise, se faire passer
information n'est sans valeur. Chacune, tre (administrateur, employé, client), pour un employé de la banque et
même la moins importante, peut l’ai- présente une histoire inventée mais dire qu'un collègue ou un collabo-
der. Ces informations apparemment vraisemblable et demande d'une façon rateur de la personne à laquelle
anodines sont pour lui les plus pré- ingénieuse une information simple et il téléphone, à la suite de... (ici
cieuses. C'est parce qu'elles sont les apparemment insignifiante. un mensonge vraisemblable)
plus faciles à obtenir – personne ne Chacun des employés atta- n'obtiendra pas sa rémunération
les considère comme confidentielles qués s'y prête de bonne grâce car il à temps, mais que nous pouvons
et ne les protège pas – tandis qu'el- pense consciensciemment (à raison) aider et donner... (une informa-
les peuvent servir à trier les fausses qu'il n'avoue aucun secret commer- tions peu importante, mais non
informations, et ainsi, obtenir les don- cial ou d'entreprise, et qu’il ne donne disponible au public – par exem-
nées d’une valeur inappréciables. que des informations complètement ple l'identifiant de cet employé).
Par exemple, les actions pour- insignifiantes. Dans cette situation, tout en étant
raient se passer ainsi : guidé par la sympathie (ici exploi-
Méthodes d'obtention tée) et la volonté d'apporter de
• l'obtention du prénom et du nom des informations l'aide, nous révélerons facilement
d'un employé quelconque ; Vu la taille et le caractère de cette les informations qui ne devraient
• le prénom et le nom sont révélés publication, je ne peux donner que pas sortir de l'entreprise.
spontanément par le département quelques méthodes d'attaques les • Une solution alternative à la pré-
où la personne donnée est em- plus importantes. cédente consiste à téléphoner
ployée ; à la personne intéressée et à lui
• pour obtenir l'adresse du courrier • En se servant de la règle d'inac- faire croire (une manipulation de
électronique d'un employé, il cessibilité (curiosité), un sociotech- la peur, l'aspect de la règle de
ne faut même pas connaître le nicien peut contraindre l’employé valeur) que sa rémunération est
département dans lequel celui- d'une entreprise à exécuter une virée à une autre banque. L'em-
ci est embauché – ces données action atypique, par exemple en ployé excité (émotions) est dis-

www.hakin9.org hakin9 Nº 4/2006 73


Alentours

ponible aux manipulations. Dans patients. Les informations desti- faitement au tissage de toile et
cette situation, on peut en tirer nées à la Caisse nationale d'as- à créer l’image d'une personne
pratiquement toute information en surance maladie, contenant les que l'on est pas. Kevin Mitnick
jouant quelqu'un qui veut aider. données complètes comme le pré- a mentionné dans plusieurs
• La question d'aide est exploitée nom, le nom, l’adresse, le télé- entretiens que les visites dans
dans la sociotechnicien inverse. phone, le NIF. Pour une person- les dépôts des déchets des
Un sociotechnicien peut met- ne habile, cela suffit pour voler entreprises ou même la cor-
tre en scène une situation (par l'identité d'un autre. ruption du personnel des entre-
exemple pas d'accès à Internet • Pour obtenir le numéro du cel- prises s'occupant de l'évacuation
dans une période chaude pour lulaire privé d'un employé en ne des déchets pour qu'ils lui
l'employé), en se faisant passer connaissant que son prénom fournissent les déchets d'une
avant pour l'administrateur et en et son nom, il suffit de se servir société concrète, était l'une des
lui donnant le numéro de la ligne d'une simple astuce. Le socio- meilleurs méthodes d'obtention
d'urgence en cas de problèmes. technicien peut téléphoner à la des informations indispensa-
Si la victime (à la suite d'une réception (centrale) de l'entre- bles.
mystification rusée) téléphone prise, en s'assurant au préalable • Les nouveaux employés sont trai-
elle-même au sociotechnicien, il qu'une personne donnée n'est tés en général avec indulgence.
est presque sûr qu'elle désactive pas présente au travail (par exem- Le modèle américain admet le
tous les mécanismes défensifs ple les vacances ou une absence mécanisme que la concurrence
possibles et sera ouvert à la ma- temporaire). Il se fait passer pour envoie un employé dans une au-
nipulation. l'administrateur, invente une his- tre entreprise pour y travailler
• Le mécanisme de demande toire (p.ex. un baratin technique pendant quelque temps (quel-
d'aide ou de volonté de l'offrir est incompréhensible) et demande ques mois). Il commet tant d'er-
l'un des plus utilisé par les socio- de laisser sur le bureau de l'em- reurs qu'il n'est possible qu’il se
techniciens. C'est pourquoi il faut ployé une annotation suivante : procure des informations. L'indul-
rester vigilant et faire attention à Envoie un signal au numéro XXX. gence et la compréhension – oui,
qui nous offrons notre aide et de Très urgent ! Administrateur. Si mais en même temps une double
qui proviennent les informations. l'employé retéléphone – le socio- vigilance.
Le fait d'offrir de l'aide démarre technicien a son numéro (il n’a • Un sociotechnicien peut télépho-
le mécanisme de la règle de même pas à dérocher). Si le nu- ner à l'entreprise et arranger une
réciprocité, ce qui peut rendre méro est caché, il suffit de de- situation quand l'employé doit
efficace l'attaque du sociotechni- mander d'écrire l'annotation En- s'éloigner du téléphone en comp-
cien. voie un SMS au numéro XXX, je tant que celui-ci ne lui bloque pas
• Dans les cas extrêmes, le so- ne peux pas accrocher. Dans les le microphone. Et dans plusieurs
ciotechnicien ne doit rien faire cas extrêmes, il ne faudra même cas, il ne se trompe pas. Une fois,
car les employés inconscients pas attendre car la réceptionniste j'ai profité des services de l'une
et non formés donnent seuls épouvantée et manipulée d'une des plus grandes entreprises
accès aux informations. Par façon appropriée donnera seule d'expédition. J'ai téléphoné pour
exemple, le protocole de fin du le numéro du cellulaire de l'em- vérifier l'état de mon envoi. La vé-
contrat avec un opérateur de la ployé. rification durait assez longtemps
téléphonie cellulaire – le proto- • Les déchets – les documents et pendant l'absence de mon
cole dont la copie est parvenue jetés à la poubelle dans une en- interlocuteur, j'ai pu entendre tou-
au client – contient le numéro treprise comprennent une quan- tes les conversations menées à
SFID de l'employé chargé de tité de données (les adresses du proximité – entre les employés
terminer l'opération de fin du courrier électronique, les identifi- eux-mêmes et les d'employés et
contrat. C'est un numéro con- cateurs, les téléphones internes, les clients. J'ai entendu beaucoup
fidentiel identifiant l'employé. les noms des responsables, etc.). de détails (adresses, paramètres,
Sous aucun prétexte, ces types Et ils sont détruits très rarement. identificateurs) concernant les
d'informations ne doivent être Un sociotechnicien ne se procu- autres clients et les envois. Une
affichées sur les documents rera pas directement des données telle situation est inadmissible.
disponibles au public imprimés confidentielles (mais ce n'est • Souvent, les administrateurs des
pour les clients. Dans un dis- pas si sûr que ça) car ces réseaux d'entreprise facilitent la
pensaire de Katowice, une négli- données sont traitées dans le tâche au sociotechnicien. Ils obli-
gence encore pire a eu lieu. Sur destructeur ou sont conservées gent (trop) souvent les employés
le bureau de la réception, au vue et pas jetées. Mais ces informa- à changer les mots de passe en
et au su de tout le monde, on a tions peu importantes provenant (trop) compliqués. L'esprit humain
laissé les cartes de nouveaux de ces déchets se prêtent par- mot de passe est limité et ils

74 hakin9 Nº 4/2006 www.hakin9.org


Social engineering

www.hakin9.org hakin9 Nº 4/2006 75


Alentours

exagèrent quand ils contraignent


l'utilisateur à mémoriser cinq lon- À propos l'auteur
gues chaînes de lettres et chif- Tomasz Trejderowski – par sa formation métallurgiste, par sa profession d’écrivain,
fres. Il ne faut pas être étonné chargé de cours, programmeur et webdesigner. Auteur des plusieurs ouvrages
que ce dernier essaie de se fa- et articles. Candidat au doctorat à la Polytechnique de Silésie.
ciliter la tâche – p.ex. il emploie http://www.tomasz.trejderowski.com/
les combinaisons clavier sim-
ples (qwe123, zaq12wsx) dont
les listes sont disponibles dans cédures que le sociotechnicien exemple une panne apparente
Internet. Ou bien, il note les ne connaît pas, et il pourrait d'un serveur) et ainsi contraindre
mots de passe sur les feuilles être démasqué. Dans ce cas, en l'employé à révéler les données
de papier. Mais si l'on doit ab- disposant d'une quantité appro- confidentielles (nom de l'utilisa-
solument noter un mot de passe priée d’informations, simuler un teur, mot de passe) pour accé-
sur un bout de papier, il faut le employé (par téléphone) et in- lérer la reprise de l'accès aux
faire d'une façon ingénieuse. Il venter une histoire justifiant pour- données.
est difficile de mémoriser vingt quoi il ne vient pas reprendre per- • Le mécanisme très similaire qui a
chiffres et lettres. Mais il n'est sonnellement un envoi donné. pour but de créer une impression
pas difficile de les entourer au L'attaquant peut demander de menace (Votre carte de crédit
début et à la fin par exemple de de le laisser à la réception et sera désactivée, veuillez donner
cinq caractères aléatoires, et en- informer que quelqu'un le fera son numéro et le code pour an-
suite, avant et après cette ligne pour lui. Ensuite, il se rend per- nuler le processus de la désacti-
ajouter (ou imprimer) encore dix sonnellement à l'entreprise où vation.) ou d'offrir une promotion
autres, également aléatoires. il peut se comporter comme un (Donnez votre nom de l'utilisateur
Dans un bloc de lettres, signes homme ordinaire. Personne ne et le mot de passe eBay pour ob-
et chiffres si dense, personne ne vérifiera son identité car le vrai tenir 10 euros sur votre compte
trouvera notre mot de passe. Et employé a dit qu'il ne peut pas utilisateur.) est très souvent utilisé
pour nous, un coup d'oeil suffit reprendre l'envoi personnelle- par phising. Le mécanisme est très
pour nous rappeler qu'il faut ment. Dans cette situation, il est simple et consiste à contraindre
enlever dix ligne à partir du haut facile d'obtenir les informations la victime à révéler les informa-
et du bas et cinq caractères de imprimées, difficiles à acquérir tions nécessaires pour la fraude.
chaque côté et copier la chaîne d'une autre manière. Il faut seu- Il n’est pas nécessaitre d’être un
de caractères qui reste. lement prendre soin pour que la cracker. Il suffit un peu de ruse et
• Un sociotechnicien peut aussi personne pour laquelle se fait un peu de social engineering et
se faire passer pour un employé passer le sociotechnicien soit de crédulité (et souvent – d'avi-
d'une entreprise plus grande (un absente et qu'il soit impossible dité) de la part de la victime.
gros consortium) collaborant de la contacter. Pour un assaillant
avec la société attaquée. Il peut bien payé ce n'est pas un pro- Comment se
dire qu'il téléphone du départe- blème. défendre ?
ment du service et qu’il fait une • Si un sociotechnicien s'atta- Ce ne sont que des exemples. Quel-
enquête ayant pour but d'amé- que à une filiale d'une grande ques exemples. Un sociotechnicien
liorer la collaboration entre les entreprise (corporation, il peut professionnel qui tire profits de l'ac-
deux entreprises. Grâce au mé- facilement se faire passer pour tivité illégale, en connaît quelques
canisme non important-impor- un employé d'une autre filiale, centaines. Et tout en observant la vie
tant, il peut introduire dans les mentir qu'à la suite d'une panne, et les relations interpersonnelles, est
questions banales et évidentes l'accès au réseau d'entreprise capable d'en inventer au moins un
les contenues grâce auxquels est impossible et obtenir ainsi chaque jour. Ses principaux atouts
il obtiendra des informations les informations qui ne sont pas sont le mensonge, l'aplomb, la pa-
précieuses. En étant en posses- destinées pour quelqu'un de tience et l'expérience.
sionde ces informations, il peut l'extérieur. Il n'existe pas une méthode sûre
ensuite téléphoner à l'entreprise • Comme on avait mentionné au permettant de se défendre contre
dont il jouait l'employé début, la règle d'inaccessibilité un sociotechnicien et probablement
• Très souvent, l'attaque directe dit que plus une chose est inac- il n'en existera jamais. La détermi-
(sur le terrain de l'entreprise), cessible, plus la valeur de cette nation de certaines règles peut effi-
pour se procurer un objet con- chose augmente aux yeux de l'at- cacement rendre difficile la vie des
cret, est impossible à effectuer taqué. Un sociotechnicien peut sociotechniciens et leur empêcher
ou très difficile. Tout le monde simuler la situation d'un accès li- d'effectuer plusieurs attaques. Ces
se connaît et il existe des pro- mité à des données urgentes (par règles sont, à savoir :

76 hakin9 Nº 4/2006 www.hakin9.org


Social engineering

• La vérification par tous les nicien qui téléphone peut tout sim- sociotechniciens et du social en-
moyens possibles si la personne plement connaître un seul code et gineering.
avec qui nous parlons est celle tente de nous manipuler ainsi.
pour qui elle se fait passer. Un • Ne pas céder aux émotions, à la Conclusion
sociotechnicien, par méthode pression de l'autorité et à la peur. La sociotechnicien est une manipu-
de tissage du toile peut acquérir • Ne pas ouvrir les pièces jointes lation du comportement des humains
plusieurs informations sur l'en- aux messages et les fichiers sur permettant d'en tirer des profits maté-
treprise et sur la victime, mais les disquettes et CDs provenant riels ou des données confidentielles.
certainement pas toutes. Une at- des sources inconnues. La sociotechnicien existe depuis le
titude très utile (pour l'entreprise) • Détruire régulièrement et pré- début de l'humanité, mais l'exploita-
et en même temps très embêtante cisément les déchets et autres tion de ses règles pour les attaques
(pou lui) consiste à ne pas violer documents imprimés issus de sur le entreprises et les systèmes
les règles de sécurité définies l'entreprise. Ne pas révéler des informatiques n'est présente que de-
seulement parce que quelqu'un données confidentielles sur les puis quelques dernières années.
nous le demande. Si nous avons documents disponibles au grand J'espère que j'ai réussi à vous
six codes à vérifier et nous choi- public. Bloquer les conversations présenter les arguments assez forts
sissons d'une façon aléatoire C, téléphoniques pour qu'une tierce pour convaincre au moins quelques
demandons de la personne qui personne ne puisse pas entendre personnes que le problème non
téléphone de donner le code C. ce qui se passe dans le bureau. seulement existe, mais est quasi un
Ne cédons pas à sa demande • Vérifier très minutieusement à danger réel, et avant tout – concerne
d'un autre code seulement parce qui nous offrons notre aide et qui pratiquement chaque entreprise, cha-
que quelqu'un est, par exemple, essaie de nous aider. que personne et chaque aspect de
devant son ordinateur. Cela peut • Formations régulières de tous la vie, aussi bien professionnelle que
être un mensonge et le sociotech- les employés sur les méthodes privée. l

P U B L I C I T É

www.hakin9.org hakin9 Nº 4/2006 77


Bibliothèque

Titre : 19 Deadly Sins of Software security: Programming flows and how to fix them
Auteur : Michael Howard, David Leblanc, John Viega
Éditeur : Mc Grow Hill
Langue : Anglais
Nombre de pages : 304 pages
ISBN : 0-07-226085-8
Prix : 32,90 €

Tout le monde, y compris un programmeur débutant, décide une amélioration (donc comment éviter ce type
sait ce que signifient les erreurs lors de la programmation. d'erreur) et un examen de conscience, donc une liste
Il suffit de lire une description de n'importe quelle faille de points sur lesquels il faut réfléchir pour éviter ce type
critique pour se rendre compte de ses conséquences d'erreur dans l'avenir.
sur la sécurité du système. La surcharge de la mémoire Cette manière de traiter l'analyse d'erreurs comme
tampon, de la pile, etc. sont des éléments fréquents et une confession peut, dans un premier temps, surprendre,
n'impressionnent plus personne. voire énerver – personne n'aime en effet admettre une
D'après les auteurs, les 19 péchés du titre de erreur. Après une réflexion, il est difficile de ne pas y voir
l'ouvrage, signifient les erreurs les plus fréquentes. un sens d'humour et une logique.
Selon Amit Yoran (National Cyber Security Division), ces Les auteurs ont réussi en plus à réaliser un ouvrage
erreurs constituent 99 % de défauts dans la programma- complet, dépourvu d'éléments inutiles – ils ont donc
tion. eux-mêmes réussi à éviter un péché souvent fréquent
Le livre, il est facile de le deviner, comprend 19 chez les auteurs d'ouvrages informatiques, à savoir, le
parties. Chacune d'entre elles est consacrée à l'un des péché de bavardage. Ils tiennent aussi leur promesse de
péchés que l'on peut commettre lors de la programma- proposer un texte qui ne vous prendra pas votre temps
tion. À titre d'exemple, un chapitre décrit donc un péché, inutilement.
présente un fragment concernant les péchés similaires Indépendamment donc de votre niveau, lisez
où vous pouvez trouver des similitudes entre les erreurs l'ouvrage, frappez-vous la poitrine et améliorez-vous en
diverses. Il y a aussi un fragment où le programmeur améliorant votre code.

Titre : Network Security Bible


Auteur : Eric Cole, Ronald L. Kurtz, James Conley
Éditeur : O’Reilly
Langue : Anglais
Nombre de pages : 660 pages
ISBN : 0-7645-7397-7
Prix : 38,90 €

La maison d'édition Helion essaie de choisir les tout décrire. De plus, les exemples de solutions et de
ouvrages les plus complets sur un sujet donné. Jusqu'à techniques, présentés dans le livre, ne sont que élé-
présent, au moins, en ce qui concerne les ouvrages liés mentaires ; ils ne servent qu'à illustrer les questions
à la sécurité, elle n'avait pas toujours de bons résultats. sélectionnées et de nombreux problèmes sont à peine
Les lecteurs s'attendent donc à recevoir un ouvrage mentionnés.
sur la sécurité pour les utilisateurs intermédiaires et Si le sujet vous intéresse, il ne vous reste qu'à cher-
avancés. cher éventuellement les descriptions des solutions dans
L'ouvrage Sécurité de réseaux ne s'écarte pas de ce un autre ouvrage.
niveau intermédiaire. Il discute largement la question du La première partie du livre (cela constitue son avan-
titre, permettant ainsi à l'utilisateur de réfléchir sur les tage) comprend les procédures et les principes élémen-
points oubliés, en ce qui concerne la sécurité et la pro- taires concernant la sécurité de réseaux. Il est vrai que le
tection de réseaux. Cet ouvrage décrit très bien les direc- savoir lié à la sécurité évolue rapidement mais les procé-
tives pour réaliser des réseaux et parle des questions dures changent assez rarement. La sécurité de réseaux
importantes aussi bien pour créer un nouveau réseau concerne aussi la protection d'informations, autrement
que pour mieux protéger le réseau existant. dit, non seulement des éléments techniques mais aussi
Cependant, nous vous prévenons toute de suite : des procédures, des normes et des principes. C'est le
la sécurité de réseaux est un sujet tellement vaste point souvent oublié par les administrateurs.
qu'un ouvrage de 660 pages ne peut pas forcément

78 hakin9 Nº 4/2006 www.hakin9.org


Bibliothèque

Titre : Linux Server Security


Auteur : Michael D. Bauer
Éditeur : O’Reilly
Langue : Anglais
Nombre de pages : 456 pages
ISBN : 059600705
Prix : 45,90 €

Voici le livre qui a des chances de vous surprendre configurer des services concrets. Nous trouvons aussi
avant de le lire. Si vous ne faites pas attention, vous une recette pour les configurations de programmes,
pourrez acheter l'ouvrage précédent de cet auteur, datant comme Sendmail et Postfix. Entre temps, nous tombons
de 2003. Pourqoui ? Parce que la couverture et le titre, sur des fragments très faibles où l'auteur dit tout simple-
Linux Server Security, sont similaires à la publication la ment qu'un service en question existe et peut provoquer
plus récente. Pourtant, si vous achetez le bon livre, vous des problèmes, comme par exemple, la base MySQL. Il
serez également surpis. est donc difficile de nous prononcer clairement sur son
Vous avez donc acquis un ouvrage dont la structure niveau ou sur les utilisateurs qu'il concerne. Nous pou-
n'est pas unie et le niveau n'est pas toujours le même. vons affirmer toutefois que cet ouvrage sera décidément
D'après le titre, nous pouvons nous attendre à un utile aux administrateurs débutants grâce aux conseils
ouvrage destiné plutôt aux utilisateurs avancés qui atten- détaillés concernant la configuration FTP, du service
dent non seulement un ensemble de bonnes pratiques DNS et SMTP. L'exemple de configuration Iptables et le
dans la configuration de services fragiles mais aussi les chapitre sur les IDS les plus populaires, comme Snort ou
conseils pour ne rien oublier et pour améliorer les solu- Tripware, seront donc très utiles. Les utilisateurs avan-
tions. Et l'ouvrage nous propose à la place les fragments cés trouveront aussi des points intéressants, à condition
des analyses théoriques (par exemple concept de fonc- d'être patients et de lire rapidement les descriptions de
tionnement de LDAP) et les descriptions détaillés pour points évidents.

Titre : Introduction aux scripts shell


Auteur : Arnold Robbins, Nelson H. F. Beebe
Éditeur : O’Reilly
Langue : Français
Nombre de pages : 580 pages
ISBN : 2-84177-375-2
Prix : 35,90 €

Les scripts shell dont parle le titre concernent la pro- aux autres utilisateurs qui souhaitent réaliser facilement
grammation sur la console texte, l'absence apparente de leurs propres solutions, sans forcément opter pour les
facilités et une technique très souple pour résoudre les langages de programmation typiques.
problèmes classiques et atypiques. L'ouvrage est très clair et vous avez la possibilité de
Dans la plupart de cas, les scripts complexes consti- passer au fur et à mesure aux questions de plus en plus
tuent des règles de démarrage, de fermeture et de con- difficiles, liées à la programmation de scripts. Les chapi-
trôle de déroulement. Pour pouvoir travailler avec eux, il tres expliquent aussi comment bien manipuler le shell et
faut savoir les manipuler. présentent ses commandes élémentaires.
Les commandes de shell offrent de grandes possi- Nous pouvons considérer cette publication comme
bilités, en ce qui concerne la réalisaton de tâches spé- un ensemble de cours où les auteurs analysent les outils,
cifiques, pour lesquelles aucun outil prêt n'existe pour leurs défauts, le fonctionnement et enseignent comment
l'instant. L'ouvrage présenté sera donc utile non seule- réaliser et modifier les scripts prêts. Ce deuxième point
ment aux administrateurs de systèmes Unix mais aussi suit le principe : « ne pas enfoncer une porte ouverte » ;
quelqu'un a déjà fait quelque chose de semblable, il
Les critiques sont proposées par Krystyna Wal et Łukasz suffit donc peut-être de modifier une partie pour obtenir
Długosz de l'équipe InfoProf (http://www.infoprof.pl). La Librai- une nouvelle solution, simple et souple et garder les stan-
rie Informatique Cracovie (http://www.informatyczna.pl) a aima- dards. Le livre peut s'avérer un ouvrage précieux pour les
blement prêté les livres aux critiques et les éditeurs Helion et programmeurs qui écrivent en langages compilés et pour
WNT les ont aimablement prêtés à notre rédaction. les administrateurs qui souhaitent apprendre davantage
sur la programmation de scripts.

hakin9 Nº 4/2006 79
Où sont passés
les anti-virus ?

Konstantin Klyagin
Éditorial

S
'il existait l'équivalent d'un Greenpeace pour défen- Explorer et Windows Media Player. Microsoft a été en
dre la sécurité informatique, et prendre soin des effet accusé, dans ces deux cas, de proposer ces appli-
espèces rares dans le monde des technologies cations avec son système d'exploitation. Déjà échaudé, il
informatiques, il ne laisserait probablement pas s'éteindre n'est guère difficile de comprendre que Microsoft ne sou-
une certaine créature parmi les plus fascinantes, qui fêtera haite pas prendre le même risque avec un anti-virus.
cet hiver son vingtième anniversaire d'existence. Que penser des utilisateurs qui ont du fait payé pour
Je veux bien sûr parler du premier virus sur PC, connu les produits Microsoft. Il s'agit pour la plupart d'entrepri-
sous le nom de Brain. Bien qu'il ne s'agisse pas du tout ses ou de clients de fabricants de matériel informatique
premier virus informatique (le premier étant apparu plus d'origine, ayant acheté Windows avec leur ordinateur. Je
tôt, en 1982 sur la plateforme Apple II), le virus Brain est suppose qu'ils n'ont aucun problème à connecter leur
aussi important dans le domaine des ordinateurs que ne ordinateur à Internet. En outre, ces utilisateurs sont pro-
l'est Brian Adams pour sa maison d'enregistrement. Avec bablement connectés en permanence.
l'invention du PC, les ordinateurs ont commencé à occuper En gros, cette situation suffit à ajouter un bouton
une place importante dans la vie quotidienne de leurs uti- télécharger l'anti-virus dans le panneau de configura-
lisateurs, et pas seulement aux yeux de ces scientifiques tion pour intégrer virtuellement le logiciel dans le kit de
rébarbatifs avec leurs lunettes toutes fines. En ce sens, les distribution. Un seul clic, et voilà un anti-virus installé
virus informatiques sont devenus un phénomène majeur. et prêt à l'emploi. Symantec et McAfee ont déjà déclaré
Un autre logiciel destiné à la plateforme Intel, créée qu'ils accepteraient Microsoft en tant que nouvel acteur
en 1985, soit un an avant le virus Brain, a survécu jusqu'à sur le marché des anti-virus et ne feraient appel à aucun
nos jours. Environnement graphique censé initialement organisme de régulation. Sans souhaiter la présence de
fonctionner de manière autonome, ce logiciel n'inscrivait Microsoft sur ce marché, force est de constater que cette
au début aucun code dans le secteur d'amorçage, et tour- fois tout est légal, le logiciel n'étant pas inclus, aucune loi
nait à la place sous le système d'exploitation MS-DOS. anti-trust ne peut être appliquée.
Aujourd'hui, après 21 ans de développement continuel et Si j'étais architecte de logiciels chez Microsoft, je con-
plusieurs versions successives, Windows est devenu lui- cevrais un composant anti-virus sous Vista de la façon
même un système d'exploitation, dont la toute nouvelle suivante : afin d'éviter un téléchargement trop long, je place-
version, Vista, est prévue pour cette année. Microsoft rais tous les codes des anti-virus dans les bibliothèques du
n'a pas l'intention de proposer de logiciel anti-virus avec système d'exploitation. Lorsque vous appuyez réellement
cette version, les nouvelles fonctionnalités de la marque sur le bouton, vous téléchargerez un programme EXE de 5
majeure Vista étant déjà sécurisées. kilooctets, chargé d'appeler tout simplement la fonction de
Permettez moi d'émettre des doutes quant à la raison l'interface de développement StartAntivirus(). Il ne peut,
avancée pour ne pas inclure d'anti-virus par défaut dans le avoir aucun problème avec l'interface de développement,
package de distribution. S'ils le pouvaient, les développeurs celle-ci étant de toute façon fermée.
de Microsoft intègreraient dans leur système d'exploitation Et que peuvent y changer Symantec, McAfee ou
un aspirateur dans l'unique but de vous convertir en utilisa- d'autres petits distributeurs d'anti-virus ? De nombreuses
teur dépendant de la technologie Microsoft. Et ce ne serait options se présentent à eux : prospecter d'autres seg-
pas une si mauvaise idée. Plus j'y pense, et plus l'idée me ments du marché semble judicieux. Finalement, l'option
semble alléchante. Non, vraiment, pourquoi aller chercher des aspirateurs n'est pas la pire. l
un aspirateur auprès d'autres fournisseurs, alors que mon
système d'exploitation préféré en possède déjà un ? Après
tout, une version originale ne vous coûtera pas moins de 60
À propos de l'auteur
Konstantin Klyagin, également connu sous le surnom de Konst,
dollars, sans compter le prix de l'ordinateur.
est ingénieur en solutions logicielles. Depuis sept ans, il travaille
Mais revenons à notre question initiale : où sont dans le domaine du développement de logiciels. Originaire de
passés les anti-virus ? La réponse est simple lorsqu'on Kharkov, en Ukraine, il habite à l'heure actuelle à Berlin. Pour
se souvient des batailles juridique menées par l'entre- plus de renseignements contactez : http://thekonst.net.
prise de Bill Gates au sujet des applications Internet

80 hakin9 Nº 4/2006 www.hakin9.org


Safety-Lab
Publicité

LOGICIEL PROFESSIONNEL DE SÉCURITÉ


Les bases de données et les infrastructures En raison de son architecture unique, Sha- trement d'une session de scan détaillé non seule-
qu'elles supportent constituent les points vitaux dow Database Scanner est le seul scanner de sé- ment au format traditionnel HTML (disponible chez
d'une organisation. Les bases de données con- curité au monde à pouvoir détecter des défauts 99% des autres scanners), mais aussi aux formats
tiennent, en effet, les données les plus précieu- sur MiniSql. Il s'agit également du seul scanner XML, PDF, RTF et CHM (HTML compilé).
ses d'une organisation (qu'elle soit financière, commercial capable de suivre plus de 300 audits La nouvelle interface du scanner est à la fois
personnelle, pour tenir des inventaires, ou traiter par système. conviviale et simple à utiliser. Elle a été optimisée
des cartes de crédit, etc.). Il est donc nécessaire Shadow Database Scanner supporte aujourd'hui de manière à faciliter l'accès aux principales fonc-
de prendre toutes les mesures nécessaires afin de les serveurs SQL suivants : MSSql, Oracle, IBMDB2, tions du programme.
rectifier les vulnérabilités présentes sur les bases MiniSql, MySQL, Sybase, SAP DB et Lotus Domino. La gestion des options de Shadow Database
de données. Shadow Database Scanner de Safety- Grâce à son architecture entièrement ouverte (re- Scanner est également très simple : tous les élé-
Lab sera votre ARME de DÉFENSE. posant sur ActiveX), n'importe quel professionnel ments clé de l'interface du programme sont dotées
Shadow Database Scanner de Safety-Lab vous maîtrisant VC++, C++ Builder ou Delphi a la possi- de fenêtres d'aide sous forme de bulles compre-
permettra de gérer votre base de données et ses bilité d'étendre très simplement les fonctionnalités nant une description concise des fonctions.
vulnérabilités, et d'analyser vos besoins en termes du scanner. L'assistant des mises à jour se charge de
de sécurité sur les serveurs SQL. Les organisations La technologie ActiveX permet également aux mettre à jour régulièrement les modules exécutifs
reposant sur Internet ont besoin d'une solution de administrateurs de système d'intégrer Shadow Da- du programme avec les informations de sécurité
sécurité sur leur base de données flexible, facile à tabase Scanner dans pratiquement n'importe quel les plus récentes, afin d'assurer à votre système
utiliser et capable de faire économiser des ressour- produit supportant ActiveX. une solide protection et une bonne résistance aux
ces de valeur. Dans la mesure où Shadow Database Scan- attaques malveillantes.
Le scanner de base de données de Safety-Lab ner propose un accès direct à son noyau, vous Safety-Lab propose également avec son nou-
répond à ces besoins, en proposant aux entrepri- pouvez utiliser l'interface de programmation veau produit un accès direct à son service Internet
ses de protéger leurs données et leurs informa- (pour de plus amples informations, veuillez Security Expert ainsi qu'une zone de télécharge-
tions sensibles sur un serveur SQL sécurisé. consulter la documentation sur l'interface de ment mise à jour quotidiennement.
Shadow Database Scanner (Shadow Database programmation) afin d'obtenir tous les accès Si vous souhaitez poser des questions, con-
Scanner – scanner de base de données) a été le à Shadow Database Scanner ou modifier ses naître les prix proposés aux acheteurs en gros et
fer de lance d'une nouvelle génération de logiciels propriétés et ses fonctions. Si vous maîtrisez aux revendeurs de logiciels, ou bénéficier d'of-
extrêmement performants, à la pointe de la tech- le fonctionnement de base des réseaux infor- fres commerciales, veuillez contacter Edward
nologie du 20ème siècle, et occupe toujours les pre- matiques et si vous avez trouvé de nouvelles Fitzgerald à l'adresse suivante : Edward@safety-
mières places du marché en ce début de nouveau brèches dans la sécurité de votre système, et lab.com. l
millénaire ! ce sans être programmeur professionnel, vous
Shadow Database Scanner a été développé dans pouvez contacter directement Safety-Lab ou
le but de proposer la détection sécurisée, rapide et utiliser l'assistant BaseSDK : celui-ci saura vous
fiable d'un large choix de failles sécuritaires présen- guider dans tout le processus de création d'un
tes sur les systèmes. Une fois le système scanné, nouvel audit. L'assistant BaseSDK vous permet-
Shadow Database Scanner analyse les données tra également d'ajouter plus de 95% de nouveaux Offre spéciale !
collectées, localise les vulnérabilités ainsi que les types d'audits. Safety-Lab propose aux lecteurs du magazine ha-
éventuelles erreurs de réglage du serveur, et suggère L'éditeur de règles et de paramètres est kin9 la version complète de Shadow Database Scan-
des résolutions envisageables des problèmes ren- l'outil idéal des utilisateurs désireux de scanner ner valable sur 2 adresses IP pendant 30 jours.
contrées. Shadow Database Scanner fait appel à un uniquement les ports et les services souhaités Vous devez indiquer 2 adresses IP de serveur
algorithme d'analyse de sécurité du système unique sans perdre de temps, ni de ressource, à scanner de base de données par email à l'adresse suivante :
fondé sur un concept intellectuel breveté. d'autres services. support@safety-lab.com.
Grâce à sa flexibilité de réglage, les administra- La version complète sera valable pendant
30 jours dès réception des adresses IP. Pour re-
teurs de système peuvent ainsi gérer la profondeur
cevoir dès à présent votre version, veuillez écrire
du scan à réaliser ainsi que d'autres options afin de
Contact : à support@safety-lab.com en indiquant dans l'objet
Safety-Lab profiter d'un scan de réseau extrêmement rapide de votre message hakin9-safety-lab-offer.
http://www.safety-lab.com/en sans aucune perte de qualité. Offre valable jusqu'au 30 septembre 2006.
Notre scanner est également doté d'une fonc-
tion unique permettant de sauvegarder l'enregis-

Publicité
hakin9 5/2006
Dans le numéro suivant, vous
trouverez, entre autres :
Dans le prochain
numéro

Puissante cryptographie
Lorsqu'on évoque la cryptographie, l'exemple d'un message électronique
aussi sécurisé que peut l'être une carte postale est souvent cité. La cryp-
Pratique
tographie permet de sécuriser et d'élever le niveau de confidentialité des
communications échangées via Internet en cryptant et/ou en signant les
messages. Selon Lars Packschies, la cryptographie garantie aux internautes
l'équivalent d'une vie privée à l'ère de l'information totale, d'où son impor-
tance accrue dans notre civilisation moderne.

Scan de ports et violation des droits


La propriété (telle que définie par la loi) est associée au serveurs, aux rou-
Focus
teurs et aux systèmes informatiques en général En tant que telle, la loi la
considère comme un bien meuble (chattels, en anglais). Ainsi, les serveurs
sont des biens meubles. Les données relèvent de la propriété intellectuelle.
Craig S Wright expose de manière fort intéressante le scan de ports et la
violation des droits dans son article.

Corrélation d'évènements avec Simple Event


Correlator (SEC) pour une surveillance en
Fiche technique temps réel
Lorsqu'il est question de sécurité des systèmes informatiques, les rapports
d'activité jouent un rôle fondamental. Aujourd'hui, de nombreuses applica-
tions, systèmes d'exploitation, dispositifs de réseau et autres composants
d'un système sont capables de rédiger des messages d'évènements liés à
la sécurité dans les fichiers journal. Risto Vaarandi présente dans son article
toutes les fonctionnalités du protocole syslog des systèmes BSD, standard
de rapports d'activité supporté par la majorité des systèmes d'exploitation et
des fournisseurs en équipements réseau. Ce protocole permet, entre autres,
de créer un serveur central de journal destiné à recevoir et à stocker les mes-
sages d'évènements issus de tout le système informatique.

Analyse différentielle des pares feu


Comment détecter des violations de sécurité sur un pare feu activé à l'aide
Fiche technique d'un système de détection d'intrusions sur le réseau, en comparant le trafic
en temps réel interne et externe, et alerter l'administrateur en cas de con-
tradiction avec les règles ? Arrigo Triulzi et Antonio Merola tenterons de
répondre à cette question en évoquant la possible utilisation d'un système
de détection d'intrusions sur le réseau (Network Intrusion Detection System,
ou NIDS) en tant qu'outil de vérification dans le cas particulier d'un échec du
pare feu.

Pour voir les informations actuelles sur le prochain numéro,


visitez la page http://www.hakin9.org/fr
Ce numéro sera disponible en vente début septembre 2006.
La rédaction se réserve le droit de modifier le contenu de la revue.

S-ar putea să vă placă și