Vous êtes sur la page 1sur 22

CBPF-NT-007/00

S ecurit e Informatique

Attaques Informatique

Jean-Olivier Gerphagnon , Marcelo Portes de Albuquerque & M arcio Portes de Albuquerque Centro Brasileiro de Pesquisas F sicas CBPF/CNPq Coordena c ao de Atividade T ecnicas CAT Rua Dr. Xavier Sigaud 150 22290-180 Rio de Janeiro RJ Brazil

Introduction

La s ecurit e informatique est de nos jours devenue un probl` eme majeur dans la gestion des r eseaux dentreprise ainsi que pour les particuliers toujours plus nombreux a ` se connecter ` a Internet. La transmission dinformations sensibles et le d esir dassurer la condentialit e de celles-ci est devenu un point primordiale dans la mise en place de r eseaux informatiques. Ce document a pour but de pr esenter globalement la mani` ere dont les Hackers op` erent an de p en etrer les syst` emes informatiques en esp erant quil aide a ` pallier a ` ce type de probl` eme de plus en plus fr equent. . .

Les m ecanismes dauthentication

Lauthentication est le premier rempart aux attaques informatique, il sagit la plupart du temps du couple nom dutilisateur/mot de passe (login/password). Cette premi` ere m ethode constitue une s ecurit e relativement able lorsquelle est bien utilis ee: mot de passe correct, condentialit e assur ee, chier prot eg e,. . . Elle pose tout de m eme certains probl` emes comme par exemple le cas o` u un utilisateur a besoin de se connecter sur plusieurs stations di erentes. Il va alors rapidement trouver cette m ethode dauthentication relativement lourde (consid erons que lutilisateur est une personne s erieuse qui poss` ede un mot de passe di erent sur chaque station ou que le r eseau utilise NIS (Network Information Service)).Il sera alors tenter dutiliser une m ethode moins contraignante: les services r*. Ces services (rlogin, rsh, rcp, . . . ) sont bas es sur une authentication beaucoup moins lourde pour lutilisateur mais egalement beaucoup moins s ure: ladresse IP de la station source ainsi que le nom dutilisateur. Ce type dauthentication est, malgr` es de nombreux probl` emes de s ecurit e, encore tr` es utilis e dans les r eseaux locaux actuels. Une autre m ethode dauthentication permettant un niveau de s ecurit e plus elev e utilise un serveur dauthentication (Authentication Server ) qui permet d eviter les probl` emes engendr es par lauthentication IP. Le serveur dauthentication re coit une demande de connection et, an de v erier que la station est bien celle quelle pr etend etre, etablit une seconde connection TCP avec la station source (qui ne sera donc pas sous le contr ole dun eventuel attaquant).

triton@softhome.net marcelo@cbpf.br mpa@cbpf.br

CBPF-NT-007/00

Une m ethode beaucoup plus s ecuris ee, mais plus contraignante et plus dicile a ` mettre en oeuvre, appell ee One-Time Password System (OTP) permet d eviter les probl` emes de circulation des mots de passe sur le r eseau (Sning,. . . ). Se sont des pseudo mots de passe qui circulent alors sur le r eseau et dont la validit e est restreinte ` a la dite connection. Le fonctionnement des One-Time Passwords peut se r esumer ainsi: le client demande une connection a ` un serveur, ce dernier renvoit un Challenge au client qui devra alors g en erer un One-Time Password ` a laide dun mot de passe (ou dune phrase) connu des deux stations ainsi que du Challenge re cu. Ce pseudo mot de passe sera alors retransmis au serveur qui pourra ainsi le v erier et autoriser (ou non) la connection. Actuellement, le programme Secure Shell est tr` es appr eci e, il peut apporter la facilit e des authentications par adresses IP tout en assurant une tr` es bonne s ecurit e gr ace ` a un syst` eme dencryptage des donn ees qui transitent sur le r eseau. Il utilise pour cela un m ecanisme dencryptage assym etrique (principe des cl es publiques et priv ees) bien connu. Il sagit du syst` eme RSA (Rivest, Shamir, Aldeman). Cette solution peut permettre aux utilisateurs de ne pas etre oblig e dentrer a ` chaque fois leur mot de passe tout en evitant les probl` emes des services r* ou du telnet (Sning ). Dautres m ethodes dauthentication existent egalement, comme par exemple Kerberos (gestion de tickets), SSL (Secure Socket Layer), S-HTTP (Secure HTTP), les signatures digitales (Digital Signature ) et les certications. . .

Principe de fonctionnement des Firewalls

En informatique, un Firewall est un p eriph erique ou un ordinateur qui prot` ege la partie priv ee dun r eseau de la partie publique. Cest en r ealit e l el ement qui permet de distinguer la partie priv ee du r eseau de celle que lon nommera publique (Internet,. . . ), lui seul peut donc en atteindre les deux extr emit es. Il permet donc de prot eger le r eseau priv e d eventuelles attaques provenant d Internet et peut egalement contr oler certaines actions eectu ees de lint erieur du r eseau priv e. Il y a en r ealit e deux principaux types de Firewall : Firewall IP Filter ou Chokes : ce type de Firewall travail au niveau des paquets transmis sur les r eseaux, il permet de contr oler le ux de paquets en fonction de lorigine, de la destination, des ports et du type dinformation contenue dans chacun deux. Cest un syst` eme relativement facile ` a mettre en place en instaurant un certains nombre de r` egles permettant de contr oler les paquets entrants ou sortants du r eseau priv e. Il sagit soit dun ordinateur soit dun p eriph erique de communication permettant de restreindre le ux de paquets entre les r eseaux. Gates : il sagit dun programme, dun p eriph erique ou dun ordinateur qui re coit les connections des r eseaux externes et les retransmet dans le r eseau priv e. Aucun utilisateur nest autoris e` a acc eder ` a ce Gate pour des raisons de s ecurit e ( seule une connection sur la console par ladministrateur est autoris ee ). Sur ce Gate, un ou plusieurs des programmes suivants doivent etre utilis es: Network Client Software : les utilisateurs doivent, dans cette conguration, avoir un compte sur le Gate pour pouvoir utiliser des applications tels que ftp, telnet, netscape. . . Les utilisateurs doivent donc se connecter sur le Gate an dacc eder ` a lext erieur. Cest un syst` eme facile ` a mettre en place mais tr` es peu s ecuris e du fait de lacc` es dutilisateurs sur l el ement protegeant la partie priv ee de la partie publique. Proxy Server : un Proxy est un programme qui transmet les donn ees quil re coit a ` un autre programme situ e sur une autre machine du r eseau. Dans le cas dun Firewall,

CBPF-NT-007/00

un Proxy sert ` a forwarder une requ ete ( Web, FTP,. . . ) a ` travers le Firewall du r eseau interne au r eseau externe. Network Server : il est egalement possible de lancer des serveurs (daemon ) comme par exemple Sendmail sur le Gate an de fournir dautres services aux utilisateurs. Par contre, il nest pas conseill e dinstaller un serveur Web comme Apache sur un Gate pour des raisons de s ecurit e.

Voici quelques exemples de congurations pour lutilisation dun Firewall :

4
4.1

Techniques de Hacking
Ling enierie sociale & lirresponsabilit e

Lorsque quelquun d esire p en etrer dans un syst` eme informatique, sa premi` ere arme est le baratin. Il ny a g en eralement pas dattaques r eussies sans relations humaines. On appel ceci ling enierie sociale (social engineering ), elle est bas ee sur quatres grands principes: Le contexte : en ayant une bonne connaissance de lorganigramme de lentreprise cela permet ` a lagresseur davoir dores et d ej` a un pied dans lentreprise. Le but en g en eral est de conna tre quelles sont les personnes qui sont en droit de demander tels ou tels informations, et egalement ` a qui les demander, dans le but de se faire ult erieurement passer pour elles. . . Laudace ou le blu : le bagout et lart de la parole sont deux qualit es indispensables lorsque lon veut utiliser le social engineering . lI sagit ici davoir susament dappoint et de connaissances techniques an de faire croire a ` linterlocuteur quil a aaire a ` un responsable technique de lentreprise (ou dun fournisseur de service). Tout ceci an quil lui transmette les informations demand ees sans aucun probl` eme. La chance : la chance est egalement une part importante dans le social engineering , cela ne marche pas ` a chaque fois ! Il faut de la pratique an de bien ma triser le s equencement du dialogue a ` etablir. La patience calcul ee : il faut de plus savoir se montrer patient an dobtenir les informations d esir ees. Malg` es tout, la m ethode du social engineering demande une certaine rapidit e ( max. 1 heure ) pour obtenir les informations voulues, pass e ce d elais, il est pr ef erable de changer dentreprise ou dattendre quelques jours an de ne pas eveiller les soup cons. . . En g en eral, les personnes ne sont pas form ees ` a la notion de s ecurit e informatique ce qui entra ne des situations qui auraient facilement p u etre evit ees. A titre dexemples, voici quelques cas fr equemment trouv es au sein des entreprises: Disquettes ou sauvegardes jet ees ` a la poubelle sans etre d etruites au pr ealable. La plupart des Hackers sont friants des poubelles des entreprises quils d esirent p en etrer car elles recellent toujours dinformations tr` es pr ecieuses: chiers de mots de passe, informations sur le syst` emes, heures des sauvegardes, heures de connection des administrateurs,. . . Il faut donc toujours veiller a ` v erier les informations stock ees sur les disquettes et/ou les sauvegardes qui seront jet ees ` a la poubelle. La meilleure solution consiste ` a les d etruire an de les rendre inutilisables.

CBPF-NT-007/00

Figure 1: Firewall utilisant une station UNIX equipp ee de deux ports r eseau, un pour le r eseau priv e et un pour le r eseau publique. Pour un maximum de s ecurit e, on interdira les comptes utilisateurs sur cette station et on installera un Proxy pour que les informations traversent le Firewall.

Figure 2: Il sagit de ltrer les paquets a ` laide dun Choke. On pourra ici utiliser un routeur pour s electionner les paquets ( TCP ou UDP ) qui sont autoris es et pour quels services. Il sagit dune conguration facile a ` mettre en place et tr` es utilis ee actuellement.

CBPF-NT-007/00

Figure 3: Il sagit dun type de Firewall plus s ecuris e utilisant ` a la fois un Choke et un Gate. Le Gate doit etre un ordinateur sp ecique sur le r eseau faisant tourner le serveur de mail ainsi que le Proxy (le serveur Web et le serveur FTP anonyme doivent etre install es sur une autre machine devant le Firewall ). Le Choke peut- etre un routeur avec deux interfaces permettant de relier le Gate et le r eseau interne.

Figure 4: Pour une plus grande s ecurit e, ce type de Firewall est pr econis e. Dans cette situation, si un intrus arrive a ` prendre le contr ole du Gate, il reste encore un troisi` eme rempart permettant d eviter quil ne puisse utiliser le Gate pour lancer une attaque contre le reste du r eseau priv e.

CBPF-NT-007/00

Papiers ou Post-It o` u lon note ses mots de passe qui seront par la suite jet es ` a la poubelle (m eme cas quau pr ealable), ou encore pos es sur le bureau ou coll es dans un tiroir an de toujours lavoir a ` port e de main. Il peut sav erer utile dinscrire son mot de passe sur un papier lorsquil est impos e par un administrateur mais il est pr ef erable de pouvoir le xer soit m eme en respectant un certains nombre de r` egles visant ` a rendre sa m emorisation facile mais sa d ecouverte tr` es dicile (il est tr` es facile pour un Hacker de lancer un programme qui tentera de le casser en utilisant une liste de mots de passe pr e- etablie). Dans tous les cas, il faut veiller a ` conserver la condentialit e de ses mots de passe et donc den eliminer toutes traces facilement accessibles (lisibles). Les echanges de mots de passe sont egalement tr` es fr equents. Ceci doit etre evit e au maximum car lidentit e de lutilisateur nest plus assur ee. Les actions quil engendre alors lui seront peut- etre reproch ees alors quil sagissait dun tiers a ` qui il avait eut le malheur de coner son mot de passe. Le couple nom dutilisateur (Login) et mot de passe (Password) est personnel et ne doit en aucune mani` ere etre transmis ` a quelquun dautre m eme pour rendre service. . . Il sagit ici du principe m eme du Hacking, les Hackers savent o` u trouver linformation et ensuite comment techniquement sen servir an de p en etrer les syst` emes informatique. Les sections suivantes visent ` a pr esenter, de mani` ere non exhaustive, ces di erentes techniques permettant aux Hackers de passer outre les Firewalls et les syst` emes dauthentication.

4.2

Les Denial-of-Service (DoS)

Les attaques de type Denial-of-Service ont pour but de saturer un routeur ou un serveur an de le crasher ou en pr eambule dune attaque massive. Ces types dattaque sont tr` es faciles ` a mettre en place et tr` es dicile ` a emp echer (cqfd. ` a arr eter ). Mais quelles sont les raisons qui peuvent pousser un attaquant a ` utiliser les DoS en sachant que cela peut mener ` a la destruction du routeur ou du serveur vis e: R ecup erer un acc` es : une attaque de type Denial-of-Service fait, la plupart du temps, partie dune attaque visant a ` obtenir le contr ole dune machine ou dun r eseau. Par exemple lattaque de type SYN Flood, tr` es r ependue, est souvent utilis ee de paire avec une tentative de Spoong ( cf. ci-dessous ). Masquer les traces : ce type dattaque permet egalement de crasher une station qui par exemple aurait p u contenir des traces du passage dun Hacker . En d etruisant cette station, il sassure ainsi une certaine p er enit e. Se venger : tr` es fr equemment, ces attaques sont utilis ees an dassouvir une vengeance personnelle contre une personne, un administrateur ou bien encore une entreprise. . . ... Voici quelques exemples de programmes disponibles sur Internet permettant de r ealiser ce genre dattaque: Ping O Death : il sagit de saturer un routeur ou un serveur en envoyant un nombre important de requ etes ICMP REQUEST dont les datagrammes d epassent la taille maximum autoris ee. Des patches existent an de se pr emunir de ce type dagression sous les syst` emes MacOS, Windows NT/9x, Sun Solaris, Linux et Novell Netware. Land - Blat : cette attaque permet de geler la plupart des syst` emes ayant plus ou moins un an. Il sera alors obligatoire de red emarrer la machine an den reprendre le contr ole. Il

CBPF-NT-007/00

sagit denvoyer un paquet forg e (spoof e ) contenant le ag SYN sur un port donn e (comme 113 ou 139 par exemple) et de d enir la source comme etant ladresse de la station cible. Il existe un certains nombre de patches pour ce bug pour les syst` emes UNIX et Windows. Jolt : sp ecialement destin ee aux syst` emes Microsoft (NT, 9x et 2000), cette attaque permet de saturer le processeur de la station qui la subie. La fragmentation IP provoque, lorsque lon envoie un grand nombre de fragments de paquets identiques (150/sec), une saturation totale du processeur durant toute la dur ee de lattaque. Des pr e-patches existent d ej` a pour tenter de contrer ce type dattaque. TearDrop - SynDrop : probl` eme d ecouvert dans le noyau du syst` eme Linux dans la partie concernant la fragmentation des paquets IP. Il sagit dun probl` eme de reconstruction du paquet. Lorsque le syst` eme reconstitue le paquet, il ex ecute une boucle qui va permettre de stocker dans un nouveau buer tous les paquets d ej` a re cus. Il y a eectivement un contr ole de la taille du paquet mais uniquement si ce dernier est trop grand. Sil est trop petit cela peut provoquer un probl` eme au niveau du noyau et planter le syst` eme (probl` eme dalignement des paquets). Ce probl` eme a egalement et e observ e sur les syst` emes Windows (NT/9x) et des patches sont d` es ` a pr esent disponibles. Ident Attack : ce probl` eme dans le daemon identd permet ais ement de d estabiliser une machine UNIX qui lutilise. Un grand nombre de requ etes dauthorization entra ne une instabilit e totale de la machine. Pour eviter cela, il faut installer une version plus r ecente du daemon identd ou alors utiliser le daemon pidentd-2.8a4 (ou ult erieur). Bonk - Boink : m eme probl` eme que le TearDrop mais l eg` erement modi e an de ne pas etre aect e par les patches fournis pour le TearDrop. Il existe de nouveaux patches mieux construits qui permettent egalement d eviter ce nouveau type dattaque. Smurf : ce programme utilise la technique de lICMP Flood et lamplie de mani` ere ` a cr eer un v eritable d esastre sur la (ou les) machines vis ees. En fait, il utilise la technique du Broadcast Ping an que le nombre de paquets ICMP envoy es ` a la station grandisse de mani` ere exponentielle causant alors un crash presque in evitable. Il est dicile de se prot eger de ce type dattaque, il nexiste aucun patches mais des r` egles de ltrage correctes permettent de limiter son eet. WinNuke : il sagit encore dun programme permettant de crasher les syt` emes Windows NT/95 par lenvoie de donn ees de type OOB (Out Of Band) lors dune connection avec un client Windows. NetBIOS semble etre le service le plus vuln erable ` a ce type dattaque. Appraremment, Windows ne sait pas comment r eagir a ` la r eception de ce type de paquet et il panique. . . De nombreux patches existent contre ce type dattaque et les versions r ecentes de Windows (98/2000) sont d` es ` a pr esent prot eg ees.

4.3

LIP Spoong

La technique de lIP Spoong est une technique dont le principe est relativement ancien (aux alentours de 1985) mais la premi` ere attaque connue lutilisant ne remonte qu` a 1995. Kevin Mitnick, un c el` ebre Hacker , la utilis e an de sinlter dans le r eseau dun expert en s ecurit e informatique, Tsutomo Shimomura. Le Spoong nest pas lattaque en tant que tel, il sagit dune technique permettant de sinltrer dans un ordinateur en se faisant passer pour un autre en qui il a conance (Trusted Host). Avant de rentrer dans des d etails plus techniques, voici un bref r esum e du fonctionnement de cette technique: une station se fait passer pour une autre en envoyant un paquet dont ladresse IP est autoris ee par le serveur vis e. . . La source IP envoy ee trompe donc la cible qui accorde lacc` es en pensant avoir aaire ` a une machine de conance. Il existe di erents types de Spoong,

CBPF-NT-007/00

nous naborderons ici que les notions dIP Spoong, celles ayant attraits aux DNS Spoong, Web Spoong,. . . ne seront donc pas pr esent ees. En ce qui nous concerne, il existe deux types dIP Spoong qui di` erent par les moyens n ecessaires ` a leur application. 4.3.1 Non Blind Spoong (NBS)

Dans ce contexte, lutilisation de la technique du Spoong a pour but dinterf erer avec une connection dont les paquets traversent un sous-r eseau dont le Hacker a acc` es. Il peut donc ais ement capturer et analyser les paquets qui sont echang es. En g en eral, cette technique est utilis ee lorsquil sagit dinteragir entre deux machines du m eme sous-r eseau ou alors il faut avoir un acc` es sur un routeur important (transatlantique par exemple) - la place r ev ee pour un Hacker. Comme les paquets doivent imp erativement traverser le sous-r eseau, il est tr` es facile de r ecup erer les paquets et dobtenir les num eros de s equence (SEQ) et dacknowledgment (ACK). Ce type de Spoong est principalement utilis e pour les trois attaques suivantes:

Figure 5: Conguration n ecessaire pour le Non Blind Spoong : lordinateur A va demander une connection sur lordinateur C alors que lordinateur B espionne le trac sur le r eseau local. Il est donc possible pour lordinateur B dinterrompre la relation entre A et C puis de se faire passer pour lordinateur A car il a acc` es aux num eros de s equence (SEQ) et dacknoledgment (ACK).

SYN Flooding : le but du SYN Flooding est douvrir ` a moiti e un nombre de connection d epassant la taille du backlog (queue permettant de stocker les connections en attentes de n douverture, cest-` a-dire la terminaison du 3-way handshake TCP) qui est limit ee en g en eral a ` 5 sous BSD (` a 6 sous Linux). Cela a pour eet de bloquer totalement les nouvelles demandes de connection vers la station vis ee. Voil` a bri` evement comment cela sav` ere possible: la station B envoie un paquet de type SYN forg e (spoof e en tant que station A) vers la station C. Lorsque la station A est inaccessible (unreachable) la station C va alors attendre une r eponse (notion de timeout), dans le cas contraire (station A accessible), ce type dattaque na aucun eet sur la station C car elle indiquera quaucune demande de connection na et e eectu ee de sa part. En ex ecutant cette op eration un grand nombre de fois, la station C ne va plus pouvoir r epondre aux nouvelles demandes de connection et deviendra alors inacessible (et certainement instable). Connection Killing : dans ce cas de gure, lobjectif est de faire stopper une connection TCP, pr ec edemment etablie, entre deux stations (ici entre A et C). Il existe deux techniques pour eectuer ce type dattaque, toutes les deux sont bas ees sur le Spoong et sur les ags TCP. La premi` ere utilise le ag RST (Reset) alors que la seconde utilise le ag FIN (Fin). La seconde est plus dicile a ` mettre en oeuvre car elle exige que les

CBPF-NT-007/00

num eros de s equence et dacknolegment soient tous deux corrects (ce qui nest pas le cas de la premi` ere: seulement les num eros de s equence). Voici donc comment fonctionne la m ethode utilisant le ag RST (la seconde est bas ee sur le m eme principe avec le num ero dacknolegment en plus): il faut tout dabord attendre un paquet en provenance de la station B a ` destination de la station A. Ensuite, il faut calculer ` a partir du (ou des) paquets re cus le num ero de s equence ` a indiquer dans le paquet, contenant le ag RST, que nous allons envoyer a ` la station C (rappel du calcul des num eros de s equence et dacknoledgment sur la gure 6). Il ne reste plus qu` a envoyer le dit paquet et la connection sera logiquement rompue.
A
Port X SYN SYN, ACK ACK TCP Connection {3 ways handshake}

B
Port Y

SEQ=x, ACK=y Time Data Exchange [principe] SEQ=y, ACK=x + data size

SEQ=1, ACK=8 data size = 2 bytes Data Exchange [example] SEQ=8, ACK=10

TCP Exchange

Figure 6: Connection et principe des echanges dans le protocole TCP (Transport Control Protocol).

Connection Hijacking : ce type dutilisation de lIP Spoong est relativement plus int eressante (en terme dacc` es) que les deux pr ec edentes. La Connection Hikacking permet de sinltrer dans une connection TCP existante dans le but de lutiliser pour son propre int eret. Pour cela, il faut qune connection TCP utilisant par exemple Telnet soit d ej` a etablie entre deux stations (A et C dans notre cas). Comme toujours, nous avons egalement besoin dune troisi` eme machine (B) pour analyser les paquets emis sur le r eseau. Cette technique n ecessite plus de pr ecision que les deux pr ec edente car il faut savoir jongler avec les num eros de s equence (SEQ) ainsi quavec les num eros dacknoldgement. Voici en quelques lignes comment fonctionne ce type dattaque: lobjectif de cette manipulation est de r ecup erer une connection existante, on dit Hijacker une connection. Le protocole TCP s epare les bons des mauvais paquets a ` laide de leurs num eros SEQ/ACK. Si lon arrive a ` faire en sorte que la station C ne croit plus aux paquets de la station qui avait etablie la connection (station A) mais par contre aux paquets forg es par la station B (paquets spoof es en tant que station A) il est possible de continuer a ` proter de la connection en utilisant des paquets de num eros SEQ/ACK valides pour la station C. Une fois arriv e` a ce niveau, nous avons r ecup er e la connection: la station A est perdue et la station C accepte sans probl` eme nos donn ees.

CBPF-NT-007/00

10

La question qui se pose alors est: Comment faire en sorte que la station A emette des paquets dont les num eros SEQ/ACK soient rejet es par la station C ?. Il sut simplement dins erer, au bon moment, dans le eau de donn ees, un paquet suppl ementaire que seuls les stations B et C connaitront. Dans ce cas, le serveur C acceptera bien les donn ees et mettra ` a jour le num ero dacknoledgment (ACK). La station A continuera de tenter denvoyer des paquets avec lancien num ero de s equence (SEQ) qui ne seront donc plus accept es par le serveur B. La gure 7 pr esente ` a laide de paquets TCP le fonctionnement de cette technique. Cette technique nest utile que pour p en etrer les syst` emes utilisant des syst` emes dauthentication de type One-Time Password. Lutilisation de ces syst` emes rend lutilisation des techniques de Sning inop erantes car les mots de passe ne sont jamais transmis sur le r eseau (notion de Challenge, cf. Les m ecanismes dauthentication). 4.3.2 Blind Spoong (BS)

La technique du Blind Spoong (aveugle) n ecessite une tout autre conguration que pour le Non Blind Spoong (cf. gure 8). Lavantage est quelle ne requi` ere pas que lattaquant (Hacker Server) soit capable de capturer les paquets emis par la station cible (Target Host). Cest pourquoi cette technique est appell ee aveugle. Lattaquant doit donc pouvoir pr edire les paquets qui seront envoy es par la station quil d esire attaquer. An dutiliser le Blind Spoong, il est n ecessaire de conna tre les adresses IP de quatre stations: La cible vis ee (Target Host). Une machine de conance pour la cible vis ee (Trusted Host). Une adresse dont la station nest pas accessible sur le r eseau (unreachable). Un attaquant. . . (Hacker Server). Lutilisation de cette technique est bas ee sur le principe de la relation de conance quil est possible dinstaurer entre deux machines a ` laide par exemple des syst` emes utilisant les chier /etc/hosts.equiv ou les chiers ~/.rhosts. En utilisant ces m ecanismes, lauthentication se fera uniquement par v erication de ladresse IP (Internet Protocol) de la station qui demande la connection (pas de v erication didentit e` a laide dun mot de passe par exemple). Dans ce contexte, le Spoong peut sav erer int eressant. . . . Lattaque a ` proprement parl e va se d erouler en cinq etapes bien distinctes: Choix de la station cible (Target Host) selon des crit` eres personnels: d es technique, vengeance,. . . Recherche et d ecouverte dune station de conance (Trusted Host) (showmount, rpcinfo,. . . ). Elimination de la station de conance et sampling des num` eros de s equence TCP. Tentative de forgeage de paquets IP en tant que station de conance et connection sur la machine cible. Mise en place dune Backdoor (cf. section suivante). Le principe de fonctionnement est relativement simple, la station attaquante (Hacker Server) va tenter de se faire passer pour une station de conance (Trusted Host) aux yeux de la station cible (Target Host). Il sagit, une fois que la station de conance a et e trouv ee, de rendre inaccessible (unreachable) cette derni` ere (` a laide dun DoS par exemple) an quelle

CBPF-NT-007/00

Figure 7: Pr esentation de la technique de Connection Hijacking ` a laide d echanges de paquets TCP. Les trois premiers paquets echang es entre le Client (A) et le Serveur (C) montre le type de paquet transmis lors dune connection en telnet. Le paquet suivant provient de lattaquant (B) qui forge un paquet en se faisant passer pour la station A. Le serveur va alors, dans le paquet suivant, retourner les informations a ` la station A, ce paquet passera par la station B qui pourra alors renvoyer un acknoledgement. Les num eros de s equence (SEQ) et d acknoledgment ont donc chang es et le client (A) ne peut plus alors envoyer des paquets valides pour le serveur (C). . .

Client A 192.168.8.1 Port 1040 (> 1024) 1 byte (01) SEQ=5C8223EA, ACK=C34A67F6 ACK. PUSH (Shell Command)

Hacker B 192.168.8.194 = 192.168.8.1

Server C 192.168.10.23 Port 23 (telnet)

SEQ=C34A67F6. ACK=5C8223EB ACK. PUSH (Server Return) 0 byte (00) SEQ=5C8223EB. ACK=C34A67F7 ACK (Acknoledgment)

1 byte (01)

10 bytes (0A) SEQ=C34A67F7 ACK=5C8223F5 ACK, PUSH (Server Return) IGNORE ! SEQ/ACK invalids

SEQ=5C8223EB. ACK=C34A67F7 ACK. PUSH (Shell Command) 5 bytes (05) SEQ=5C8223F5, ACK=C34A67FC 5C8223F5= 5C8223EB + 0A

0 byte (00)

ACK (Acknoledgment)

10 bytes (0A) TimeOut

SEQ=5C8223EB, ACK=C34A67F7 ACK, PUSH (Shell Command) SEQ=5C8223EB, ACK=C34A67F7 ACK, PUSH (Shell Command) 5 bytes (05) SEQ=5C8223F5, ACK=C34A67FC ACK, PUSH (Shell Command)

C34A67FC= C34A67F7 + 05 Reject, bad SEQ/ACK

10 bytes (0A) 10 bytes (0A) Reject, bad SEQ/ACK

11

CBPF-NT-007/00

12

Figure 8: Exemple de conguration des stations lors dune attaque de type Blind Spoong. La station attaquante est le Hacker Server dadresse IP 194.206.11.194, la station inacessible (permettant lattaque de type Denial Of Service ) est celle dadresse 195.202.202.90, la station de conance est 193.48.250.216 et enn, la cible 152.84.253.23 (derri` ere une passerelle: 152.84.253.1). On pourra noter que les adresses IP sont bien de sous-r eseaux di erents.

CBPF-NT-007/00

13

ne puisse par interf erer avec la tentative dattaque. Ensuite, il est n ecessaire d etablir une premi` ere connection avec la station cible an de se faire une id ee pr ecise de l etat actuel des num eros de s equence (SEQ) et dacknoledgment. Pour cela, une simple connection sur un port TCP quelconque (SMTP par exemple), juste avant de lancer une attaque, permettra dobtenir le num ero de s equence initial fournit par la station cible (il sera judicieux deectuer cela plusieurs fois an egalement dobtenir un RTT (Round Trip Time) moyen). A partir de l` a, il est possible de tenter de forger un paquet IP (le plus rapidement possible) a ` destination de la station cible en se faisant passer pour la station de conance. Le probl` eme etant que lattaquant ne voit pas les paquets qui vont etre emis par la station cible, il faudra donc quil arrive a ` les pr edire an de r eagir en cons equence.

4.4

Les Backdoors

Depuis que les intrusions informatique existent, leurs ad` eptes ont mis au point un certains nombre de techniques leur facilitant lacc` es aux syst` emes p en tr es. La technique la plus connue, et sans doute la plus utilis ee, est celle des Backdoors (portes d erob ees ou portes de service). Elles permettent, a ` celui qui en connait lexistence et le fonctionnement, de revenir sur un syst` eme de fa con d etourn ee, cest-` a-dire sans passer par les m ethodes dauthentication habituelles. En r` egle g en eral, les Backdoors permettent di erents types dactions sur le syst` eme o` u elles sont install ee: se reconnecter sur la machine m eme apr` es un changement de mots de passe ou dajouts de syst` emes de s ecurit e. rendre invisible les connections et les actions r ealis ees. faciliter lacc` es ` a la station sans avoir ` a utiliser des trous de s ecurit e existants (security holes). d eranger le travail des utilisateurs par lenvoie de messages, la modication de chiers, lachage dimages, la lecture de chiers son. . . ex ecuter certaines commandes bien cibl ees permettant davoir une vision de l etat de la station (processus, connections r eseau, utilisateurs. . . ) ou de modier le contenu de certains chiers de conguration (mots de passe, r eseau,. . . ). Il existe di erents types de Backdoors, certaines nont une utilit e quune fois lacc` es ` a la station accord e, dautres permettent par exemple de contourner les di erents types de Firewalls. Voici quelques exemples de Backdoors fr equemment trouv ees sur les syst` emes UNIX: Password Cracking : il est possible de faire tourner (on dit aussi mouliner) un programme permettant de casser lencryption des mots de passe du syst` eme (le logiciel Crack par exemple). Ainsi, lintrus peut obtenir de nouveaux comptes sur la machine et tenter de sen servir sur dautres stations du r eseau. Il est egalement possible de rechercher les comptes qui ne sont jamais (ou tr` es rarement) utilis es et qui ont des mots de passe trop faciles. Il sagit ensuite de modier leurs mots de passe an de sassurer que ladministrateur ne les changera pas de sa propre initiative (en v eriant les mots de passe a laide du programme Crack par exemple). ` Rhosts + + : les service r* utilisent les adresses IP comme moyen dauthentication (cf. section sur les m ethodes dauthentication). Les chiers ~/.rhosts permettent dindiquer quelles sont les machines et les utilisateurs autoris ees ` a se connecter sans autres formes dauthentication. Il est donc facile de rajouter dans ces chiers une entr ee permettant dautoriser toutes machines et tous utilisateurs ` a se connecter (lentr ee + +).

CBPF-NT-007/00

14

Login : en modiant le programme de login (chier login.c), il est possible dajouter un mot de passe ou un nom de login sp ecial permettant dacc eder au syst` eme sans avoir de v erications r eelles de lidentit e de lutilisateur. Telnetd : les administrateurs v erient fr equemment le chier binaire de login sur les stations UNIX a ` laide de la commande strings (achage des cha nes dans un chier binaire). De ce fait, il peut etre pr ef erable de modier le chier in.telnetd en ajoutant un compte sp ecial ou encore en evitant la proc edure dauthentication si le terminal de connection est d eni selon un certains type. . . Network Services : ce type de Backdoor est bas e sur le m eme principe que pour la pr ec edente. Il sagit de modier les d emons pour les services tels que FTP, rsh, rlogin, finger,. . . Il est egalement possible de cr eer son propre d emon avec un protocole r eseau bien d eni puis de le rajouter dans le chier de conguration /etc/inetd.conf. Cronjob : la crontab permet de planier lex ecution de certaines t aches ` a des heures bien d enies. Il sut donc de lancer un d emon ` a une certaine heure donn ee (durant la nuit de pr ef erence) donnant alors lacc` es au syst` eme. On peut egalement modier le code source dun des programmes d ej` a ex ecut es par la crontab an quil fournisse ce type de service. Shared Library : pratiquement tous les syst` emes UNIX actuels utilisent des librairies partag ees (Shared Library). Ces derni` eres permettent la r eutilisation de routines sans avoir a les int ` egrer directement dans le chier binaire. Il est donc possible de modier certaines routines utilis ees par les proc edures dauthentication (la fonction crypt() par exemple) pour que dans certaines conditions elles accordent lacc` es sans r eelles v erications. System Kernel : le noyau (Kernel ) est la base d enissant comment le syst` eme tout entier fonctionne. Il est donc egalement possible de tenter dinclure certaines fonctions dans le noyau agissant en tant que Backdoors. File System : ce type de Backdoor ne vise pas ` a conserver le contr ole de la station mais y participe activement en permettant de cacher certains chiers et r epertoires o` u sont g en eralement stock e les programmes utilis es par les Hackers. Il faut donc modier les programmes comme ls, du, fsck,. . . an de masquer ces chiers et r epertoires. BootBlock : il est possible de rajouter, dans le BootBlock du syst` eme, des morceaux de code visant ` a donner acc` es au syst` eme sans aucune authentication apr` es un red emarrage. Process Hiding : limportant pour un intrus est de ne pas se faire rep erer par un administrateur un peu trop curieux. Les processus sont la premi` ere chose qui pourrait le trahir. Pour eviter cela, il faut modier le programme ps (le programme top egalement) an que certains processus napparaissent pas lors de lachage des processus sur le syst` eme. On peut, plus facilement, renommer les programmes ou encore modier la variable argv[] dans un programme ecrit en langage C. Il est facile de trouver sur Internet des archives combinant plusieurs de ces Backdoors, se sont les RootKits. Chaque syst` eme en poss` ede une d edi e an d etre assur e de son bon fonctionnement. En plus de ces Backdoors, les Hackers tiennent a ` ne pas laisser de traces au niveau de leurs activit es sur le r seau. Une connection sur le port telnet (23) est souvent monitor ee et donc visible pour ladministrateur, il en est de m eme pour les routeurs qui d enissent des r egles de ltrage qui ne laisseront pas passer une connection de ce type de lext erieur vers lint erieur du r eseau. Un certains nombre doutils ont donc et e d evelopp e an de contourner ce type de

CBPF-NT-007/00

15

probl` eme. Ils utilisent, souvent, le m eme principe que le remote login (rlogin) mais avec des ports sup erieurs ` a 1024 (ports souvent moins contr ol es et ne faisant pas partie des ports dits s ecuris es.) ainsi quun protocole r eseau propri etaire. Voil` a les trois grandes familles de Shell Backdoors que lon peut actuellement trouver: TCP Shell : il est possible dinstaller des remote shells sur des ports TCP susament elev es (High Port Numbers) pour ne pas etre contr ol es par le routeur ou monitor es par le syst` eme de logs. Cela permet souvent de pouvoir eviter les Firewalls. Il est egalement possible de modier un d emon TCP (comme SMTP par exemple) an quil puisse fournir dautres services que ceux pour lesquels il etait destin e: shell, ex ecution de commandes,. . . UDP Shell : en r` egle g en eral le trac TCP est relativement contr ol e, certains Hackers pr ef` erent donc contourner le probl` eme en utilisant le protocole UDP (User Datagram Protocol). Par exemple, il est int eressant dinstaller des Backdoors sur les services relevant du DNS (named ou bind) car ils utilisent le port 53 (domain) qui est rarement contr ol e tant par les ltres que par les syst` emes de logs. ICMP Shell : la commande ping est sans aucun doute la plus utilis ee lorsquil sagit de v erier la pr esence dune station sur le r eseau. Il est possible de modier le contenu des paquets ICMP an de permettre l echange de donn ees ` a travers ce protocole. N etant pas, a lorigine, un protocole d ` echange de donn ees mais dinformations, lICMP est rarement stopp e par les Firewalls et encore plus rarement monitor e. En plus de cela, il est tr` es courant aujourdhui dutiliser des algorithmes de cryptage rendant encore plus dicile la d ecouverte des Backdoors car ladministrateur ne peut pas comprendre les donn ees qui sont echang ees et donc r eagir en cons equence. Ce type de probl` eme est tr` es fr equent sous les syst` emes UNIX mais aujourdhui, avec la mont ee en puissance dInternet, les syst` emes qui n etaient pas destin es aux r eseaux les subissent egalement. Les programmes comme BackOrifice du CDC (Cult of the Dead Cow) ou encore NetBus permettent dagir a ` distance sur les syst` emes Microsoft (9x/NT/2000): messages, captures d ecran, red emarrage, ouverture du lecteur de CD, ex ecution de programmes,. . . Bien entendu, un administrateur peut envisager dinstaller un certain type de Backdoor an, par exemple, de r ecup erer rapidement le contr ole de son syst` eme apr` es une intrusion ou davoir une vue g en eral de l etat dune station. Dans ce cas, lutilisation de Backdoors peuvent sav erer utile mais il sagit alors de bien les concevoir et de les garder secr` etes an que leur utilisation ne soit pas d etourn ee.

4.5

Remote Buer Overow Exploits

La fonction principale dun processeur est de traiter et de d eplacer des donn ees. Lors de ces traitements, le processeur a besoin dun emplacement an de sauvegarder rapidement les donn ees trait ees. La taille des registres ne permet pas ` a ceux-ci de jouer ce r ole. Ces informations sont donc sauv ees, ` a laide de commandes sp eciques et plus rapides, dans une zone m emoire appell ees pile. Elle est stock ee en m emoire ` a une adresse sp ecique (qui peut- etre chang ee) et est de taille variable. 4.5.1 Structure de la pile

Voil` a, bri` evement, comment fonctionne le processeur a ce niveau: si le registe N est utilis e et quune sous-proc edure est ex ecut ee et quelle requi` ere lutilisation de ce m eme registre (N), le processeur doit sauver le contenu de ce registre dans la pile an de pouvoir le restaurer apr` es

CBPF-NT-007/00

16

-2048 bytes -1024 bytes SP +4 bytes +8 bytes

local array1[1024] local array2[1024] base pointer return @ parameters

size 1024 bytes size 1024 bytes size 4 bytes size 4 bytes size 4 bytes

Figure 9: Exemple de pile contenant deux tableaux, le pointeur de pile (SP) et ladresse de retour.

la terminaison de la sous-proc edure. Pour cela, le processeur doit conna tre ladresse de retour lorsque la sous-proc edure se termine. Cette adresse est donc egalement sauv ee dans la pile avant son ex ecution. Lorsque la sous-proc edure se terminera le processeur sautera (jump) a ` ladresse de retour pr ec edemment stock ee dans la pile. La pile a une seconde utilit ee, celle de stocker en m emoire les nouvelles donn ees cr e ees ou re cues par le programme. NB : La gestion des entr ees/sorties dans la pile utilise la m ethode du LIFO (Last In - First Out) 4.5.2 Abuser ladresse de retour

Lors de lex ecution de la proc edure le processeur sauve ladresse de retour dans la pile, lorsque la proc edure se terminera le processeur retournera ` a ladresse sp eci ee et continuera son travail... Si (par hasard !) une proc edure ecrivait plus doctets (bytes) dans une variable locale an que la taille n ecessaire ` a son stockage dans la pile d epasse celle de ladresse de retour, on appellerait ceci un Buer Overow. En reprenant la structure de pile pr ec edente et en inscrivant 1032 fois le caract` ere X dans le tableau local array2, la proc edure va alors d epasser sa propre adresse de retour (cf. gure 10).

-2048 bytes -1024 bytes SP +4 bytes +8 bytes

local array1[1024] 1024 times "X" 4 times "X" 4 times "X" parameters

size 1024 bytes size 1024 bytes size 4 bytes size 4 bytes size 4 bytes

Figure 10: Exemple de Buer Overow en saturant le tableau array2 ainsi que le Stack Pointer et ladresse de retour de sous-proc edure.

CBPF-NT-007/00

17

Au lieu de stupidement inscrire des caract` eres ` a ladresse de retour, il serait plus judicieux (et plus int eressant) dindiquer une nouvelle adresse m emoire dans la pile. Il sera alors possible dindiquer au programme une nouvelle adresse de retour contenant un code totalement di erent. Le programme sautera alors automatiquement ` a ladresse sp eci ee. . . Cela sav` ere dautant plus int eressant lorsque lon arrive a ` forcer le programme a ` sauter vers une adresse o` u est situ e un code assembleur destin e par exemple ` a ex ecuter un shell UNIX (/bin/sh).

-2048 bytes -1024 bytes SP +4 bytes +8 bytes

local array1[1024] our code (asm_sh) 4 bytes of crap adress of our code parameters

size 1024 bytes size 1024 bytes size 4 bytes size 4 bytes size 4 bytes

Figure 11: Utilisation dun Buer Overow an de r ecup erer un shell UNIX. Le tableau array2 contient le code assembleur permettant lappel au chier /bin/sh donnant alors la possiblit e dutiliser le syst` eme ` a des ns d etourn ees.

Lutilisation des Buer Overow sav` ere tr` es int eressante (pour un Hacker ) lorsquelle est appliqu ee ` a des programmes o` u le Sticky Bit est activ e (programmes SUID). Ce mode sp ecial de certains programmes UNIX permet leur ex ecution sous un autre nom dutilisateur (souvent root). Il est alors possible de r ecup ere un compte administrateur (root) ou encore dex ecuter une commande quelconque sur le syst` eme. . .

4.5.3

Pourquoi Remote ?

Ce qui a et e expos e pr ec edemment concerne le principe de fonctionnement des Buer Overow, ces derniers peuvent etre utilis es localement ou par linterm ediaire dun r eseau informatique. Ils permettent alors a ` des attaquants de p en etrer les syst` emes informatiques sans avoir recours aux m ethodes dauthentication conventionnelles. Ce type dattaque nest pas encore tr` es fr equent car les programmes capables de les r ealis es sont tr` es diciles ` a mettre au point (transmission des informations, dur ee, r eactivit e,. . . ). Cependant, un certains nombre de programmes capables de r ealis es ce type dattaque existent. On pourra par exemple citer les programmes visant les services FTP ou DNS. . .

Et maintenant ?
` a ce niveau, tous le r eseau est compromis, cest l etat de si` ege Les objectifs des intrus peuvent, comme nous avons pu le voir Dans (pratiquement) tous les cas, lobjectif nal est de r ecup erer machines cibles et de le garder le plus longtemps possible. Il va

Lorsquun intrus est arriv e ! Que va-t-il faire a ` pr esent ? pr ec edemment, etre tr` es vari es. un contr ole total sur la, ou les,

CBPF-NT-007/00

18

donc falloir evincer le personnel charg e de ladministration et de la gestion du r eseau et sassurer un retour ais e` a la prochaine connection.

5.1

R ecup eration dautres comptes

En r` egle g en erale, la premi` ere op eration consiste ` a obtenir dautres voies dacc` es au syst` eme et cela par linterm ediaire de di erents comptes dutilisateurs. Pour cela plusieurs techniques peuvent etre utilis ees, voici une pr esentation, non exhaustive, de quelques une: Cassage (Cracking) des mots de passe contenus dans le chier /etc/passwd (version accessible aux utilisateurs classiques, dans le cas des chiers /etc/shadow par exemple, lacc` es au compte root est requis). Cette m ethode a linconv enient majeur de n ecessiter beaucoup de temps car il faut tester toutes les possiblit es de mots de passe, de les encrypter et de les comparer avec ceux contenu dans le chier pr ec edemment r ecup erer. Des logiciels sp eciques permettent de r ealiser cette t ache: Crack 5.0 ou encore John The Ripper 1.6. Une politique et un contr ole correct des mots de passe rend cette m ethode sans fondement ! Espionnage des connections dutilisateurs (TTY Snoop), cette technique reprend le principe des Backdoors, il sagit par exemple de changer le chier binaire du programme de login an qu` a chaque connection le couple login/password soit envoy e` a une adresse ou stock e dans un chier sur le syst` eme. Il est tr` es facile de r ealiser un programme permettant de r ealiser cette op eration. Ce type de probl` eme est facilement evitable en utilisant des programmes calculant des checksums sur chaques chiers importants du syst` eme et en les v eriant fr equemment (ex: TripWire). /* Login Trojan (/bin/login) */ /* Inscrit dans /home/Ofh/toto le login/password de celui qui lutilise */ /* Triton(c) - 1998/2000 */ #include <stdio.h> void main(void) { char *name[80]; char *pw[20]; char *prompt[20]; FILE *strm; printf("\033[2J") printf("Welcome to Nasca...\n"); printf("On a Linux 2.2.13 Powered.\n\n"); printf("Nasca login: "); scanf("%s", &name); strcpy( prompt, name ); strncat( prompt, "s Password: ", strlen("s Password: ")); strcpy( pw, ( char * )getpass(prompt)); strm = fopen("/home/Ofh/toto","a"); if( strm == NULL ) { strm = fopen("/home/Ofh/toto", "w" );

CBPF-NT-007/00

19 } fprintf( strm, "User: (%s), Password: [%s]\n", name, pw ); fclose( strm ); printf("Bus Error - core dumped\n"); exit(1);

Espionnage du r eseau local (Sning), cette technique tr` es utilis ee actuellement ne peut etre mise en d efaut que par lutilisation du cryptage. Il sagit de capturer toutes les trames qui circulent sur le r eseau en congurant linterface r eseau de la station dans un mode sp ecial, promiscious, qui permet de recevoir toutes les trames qui circulent sans pour autant en etre le destinataire. Il est alors possible de r ecup erer les comptes des utilisateurs utilisant FTP ou Telnet par exemple. Connection Telnet de 192.168.9.194 vers 192.168.8.197 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -------------------------------------192.168.9.194[1093]->192.168.8.197[23] -------------------------------------BDEDBH @M#L^@^@^@^@ACCyyu^CyuXyu_yu yuy!yu^@LINUXyXyLINUXyyAyuAfrank^M @frank21^M@frank21^M@frank21^M@frank21^Mexit^@ (ici on peut trouver le compte et le mot de passe: frank/frank21) -------------------------------------192.168.8.197[23]->192.168.9.194[1093] -------------------------------------telnet (aix) AIX Version 4 (C) Copyrights by IBM and by others 1982, 1996. login: frank franks Password: 3004-610 You are required to change your password. Please choose a new one. franks New password: Enter the new password again: ******************************************************************************* * * * * * Welcome to AIX Version 4.2! * * * * * * Please see the README file in /usr/lpp/bos for information pertinent to * * this release of the AIX Operating System. * * * * * *******************************************************************************

CBPF-NT-007/00

20

% exit

Buer Overow, il est tr` es fr equent dutiliser des Buer Overow an de r ecup erer le compte de ladministrateur du syst` eme (but ultime). Il existe un nombre impressionant de programmes permettants lutilisation de cette technique malgr` es toutes les mises ` a jour ou patches propos es par les constructeurs. Cette m ethode est sans nulle doute lune des plus utilis ee et des plus dicile ` a d etecter. Maintenant que lintrus est pass e ma tre ` a bord, il lui faut sassurer une certaine p er enit e an de ne pas etre d erang e et surtout d elog e de sa position. Pour cela il mettra en oeuvre les di erentes techniques qui ont et e pr esent ees mais de plus, il lui faudra pr eter attention aux di erents m ecanismes de tra cage install es par les administrateurs (syslog, accton,. . . ).

5.2

Laisser place nette

Rentrer, sortir, traquer le syst` eme, chercher des informations, utiliser des exploits,. . . peuvent etre des occupations passionantes mais laissent des traces visibles par un administrateur consciencieux. En r` egle g en eral les m ecanismes de tracabilit e sont souvent d elaiss es car les administrateurs voient simplement en eux des chiers volumineux et inutiles en temps normal (ce qui nest pas enti` erement faux). Malgr` es tout, ces chiers sont tr` es utils en cas de probl` emes, que ce soit du fait dune tentative dintrusion ou dun probl` eme technique. Ils ont pour but daider ladministrateur a ` g erer correctement ses stations. Le m ecanisme le plus connu sous UNIX est sans aucun doute le d emon syslogd qui permet denregistrer des informations relatives au syst` eme et aux di erents processus tournant sur la machine. Cela peut aller de la simple tentative de login a ` des messages de debugging de certains d emons. Dautres programmes permettent dassurer des fonctions de logging plus pouss es comme par exemple le programme daudit accton tr` es r epandu sur les syst` emes SUN mais rarement congur e. Sur certains syst` emes il est egalement possible de trouver dautres types de programmes de logs permettant par exemple danalyser en temps r eel le trac r eseau ou les di erentes tentatives de connection. En plus de ces divers m ecanismes, le syst` eme UNIX tient en r` egle g en eral une base dinformations concernant les di erentes tentatives et r eussites/ echecs de login sur le syst` emes dans les chiers *tmp (utmp & wtmp). Les Hackers ont mis au point di erents programmes permettant de retirer leurs traces dans les di erents chiers de log pr esent sur le syst` eme. Ces programmes sont plus ou moins ecaces mais dans tous les cas il est pr ef erable de maintenir une sauvegarde distante de tous ces chiers sur une machine non accessible a ` partir du r eseau.

Conclusions

Actuellement, le probl` eme est de correctement d enir les risques engendr es par la criminalit e informatique. Il faut pour cela avoir une vision globale du probl` eme et conna tre globalement les techniques utilis es par les nouveaux ibustiers. Il sagira ensuite danalyser correctement les vuln erabilit es propre a ` chaque site, de d enir le niveau de s ecurit e requis et enn de mettre en place une politique de s ecurit e acceptable. Lors de cette etape il faut bien veiller ` a examiner le probl` eme tant du c ot e de ladministrateur que de celui du simple utilisateur an de ne pas en cr eer de nouveaux. . .

CBPF-NT-007/00

21

R ef erences
[1] Simson Garnkel & Gene Spaord, Practical UNIX & Internet Security, OReilly & Associates, Second Edition, 1996, ISBN 1-56592-148-8. [2] Lars Klander, Hacker Proof - The Ultimate Guide to Network Security, Jamsa Press, 1997, ISBN 1-884133-55-X. [3] David Rudder, Firewall and Proxy HOWTO, 1997. [4] Hans Husman, Introduction to Denial-of-Service, 1996. [5] Philippe Leroy & J er ome Thorel, Les clefs pour une s ecurit e ma tris ee, Plan` ete Internet, 17 : 56-65, 1997. [6] Ajay Kumar Gummmadi et al, Advanced Networking Security - Final Report, 1996. [7] Chuck Semeria, Internet Firewalls and Security - A Technology Overview, 3Com Corporation, 1996. [8] Brecht Claerhout, A short overview of IP spoong, 1996. [9] Deamon9, Route, Innity, IP-spoong Demystied, Phrack Magazine, 7, 1996. [10] CERT Coordination Center, TCP SYN Flooding and IP Spoong Attacks, CA-06.21, 1998. [11] Rick Farrow, Sequence Number Attacks, 1997. [12] Steven M. Bellovin, Defending Against Sequence Number Attacks, Network Working Group - RFC1948, 1996. [13] W. Richard Steven, TCP/IP Illustrated - Volume 1, Addison-Wesley, 1993, ISBN 0-20163346-9. [14] Steven M. Bellovin, Security Problems in the TCP/IP Protocol Suite, Computer Communications Review, 19.2 : 32-48, 1989. [15] Edward W. Felten, Dirk Balfanz, Drew Dean, and Dan S. Wallach, Technical Report 540-96, Department of Computer Science - Princeton University, 1996. [16] Robert T. Morris, A Weakness in the 4.2BSD UNIX TCP/IP Software, AT&T Bell Laboratories, 1985. [17] D. Brent Chapman, Network (In)Security Through IP Packet Filtering, Great Circle Associates. [18] Steven M. Bellovin, Packets Found on an Internet, 1993. [19] Steven M. Bellovin, There Be Dragons, In Proceedings of the Third Usenix UNIX Security Sympisum, 1992. [20] CERT Coordination Center, IP Spoong Attacks and Hijacked Terminal Connections, Advisory CA-95.01, 1997. [21] P. Ferguson & D. Senie, Network Ingress Filtering : Defeating Denial of Service Attacks which employ IP Source Adress Spoong, Network Working Group - RFC2267, 1998. [22] Laurent Joncheray, A Simple Active Attack Against TCP, Merit Network Inc., 1995. [23] IDA Architecture Guidelines - Part IV, Security Tutorial - Cryptography and Authentication services, Version 3.2.1, 1998. [24] N. Haller, C. Metz, P. Nesser, M. Straw, A One-Time Password System, Network Working Group - RFC2289, 1998. [25] J. Kohl, C. Neuman, The Kerberos Network Authenticatin Service (V5), Network Working Group - RFC1510, 1993.

CBPF-NT-007/00

22

[26] T. Ylonen, The SSH (Secure Shell) Remote Login Protocol, Network Working Group - Draft SSH Protocol 00, 1995. [27] Craig Hunt, TCP/IP Network Administration, OReilly & Associates, Second Edition, 1997, ISBN 1-56592-322-7. [28] Bill Cheswick, An Evening with Berferd in which a Cracker is Lured, Endured, and Studied, USENIX Proceedings, 1990. [29] Christopher Klaus, Backdoors, Technical Report, 1997. [30] Van Hauser, Placing Backdoors Through Firewalls, THC [The Hackers Choice], 1998. [31] Dan Farmer & Wietse Venema, Improving the Security of Your Site by Breaking Into it. [32] J. Reynolds & J. Postel, Assigned Numbers, Network Working Group - RFC1010, 1987. [33] THC [The Hackers Choice], Stack Overow Exploits on Linux, BSDOS, FREEBSD, SunOS, Solaris, HP-UX, 1996. [34] Aleph One, Smashing The Stack For Fun And Prot, Phrack 49 le 14, 1999.

Vous aimerez peut-être aussi