Upload
roselle-pepin
View
112
Download
7
Embed Size (px)
Citation preview
Meacutecanismes de Meacutecanismes de seacutecuriteacute des systegravemesseacutecuriteacute des systegravemes
10e coursLouis Salvail
ObjectifsObjectifsLa seacutecuriteacute des reacuteseaux permet que les communications drsquoun systegraveme agrave un autre soient sucircres
La seacutecuriteacute des systegravemes srsquointeacuteresse aux meacutecanismes qui eacutevitent les intrusions
De tels meacutecanismes ont deacutejagrave eacuteteacute mentionneacutes mots de passe seacutecuriteacute mateacuterielle et biomeacutetrie
Les mots de passe permettent aussi de se proteacuteger contre les intrusions agrave partir drsquoun reacuteseau
Nous allons maintenant voir drsquoautres meacutethodes qui protegravegent contre les intrusions agrave partir drsquoun reacuteseau
voyons drsquoabord voyons drsquoabord les types les types
drsquointrusions que drsquointrusions que nous voulons nous voulons repousser repousser
voyons drsquoabord voyons drsquoabord les types les types
drsquointrusions que drsquointrusions que nous voulons nous voulons repousser repousser
Types drsquoattaques (I)Types drsquoattaques (I)Cheval de Troie Petit programme malveillant drsquoapparence anodine qui peut causer des deacutegacircts une fois installeacute (virus classique permettre de prendre le controcircle de lrsquoordinateur agrave distance)
Porte deacuterobeacutee (laquobackdoorraquo) Un point drsquoentreacutee dans un programme ou un systegraveme plus ou moins secret Geacuteneacuteralement une seacutecuriteacute pour deacutebloquer un code drsquoaccegraves perdu ou pour le deacutebogage Crsquoest aussi le point drsquoentreacutee des pirates Ils peuvent mecircme les creacuteer pour les utiliser ulteacuterieurement
Reniflage (laquosniffingraquo) Eacutecouter une ligne de transmission par laquelle transitent des donneacutees pour les reacutecupeacuterer agrave la voleacutee Cette technique peut ecirctre utiliseacutee agrave lrsquointerne pour le deacutebogage ou de maniegravere abusive par un pirate cherchant par exemple agrave se procurer un mot de passe Vise surtout agrave intercepter les donneacutees non chiffreacutees Dans certains reacuteseaux (non commuteacutes relieacutes par laquohubraquo [concentrateur reliant plusieurs ordinateurs drsquoun reacuteseau] ou cacircbles coaxiaux) lrsquoensemble des messages est transmis agrave tous En changeant lrsquoeacutetat de lrsquointerface reacuteseau (c-agrave-d mode espion laquopromiscuous moderaquo) lrsquoadversaire peut intercepter toutes les communications pour les analyser
Mystification (laquospoofingraquo) Technique drsquointrusion consistant agrave envoyer agrave un serveur des paquets qui semblent provenir drsquoune adresse IP connue par le coupe-feu La machine est rendue inatteignable par le pirate pour pouvoir intercepter les codes de communication et eacutetablir la liaison pirate
UsurpationUsurpationUsurpationUsurpation
Types drsquoattaques (II)Types drsquoattaques (II)
Attaque par rebond (laquobounce attackraquo) Meneacutee via un autre ordinateur qui se retrouve complice involontaire Cet ordinateur expeacutedie des messages drsquoattaque agrave la victime masquant lrsquoidentiteacute du pirate
Attaque de lrsquohomme du milieu Le pirate se place entre deux ordinateurs et se fait passer pour un afin drsquoobtenir le mot de passe de lrsquoautre Il peut alors se retourner contre le premier avec un mot de passe valide pour lrsquoattaquer
Deacuteni de service (laquodenial of serviceraquo) Une attaque cherchant agrave rendre un ordinateur hors service en le submergeant de trafic inutile Par exemple un serveur entiegraverement occupeacute agrave reacutepondre agrave de fausses requecirctes de connexion Des machines peuvent ecirctre agrave lrsquoorigine de lrsquoattaque geacuteneacuteralement agrave lrsquoinsu de leur proprieacutetaire
Treacutebuchage sans fil (laquowar-drivingraquo) Dans le cas des reacuteseaux sans fil Consiste agrave circuler dans la ville avec un portable ou un assistant numeacuterique personnel (laquoPDAraquo) pour repeacuterer et peacuteneacutetrer les reacuteseaux locaux non proteacutegeacutes
PreacuteventionPreacutevention
Disposer drsquoune sauvegarde de ses donneacutees
Faire un audit des accegraves inutilement ouverts
Les comptes drsquoadministration ont des mots de passe seacutecuriseacutes
Suppression des comptes utilisateurs non utiliseacutes
Deacutesactiver les services (p ex internet) non utiliseacutes sur les machines et supprimer les partages de fichiers qui ne sont pas neacutecessaires
Le neacutecessaire
PreacuteventionPreacutevention
Mettre agrave jour les logiciels agrave lrsquoaide des derniegraveres rustines (laquopatchesraquo) de seacutecuriteacute officielles pour fermer les bregraveches
Installer un coupe-feu
Structurer les reacuteseaux en zones eacutetanches par activiteacute et sensibiliteacute (VLAN) Instituer un systegraveme de mots de passe Isoler les serveurs Internet VLAN Virtual Local Area Network regroupe les machines de faccedilon logique et non physique
Srsquoabonner aux lettres drsquoinformation (laquonewslettersraquo) de seacutecuriteacute des diffeacuterents fournisseurs
Le souhaitable
Coupe-feuCoupe-feuUn coupe-feu permet de couper lrsquoaccegraves agrave un reacuteseau local Crsquoest le seul point drsquoaccegraves agrave un reacuteseau local agrave partir de lrsquoexteacuterieur
Les techniques que nous avons vues jusqursquoagrave maintenant ne permettent pas drsquoeacuteviter de communiquer avec des adversaires
Mecircme si nous insistons pour faire un eacutechange de cleacute authentifieacute avec quelqursquoun une certaine quantiteacute drsquoinformation eacutechangeacutee avec des adversaires potentiels ne peut ecirctre eacuteviteacutee
Ceci pourrait permettre agrave lrsquoadversaire de pirater un ordinateur en utilisant une attaque par deacutebordement de tampon
Le concept du coupe-feu Lrsquoadversaire ne peut attaquer un ordinateur avec lequel il ne communique pas
Lrsquoaspect drsquoun coupe-feuLrsquoaspect drsquoun coupe-feu
coupe-feu
reacuteseau local (LAN)
LAN priveacutereacuteseau public
Coupe-feu filtrage de paquetsCoupe-feu filtrage de paquets
Un coupe-feu est simplement une machine ou un logiciel qui arrecircte ou retire une partie de la circulation sur un reacuteseau
Il est habituellement placeacute sur la connexion entre le reacuteseau local et lrsquoInternet Le trafic de reacuteseau doit donc passer par celui-ci pour relier le reacuteseau local agrave lrsquoInternet
La maniegravere la plus simple drsquoutiliser un coupe-feu consiste agrave lui demander de couper toute communication qui tente de se connecter agrave une machine que vous ne voulez pas voir communiquer avec lrsquoexteacuterieur
Filtrage de paquets Filtrage de paquets commentcommentSouvenons-nous que les connexions TCP demandent que
des paquets speacuteciaux soient transmis et accepteacutes dans le but drsquoeacutetablir une connexion
Ces paquets sont faciles agrave reconnaicirctre car certains drapeaux (laquoflagsraquo) seront activeacutes Les paquets suivants pourront ecirctre associeacutes agrave une connexion eacutetablie preacuteceacutedemment
Le protocole UDP eacutetablit une communication sans ecirctre orienteacute connexion Un paquet est transmis en espeacuterant qursquoil se rende agrave destination LrsquoUDP est utiliseacute pour communiquer avec les serveurs DNS qui traduisent les adresses sous une forme lisible en adresses IP
Le coupe-feu peut tout simplement eacuteliminer les paquets eacutetablissant une connexion TCP sur une machine locale et tout le trafic UDP Ceci est nommeacute filtrage simple des paquets
Filtrage de paquets Filtrage de paquets commentcomment
Un coupe-feu par filtrage de paquets reacuteside tregraves bas dans la pile TCPIP au niveau Internet ou mecircme Reacuteseau Crsquoest la seule faccedilon de srsquoassurer que tout ce qui va du reacuteseau local ou vient de lrsquoInternet sera observeacute
Le filtrage des paquets peut ecirctre configureacute par une politique qui deacutetermine quels paquets seront bloqueacutes ou autoriseacutes
Il srsquoagit du coupe-feu original le plus simple et le plus facile agrave reacutealiser Il peut ecirctre tregraves sucircr car il peut bloquer toute la circulation Il est cependant neacutecessaire de permettre des accegraves ce qui rend possibles certaines attaques
Les limites du filtrage de Les limites du filtrage de paquetspaquetsEacutevidemment toutes les connexions ne peuvent ecirctre
eacutelimineacutees les serveurs Web et de courriel doivent bien ecirctre autoriseacutes agrave communiquer (ils ont besoin entre autres choses
de communiquer avec le serveur DNS via UDP)Nous pouvons deacuteplacer ce serveur Nous pouvons deacuteplacer ce serveur agrave lrsquoexteacuterieur mais comment alors agrave lrsquoexteacuterieur mais comment alors
le mettre agrave jourle mettre agrave jour
Nous pouvons deacuteplacer ce serveur Nous pouvons deacuteplacer ce serveur agrave lrsquoexteacuterieur mais comment alors agrave lrsquoexteacuterieur mais comment alors
le mettre agrave jourle mettre agrave jour
La bonne nouvelle est que toutes les La bonne nouvelle est que toutes les attaques devront passer par ce attaques devront passer par ce serveur si le filtrage est strict serveur si le filtrage est strict
La bonne nouvelle est que toutes les La bonne nouvelle est que toutes les attaques devront passer par ce attaques devront passer par ce serveur si le filtrage est strict serveur si le filtrage est strict
pourrait ecirctre possible si le pourrait ecirctre possible si le filtrage est trop lacircchefiltrage est trop lacircche
pourrait ecirctre possible si le pourrait ecirctre possible si le filtrage est trop lacircchefiltrage est trop lacircche
DMZ (laquoDemilitarized zoneraquo) une zone laquodeacutemilitariseacuteeraquo entre lrsquoInternet et le reacuteseau interne dans laquelle on peut placer les serveurs WEB accessibles depuis lrsquoexteacuterieur La zone est munie drsquoun coupe-feu pour cette tacircche Les coupe-feu peuvent avoir une sortie DMZ pour le serveur Web
Politiques de filtragePolitiques de filtrageSouvenons-nous que les paquets contiennent les informations suivantes
les donneacutees
lrsquoadresse IP drsquoorigine et de destination (incluant le port de destination)
lrsquoinformation sur le protocole par lequel ils doivent ecirctre manipuleacutes
lrsquoinformation sur des erreurs eacuteventuelles et
de lrsquoinformation sur le type de donneacutees en transit
Un politique de filtrage eacutenonce une liste drsquoautorisations et drsquointerdictions des types
autoriseinterdit les paquets selon lrsquoadresse IP drsquooriginedestination
autoriseinterdit les paquets selon leur port de destination
autoriseinterdit les paquets selon le protocole
Conclusion Conclusion (filtrage de paquets)(filtrage de paquets)
Pour ecirctre complegravetement sucircr le filtrage de paquets doit ecirctre tregraves restrictif ce qui peut trop limiter lrsquoaccegraves au reacuteseau
Si le filtrage est plus lacircche alors il pourrait devenir possible agrave lrsquoadversaire de communiquer avec des machines du reacuteseau local
Ceci demande agrave lrsquoadversaire de tenter beaucoup drsquoadresses IP jusqursquoagrave ce qursquoune machine reacuteponde
En conclusion les coupe-feu devraient faire quelque chose de plus intelligent que le simple filtrage
Ils doivent examiner les paquets en deacutetail pour deacutecider quoi faire avec ceux-ci Ils devraient mecircme ecirctre capables de modifier des paquets si neacutecessaire
Coupe-feu proxyCoupe-feu proxyLes proxy (laquoserveurs mandatairesraquo) permettent de faire du filtrage intelligent Il ne permet aucune connexion sur une machine locale agrave partir de lrsquoexteacuterieur
Le proxy gegravere toutes les connexions au nom des machines de reacuteseau local
Si une machine locale a un logiciel qui deacutesire acceacuteder agrave lrsquoInternet alors celui-ci devra ecirctre configureacute pour communiquer avec le coupe-feu agrave la place Le coupe-feu eacutetablira alors la connexion
Vu de lrsquoexteacuterieur le reacuteseau local est complegravetement cacheacute derriegravere le coupe-feu Seul celui-ci est visible
Essayer plusieurs adresses IP pour espeacuterer une reacuteponse ne fonctionne pas ici
Une attaque doit srsquoen prendre au proxy Une machine est plus facile agrave proteacuteger que plusieurs
Proxy en imagesProxy en imagesLe proxy comme une zone tampon entre
lrsquoInternet et un reacuteseau local
Pendant une connexion internet
Cacher votre adresse Cacher votre adresse IPIPVotre adresse IP reacutevegravele votre point drsquoentreacutee sur lrsquoInternet
Peut permettre de retrouver votre fournisseur le reacuteseau de votre employeur votre eacutecole ou votre terminal public
Il srsquoagit de lrsquoidentiteacute de votre machine pendant que vous ecirctes en ligne Sa porte sur le monde
Vous pouvez dissimuler votre adresse IP sur le Web en utilisant un serveur proxy anonyme
Un serveur proxy speacutecialiseacute pour la navigation Web anonyme utilise sa propre adresse IP agrave la place de la vocirctre pour chaque requecircte sortante
Il peut mecircme chiffrer les communications Web ne permettant plus la surveillance de vos actions
Proxy pour et contre Proxy pour et contre
Un proxy permet de proteacuteger un reacuteseau local drsquoune faccedilon tregraves efficace Un seul point faible neacutecessite notre attention
Cette solution nrsquoest pas tregraves flexible Les logiciels clients des machines locales doivent savoir comment utiliser un proxy Sinon rien ne fonctionnera puisque celles-ci sont invisibles
Nous pourrions peut-ecirctre faire croire au client que le service est donneacute par le coupe-feu mais celui-ci doit savoir quoi faire pour acheminer la connexion vers sa destination Ceci demande de configurer chaque type de connexion
Exemple de Proxy TorExemple de Proxy Tor
Coupe-feu dynamique Coupe-feu dynamique (laquostateful firewallraquo)(laquostateful firewallraquo)
Nous avons vu que les coupe-feu statiques agrave filtrage de paquets interviennent en fonction de paquets individuels
Un serveur FTP va ouvrir des connexions sur des ports de hautes valeurs Le filtrage de paquets ne peut pas savoir qursquoune connexion sur le port 6783 appartient agrave une connexion FTP leacutegitime Ces paquets seront eacutelimineacutes
Le coupe-feu dynamique reacutesout ce problegraveme en meacutemorisant les connexions ouvertes par des connexions leacutegitimes
Il est aussi possible de transformer lrsquoadresse IP drsquoune machine locale par quelque chose de diffeacuterent Le coupe-feu agrave mascarade permet drsquoeacuteviter les attaques qui consistent agrave essayer des adresses IP dans le but drsquoobtenir une reacuteponse
Le coupe-feu peut ecirctre configureacute pour eacuteliminer les connexions qui font des trucs bizarres comme la transmission drsquoune chaicircne trop longue
Toujours la pile TCPIPToujours la pile TCPIP
Champs du protocole Champs du protocole IPIP
Champs utiles pour le protocole IP
Le protocole IP fonctionne agrave partir de segments
Protocole UDPProtocole UDP(ses champs utiles)(ses champs utiles)
Champs utiles pour le protocole UDP
Protocole TCPProtocole TCP(ses champs utiles)(ses champs utiles)
Champs utiles pour le protocole TCP
Port de lrsquoapplication Port de lrsquoapplication en cours sur la en cours sur la machine sourcemachine source
Port de lrsquoapplication Port de lrsquoapplication sur la machine sur la machine
destinationdestination
Le numeacutero drsquoordre du Le numeacutero drsquoordre du prochain segment (IP) prochain segment (IP)
attenduattendu
URG paquet agrave traiter de faccedilon urgenteACK paquet est un accuseacute de reacuteceptionPSH paquet fonctionne selon la meacutethode push
RST connexion reacuteinitialiseacuteeSYN indique une demande drsquoeacutetablissement de connexionFIN indique une interruption de connexion
Le numeacutero drsquoordre du segment (IP) Le numeacutero drsquoordre du segment (IP) courant si SYN=0 et le numeacutero drsquoordre courant si SYN=0 et le numeacutero drsquoordre
initial pour synchroniser les nos de initial pour synchroniser les nos de seacutequence (ISN)seacutequence (ISN)
DrapeauxDrapeaux
Filtrage extrecircmeFiltrage extrecircmeTCP est orienteacute connexion Pour en eacutetablir une de A vers B on doit transmettre SYN=1 dans le premier paquet de lrsquoeacutetablissement de connexion agrave trois eacutetapes (laquothree-way handshakeraquo)
Un filtrage simple consiste agrave laisser tomber tous les paquets qui ne contiennent que le drapeau SYN=1
Il devient impossible drsquoeacutetablir une connexion TCP de lrsquoexteacuterieur du mur
Si en plus les paquets UDP sont eacutelimineacutes alors la situation devrait ecirctre tregraves sucircre
Cette politique ne permet pas de se connecter au serveur Web cependant
Activer le serveur Web Activer le serveur Web et accegraves agrave un DNSet accegraves agrave un DNS
Pour donner accegraves au serveur Web nous pourrions faire la chose suivante
Nous autorisons une exception agrave la regravegle preacuteceacutedente
Nous autorisons les paquets SYN=1 pour le serveur Web sur le port 80 (port http)
Nous voudrions aussi permettre lrsquoaccegraves agrave un serveur DNS pour la conversion drsquoadresse comme httpwwwiroumontrealca en 13220424179
Il suffit de laisser les paquets UDP vers et depuis au moins un serveur DNS sur le port 53 (UDP)
Le reacutesultatLe reacutesultat
Si le pirate trouve une faille sur le serveur Web alors il pourrait attaquer le reacuteseau local
Pour eacuteviter ceci il faut seacuteparer le serveur Web des autresLe filtrage par paquets est insuffisant
Deux filtres valent mieux Deux filtres valent mieux qursquounqursquoun
ProxyProxyIl y a drsquoautres services sur lrsquoInternet qui utilisent le protocole UDP flux de donneacutees videacuteo jeux videacuteo
De plus excepteacute pour les paquets SYN=1 il est possible de transmettre des paquets TCP aux ordinateurs du reacuteseau local
Le proxy peut rendre les machines du reacuteseau local invisibles pas le filtrage simple de paquets
Approche proxyApproche proxy
Coupe-feu Coupe-feu dynamiquesdynamiques
Les proxys ne sont pas tregraves flexibles Les coupe-feu dynamiques permettent drsquoutiliser les logiciels drsquoune faccedilon plus transparente
Il srsquoagit drsquoun filtre avanceacute qui permet de veacuterifier que les paquets appartiennent agrave une connexion deacutejagrave eacutetablie Crsquoest seulement lorsque crsquoest le cas que le paquet peut passer
Parce qursquoil est conscient drsquoune connexion il peut appliquer NAT etou PAT
NAT Dynamique (laquoDynamic Network Address Translationraquo) Le coupe-feu traduit les adresses du reacuteseau Toutes les machines du reacuteseau possegravedent vu de lrsquoexteacuterieur la mecircme adresse IP
PAT (laquoPort Address Translationraquo) Le coupe-feu traduit les numeacuteros de port par lesquels les paquets arrivent sur les hocirctes locaux
Ces coupe-feu sont appeleacutes coupe-feu avec mascarade
NAT a eacuteteacute mis au point agrave NAT a eacuteteacute mis au point agrave lrsquoorigine pour reacutepondre agrave la lrsquoorigine pour reacutepondre agrave la
peacutenurie drsquoadresses IP avec le peacutenurie drsquoadresses IP avec le protocole IPv4protocole IPv4
NAT a eacuteteacute mis au point agrave NAT a eacuteteacute mis au point agrave lrsquoorigine pour reacutepondre agrave la lrsquoorigine pour reacutepondre agrave la
peacutenurie drsquoadresses IP avec le peacutenurie drsquoadresses IP avec le protocole IPv4protocole IPv4
Coupe-feu agrave Coupe-feu agrave mascarademascarade
Filtrage dynamique eacutetenduFiltrage dynamique eacutetenduLe filtrage des coupe-feu dynamiques nrsquoest pas limiteacute aux protocoles TCPIP
Pour des applications usuelles le filtrage peut srsquoappliquer au protocole
Le coupe-feu peut ainsi deacutetecter des comportements inhabituels
Peut aussi filtrer certaines parties des donneacutees transmises
Pour le protocole HTTP le filtre peut supprimer les applications Java
Pour le protocole SMTP le filtre peut supprimer les piegraveces jointes drsquoun certain type
Conclusion sur les coupe-Conclusion sur les coupe-feufeu
Les coupe-feu permettent de filtrer le trafic entre le reacuteseau local et lrsquoInternet en nrsquoadministrant qursquoune seule machine
Les coupe-feu ne sont cependant pas une solution magique pour reacutesoudre les problegravemes causeacutes par les attaques exteacuterieures agrave un reacuteseau local
Les coupe-feu pour un seul ordinateur personnel peuvent offrir une solution sans trop drsquoentretien
Les coupe-feu neacutecessitent des mises agrave jour freacutequentes lorsque le reacuteseau local est de bonne taille Lorsque le reacuteseau local change la configuration du coupe-feu doit aussi changer
Penser que lrsquoinstallation drsquoun coupe-feu rend votre reacuteseau sucircr est un peu de la penseacutee magique (neacutecessaire mais pas suffisant)
Logiciels malveillantsLogiciels malveillantsUn adversaire peut une fois passeacute le coupe-feu et les autres deacutefenses vouloir installer un programme malveillant sur la machine locale Ceux-ci sont de trois types
Chevaux de Troie Programme qui semble tout agrave fait utile mais qui cache une fonction malveillante Par exemple donne accegraves agrave des donneacutees priveacutees donne des droits drsquoaccegraves non autoriseacutes ou deacutetruit des donneacutees
Virus Programme qui infecte un autre programme sur votre ordinateur Agrave partir du programme infecteacute le virus se propage vers drsquoautres programmes Apregraves un certain temps ou eacuteveacutenement les virus peuvent entreprendre certaines actions Celles-ci peuvent ecirctre lrsquoeacutelimination de fichiers la deacuteteacuterioration de fonctions du systegraveme drsquoexploitation etc
Vers Programmes qui infectent un ordinateur sans avoir agrave ecirctre heacutebergeacutes par drsquoautres programmes Ils sont des programmes indeacutependants Ils se multiplient en exploitant diffeacuterentes ressources Les objectifs de ces programmes peuvent ecirctre lrsquoespionnage lrsquoouverture de portes deacuterobeacutees eacutemettre des requecirctes vers un site Internet jusqursquoagrave saturation
ExempleExempleI Love You Un ver lanceacute en 2000 et qui a atteint 31 millions de machines en 4 jours
Infection Le ver eacutetait dissimuleacute en piegravece jointe drsquoun courriel Cette piegravece jointe eacutetait preacutesenteacutee comme Love-Letter-for-youtxtvbs Lrsquoextension vbs indique que le fichier est un script Visual Basic Comme lrsquoextension nrsquoapparaicirct pas sur Windows les utilisateurs voyaient la piegravece jointe comme Love-Letter-for-youtxt Objectif Le script lisait la liste des contacts de lrsquoutilisateur pour envoyer ce mecircme message agrave ceux-ci La plate-forme Windows eacutetait viseacutee Des fichiers eacutetaient deacutetruits et remplaceacutes par ce script Il changeait la page drsquoaccueil drsquoInternet Explorer pour teacuteleacutecharger un cheval de Troie
ExempleExempleCode Red Un ver qui a infecteacute 359 000 ordinateurs en moins de 14 heures le 19 juillet 2001
Infections Le ver se multipliait en essayant des adresses IP aleacuteatoires pour ensuite infecter des serveurs qui faisaient tourner Microsoft IIS avec une faille de seacutecuriteacute
Objectif Monter une attaque par deacuteni de service (DOS) contre la Maison-Blanche
Lrsquoattaque a eacuteteacute facile agrave repousser car le ver veacuterifiait avant de lancer lrsquoattaque que le serveur agrave lrsquoadresse IP (au lieu du nom de domaine) de la Maison-Blanche eacutecoutait le port 80 (le port des serveurs Web) En changeant lrsquoadresse IP de la Maison-Blanche lrsquoattaque a eacuteteacute repousseacutee
ExempleExempleCabir Est un virusver (deacutemonstration de faisabiliteacute laquoproof of conceptraquo) qui srsquoattaque agrave la teacuteleacutephonie mobile Crsquoest un fichier de 15 ko nommeacute CARIBESIS
Infection Se propage par la teacuteleacutephonie mobile gracircce agrave la technologie Bluetooth et le systegraveme drsquoexploitation Symbian OS
Action Agrave chaque fois que le teacuteleacutephone infecteacute est ouvert le mot laquoCariberaquo srsquoaffiche Il tente de se propager aux peacuteripheacuteriques BlueTooth de la zone du teacuteleacutephone infecteacute Il nrsquoest pas meacutechant nrsquoavait pour but que de deacutemontrer la faisabiliteacute
AntivirusAntivirusLes antivirus sont des programmes qui deacutetectent les virus les vers et les chevaux de Troie sur votre ordinateur Ils les eacuteliminent
Ils visitent les fichiers sur votre disque dans le but de trouver des bouts de programmes reconnus comme dangereux
Ceci est possible eacutetant donneacute une base de donneacutees agrave jour contenant les virus connus sous la forme de signatures de virus Une signature est un motif (laquopatternraquo) qui caracteacuterise un virus donneacute
Un antivirus nrsquoest efficace que si sa base de donneacutees est mise agrave jour constamment Les compagnies drsquoantivirus vont vite pour mettre agrave jour leur base de donneacutees lorsqursquoun nouveau virus est identifieacute
Malheureusement les utilisateurs tardent agrave mettre leur copie agrave jour causant bien des infections
Tromper les antivirusTromper les antivirusDe nouveaux virus utilisent les meacutethodes de la cryptographie pour deacutejouer les antivirus
Des virus sont chiffreacutes pour les rendre non reconnaissables par les antivirus car ils ont toujours un aspect diffeacuterent
Ces virus ont un petit code en clair qui permet de les deacutecoder et de les charger en meacutemoire pour ecirctre exeacutecuteacutes Ce code est ce que les antivirus doivent deacutetecter
Ces virus sont de trois types
Oligomorphique Le virus est chiffreacute agrave chaque reacuteplication
Polymorphique Le virus est chiffreacute et la routine de deacutechiffrement est capable de changer certaines de ses instructions au fil des reacuteplications
Meacutetamorphique Le virus change de forme au fil des reacuteplications
IntrusionsIntrusionsPour qursquoun virus ver ou cheval de Troie soit deacuteleacutetegravere encore faut-il qursquoil srsquoinstalle sur votre machine
Mecircme si un adversaire peut parler agrave votre machine ceci nrsquoimplique pas qursquoil peut installer un logiciel sur celle-ci encore moins srsquoil nrsquoen est pas un utilisateur
Pour ce faire les adversaires peuvent essayer diverses strateacutegies
Faiblesses du systegraveme drsquoexploitation ou du logiciel du serveur Nous allons voir un exemple de ce type drsquoattaque attaques par deacutebordement Une page Web nrsquoest pas un objet passif Elle peut contenir du code (JavaScript Perl etc) malveillant
Tromper lrsquoutilisateur Crsquoest peut-ecirctre plus simple Cas speacutecial du piratage psychologique Cliquer ici pour installer un joli logiciel il faut espeacuterer que lrsquoantivirus deacutetecte ceci avant qursquoil ne soit trop tard
Deacutetecter les intrusionsDeacutetecter les intrusionsUne faccedilon diffeacuterente de deacutetecter les logiciels ou utilisateurs malveillants consiste agrave deacutetecter les comportements malveillants
Un systegraveme peut surveiller les processus pour deacutetecter les comportements malveillants
Une telle approche a lrsquoavantage de ne pas deacutependre drsquoinformation sur les virus et les attaques
Un coupe-feu dynamique est un exemple de cette approche
Il surveille les connexions et tente de deacuteterminer si un client transmet des donneacutees agrave contenu suspect (comme la taille)
Requecirctes Requecirctes malveillantesmalveillantes
dlkjfdsflkjsd dlkjfdsflkjsd fjdskl gfjdlskewqewewewewhdfbfbfbww fjdskl gfjdlskewqewewewewhdfbfbfbww jaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfjaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfwewqewqewqewqewqewqeweekjwweeqqqsxcswdswewqewqewqewqewqewqeweekjwweeqqqsxcswdsdddds dddds ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqqwwq qwwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewqeweekwqwqwefdscxcccj qeweekwqwqwefdscxcccj ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxzcwq zcwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfssaDSADSADSsfghdskjgfhdsgfihoiehjrfssaDSADSADSADDSDSDSSDSDSADDSDSDSSDSDSIl arrive que de longues requecirctes puissent faire planter un systegraveme
mal programmeacute Un adversaire peut donc soumettre des chaicircnes tregraves longues dans le but de rendre le systegraveme inopeacuterant (ou mecircme pire assujetti) comme nous le verrons plus loin
Et agrave peu pregraves nrsquoimporte qui Et agrave peu pregraves nrsquoimporte qui peut proposer un service peut proposer un service
comme celui-ci comme celui-ci
Un coupe-feu peut filtrer les requecirctes anormalement longues pour les ignorer Mecircme les systegravemes avec programmes erroneacutes seront agrave lrsquoabri de ce type drsquoattaque
SELECT SELECT FROM Passwords FROM Passwords WHERE user=rsquoWHERE user=rsquoJugheadJugheadrsquo AND password=rsquorsquo AND password=rsquoxrsquo xrsquo OR lsquo1rsquo=lsquo1OR lsquo1rsquo=lsquo1rsquorsquo
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Requecirctes Requecirctes malveillantesmalveillantes
HTTPSHTTPS
Password Password xrsquo OR xrsquo OR lsquo1rsquo=rsquo1lsquo1rsquo=rsquo1
Un coupe-feu dynamique peut filtrer des requecirctes bizarres comme xrsquo OR lsquo1rsquo=rsquo1xrsquo OR lsquo1rsquo=rsquo1
Ceci est beaucoup plus difficile agrave Ceci est beaucoup plus difficile agrave reacutealiser par un coupe-feu que reacutealiser par un coupe-feu que
lrsquoexemple preacuteceacutedentlrsquoexemple preacuteceacutedent
Approche Approche comportementalecomportementaleUne autre approche pour la deacutetection drsquointrusions consiste agrave
observer certains aspects du comportement des utilisateurs et programmes
activiteacutes de connexion et de session
activiteacutes relieacutees agrave lrsquoexeacutecution de programme et drsquoaccegraves aux fichiers
Il y a deux approches pour la deacutetection de comportements suspects
Par regravegles (rule-based) Un ensemble de regravegles deacutecrivant les comportements normaux est eacutetabli Les comportements anormaux (trop loin des normaux) sont rejeteacutes
Statistique Des statistiques sur les utilisateurs normaux sont creacuteeacutees Le comportement de lrsquoutilisateurprogramme observeacute est compareacute aux statistiques Un comportement montrant un trop grand eacutecart avec les statistiques est rejeteacute
Problegravemes avec les Problegravemes avec les systegravemes de deacutetection systegravemes de deacutetection
drsquointrusion (IDS)drsquointrusion (IDS)Le problegraveme majeur avec lrsquoapproche est le mecircme qursquoavec la biomeacutetrie Le systegraveme qui surveille doit ecirctre assez toleacuterant pour autoriser les comportements normaux mais suffisamment restrictif pour attraper les acteurs malveillants
Ce problegraveme nrsquoest pas tregraves bien compris et les solutions proposeacutees ne sont pas tout agrave fait satisfaisantes
La deacutetection drsquointrusion est bien inutile si le systegraveme ne reacuteagit pas de la bonne faccedilon lorsqursquoune intrusion est deacutetecteacutee La partie du systegraveme qui alerte lrsquoadministrateur qui interdit lrsquoaccegraves qui effectue quelque autre tacircche pour eacuteliminer la menace est tout aussi importante que celle qui deacutetecte
Le pot de mielLe pot de miel
Le pot de miel (laquohoney potraquo) est un truc pratique pour la deacutetection drsquointrusions
Une ressource bidon qui semble inteacuteressante pour un adversaire est creacuteeacutee
Puisque celle-ci est bidon on peut supposer que si quelqursquoun y accegravede crsquoest qursquoil srsquoadonne agrave une activiteacute malveillante
En consultant les traces il peut ecirctre possible de retrouver lrsquoutilisateur malveillant
Ceci peut se faire agrave lrsquoinsu de lrsquointrus
ExempleExemple
Un hocircpital ameacutericain soupccedilonnait que quelqursquoun consultait les dossiers de patients sans en avoir lrsquoautorisation
Ils ont creacuteeacute des fichiers pour des patients qui nrsquoexistent pas
Les accegraves agrave ces fichiers ont alors eacuteteacute retraceacutes jusqursquoagrave lrsquoutilisateur malveillant
Les attaques de lrsquointeacuterieurLes attaques de lrsquointeacuterieurPresque tout ce que nous avons vu a pour but la protection contre les attaques venues de lrsquoexteacuterieur
Les attaques peuvent tregraves bien eacutemaner de lrsquointeacuterieur et peuvent causer des problegravemes seacuterieux
Le premiegravere chose agrave comprendre est qursquoil nrsquoest pas possible de se preacutemunir contre ces attaques si les utilisateurs ont tous les droits sur le systegraveme cible
Il est donc neacutecessaire qursquoune partie du systegraveme soit garantie de fonctionner selon ses speacutecifications mecircme sous attaque
Sans cette hypothegravese le systegraveme est sous le controcircle complet de lrsquoadversaire
Base informatique Base informatique seacutecuriseacuteeseacutecuriseacutee
laquotrusted computing baseraquo (TCB)laquotrusted computing baseraquo (TCB)
Une base seacutecuriseacutee peut ecirctre eacutetablie en utilisant de la seacutecuriteacute mateacuterielle logicielle par mot de passe par exemple
Le rocircle de ce systegraveme de base est de controcircler lrsquoaccegraves aux ressources et le flux drsquoinformation sur celui-ci
Pour bien comprendre comment ces protections fonctionnent nous devons mettre de lrsquoordre dans nos ideacutees Nous devons voir agrave quoi ressemble une politique de seacutecuriteacute dans ce sceacutenario
Crsquoest notre prochain sujet
ObjectifsObjectifsLa seacutecuriteacute des reacuteseaux permet que les communications drsquoun systegraveme agrave un autre soient sucircres
La seacutecuriteacute des systegravemes srsquointeacuteresse aux meacutecanismes qui eacutevitent les intrusions
De tels meacutecanismes ont deacutejagrave eacuteteacute mentionneacutes mots de passe seacutecuriteacute mateacuterielle et biomeacutetrie
Les mots de passe permettent aussi de se proteacuteger contre les intrusions agrave partir drsquoun reacuteseau
Nous allons maintenant voir drsquoautres meacutethodes qui protegravegent contre les intrusions agrave partir drsquoun reacuteseau
voyons drsquoabord voyons drsquoabord les types les types
drsquointrusions que drsquointrusions que nous voulons nous voulons repousser repousser
voyons drsquoabord voyons drsquoabord les types les types
drsquointrusions que drsquointrusions que nous voulons nous voulons repousser repousser
Types drsquoattaques (I)Types drsquoattaques (I)Cheval de Troie Petit programme malveillant drsquoapparence anodine qui peut causer des deacutegacircts une fois installeacute (virus classique permettre de prendre le controcircle de lrsquoordinateur agrave distance)
Porte deacuterobeacutee (laquobackdoorraquo) Un point drsquoentreacutee dans un programme ou un systegraveme plus ou moins secret Geacuteneacuteralement une seacutecuriteacute pour deacutebloquer un code drsquoaccegraves perdu ou pour le deacutebogage Crsquoest aussi le point drsquoentreacutee des pirates Ils peuvent mecircme les creacuteer pour les utiliser ulteacuterieurement
Reniflage (laquosniffingraquo) Eacutecouter une ligne de transmission par laquelle transitent des donneacutees pour les reacutecupeacuterer agrave la voleacutee Cette technique peut ecirctre utiliseacutee agrave lrsquointerne pour le deacutebogage ou de maniegravere abusive par un pirate cherchant par exemple agrave se procurer un mot de passe Vise surtout agrave intercepter les donneacutees non chiffreacutees Dans certains reacuteseaux (non commuteacutes relieacutes par laquohubraquo [concentrateur reliant plusieurs ordinateurs drsquoun reacuteseau] ou cacircbles coaxiaux) lrsquoensemble des messages est transmis agrave tous En changeant lrsquoeacutetat de lrsquointerface reacuteseau (c-agrave-d mode espion laquopromiscuous moderaquo) lrsquoadversaire peut intercepter toutes les communications pour les analyser
Mystification (laquospoofingraquo) Technique drsquointrusion consistant agrave envoyer agrave un serveur des paquets qui semblent provenir drsquoune adresse IP connue par le coupe-feu La machine est rendue inatteignable par le pirate pour pouvoir intercepter les codes de communication et eacutetablir la liaison pirate
UsurpationUsurpationUsurpationUsurpation
Types drsquoattaques (II)Types drsquoattaques (II)
Attaque par rebond (laquobounce attackraquo) Meneacutee via un autre ordinateur qui se retrouve complice involontaire Cet ordinateur expeacutedie des messages drsquoattaque agrave la victime masquant lrsquoidentiteacute du pirate
Attaque de lrsquohomme du milieu Le pirate se place entre deux ordinateurs et se fait passer pour un afin drsquoobtenir le mot de passe de lrsquoautre Il peut alors se retourner contre le premier avec un mot de passe valide pour lrsquoattaquer
Deacuteni de service (laquodenial of serviceraquo) Une attaque cherchant agrave rendre un ordinateur hors service en le submergeant de trafic inutile Par exemple un serveur entiegraverement occupeacute agrave reacutepondre agrave de fausses requecirctes de connexion Des machines peuvent ecirctre agrave lrsquoorigine de lrsquoattaque geacuteneacuteralement agrave lrsquoinsu de leur proprieacutetaire
Treacutebuchage sans fil (laquowar-drivingraquo) Dans le cas des reacuteseaux sans fil Consiste agrave circuler dans la ville avec un portable ou un assistant numeacuterique personnel (laquoPDAraquo) pour repeacuterer et peacuteneacutetrer les reacuteseaux locaux non proteacutegeacutes
PreacuteventionPreacutevention
Disposer drsquoune sauvegarde de ses donneacutees
Faire un audit des accegraves inutilement ouverts
Les comptes drsquoadministration ont des mots de passe seacutecuriseacutes
Suppression des comptes utilisateurs non utiliseacutes
Deacutesactiver les services (p ex internet) non utiliseacutes sur les machines et supprimer les partages de fichiers qui ne sont pas neacutecessaires
Le neacutecessaire
PreacuteventionPreacutevention
Mettre agrave jour les logiciels agrave lrsquoaide des derniegraveres rustines (laquopatchesraquo) de seacutecuriteacute officielles pour fermer les bregraveches
Installer un coupe-feu
Structurer les reacuteseaux en zones eacutetanches par activiteacute et sensibiliteacute (VLAN) Instituer un systegraveme de mots de passe Isoler les serveurs Internet VLAN Virtual Local Area Network regroupe les machines de faccedilon logique et non physique
Srsquoabonner aux lettres drsquoinformation (laquonewslettersraquo) de seacutecuriteacute des diffeacuterents fournisseurs
Le souhaitable
Coupe-feuCoupe-feuUn coupe-feu permet de couper lrsquoaccegraves agrave un reacuteseau local Crsquoest le seul point drsquoaccegraves agrave un reacuteseau local agrave partir de lrsquoexteacuterieur
Les techniques que nous avons vues jusqursquoagrave maintenant ne permettent pas drsquoeacuteviter de communiquer avec des adversaires
Mecircme si nous insistons pour faire un eacutechange de cleacute authentifieacute avec quelqursquoun une certaine quantiteacute drsquoinformation eacutechangeacutee avec des adversaires potentiels ne peut ecirctre eacuteviteacutee
Ceci pourrait permettre agrave lrsquoadversaire de pirater un ordinateur en utilisant une attaque par deacutebordement de tampon
Le concept du coupe-feu Lrsquoadversaire ne peut attaquer un ordinateur avec lequel il ne communique pas
Lrsquoaspect drsquoun coupe-feuLrsquoaspect drsquoun coupe-feu
coupe-feu
reacuteseau local (LAN)
LAN priveacutereacuteseau public
Coupe-feu filtrage de paquetsCoupe-feu filtrage de paquets
Un coupe-feu est simplement une machine ou un logiciel qui arrecircte ou retire une partie de la circulation sur un reacuteseau
Il est habituellement placeacute sur la connexion entre le reacuteseau local et lrsquoInternet Le trafic de reacuteseau doit donc passer par celui-ci pour relier le reacuteseau local agrave lrsquoInternet
La maniegravere la plus simple drsquoutiliser un coupe-feu consiste agrave lui demander de couper toute communication qui tente de se connecter agrave une machine que vous ne voulez pas voir communiquer avec lrsquoexteacuterieur
Filtrage de paquets Filtrage de paquets commentcommentSouvenons-nous que les connexions TCP demandent que
des paquets speacuteciaux soient transmis et accepteacutes dans le but drsquoeacutetablir une connexion
Ces paquets sont faciles agrave reconnaicirctre car certains drapeaux (laquoflagsraquo) seront activeacutes Les paquets suivants pourront ecirctre associeacutes agrave une connexion eacutetablie preacuteceacutedemment
Le protocole UDP eacutetablit une communication sans ecirctre orienteacute connexion Un paquet est transmis en espeacuterant qursquoil se rende agrave destination LrsquoUDP est utiliseacute pour communiquer avec les serveurs DNS qui traduisent les adresses sous une forme lisible en adresses IP
Le coupe-feu peut tout simplement eacuteliminer les paquets eacutetablissant une connexion TCP sur une machine locale et tout le trafic UDP Ceci est nommeacute filtrage simple des paquets
Filtrage de paquets Filtrage de paquets commentcomment
Un coupe-feu par filtrage de paquets reacuteside tregraves bas dans la pile TCPIP au niveau Internet ou mecircme Reacuteseau Crsquoest la seule faccedilon de srsquoassurer que tout ce qui va du reacuteseau local ou vient de lrsquoInternet sera observeacute
Le filtrage des paquets peut ecirctre configureacute par une politique qui deacutetermine quels paquets seront bloqueacutes ou autoriseacutes
Il srsquoagit du coupe-feu original le plus simple et le plus facile agrave reacutealiser Il peut ecirctre tregraves sucircr car il peut bloquer toute la circulation Il est cependant neacutecessaire de permettre des accegraves ce qui rend possibles certaines attaques
Les limites du filtrage de Les limites du filtrage de paquetspaquetsEacutevidemment toutes les connexions ne peuvent ecirctre
eacutelimineacutees les serveurs Web et de courriel doivent bien ecirctre autoriseacutes agrave communiquer (ils ont besoin entre autres choses
de communiquer avec le serveur DNS via UDP)Nous pouvons deacuteplacer ce serveur Nous pouvons deacuteplacer ce serveur agrave lrsquoexteacuterieur mais comment alors agrave lrsquoexteacuterieur mais comment alors
le mettre agrave jourle mettre agrave jour
Nous pouvons deacuteplacer ce serveur Nous pouvons deacuteplacer ce serveur agrave lrsquoexteacuterieur mais comment alors agrave lrsquoexteacuterieur mais comment alors
le mettre agrave jourle mettre agrave jour
La bonne nouvelle est que toutes les La bonne nouvelle est que toutes les attaques devront passer par ce attaques devront passer par ce serveur si le filtrage est strict serveur si le filtrage est strict
La bonne nouvelle est que toutes les La bonne nouvelle est que toutes les attaques devront passer par ce attaques devront passer par ce serveur si le filtrage est strict serveur si le filtrage est strict
pourrait ecirctre possible si le pourrait ecirctre possible si le filtrage est trop lacircchefiltrage est trop lacircche
pourrait ecirctre possible si le pourrait ecirctre possible si le filtrage est trop lacircchefiltrage est trop lacircche
DMZ (laquoDemilitarized zoneraquo) une zone laquodeacutemilitariseacuteeraquo entre lrsquoInternet et le reacuteseau interne dans laquelle on peut placer les serveurs WEB accessibles depuis lrsquoexteacuterieur La zone est munie drsquoun coupe-feu pour cette tacircche Les coupe-feu peuvent avoir une sortie DMZ pour le serveur Web
Politiques de filtragePolitiques de filtrageSouvenons-nous que les paquets contiennent les informations suivantes
les donneacutees
lrsquoadresse IP drsquoorigine et de destination (incluant le port de destination)
lrsquoinformation sur le protocole par lequel ils doivent ecirctre manipuleacutes
lrsquoinformation sur des erreurs eacuteventuelles et
de lrsquoinformation sur le type de donneacutees en transit
Un politique de filtrage eacutenonce une liste drsquoautorisations et drsquointerdictions des types
autoriseinterdit les paquets selon lrsquoadresse IP drsquooriginedestination
autoriseinterdit les paquets selon leur port de destination
autoriseinterdit les paquets selon le protocole
Conclusion Conclusion (filtrage de paquets)(filtrage de paquets)
Pour ecirctre complegravetement sucircr le filtrage de paquets doit ecirctre tregraves restrictif ce qui peut trop limiter lrsquoaccegraves au reacuteseau
Si le filtrage est plus lacircche alors il pourrait devenir possible agrave lrsquoadversaire de communiquer avec des machines du reacuteseau local
Ceci demande agrave lrsquoadversaire de tenter beaucoup drsquoadresses IP jusqursquoagrave ce qursquoune machine reacuteponde
En conclusion les coupe-feu devraient faire quelque chose de plus intelligent que le simple filtrage
Ils doivent examiner les paquets en deacutetail pour deacutecider quoi faire avec ceux-ci Ils devraient mecircme ecirctre capables de modifier des paquets si neacutecessaire
Coupe-feu proxyCoupe-feu proxyLes proxy (laquoserveurs mandatairesraquo) permettent de faire du filtrage intelligent Il ne permet aucune connexion sur une machine locale agrave partir de lrsquoexteacuterieur
Le proxy gegravere toutes les connexions au nom des machines de reacuteseau local
Si une machine locale a un logiciel qui deacutesire acceacuteder agrave lrsquoInternet alors celui-ci devra ecirctre configureacute pour communiquer avec le coupe-feu agrave la place Le coupe-feu eacutetablira alors la connexion
Vu de lrsquoexteacuterieur le reacuteseau local est complegravetement cacheacute derriegravere le coupe-feu Seul celui-ci est visible
Essayer plusieurs adresses IP pour espeacuterer une reacuteponse ne fonctionne pas ici
Une attaque doit srsquoen prendre au proxy Une machine est plus facile agrave proteacuteger que plusieurs
Proxy en imagesProxy en imagesLe proxy comme une zone tampon entre
lrsquoInternet et un reacuteseau local
Pendant une connexion internet
Cacher votre adresse Cacher votre adresse IPIPVotre adresse IP reacutevegravele votre point drsquoentreacutee sur lrsquoInternet
Peut permettre de retrouver votre fournisseur le reacuteseau de votre employeur votre eacutecole ou votre terminal public
Il srsquoagit de lrsquoidentiteacute de votre machine pendant que vous ecirctes en ligne Sa porte sur le monde
Vous pouvez dissimuler votre adresse IP sur le Web en utilisant un serveur proxy anonyme
Un serveur proxy speacutecialiseacute pour la navigation Web anonyme utilise sa propre adresse IP agrave la place de la vocirctre pour chaque requecircte sortante
Il peut mecircme chiffrer les communications Web ne permettant plus la surveillance de vos actions
Proxy pour et contre Proxy pour et contre
Un proxy permet de proteacuteger un reacuteseau local drsquoune faccedilon tregraves efficace Un seul point faible neacutecessite notre attention
Cette solution nrsquoest pas tregraves flexible Les logiciels clients des machines locales doivent savoir comment utiliser un proxy Sinon rien ne fonctionnera puisque celles-ci sont invisibles
Nous pourrions peut-ecirctre faire croire au client que le service est donneacute par le coupe-feu mais celui-ci doit savoir quoi faire pour acheminer la connexion vers sa destination Ceci demande de configurer chaque type de connexion
Exemple de Proxy TorExemple de Proxy Tor
Coupe-feu dynamique Coupe-feu dynamique (laquostateful firewallraquo)(laquostateful firewallraquo)
Nous avons vu que les coupe-feu statiques agrave filtrage de paquets interviennent en fonction de paquets individuels
Un serveur FTP va ouvrir des connexions sur des ports de hautes valeurs Le filtrage de paquets ne peut pas savoir qursquoune connexion sur le port 6783 appartient agrave une connexion FTP leacutegitime Ces paquets seront eacutelimineacutes
Le coupe-feu dynamique reacutesout ce problegraveme en meacutemorisant les connexions ouvertes par des connexions leacutegitimes
Il est aussi possible de transformer lrsquoadresse IP drsquoune machine locale par quelque chose de diffeacuterent Le coupe-feu agrave mascarade permet drsquoeacuteviter les attaques qui consistent agrave essayer des adresses IP dans le but drsquoobtenir une reacuteponse
Le coupe-feu peut ecirctre configureacute pour eacuteliminer les connexions qui font des trucs bizarres comme la transmission drsquoune chaicircne trop longue
Toujours la pile TCPIPToujours la pile TCPIP
Champs du protocole Champs du protocole IPIP
Champs utiles pour le protocole IP
Le protocole IP fonctionne agrave partir de segments
Protocole UDPProtocole UDP(ses champs utiles)(ses champs utiles)
Champs utiles pour le protocole UDP
Protocole TCPProtocole TCP(ses champs utiles)(ses champs utiles)
Champs utiles pour le protocole TCP
Port de lrsquoapplication Port de lrsquoapplication en cours sur la en cours sur la machine sourcemachine source
Port de lrsquoapplication Port de lrsquoapplication sur la machine sur la machine
destinationdestination
Le numeacutero drsquoordre du Le numeacutero drsquoordre du prochain segment (IP) prochain segment (IP)
attenduattendu
URG paquet agrave traiter de faccedilon urgenteACK paquet est un accuseacute de reacuteceptionPSH paquet fonctionne selon la meacutethode push
RST connexion reacuteinitialiseacuteeSYN indique une demande drsquoeacutetablissement de connexionFIN indique une interruption de connexion
Le numeacutero drsquoordre du segment (IP) Le numeacutero drsquoordre du segment (IP) courant si SYN=0 et le numeacutero drsquoordre courant si SYN=0 et le numeacutero drsquoordre
initial pour synchroniser les nos de initial pour synchroniser les nos de seacutequence (ISN)seacutequence (ISN)
DrapeauxDrapeaux
Filtrage extrecircmeFiltrage extrecircmeTCP est orienteacute connexion Pour en eacutetablir une de A vers B on doit transmettre SYN=1 dans le premier paquet de lrsquoeacutetablissement de connexion agrave trois eacutetapes (laquothree-way handshakeraquo)
Un filtrage simple consiste agrave laisser tomber tous les paquets qui ne contiennent que le drapeau SYN=1
Il devient impossible drsquoeacutetablir une connexion TCP de lrsquoexteacuterieur du mur
Si en plus les paquets UDP sont eacutelimineacutes alors la situation devrait ecirctre tregraves sucircre
Cette politique ne permet pas de se connecter au serveur Web cependant
Activer le serveur Web Activer le serveur Web et accegraves agrave un DNSet accegraves agrave un DNS
Pour donner accegraves au serveur Web nous pourrions faire la chose suivante
Nous autorisons une exception agrave la regravegle preacuteceacutedente
Nous autorisons les paquets SYN=1 pour le serveur Web sur le port 80 (port http)
Nous voudrions aussi permettre lrsquoaccegraves agrave un serveur DNS pour la conversion drsquoadresse comme httpwwwiroumontrealca en 13220424179
Il suffit de laisser les paquets UDP vers et depuis au moins un serveur DNS sur le port 53 (UDP)
Le reacutesultatLe reacutesultat
Si le pirate trouve une faille sur le serveur Web alors il pourrait attaquer le reacuteseau local
Pour eacuteviter ceci il faut seacuteparer le serveur Web des autresLe filtrage par paquets est insuffisant
Deux filtres valent mieux Deux filtres valent mieux qursquounqursquoun
ProxyProxyIl y a drsquoautres services sur lrsquoInternet qui utilisent le protocole UDP flux de donneacutees videacuteo jeux videacuteo
De plus excepteacute pour les paquets SYN=1 il est possible de transmettre des paquets TCP aux ordinateurs du reacuteseau local
Le proxy peut rendre les machines du reacuteseau local invisibles pas le filtrage simple de paquets
Approche proxyApproche proxy
Coupe-feu Coupe-feu dynamiquesdynamiques
Les proxys ne sont pas tregraves flexibles Les coupe-feu dynamiques permettent drsquoutiliser les logiciels drsquoune faccedilon plus transparente
Il srsquoagit drsquoun filtre avanceacute qui permet de veacuterifier que les paquets appartiennent agrave une connexion deacutejagrave eacutetablie Crsquoest seulement lorsque crsquoest le cas que le paquet peut passer
Parce qursquoil est conscient drsquoune connexion il peut appliquer NAT etou PAT
NAT Dynamique (laquoDynamic Network Address Translationraquo) Le coupe-feu traduit les adresses du reacuteseau Toutes les machines du reacuteseau possegravedent vu de lrsquoexteacuterieur la mecircme adresse IP
PAT (laquoPort Address Translationraquo) Le coupe-feu traduit les numeacuteros de port par lesquels les paquets arrivent sur les hocirctes locaux
Ces coupe-feu sont appeleacutes coupe-feu avec mascarade
NAT a eacuteteacute mis au point agrave NAT a eacuteteacute mis au point agrave lrsquoorigine pour reacutepondre agrave la lrsquoorigine pour reacutepondre agrave la
peacutenurie drsquoadresses IP avec le peacutenurie drsquoadresses IP avec le protocole IPv4protocole IPv4
NAT a eacuteteacute mis au point agrave NAT a eacuteteacute mis au point agrave lrsquoorigine pour reacutepondre agrave la lrsquoorigine pour reacutepondre agrave la
peacutenurie drsquoadresses IP avec le peacutenurie drsquoadresses IP avec le protocole IPv4protocole IPv4
Coupe-feu agrave Coupe-feu agrave mascarademascarade
Filtrage dynamique eacutetenduFiltrage dynamique eacutetenduLe filtrage des coupe-feu dynamiques nrsquoest pas limiteacute aux protocoles TCPIP
Pour des applications usuelles le filtrage peut srsquoappliquer au protocole
Le coupe-feu peut ainsi deacutetecter des comportements inhabituels
Peut aussi filtrer certaines parties des donneacutees transmises
Pour le protocole HTTP le filtre peut supprimer les applications Java
Pour le protocole SMTP le filtre peut supprimer les piegraveces jointes drsquoun certain type
Conclusion sur les coupe-Conclusion sur les coupe-feufeu
Les coupe-feu permettent de filtrer le trafic entre le reacuteseau local et lrsquoInternet en nrsquoadministrant qursquoune seule machine
Les coupe-feu ne sont cependant pas une solution magique pour reacutesoudre les problegravemes causeacutes par les attaques exteacuterieures agrave un reacuteseau local
Les coupe-feu pour un seul ordinateur personnel peuvent offrir une solution sans trop drsquoentretien
Les coupe-feu neacutecessitent des mises agrave jour freacutequentes lorsque le reacuteseau local est de bonne taille Lorsque le reacuteseau local change la configuration du coupe-feu doit aussi changer
Penser que lrsquoinstallation drsquoun coupe-feu rend votre reacuteseau sucircr est un peu de la penseacutee magique (neacutecessaire mais pas suffisant)
Logiciels malveillantsLogiciels malveillantsUn adversaire peut une fois passeacute le coupe-feu et les autres deacutefenses vouloir installer un programme malveillant sur la machine locale Ceux-ci sont de trois types
Chevaux de Troie Programme qui semble tout agrave fait utile mais qui cache une fonction malveillante Par exemple donne accegraves agrave des donneacutees priveacutees donne des droits drsquoaccegraves non autoriseacutes ou deacutetruit des donneacutees
Virus Programme qui infecte un autre programme sur votre ordinateur Agrave partir du programme infecteacute le virus se propage vers drsquoautres programmes Apregraves un certain temps ou eacuteveacutenement les virus peuvent entreprendre certaines actions Celles-ci peuvent ecirctre lrsquoeacutelimination de fichiers la deacuteteacuterioration de fonctions du systegraveme drsquoexploitation etc
Vers Programmes qui infectent un ordinateur sans avoir agrave ecirctre heacutebergeacutes par drsquoautres programmes Ils sont des programmes indeacutependants Ils se multiplient en exploitant diffeacuterentes ressources Les objectifs de ces programmes peuvent ecirctre lrsquoespionnage lrsquoouverture de portes deacuterobeacutees eacutemettre des requecirctes vers un site Internet jusqursquoagrave saturation
ExempleExempleI Love You Un ver lanceacute en 2000 et qui a atteint 31 millions de machines en 4 jours
Infection Le ver eacutetait dissimuleacute en piegravece jointe drsquoun courriel Cette piegravece jointe eacutetait preacutesenteacutee comme Love-Letter-for-youtxtvbs Lrsquoextension vbs indique que le fichier est un script Visual Basic Comme lrsquoextension nrsquoapparaicirct pas sur Windows les utilisateurs voyaient la piegravece jointe comme Love-Letter-for-youtxt Objectif Le script lisait la liste des contacts de lrsquoutilisateur pour envoyer ce mecircme message agrave ceux-ci La plate-forme Windows eacutetait viseacutee Des fichiers eacutetaient deacutetruits et remplaceacutes par ce script Il changeait la page drsquoaccueil drsquoInternet Explorer pour teacuteleacutecharger un cheval de Troie
ExempleExempleCode Red Un ver qui a infecteacute 359 000 ordinateurs en moins de 14 heures le 19 juillet 2001
Infections Le ver se multipliait en essayant des adresses IP aleacuteatoires pour ensuite infecter des serveurs qui faisaient tourner Microsoft IIS avec une faille de seacutecuriteacute
Objectif Monter une attaque par deacuteni de service (DOS) contre la Maison-Blanche
Lrsquoattaque a eacuteteacute facile agrave repousser car le ver veacuterifiait avant de lancer lrsquoattaque que le serveur agrave lrsquoadresse IP (au lieu du nom de domaine) de la Maison-Blanche eacutecoutait le port 80 (le port des serveurs Web) En changeant lrsquoadresse IP de la Maison-Blanche lrsquoattaque a eacuteteacute repousseacutee
ExempleExempleCabir Est un virusver (deacutemonstration de faisabiliteacute laquoproof of conceptraquo) qui srsquoattaque agrave la teacuteleacutephonie mobile Crsquoest un fichier de 15 ko nommeacute CARIBESIS
Infection Se propage par la teacuteleacutephonie mobile gracircce agrave la technologie Bluetooth et le systegraveme drsquoexploitation Symbian OS
Action Agrave chaque fois que le teacuteleacutephone infecteacute est ouvert le mot laquoCariberaquo srsquoaffiche Il tente de se propager aux peacuteripheacuteriques BlueTooth de la zone du teacuteleacutephone infecteacute Il nrsquoest pas meacutechant nrsquoavait pour but que de deacutemontrer la faisabiliteacute
AntivirusAntivirusLes antivirus sont des programmes qui deacutetectent les virus les vers et les chevaux de Troie sur votre ordinateur Ils les eacuteliminent
Ils visitent les fichiers sur votre disque dans le but de trouver des bouts de programmes reconnus comme dangereux
Ceci est possible eacutetant donneacute une base de donneacutees agrave jour contenant les virus connus sous la forme de signatures de virus Une signature est un motif (laquopatternraquo) qui caracteacuterise un virus donneacute
Un antivirus nrsquoest efficace que si sa base de donneacutees est mise agrave jour constamment Les compagnies drsquoantivirus vont vite pour mettre agrave jour leur base de donneacutees lorsqursquoun nouveau virus est identifieacute
Malheureusement les utilisateurs tardent agrave mettre leur copie agrave jour causant bien des infections
Tromper les antivirusTromper les antivirusDe nouveaux virus utilisent les meacutethodes de la cryptographie pour deacutejouer les antivirus
Des virus sont chiffreacutes pour les rendre non reconnaissables par les antivirus car ils ont toujours un aspect diffeacuterent
Ces virus ont un petit code en clair qui permet de les deacutecoder et de les charger en meacutemoire pour ecirctre exeacutecuteacutes Ce code est ce que les antivirus doivent deacutetecter
Ces virus sont de trois types
Oligomorphique Le virus est chiffreacute agrave chaque reacuteplication
Polymorphique Le virus est chiffreacute et la routine de deacutechiffrement est capable de changer certaines de ses instructions au fil des reacuteplications
Meacutetamorphique Le virus change de forme au fil des reacuteplications
IntrusionsIntrusionsPour qursquoun virus ver ou cheval de Troie soit deacuteleacutetegravere encore faut-il qursquoil srsquoinstalle sur votre machine
Mecircme si un adversaire peut parler agrave votre machine ceci nrsquoimplique pas qursquoil peut installer un logiciel sur celle-ci encore moins srsquoil nrsquoen est pas un utilisateur
Pour ce faire les adversaires peuvent essayer diverses strateacutegies
Faiblesses du systegraveme drsquoexploitation ou du logiciel du serveur Nous allons voir un exemple de ce type drsquoattaque attaques par deacutebordement Une page Web nrsquoest pas un objet passif Elle peut contenir du code (JavaScript Perl etc) malveillant
Tromper lrsquoutilisateur Crsquoest peut-ecirctre plus simple Cas speacutecial du piratage psychologique Cliquer ici pour installer un joli logiciel il faut espeacuterer que lrsquoantivirus deacutetecte ceci avant qursquoil ne soit trop tard
Deacutetecter les intrusionsDeacutetecter les intrusionsUne faccedilon diffeacuterente de deacutetecter les logiciels ou utilisateurs malveillants consiste agrave deacutetecter les comportements malveillants
Un systegraveme peut surveiller les processus pour deacutetecter les comportements malveillants
Une telle approche a lrsquoavantage de ne pas deacutependre drsquoinformation sur les virus et les attaques
Un coupe-feu dynamique est un exemple de cette approche
Il surveille les connexions et tente de deacuteterminer si un client transmet des donneacutees agrave contenu suspect (comme la taille)
Requecirctes Requecirctes malveillantesmalveillantes
dlkjfdsflkjsd dlkjfdsflkjsd fjdskl gfjdlskewqewewewewhdfbfbfbww fjdskl gfjdlskewqewewewewhdfbfbfbww jaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfjaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfwewqewqewqewqewqewqeweekjwweeqqqsxcswdswewqewqewqewqewqewqeweekjwweeqqqsxcswdsdddds dddds ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqqwwq qwwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewqeweekwqwqwefdscxcccj qeweekwqwqwefdscxcccj ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxzcwq zcwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfssaDSADSADSsfghdskjgfhdsgfihoiehjrfssaDSADSADSADDSDSDSSDSDSADDSDSDSSDSDSIl arrive que de longues requecirctes puissent faire planter un systegraveme
mal programmeacute Un adversaire peut donc soumettre des chaicircnes tregraves longues dans le but de rendre le systegraveme inopeacuterant (ou mecircme pire assujetti) comme nous le verrons plus loin
Et agrave peu pregraves nrsquoimporte qui Et agrave peu pregraves nrsquoimporte qui peut proposer un service peut proposer un service
comme celui-ci comme celui-ci
Un coupe-feu peut filtrer les requecirctes anormalement longues pour les ignorer Mecircme les systegravemes avec programmes erroneacutes seront agrave lrsquoabri de ce type drsquoattaque
SELECT SELECT FROM Passwords FROM Passwords WHERE user=rsquoWHERE user=rsquoJugheadJugheadrsquo AND password=rsquorsquo AND password=rsquoxrsquo xrsquo OR lsquo1rsquo=lsquo1OR lsquo1rsquo=lsquo1rsquorsquo
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Requecirctes Requecirctes malveillantesmalveillantes
HTTPSHTTPS
Password Password xrsquo OR xrsquo OR lsquo1rsquo=rsquo1lsquo1rsquo=rsquo1
Un coupe-feu dynamique peut filtrer des requecirctes bizarres comme xrsquo OR lsquo1rsquo=rsquo1xrsquo OR lsquo1rsquo=rsquo1
Ceci est beaucoup plus difficile agrave Ceci est beaucoup plus difficile agrave reacutealiser par un coupe-feu que reacutealiser par un coupe-feu que
lrsquoexemple preacuteceacutedentlrsquoexemple preacuteceacutedent
Approche Approche comportementalecomportementaleUne autre approche pour la deacutetection drsquointrusions consiste agrave
observer certains aspects du comportement des utilisateurs et programmes
activiteacutes de connexion et de session
activiteacutes relieacutees agrave lrsquoexeacutecution de programme et drsquoaccegraves aux fichiers
Il y a deux approches pour la deacutetection de comportements suspects
Par regravegles (rule-based) Un ensemble de regravegles deacutecrivant les comportements normaux est eacutetabli Les comportements anormaux (trop loin des normaux) sont rejeteacutes
Statistique Des statistiques sur les utilisateurs normaux sont creacuteeacutees Le comportement de lrsquoutilisateurprogramme observeacute est compareacute aux statistiques Un comportement montrant un trop grand eacutecart avec les statistiques est rejeteacute
Problegravemes avec les Problegravemes avec les systegravemes de deacutetection systegravemes de deacutetection
drsquointrusion (IDS)drsquointrusion (IDS)Le problegraveme majeur avec lrsquoapproche est le mecircme qursquoavec la biomeacutetrie Le systegraveme qui surveille doit ecirctre assez toleacuterant pour autoriser les comportements normaux mais suffisamment restrictif pour attraper les acteurs malveillants
Ce problegraveme nrsquoest pas tregraves bien compris et les solutions proposeacutees ne sont pas tout agrave fait satisfaisantes
La deacutetection drsquointrusion est bien inutile si le systegraveme ne reacuteagit pas de la bonne faccedilon lorsqursquoune intrusion est deacutetecteacutee La partie du systegraveme qui alerte lrsquoadministrateur qui interdit lrsquoaccegraves qui effectue quelque autre tacircche pour eacuteliminer la menace est tout aussi importante que celle qui deacutetecte
Le pot de mielLe pot de miel
Le pot de miel (laquohoney potraquo) est un truc pratique pour la deacutetection drsquointrusions
Une ressource bidon qui semble inteacuteressante pour un adversaire est creacuteeacutee
Puisque celle-ci est bidon on peut supposer que si quelqursquoun y accegravede crsquoest qursquoil srsquoadonne agrave une activiteacute malveillante
En consultant les traces il peut ecirctre possible de retrouver lrsquoutilisateur malveillant
Ceci peut se faire agrave lrsquoinsu de lrsquointrus
ExempleExemple
Un hocircpital ameacutericain soupccedilonnait que quelqursquoun consultait les dossiers de patients sans en avoir lrsquoautorisation
Ils ont creacuteeacute des fichiers pour des patients qui nrsquoexistent pas
Les accegraves agrave ces fichiers ont alors eacuteteacute retraceacutes jusqursquoagrave lrsquoutilisateur malveillant
Les attaques de lrsquointeacuterieurLes attaques de lrsquointeacuterieurPresque tout ce que nous avons vu a pour but la protection contre les attaques venues de lrsquoexteacuterieur
Les attaques peuvent tregraves bien eacutemaner de lrsquointeacuterieur et peuvent causer des problegravemes seacuterieux
Le premiegravere chose agrave comprendre est qursquoil nrsquoest pas possible de se preacutemunir contre ces attaques si les utilisateurs ont tous les droits sur le systegraveme cible
Il est donc neacutecessaire qursquoune partie du systegraveme soit garantie de fonctionner selon ses speacutecifications mecircme sous attaque
Sans cette hypothegravese le systegraveme est sous le controcircle complet de lrsquoadversaire
Base informatique Base informatique seacutecuriseacuteeseacutecuriseacutee
laquotrusted computing baseraquo (TCB)laquotrusted computing baseraquo (TCB)
Une base seacutecuriseacutee peut ecirctre eacutetablie en utilisant de la seacutecuriteacute mateacuterielle logicielle par mot de passe par exemple
Le rocircle de ce systegraveme de base est de controcircler lrsquoaccegraves aux ressources et le flux drsquoinformation sur celui-ci
Pour bien comprendre comment ces protections fonctionnent nous devons mettre de lrsquoordre dans nos ideacutees Nous devons voir agrave quoi ressemble une politique de seacutecuriteacute dans ce sceacutenario
Crsquoest notre prochain sujet
Types drsquoattaques (I)Types drsquoattaques (I)Cheval de Troie Petit programme malveillant drsquoapparence anodine qui peut causer des deacutegacircts une fois installeacute (virus classique permettre de prendre le controcircle de lrsquoordinateur agrave distance)
Porte deacuterobeacutee (laquobackdoorraquo) Un point drsquoentreacutee dans un programme ou un systegraveme plus ou moins secret Geacuteneacuteralement une seacutecuriteacute pour deacutebloquer un code drsquoaccegraves perdu ou pour le deacutebogage Crsquoest aussi le point drsquoentreacutee des pirates Ils peuvent mecircme les creacuteer pour les utiliser ulteacuterieurement
Reniflage (laquosniffingraquo) Eacutecouter une ligne de transmission par laquelle transitent des donneacutees pour les reacutecupeacuterer agrave la voleacutee Cette technique peut ecirctre utiliseacutee agrave lrsquointerne pour le deacutebogage ou de maniegravere abusive par un pirate cherchant par exemple agrave se procurer un mot de passe Vise surtout agrave intercepter les donneacutees non chiffreacutees Dans certains reacuteseaux (non commuteacutes relieacutes par laquohubraquo [concentrateur reliant plusieurs ordinateurs drsquoun reacuteseau] ou cacircbles coaxiaux) lrsquoensemble des messages est transmis agrave tous En changeant lrsquoeacutetat de lrsquointerface reacuteseau (c-agrave-d mode espion laquopromiscuous moderaquo) lrsquoadversaire peut intercepter toutes les communications pour les analyser
Mystification (laquospoofingraquo) Technique drsquointrusion consistant agrave envoyer agrave un serveur des paquets qui semblent provenir drsquoune adresse IP connue par le coupe-feu La machine est rendue inatteignable par le pirate pour pouvoir intercepter les codes de communication et eacutetablir la liaison pirate
UsurpationUsurpationUsurpationUsurpation
Types drsquoattaques (II)Types drsquoattaques (II)
Attaque par rebond (laquobounce attackraquo) Meneacutee via un autre ordinateur qui se retrouve complice involontaire Cet ordinateur expeacutedie des messages drsquoattaque agrave la victime masquant lrsquoidentiteacute du pirate
Attaque de lrsquohomme du milieu Le pirate se place entre deux ordinateurs et se fait passer pour un afin drsquoobtenir le mot de passe de lrsquoautre Il peut alors se retourner contre le premier avec un mot de passe valide pour lrsquoattaquer
Deacuteni de service (laquodenial of serviceraquo) Une attaque cherchant agrave rendre un ordinateur hors service en le submergeant de trafic inutile Par exemple un serveur entiegraverement occupeacute agrave reacutepondre agrave de fausses requecirctes de connexion Des machines peuvent ecirctre agrave lrsquoorigine de lrsquoattaque geacuteneacuteralement agrave lrsquoinsu de leur proprieacutetaire
Treacutebuchage sans fil (laquowar-drivingraquo) Dans le cas des reacuteseaux sans fil Consiste agrave circuler dans la ville avec un portable ou un assistant numeacuterique personnel (laquoPDAraquo) pour repeacuterer et peacuteneacutetrer les reacuteseaux locaux non proteacutegeacutes
PreacuteventionPreacutevention
Disposer drsquoune sauvegarde de ses donneacutees
Faire un audit des accegraves inutilement ouverts
Les comptes drsquoadministration ont des mots de passe seacutecuriseacutes
Suppression des comptes utilisateurs non utiliseacutes
Deacutesactiver les services (p ex internet) non utiliseacutes sur les machines et supprimer les partages de fichiers qui ne sont pas neacutecessaires
Le neacutecessaire
PreacuteventionPreacutevention
Mettre agrave jour les logiciels agrave lrsquoaide des derniegraveres rustines (laquopatchesraquo) de seacutecuriteacute officielles pour fermer les bregraveches
Installer un coupe-feu
Structurer les reacuteseaux en zones eacutetanches par activiteacute et sensibiliteacute (VLAN) Instituer un systegraveme de mots de passe Isoler les serveurs Internet VLAN Virtual Local Area Network regroupe les machines de faccedilon logique et non physique
Srsquoabonner aux lettres drsquoinformation (laquonewslettersraquo) de seacutecuriteacute des diffeacuterents fournisseurs
Le souhaitable
Coupe-feuCoupe-feuUn coupe-feu permet de couper lrsquoaccegraves agrave un reacuteseau local Crsquoest le seul point drsquoaccegraves agrave un reacuteseau local agrave partir de lrsquoexteacuterieur
Les techniques que nous avons vues jusqursquoagrave maintenant ne permettent pas drsquoeacuteviter de communiquer avec des adversaires
Mecircme si nous insistons pour faire un eacutechange de cleacute authentifieacute avec quelqursquoun une certaine quantiteacute drsquoinformation eacutechangeacutee avec des adversaires potentiels ne peut ecirctre eacuteviteacutee
Ceci pourrait permettre agrave lrsquoadversaire de pirater un ordinateur en utilisant une attaque par deacutebordement de tampon
Le concept du coupe-feu Lrsquoadversaire ne peut attaquer un ordinateur avec lequel il ne communique pas
Lrsquoaspect drsquoun coupe-feuLrsquoaspect drsquoun coupe-feu
coupe-feu
reacuteseau local (LAN)
LAN priveacutereacuteseau public
Coupe-feu filtrage de paquetsCoupe-feu filtrage de paquets
Un coupe-feu est simplement une machine ou un logiciel qui arrecircte ou retire une partie de la circulation sur un reacuteseau
Il est habituellement placeacute sur la connexion entre le reacuteseau local et lrsquoInternet Le trafic de reacuteseau doit donc passer par celui-ci pour relier le reacuteseau local agrave lrsquoInternet
La maniegravere la plus simple drsquoutiliser un coupe-feu consiste agrave lui demander de couper toute communication qui tente de se connecter agrave une machine que vous ne voulez pas voir communiquer avec lrsquoexteacuterieur
Filtrage de paquets Filtrage de paquets commentcommentSouvenons-nous que les connexions TCP demandent que
des paquets speacuteciaux soient transmis et accepteacutes dans le but drsquoeacutetablir une connexion
Ces paquets sont faciles agrave reconnaicirctre car certains drapeaux (laquoflagsraquo) seront activeacutes Les paquets suivants pourront ecirctre associeacutes agrave une connexion eacutetablie preacuteceacutedemment
Le protocole UDP eacutetablit une communication sans ecirctre orienteacute connexion Un paquet est transmis en espeacuterant qursquoil se rende agrave destination LrsquoUDP est utiliseacute pour communiquer avec les serveurs DNS qui traduisent les adresses sous une forme lisible en adresses IP
Le coupe-feu peut tout simplement eacuteliminer les paquets eacutetablissant une connexion TCP sur une machine locale et tout le trafic UDP Ceci est nommeacute filtrage simple des paquets
Filtrage de paquets Filtrage de paquets commentcomment
Un coupe-feu par filtrage de paquets reacuteside tregraves bas dans la pile TCPIP au niveau Internet ou mecircme Reacuteseau Crsquoest la seule faccedilon de srsquoassurer que tout ce qui va du reacuteseau local ou vient de lrsquoInternet sera observeacute
Le filtrage des paquets peut ecirctre configureacute par une politique qui deacutetermine quels paquets seront bloqueacutes ou autoriseacutes
Il srsquoagit du coupe-feu original le plus simple et le plus facile agrave reacutealiser Il peut ecirctre tregraves sucircr car il peut bloquer toute la circulation Il est cependant neacutecessaire de permettre des accegraves ce qui rend possibles certaines attaques
Les limites du filtrage de Les limites du filtrage de paquetspaquetsEacutevidemment toutes les connexions ne peuvent ecirctre
eacutelimineacutees les serveurs Web et de courriel doivent bien ecirctre autoriseacutes agrave communiquer (ils ont besoin entre autres choses
de communiquer avec le serveur DNS via UDP)Nous pouvons deacuteplacer ce serveur Nous pouvons deacuteplacer ce serveur agrave lrsquoexteacuterieur mais comment alors agrave lrsquoexteacuterieur mais comment alors
le mettre agrave jourle mettre agrave jour
Nous pouvons deacuteplacer ce serveur Nous pouvons deacuteplacer ce serveur agrave lrsquoexteacuterieur mais comment alors agrave lrsquoexteacuterieur mais comment alors
le mettre agrave jourle mettre agrave jour
La bonne nouvelle est que toutes les La bonne nouvelle est que toutes les attaques devront passer par ce attaques devront passer par ce serveur si le filtrage est strict serveur si le filtrage est strict
La bonne nouvelle est que toutes les La bonne nouvelle est que toutes les attaques devront passer par ce attaques devront passer par ce serveur si le filtrage est strict serveur si le filtrage est strict
pourrait ecirctre possible si le pourrait ecirctre possible si le filtrage est trop lacircchefiltrage est trop lacircche
pourrait ecirctre possible si le pourrait ecirctre possible si le filtrage est trop lacircchefiltrage est trop lacircche
DMZ (laquoDemilitarized zoneraquo) une zone laquodeacutemilitariseacuteeraquo entre lrsquoInternet et le reacuteseau interne dans laquelle on peut placer les serveurs WEB accessibles depuis lrsquoexteacuterieur La zone est munie drsquoun coupe-feu pour cette tacircche Les coupe-feu peuvent avoir une sortie DMZ pour le serveur Web
Politiques de filtragePolitiques de filtrageSouvenons-nous que les paquets contiennent les informations suivantes
les donneacutees
lrsquoadresse IP drsquoorigine et de destination (incluant le port de destination)
lrsquoinformation sur le protocole par lequel ils doivent ecirctre manipuleacutes
lrsquoinformation sur des erreurs eacuteventuelles et
de lrsquoinformation sur le type de donneacutees en transit
Un politique de filtrage eacutenonce une liste drsquoautorisations et drsquointerdictions des types
autoriseinterdit les paquets selon lrsquoadresse IP drsquooriginedestination
autoriseinterdit les paquets selon leur port de destination
autoriseinterdit les paquets selon le protocole
Conclusion Conclusion (filtrage de paquets)(filtrage de paquets)
Pour ecirctre complegravetement sucircr le filtrage de paquets doit ecirctre tregraves restrictif ce qui peut trop limiter lrsquoaccegraves au reacuteseau
Si le filtrage est plus lacircche alors il pourrait devenir possible agrave lrsquoadversaire de communiquer avec des machines du reacuteseau local
Ceci demande agrave lrsquoadversaire de tenter beaucoup drsquoadresses IP jusqursquoagrave ce qursquoune machine reacuteponde
En conclusion les coupe-feu devraient faire quelque chose de plus intelligent que le simple filtrage
Ils doivent examiner les paquets en deacutetail pour deacutecider quoi faire avec ceux-ci Ils devraient mecircme ecirctre capables de modifier des paquets si neacutecessaire
Coupe-feu proxyCoupe-feu proxyLes proxy (laquoserveurs mandatairesraquo) permettent de faire du filtrage intelligent Il ne permet aucune connexion sur une machine locale agrave partir de lrsquoexteacuterieur
Le proxy gegravere toutes les connexions au nom des machines de reacuteseau local
Si une machine locale a un logiciel qui deacutesire acceacuteder agrave lrsquoInternet alors celui-ci devra ecirctre configureacute pour communiquer avec le coupe-feu agrave la place Le coupe-feu eacutetablira alors la connexion
Vu de lrsquoexteacuterieur le reacuteseau local est complegravetement cacheacute derriegravere le coupe-feu Seul celui-ci est visible
Essayer plusieurs adresses IP pour espeacuterer une reacuteponse ne fonctionne pas ici
Une attaque doit srsquoen prendre au proxy Une machine est plus facile agrave proteacuteger que plusieurs
Proxy en imagesProxy en imagesLe proxy comme une zone tampon entre
lrsquoInternet et un reacuteseau local
Pendant une connexion internet
Cacher votre adresse Cacher votre adresse IPIPVotre adresse IP reacutevegravele votre point drsquoentreacutee sur lrsquoInternet
Peut permettre de retrouver votre fournisseur le reacuteseau de votre employeur votre eacutecole ou votre terminal public
Il srsquoagit de lrsquoidentiteacute de votre machine pendant que vous ecirctes en ligne Sa porte sur le monde
Vous pouvez dissimuler votre adresse IP sur le Web en utilisant un serveur proxy anonyme
Un serveur proxy speacutecialiseacute pour la navigation Web anonyme utilise sa propre adresse IP agrave la place de la vocirctre pour chaque requecircte sortante
Il peut mecircme chiffrer les communications Web ne permettant plus la surveillance de vos actions
Proxy pour et contre Proxy pour et contre
Un proxy permet de proteacuteger un reacuteseau local drsquoune faccedilon tregraves efficace Un seul point faible neacutecessite notre attention
Cette solution nrsquoest pas tregraves flexible Les logiciels clients des machines locales doivent savoir comment utiliser un proxy Sinon rien ne fonctionnera puisque celles-ci sont invisibles
Nous pourrions peut-ecirctre faire croire au client que le service est donneacute par le coupe-feu mais celui-ci doit savoir quoi faire pour acheminer la connexion vers sa destination Ceci demande de configurer chaque type de connexion
Exemple de Proxy TorExemple de Proxy Tor
Coupe-feu dynamique Coupe-feu dynamique (laquostateful firewallraquo)(laquostateful firewallraquo)
Nous avons vu que les coupe-feu statiques agrave filtrage de paquets interviennent en fonction de paquets individuels
Un serveur FTP va ouvrir des connexions sur des ports de hautes valeurs Le filtrage de paquets ne peut pas savoir qursquoune connexion sur le port 6783 appartient agrave une connexion FTP leacutegitime Ces paquets seront eacutelimineacutes
Le coupe-feu dynamique reacutesout ce problegraveme en meacutemorisant les connexions ouvertes par des connexions leacutegitimes
Il est aussi possible de transformer lrsquoadresse IP drsquoune machine locale par quelque chose de diffeacuterent Le coupe-feu agrave mascarade permet drsquoeacuteviter les attaques qui consistent agrave essayer des adresses IP dans le but drsquoobtenir une reacuteponse
Le coupe-feu peut ecirctre configureacute pour eacuteliminer les connexions qui font des trucs bizarres comme la transmission drsquoune chaicircne trop longue
Toujours la pile TCPIPToujours la pile TCPIP
Champs du protocole Champs du protocole IPIP
Champs utiles pour le protocole IP
Le protocole IP fonctionne agrave partir de segments
Protocole UDPProtocole UDP(ses champs utiles)(ses champs utiles)
Champs utiles pour le protocole UDP
Protocole TCPProtocole TCP(ses champs utiles)(ses champs utiles)
Champs utiles pour le protocole TCP
Port de lrsquoapplication Port de lrsquoapplication en cours sur la en cours sur la machine sourcemachine source
Port de lrsquoapplication Port de lrsquoapplication sur la machine sur la machine
destinationdestination
Le numeacutero drsquoordre du Le numeacutero drsquoordre du prochain segment (IP) prochain segment (IP)
attenduattendu
URG paquet agrave traiter de faccedilon urgenteACK paquet est un accuseacute de reacuteceptionPSH paquet fonctionne selon la meacutethode push
RST connexion reacuteinitialiseacuteeSYN indique une demande drsquoeacutetablissement de connexionFIN indique une interruption de connexion
Le numeacutero drsquoordre du segment (IP) Le numeacutero drsquoordre du segment (IP) courant si SYN=0 et le numeacutero drsquoordre courant si SYN=0 et le numeacutero drsquoordre
initial pour synchroniser les nos de initial pour synchroniser les nos de seacutequence (ISN)seacutequence (ISN)
DrapeauxDrapeaux
Filtrage extrecircmeFiltrage extrecircmeTCP est orienteacute connexion Pour en eacutetablir une de A vers B on doit transmettre SYN=1 dans le premier paquet de lrsquoeacutetablissement de connexion agrave trois eacutetapes (laquothree-way handshakeraquo)
Un filtrage simple consiste agrave laisser tomber tous les paquets qui ne contiennent que le drapeau SYN=1
Il devient impossible drsquoeacutetablir une connexion TCP de lrsquoexteacuterieur du mur
Si en plus les paquets UDP sont eacutelimineacutes alors la situation devrait ecirctre tregraves sucircre
Cette politique ne permet pas de se connecter au serveur Web cependant
Activer le serveur Web Activer le serveur Web et accegraves agrave un DNSet accegraves agrave un DNS
Pour donner accegraves au serveur Web nous pourrions faire la chose suivante
Nous autorisons une exception agrave la regravegle preacuteceacutedente
Nous autorisons les paquets SYN=1 pour le serveur Web sur le port 80 (port http)
Nous voudrions aussi permettre lrsquoaccegraves agrave un serveur DNS pour la conversion drsquoadresse comme httpwwwiroumontrealca en 13220424179
Il suffit de laisser les paquets UDP vers et depuis au moins un serveur DNS sur le port 53 (UDP)
Le reacutesultatLe reacutesultat
Si le pirate trouve une faille sur le serveur Web alors il pourrait attaquer le reacuteseau local
Pour eacuteviter ceci il faut seacuteparer le serveur Web des autresLe filtrage par paquets est insuffisant
Deux filtres valent mieux Deux filtres valent mieux qursquounqursquoun
ProxyProxyIl y a drsquoautres services sur lrsquoInternet qui utilisent le protocole UDP flux de donneacutees videacuteo jeux videacuteo
De plus excepteacute pour les paquets SYN=1 il est possible de transmettre des paquets TCP aux ordinateurs du reacuteseau local
Le proxy peut rendre les machines du reacuteseau local invisibles pas le filtrage simple de paquets
Approche proxyApproche proxy
Coupe-feu Coupe-feu dynamiquesdynamiques
Les proxys ne sont pas tregraves flexibles Les coupe-feu dynamiques permettent drsquoutiliser les logiciels drsquoune faccedilon plus transparente
Il srsquoagit drsquoun filtre avanceacute qui permet de veacuterifier que les paquets appartiennent agrave une connexion deacutejagrave eacutetablie Crsquoest seulement lorsque crsquoest le cas que le paquet peut passer
Parce qursquoil est conscient drsquoune connexion il peut appliquer NAT etou PAT
NAT Dynamique (laquoDynamic Network Address Translationraquo) Le coupe-feu traduit les adresses du reacuteseau Toutes les machines du reacuteseau possegravedent vu de lrsquoexteacuterieur la mecircme adresse IP
PAT (laquoPort Address Translationraquo) Le coupe-feu traduit les numeacuteros de port par lesquels les paquets arrivent sur les hocirctes locaux
Ces coupe-feu sont appeleacutes coupe-feu avec mascarade
NAT a eacuteteacute mis au point agrave NAT a eacuteteacute mis au point agrave lrsquoorigine pour reacutepondre agrave la lrsquoorigine pour reacutepondre agrave la
peacutenurie drsquoadresses IP avec le peacutenurie drsquoadresses IP avec le protocole IPv4protocole IPv4
NAT a eacuteteacute mis au point agrave NAT a eacuteteacute mis au point agrave lrsquoorigine pour reacutepondre agrave la lrsquoorigine pour reacutepondre agrave la
peacutenurie drsquoadresses IP avec le peacutenurie drsquoadresses IP avec le protocole IPv4protocole IPv4
Coupe-feu agrave Coupe-feu agrave mascarademascarade
Filtrage dynamique eacutetenduFiltrage dynamique eacutetenduLe filtrage des coupe-feu dynamiques nrsquoest pas limiteacute aux protocoles TCPIP
Pour des applications usuelles le filtrage peut srsquoappliquer au protocole
Le coupe-feu peut ainsi deacutetecter des comportements inhabituels
Peut aussi filtrer certaines parties des donneacutees transmises
Pour le protocole HTTP le filtre peut supprimer les applications Java
Pour le protocole SMTP le filtre peut supprimer les piegraveces jointes drsquoun certain type
Conclusion sur les coupe-Conclusion sur les coupe-feufeu
Les coupe-feu permettent de filtrer le trafic entre le reacuteseau local et lrsquoInternet en nrsquoadministrant qursquoune seule machine
Les coupe-feu ne sont cependant pas une solution magique pour reacutesoudre les problegravemes causeacutes par les attaques exteacuterieures agrave un reacuteseau local
Les coupe-feu pour un seul ordinateur personnel peuvent offrir une solution sans trop drsquoentretien
Les coupe-feu neacutecessitent des mises agrave jour freacutequentes lorsque le reacuteseau local est de bonne taille Lorsque le reacuteseau local change la configuration du coupe-feu doit aussi changer
Penser que lrsquoinstallation drsquoun coupe-feu rend votre reacuteseau sucircr est un peu de la penseacutee magique (neacutecessaire mais pas suffisant)
Logiciels malveillantsLogiciels malveillantsUn adversaire peut une fois passeacute le coupe-feu et les autres deacutefenses vouloir installer un programme malveillant sur la machine locale Ceux-ci sont de trois types
Chevaux de Troie Programme qui semble tout agrave fait utile mais qui cache une fonction malveillante Par exemple donne accegraves agrave des donneacutees priveacutees donne des droits drsquoaccegraves non autoriseacutes ou deacutetruit des donneacutees
Virus Programme qui infecte un autre programme sur votre ordinateur Agrave partir du programme infecteacute le virus se propage vers drsquoautres programmes Apregraves un certain temps ou eacuteveacutenement les virus peuvent entreprendre certaines actions Celles-ci peuvent ecirctre lrsquoeacutelimination de fichiers la deacuteteacuterioration de fonctions du systegraveme drsquoexploitation etc
Vers Programmes qui infectent un ordinateur sans avoir agrave ecirctre heacutebergeacutes par drsquoautres programmes Ils sont des programmes indeacutependants Ils se multiplient en exploitant diffeacuterentes ressources Les objectifs de ces programmes peuvent ecirctre lrsquoespionnage lrsquoouverture de portes deacuterobeacutees eacutemettre des requecirctes vers un site Internet jusqursquoagrave saturation
ExempleExempleI Love You Un ver lanceacute en 2000 et qui a atteint 31 millions de machines en 4 jours
Infection Le ver eacutetait dissimuleacute en piegravece jointe drsquoun courriel Cette piegravece jointe eacutetait preacutesenteacutee comme Love-Letter-for-youtxtvbs Lrsquoextension vbs indique que le fichier est un script Visual Basic Comme lrsquoextension nrsquoapparaicirct pas sur Windows les utilisateurs voyaient la piegravece jointe comme Love-Letter-for-youtxt Objectif Le script lisait la liste des contacts de lrsquoutilisateur pour envoyer ce mecircme message agrave ceux-ci La plate-forme Windows eacutetait viseacutee Des fichiers eacutetaient deacutetruits et remplaceacutes par ce script Il changeait la page drsquoaccueil drsquoInternet Explorer pour teacuteleacutecharger un cheval de Troie
ExempleExempleCode Red Un ver qui a infecteacute 359 000 ordinateurs en moins de 14 heures le 19 juillet 2001
Infections Le ver se multipliait en essayant des adresses IP aleacuteatoires pour ensuite infecter des serveurs qui faisaient tourner Microsoft IIS avec une faille de seacutecuriteacute
Objectif Monter une attaque par deacuteni de service (DOS) contre la Maison-Blanche
Lrsquoattaque a eacuteteacute facile agrave repousser car le ver veacuterifiait avant de lancer lrsquoattaque que le serveur agrave lrsquoadresse IP (au lieu du nom de domaine) de la Maison-Blanche eacutecoutait le port 80 (le port des serveurs Web) En changeant lrsquoadresse IP de la Maison-Blanche lrsquoattaque a eacuteteacute repousseacutee
ExempleExempleCabir Est un virusver (deacutemonstration de faisabiliteacute laquoproof of conceptraquo) qui srsquoattaque agrave la teacuteleacutephonie mobile Crsquoest un fichier de 15 ko nommeacute CARIBESIS
Infection Se propage par la teacuteleacutephonie mobile gracircce agrave la technologie Bluetooth et le systegraveme drsquoexploitation Symbian OS
Action Agrave chaque fois que le teacuteleacutephone infecteacute est ouvert le mot laquoCariberaquo srsquoaffiche Il tente de se propager aux peacuteripheacuteriques BlueTooth de la zone du teacuteleacutephone infecteacute Il nrsquoest pas meacutechant nrsquoavait pour but que de deacutemontrer la faisabiliteacute
AntivirusAntivirusLes antivirus sont des programmes qui deacutetectent les virus les vers et les chevaux de Troie sur votre ordinateur Ils les eacuteliminent
Ils visitent les fichiers sur votre disque dans le but de trouver des bouts de programmes reconnus comme dangereux
Ceci est possible eacutetant donneacute une base de donneacutees agrave jour contenant les virus connus sous la forme de signatures de virus Une signature est un motif (laquopatternraquo) qui caracteacuterise un virus donneacute
Un antivirus nrsquoest efficace que si sa base de donneacutees est mise agrave jour constamment Les compagnies drsquoantivirus vont vite pour mettre agrave jour leur base de donneacutees lorsqursquoun nouveau virus est identifieacute
Malheureusement les utilisateurs tardent agrave mettre leur copie agrave jour causant bien des infections
Tromper les antivirusTromper les antivirusDe nouveaux virus utilisent les meacutethodes de la cryptographie pour deacutejouer les antivirus
Des virus sont chiffreacutes pour les rendre non reconnaissables par les antivirus car ils ont toujours un aspect diffeacuterent
Ces virus ont un petit code en clair qui permet de les deacutecoder et de les charger en meacutemoire pour ecirctre exeacutecuteacutes Ce code est ce que les antivirus doivent deacutetecter
Ces virus sont de trois types
Oligomorphique Le virus est chiffreacute agrave chaque reacuteplication
Polymorphique Le virus est chiffreacute et la routine de deacutechiffrement est capable de changer certaines de ses instructions au fil des reacuteplications
Meacutetamorphique Le virus change de forme au fil des reacuteplications
IntrusionsIntrusionsPour qursquoun virus ver ou cheval de Troie soit deacuteleacutetegravere encore faut-il qursquoil srsquoinstalle sur votre machine
Mecircme si un adversaire peut parler agrave votre machine ceci nrsquoimplique pas qursquoil peut installer un logiciel sur celle-ci encore moins srsquoil nrsquoen est pas un utilisateur
Pour ce faire les adversaires peuvent essayer diverses strateacutegies
Faiblesses du systegraveme drsquoexploitation ou du logiciel du serveur Nous allons voir un exemple de ce type drsquoattaque attaques par deacutebordement Une page Web nrsquoest pas un objet passif Elle peut contenir du code (JavaScript Perl etc) malveillant
Tromper lrsquoutilisateur Crsquoest peut-ecirctre plus simple Cas speacutecial du piratage psychologique Cliquer ici pour installer un joli logiciel il faut espeacuterer que lrsquoantivirus deacutetecte ceci avant qursquoil ne soit trop tard
Deacutetecter les intrusionsDeacutetecter les intrusionsUne faccedilon diffeacuterente de deacutetecter les logiciels ou utilisateurs malveillants consiste agrave deacutetecter les comportements malveillants
Un systegraveme peut surveiller les processus pour deacutetecter les comportements malveillants
Une telle approche a lrsquoavantage de ne pas deacutependre drsquoinformation sur les virus et les attaques
Un coupe-feu dynamique est un exemple de cette approche
Il surveille les connexions et tente de deacuteterminer si un client transmet des donneacutees agrave contenu suspect (comme la taille)
Requecirctes Requecirctes malveillantesmalveillantes
dlkjfdsflkjsd dlkjfdsflkjsd fjdskl gfjdlskewqewewewewhdfbfbfbww fjdskl gfjdlskewqewewewewhdfbfbfbww jaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfjaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfwewqewqewqewqewqewqeweekjwweeqqqsxcswdswewqewqewqewqewqewqeweekjwweeqqqsxcswdsdddds dddds ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqqwwq qwwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewqeweekwqwqwefdscxcccj qeweekwqwqwefdscxcccj ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxzcwq zcwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfssaDSADSADSsfghdskjgfhdsgfihoiehjrfssaDSADSADSADDSDSDSSDSDSADDSDSDSSDSDSIl arrive que de longues requecirctes puissent faire planter un systegraveme
mal programmeacute Un adversaire peut donc soumettre des chaicircnes tregraves longues dans le but de rendre le systegraveme inopeacuterant (ou mecircme pire assujetti) comme nous le verrons plus loin
Et agrave peu pregraves nrsquoimporte qui Et agrave peu pregraves nrsquoimporte qui peut proposer un service peut proposer un service
comme celui-ci comme celui-ci
Un coupe-feu peut filtrer les requecirctes anormalement longues pour les ignorer Mecircme les systegravemes avec programmes erroneacutes seront agrave lrsquoabri de ce type drsquoattaque
SELECT SELECT FROM Passwords FROM Passwords WHERE user=rsquoWHERE user=rsquoJugheadJugheadrsquo AND password=rsquorsquo AND password=rsquoxrsquo xrsquo OR lsquo1rsquo=lsquo1OR lsquo1rsquo=lsquo1rsquorsquo
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Requecirctes Requecirctes malveillantesmalveillantes
HTTPSHTTPS
Password Password xrsquo OR xrsquo OR lsquo1rsquo=rsquo1lsquo1rsquo=rsquo1
Un coupe-feu dynamique peut filtrer des requecirctes bizarres comme xrsquo OR lsquo1rsquo=rsquo1xrsquo OR lsquo1rsquo=rsquo1
Ceci est beaucoup plus difficile agrave Ceci est beaucoup plus difficile agrave reacutealiser par un coupe-feu que reacutealiser par un coupe-feu que
lrsquoexemple preacuteceacutedentlrsquoexemple preacuteceacutedent
Approche Approche comportementalecomportementaleUne autre approche pour la deacutetection drsquointrusions consiste agrave
observer certains aspects du comportement des utilisateurs et programmes
activiteacutes de connexion et de session
activiteacutes relieacutees agrave lrsquoexeacutecution de programme et drsquoaccegraves aux fichiers
Il y a deux approches pour la deacutetection de comportements suspects
Par regravegles (rule-based) Un ensemble de regravegles deacutecrivant les comportements normaux est eacutetabli Les comportements anormaux (trop loin des normaux) sont rejeteacutes
Statistique Des statistiques sur les utilisateurs normaux sont creacuteeacutees Le comportement de lrsquoutilisateurprogramme observeacute est compareacute aux statistiques Un comportement montrant un trop grand eacutecart avec les statistiques est rejeteacute
Problegravemes avec les Problegravemes avec les systegravemes de deacutetection systegravemes de deacutetection
drsquointrusion (IDS)drsquointrusion (IDS)Le problegraveme majeur avec lrsquoapproche est le mecircme qursquoavec la biomeacutetrie Le systegraveme qui surveille doit ecirctre assez toleacuterant pour autoriser les comportements normaux mais suffisamment restrictif pour attraper les acteurs malveillants
Ce problegraveme nrsquoest pas tregraves bien compris et les solutions proposeacutees ne sont pas tout agrave fait satisfaisantes
La deacutetection drsquointrusion est bien inutile si le systegraveme ne reacuteagit pas de la bonne faccedilon lorsqursquoune intrusion est deacutetecteacutee La partie du systegraveme qui alerte lrsquoadministrateur qui interdit lrsquoaccegraves qui effectue quelque autre tacircche pour eacuteliminer la menace est tout aussi importante que celle qui deacutetecte
Le pot de mielLe pot de miel
Le pot de miel (laquohoney potraquo) est un truc pratique pour la deacutetection drsquointrusions
Une ressource bidon qui semble inteacuteressante pour un adversaire est creacuteeacutee
Puisque celle-ci est bidon on peut supposer que si quelqursquoun y accegravede crsquoest qursquoil srsquoadonne agrave une activiteacute malveillante
En consultant les traces il peut ecirctre possible de retrouver lrsquoutilisateur malveillant
Ceci peut se faire agrave lrsquoinsu de lrsquointrus
ExempleExemple
Un hocircpital ameacutericain soupccedilonnait que quelqursquoun consultait les dossiers de patients sans en avoir lrsquoautorisation
Ils ont creacuteeacute des fichiers pour des patients qui nrsquoexistent pas
Les accegraves agrave ces fichiers ont alors eacuteteacute retraceacutes jusqursquoagrave lrsquoutilisateur malveillant
Les attaques de lrsquointeacuterieurLes attaques de lrsquointeacuterieurPresque tout ce que nous avons vu a pour but la protection contre les attaques venues de lrsquoexteacuterieur
Les attaques peuvent tregraves bien eacutemaner de lrsquointeacuterieur et peuvent causer des problegravemes seacuterieux
Le premiegravere chose agrave comprendre est qursquoil nrsquoest pas possible de se preacutemunir contre ces attaques si les utilisateurs ont tous les droits sur le systegraveme cible
Il est donc neacutecessaire qursquoune partie du systegraveme soit garantie de fonctionner selon ses speacutecifications mecircme sous attaque
Sans cette hypothegravese le systegraveme est sous le controcircle complet de lrsquoadversaire
Base informatique Base informatique seacutecuriseacuteeseacutecuriseacutee
laquotrusted computing baseraquo (TCB)laquotrusted computing baseraquo (TCB)
Une base seacutecuriseacutee peut ecirctre eacutetablie en utilisant de la seacutecuriteacute mateacuterielle logicielle par mot de passe par exemple
Le rocircle de ce systegraveme de base est de controcircler lrsquoaccegraves aux ressources et le flux drsquoinformation sur celui-ci
Pour bien comprendre comment ces protections fonctionnent nous devons mettre de lrsquoordre dans nos ideacutees Nous devons voir agrave quoi ressemble une politique de seacutecuriteacute dans ce sceacutenario
Crsquoest notre prochain sujet
Types drsquoattaques (II)Types drsquoattaques (II)
Attaque par rebond (laquobounce attackraquo) Meneacutee via un autre ordinateur qui se retrouve complice involontaire Cet ordinateur expeacutedie des messages drsquoattaque agrave la victime masquant lrsquoidentiteacute du pirate
Attaque de lrsquohomme du milieu Le pirate se place entre deux ordinateurs et se fait passer pour un afin drsquoobtenir le mot de passe de lrsquoautre Il peut alors se retourner contre le premier avec un mot de passe valide pour lrsquoattaquer
Deacuteni de service (laquodenial of serviceraquo) Une attaque cherchant agrave rendre un ordinateur hors service en le submergeant de trafic inutile Par exemple un serveur entiegraverement occupeacute agrave reacutepondre agrave de fausses requecirctes de connexion Des machines peuvent ecirctre agrave lrsquoorigine de lrsquoattaque geacuteneacuteralement agrave lrsquoinsu de leur proprieacutetaire
Treacutebuchage sans fil (laquowar-drivingraquo) Dans le cas des reacuteseaux sans fil Consiste agrave circuler dans la ville avec un portable ou un assistant numeacuterique personnel (laquoPDAraquo) pour repeacuterer et peacuteneacutetrer les reacuteseaux locaux non proteacutegeacutes
PreacuteventionPreacutevention
Disposer drsquoune sauvegarde de ses donneacutees
Faire un audit des accegraves inutilement ouverts
Les comptes drsquoadministration ont des mots de passe seacutecuriseacutes
Suppression des comptes utilisateurs non utiliseacutes
Deacutesactiver les services (p ex internet) non utiliseacutes sur les machines et supprimer les partages de fichiers qui ne sont pas neacutecessaires
Le neacutecessaire
PreacuteventionPreacutevention
Mettre agrave jour les logiciels agrave lrsquoaide des derniegraveres rustines (laquopatchesraquo) de seacutecuriteacute officielles pour fermer les bregraveches
Installer un coupe-feu
Structurer les reacuteseaux en zones eacutetanches par activiteacute et sensibiliteacute (VLAN) Instituer un systegraveme de mots de passe Isoler les serveurs Internet VLAN Virtual Local Area Network regroupe les machines de faccedilon logique et non physique
Srsquoabonner aux lettres drsquoinformation (laquonewslettersraquo) de seacutecuriteacute des diffeacuterents fournisseurs
Le souhaitable
Coupe-feuCoupe-feuUn coupe-feu permet de couper lrsquoaccegraves agrave un reacuteseau local Crsquoest le seul point drsquoaccegraves agrave un reacuteseau local agrave partir de lrsquoexteacuterieur
Les techniques que nous avons vues jusqursquoagrave maintenant ne permettent pas drsquoeacuteviter de communiquer avec des adversaires
Mecircme si nous insistons pour faire un eacutechange de cleacute authentifieacute avec quelqursquoun une certaine quantiteacute drsquoinformation eacutechangeacutee avec des adversaires potentiels ne peut ecirctre eacuteviteacutee
Ceci pourrait permettre agrave lrsquoadversaire de pirater un ordinateur en utilisant une attaque par deacutebordement de tampon
Le concept du coupe-feu Lrsquoadversaire ne peut attaquer un ordinateur avec lequel il ne communique pas
Lrsquoaspect drsquoun coupe-feuLrsquoaspect drsquoun coupe-feu
coupe-feu
reacuteseau local (LAN)
LAN priveacutereacuteseau public
Coupe-feu filtrage de paquetsCoupe-feu filtrage de paquets
Un coupe-feu est simplement une machine ou un logiciel qui arrecircte ou retire une partie de la circulation sur un reacuteseau
Il est habituellement placeacute sur la connexion entre le reacuteseau local et lrsquoInternet Le trafic de reacuteseau doit donc passer par celui-ci pour relier le reacuteseau local agrave lrsquoInternet
La maniegravere la plus simple drsquoutiliser un coupe-feu consiste agrave lui demander de couper toute communication qui tente de se connecter agrave une machine que vous ne voulez pas voir communiquer avec lrsquoexteacuterieur
Filtrage de paquets Filtrage de paquets commentcommentSouvenons-nous que les connexions TCP demandent que
des paquets speacuteciaux soient transmis et accepteacutes dans le but drsquoeacutetablir une connexion
Ces paquets sont faciles agrave reconnaicirctre car certains drapeaux (laquoflagsraquo) seront activeacutes Les paquets suivants pourront ecirctre associeacutes agrave une connexion eacutetablie preacuteceacutedemment
Le protocole UDP eacutetablit une communication sans ecirctre orienteacute connexion Un paquet est transmis en espeacuterant qursquoil se rende agrave destination LrsquoUDP est utiliseacute pour communiquer avec les serveurs DNS qui traduisent les adresses sous une forme lisible en adresses IP
Le coupe-feu peut tout simplement eacuteliminer les paquets eacutetablissant une connexion TCP sur une machine locale et tout le trafic UDP Ceci est nommeacute filtrage simple des paquets
Filtrage de paquets Filtrage de paquets commentcomment
Un coupe-feu par filtrage de paquets reacuteside tregraves bas dans la pile TCPIP au niveau Internet ou mecircme Reacuteseau Crsquoest la seule faccedilon de srsquoassurer que tout ce qui va du reacuteseau local ou vient de lrsquoInternet sera observeacute
Le filtrage des paquets peut ecirctre configureacute par une politique qui deacutetermine quels paquets seront bloqueacutes ou autoriseacutes
Il srsquoagit du coupe-feu original le plus simple et le plus facile agrave reacutealiser Il peut ecirctre tregraves sucircr car il peut bloquer toute la circulation Il est cependant neacutecessaire de permettre des accegraves ce qui rend possibles certaines attaques
Les limites du filtrage de Les limites du filtrage de paquetspaquetsEacutevidemment toutes les connexions ne peuvent ecirctre
eacutelimineacutees les serveurs Web et de courriel doivent bien ecirctre autoriseacutes agrave communiquer (ils ont besoin entre autres choses
de communiquer avec le serveur DNS via UDP)Nous pouvons deacuteplacer ce serveur Nous pouvons deacuteplacer ce serveur agrave lrsquoexteacuterieur mais comment alors agrave lrsquoexteacuterieur mais comment alors
le mettre agrave jourle mettre agrave jour
Nous pouvons deacuteplacer ce serveur Nous pouvons deacuteplacer ce serveur agrave lrsquoexteacuterieur mais comment alors agrave lrsquoexteacuterieur mais comment alors
le mettre agrave jourle mettre agrave jour
La bonne nouvelle est que toutes les La bonne nouvelle est que toutes les attaques devront passer par ce attaques devront passer par ce serveur si le filtrage est strict serveur si le filtrage est strict
La bonne nouvelle est que toutes les La bonne nouvelle est que toutes les attaques devront passer par ce attaques devront passer par ce serveur si le filtrage est strict serveur si le filtrage est strict
pourrait ecirctre possible si le pourrait ecirctre possible si le filtrage est trop lacircchefiltrage est trop lacircche
pourrait ecirctre possible si le pourrait ecirctre possible si le filtrage est trop lacircchefiltrage est trop lacircche
DMZ (laquoDemilitarized zoneraquo) une zone laquodeacutemilitariseacuteeraquo entre lrsquoInternet et le reacuteseau interne dans laquelle on peut placer les serveurs WEB accessibles depuis lrsquoexteacuterieur La zone est munie drsquoun coupe-feu pour cette tacircche Les coupe-feu peuvent avoir une sortie DMZ pour le serveur Web
Politiques de filtragePolitiques de filtrageSouvenons-nous que les paquets contiennent les informations suivantes
les donneacutees
lrsquoadresse IP drsquoorigine et de destination (incluant le port de destination)
lrsquoinformation sur le protocole par lequel ils doivent ecirctre manipuleacutes
lrsquoinformation sur des erreurs eacuteventuelles et
de lrsquoinformation sur le type de donneacutees en transit
Un politique de filtrage eacutenonce une liste drsquoautorisations et drsquointerdictions des types
autoriseinterdit les paquets selon lrsquoadresse IP drsquooriginedestination
autoriseinterdit les paquets selon leur port de destination
autoriseinterdit les paquets selon le protocole
Conclusion Conclusion (filtrage de paquets)(filtrage de paquets)
Pour ecirctre complegravetement sucircr le filtrage de paquets doit ecirctre tregraves restrictif ce qui peut trop limiter lrsquoaccegraves au reacuteseau
Si le filtrage est plus lacircche alors il pourrait devenir possible agrave lrsquoadversaire de communiquer avec des machines du reacuteseau local
Ceci demande agrave lrsquoadversaire de tenter beaucoup drsquoadresses IP jusqursquoagrave ce qursquoune machine reacuteponde
En conclusion les coupe-feu devraient faire quelque chose de plus intelligent que le simple filtrage
Ils doivent examiner les paquets en deacutetail pour deacutecider quoi faire avec ceux-ci Ils devraient mecircme ecirctre capables de modifier des paquets si neacutecessaire
Coupe-feu proxyCoupe-feu proxyLes proxy (laquoserveurs mandatairesraquo) permettent de faire du filtrage intelligent Il ne permet aucune connexion sur une machine locale agrave partir de lrsquoexteacuterieur
Le proxy gegravere toutes les connexions au nom des machines de reacuteseau local
Si une machine locale a un logiciel qui deacutesire acceacuteder agrave lrsquoInternet alors celui-ci devra ecirctre configureacute pour communiquer avec le coupe-feu agrave la place Le coupe-feu eacutetablira alors la connexion
Vu de lrsquoexteacuterieur le reacuteseau local est complegravetement cacheacute derriegravere le coupe-feu Seul celui-ci est visible
Essayer plusieurs adresses IP pour espeacuterer une reacuteponse ne fonctionne pas ici
Une attaque doit srsquoen prendre au proxy Une machine est plus facile agrave proteacuteger que plusieurs
Proxy en imagesProxy en imagesLe proxy comme une zone tampon entre
lrsquoInternet et un reacuteseau local
Pendant une connexion internet
Cacher votre adresse Cacher votre adresse IPIPVotre adresse IP reacutevegravele votre point drsquoentreacutee sur lrsquoInternet
Peut permettre de retrouver votre fournisseur le reacuteseau de votre employeur votre eacutecole ou votre terminal public
Il srsquoagit de lrsquoidentiteacute de votre machine pendant que vous ecirctes en ligne Sa porte sur le monde
Vous pouvez dissimuler votre adresse IP sur le Web en utilisant un serveur proxy anonyme
Un serveur proxy speacutecialiseacute pour la navigation Web anonyme utilise sa propre adresse IP agrave la place de la vocirctre pour chaque requecircte sortante
Il peut mecircme chiffrer les communications Web ne permettant plus la surveillance de vos actions
Proxy pour et contre Proxy pour et contre
Un proxy permet de proteacuteger un reacuteseau local drsquoune faccedilon tregraves efficace Un seul point faible neacutecessite notre attention
Cette solution nrsquoest pas tregraves flexible Les logiciels clients des machines locales doivent savoir comment utiliser un proxy Sinon rien ne fonctionnera puisque celles-ci sont invisibles
Nous pourrions peut-ecirctre faire croire au client que le service est donneacute par le coupe-feu mais celui-ci doit savoir quoi faire pour acheminer la connexion vers sa destination Ceci demande de configurer chaque type de connexion
Exemple de Proxy TorExemple de Proxy Tor
Coupe-feu dynamique Coupe-feu dynamique (laquostateful firewallraquo)(laquostateful firewallraquo)
Nous avons vu que les coupe-feu statiques agrave filtrage de paquets interviennent en fonction de paquets individuels
Un serveur FTP va ouvrir des connexions sur des ports de hautes valeurs Le filtrage de paquets ne peut pas savoir qursquoune connexion sur le port 6783 appartient agrave une connexion FTP leacutegitime Ces paquets seront eacutelimineacutes
Le coupe-feu dynamique reacutesout ce problegraveme en meacutemorisant les connexions ouvertes par des connexions leacutegitimes
Il est aussi possible de transformer lrsquoadresse IP drsquoune machine locale par quelque chose de diffeacuterent Le coupe-feu agrave mascarade permet drsquoeacuteviter les attaques qui consistent agrave essayer des adresses IP dans le but drsquoobtenir une reacuteponse
Le coupe-feu peut ecirctre configureacute pour eacuteliminer les connexions qui font des trucs bizarres comme la transmission drsquoune chaicircne trop longue
Toujours la pile TCPIPToujours la pile TCPIP
Champs du protocole Champs du protocole IPIP
Champs utiles pour le protocole IP
Le protocole IP fonctionne agrave partir de segments
Protocole UDPProtocole UDP(ses champs utiles)(ses champs utiles)
Champs utiles pour le protocole UDP
Protocole TCPProtocole TCP(ses champs utiles)(ses champs utiles)
Champs utiles pour le protocole TCP
Port de lrsquoapplication Port de lrsquoapplication en cours sur la en cours sur la machine sourcemachine source
Port de lrsquoapplication Port de lrsquoapplication sur la machine sur la machine
destinationdestination
Le numeacutero drsquoordre du Le numeacutero drsquoordre du prochain segment (IP) prochain segment (IP)
attenduattendu
URG paquet agrave traiter de faccedilon urgenteACK paquet est un accuseacute de reacuteceptionPSH paquet fonctionne selon la meacutethode push
RST connexion reacuteinitialiseacuteeSYN indique une demande drsquoeacutetablissement de connexionFIN indique une interruption de connexion
Le numeacutero drsquoordre du segment (IP) Le numeacutero drsquoordre du segment (IP) courant si SYN=0 et le numeacutero drsquoordre courant si SYN=0 et le numeacutero drsquoordre
initial pour synchroniser les nos de initial pour synchroniser les nos de seacutequence (ISN)seacutequence (ISN)
DrapeauxDrapeaux
Filtrage extrecircmeFiltrage extrecircmeTCP est orienteacute connexion Pour en eacutetablir une de A vers B on doit transmettre SYN=1 dans le premier paquet de lrsquoeacutetablissement de connexion agrave trois eacutetapes (laquothree-way handshakeraquo)
Un filtrage simple consiste agrave laisser tomber tous les paquets qui ne contiennent que le drapeau SYN=1
Il devient impossible drsquoeacutetablir une connexion TCP de lrsquoexteacuterieur du mur
Si en plus les paquets UDP sont eacutelimineacutes alors la situation devrait ecirctre tregraves sucircre
Cette politique ne permet pas de se connecter au serveur Web cependant
Activer le serveur Web Activer le serveur Web et accegraves agrave un DNSet accegraves agrave un DNS
Pour donner accegraves au serveur Web nous pourrions faire la chose suivante
Nous autorisons une exception agrave la regravegle preacuteceacutedente
Nous autorisons les paquets SYN=1 pour le serveur Web sur le port 80 (port http)
Nous voudrions aussi permettre lrsquoaccegraves agrave un serveur DNS pour la conversion drsquoadresse comme httpwwwiroumontrealca en 13220424179
Il suffit de laisser les paquets UDP vers et depuis au moins un serveur DNS sur le port 53 (UDP)
Le reacutesultatLe reacutesultat
Si le pirate trouve une faille sur le serveur Web alors il pourrait attaquer le reacuteseau local
Pour eacuteviter ceci il faut seacuteparer le serveur Web des autresLe filtrage par paquets est insuffisant
Deux filtres valent mieux Deux filtres valent mieux qursquounqursquoun
ProxyProxyIl y a drsquoautres services sur lrsquoInternet qui utilisent le protocole UDP flux de donneacutees videacuteo jeux videacuteo
De plus excepteacute pour les paquets SYN=1 il est possible de transmettre des paquets TCP aux ordinateurs du reacuteseau local
Le proxy peut rendre les machines du reacuteseau local invisibles pas le filtrage simple de paquets
Approche proxyApproche proxy
Coupe-feu Coupe-feu dynamiquesdynamiques
Les proxys ne sont pas tregraves flexibles Les coupe-feu dynamiques permettent drsquoutiliser les logiciels drsquoune faccedilon plus transparente
Il srsquoagit drsquoun filtre avanceacute qui permet de veacuterifier que les paquets appartiennent agrave une connexion deacutejagrave eacutetablie Crsquoest seulement lorsque crsquoest le cas que le paquet peut passer
Parce qursquoil est conscient drsquoune connexion il peut appliquer NAT etou PAT
NAT Dynamique (laquoDynamic Network Address Translationraquo) Le coupe-feu traduit les adresses du reacuteseau Toutes les machines du reacuteseau possegravedent vu de lrsquoexteacuterieur la mecircme adresse IP
PAT (laquoPort Address Translationraquo) Le coupe-feu traduit les numeacuteros de port par lesquels les paquets arrivent sur les hocirctes locaux
Ces coupe-feu sont appeleacutes coupe-feu avec mascarade
NAT a eacuteteacute mis au point agrave NAT a eacuteteacute mis au point agrave lrsquoorigine pour reacutepondre agrave la lrsquoorigine pour reacutepondre agrave la
peacutenurie drsquoadresses IP avec le peacutenurie drsquoadresses IP avec le protocole IPv4protocole IPv4
NAT a eacuteteacute mis au point agrave NAT a eacuteteacute mis au point agrave lrsquoorigine pour reacutepondre agrave la lrsquoorigine pour reacutepondre agrave la
peacutenurie drsquoadresses IP avec le peacutenurie drsquoadresses IP avec le protocole IPv4protocole IPv4
Coupe-feu agrave Coupe-feu agrave mascarademascarade
Filtrage dynamique eacutetenduFiltrage dynamique eacutetenduLe filtrage des coupe-feu dynamiques nrsquoest pas limiteacute aux protocoles TCPIP
Pour des applications usuelles le filtrage peut srsquoappliquer au protocole
Le coupe-feu peut ainsi deacutetecter des comportements inhabituels
Peut aussi filtrer certaines parties des donneacutees transmises
Pour le protocole HTTP le filtre peut supprimer les applications Java
Pour le protocole SMTP le filtre peut supprimer les piegraveces jointes drsquoun certain type
Conclusion sur les coupe-Conclusion sur les coupe-feufeu
Les coupe-feu permettent de filtrer le trafic entre le reacuteseau local et lrsquoInternet en nrsquoadministrant qursquoune seule machine
Les coupe-feu ne sont cependant pas une solution magique pour reacutesoudre les problegravemes causeacutes par les attaques exteacuterieures agrave un reacuteseau local
Les coupe-feu pour un seul ordinateur personnel peuvent offrir une solution sans trop drsquoentretien
Les coupe-feu neacutecessitent des mises agrave jour freacutequentes lorsque le reacuteseau local est de bonne taille Lorsque le reacuteseau local change la configuration du coupe-feu doit aussi changer
Penser que lrsquoinstallation drsquoun coupe-feu rend votre reacuteseau sucircr est un peu de la penseacutee magique (neacutecessaire mais pas suffisant)
Logiciels malveillantsLogiciels malveillantsUn adversaire peut une fois passeacute le coupe-feu et les autres deacutefenses vouloir installer un programme malveillant sur la machine locale Ceux-ci sont de trois types
Chevaux de Troie Programme qui semble tout agrave fait utile mais qui cache une fonction malveillante Par exemple donne accegraves agrave des donneacutees priveacutees donne des droits drsquoaccegraves non autoriseacutes ou deacutetruit des donneacutees
Virus Programme qui infecte un autre programme sur votre ordinateur Agrave partir du programme infecteacute le virus se propage vers drsquoautres programmes Apregraves un certain temps ou eacuteveacutenement les virus peuvent entreprendre certaines actions Celles-ci peuvent ecirctre lrsquoeacutelimination de fichiers la deacuteteacuterioration de fonctions du systegraveme drsquoexploitation etc
Vers Programmes qui infectent un ordinateur sans avoir agrave ecirctre heacutebergeacutes par drsquoautres programmes Ils sont des programmes indeacutependants Ils se multiplient en exploitant diffeacuterentes ressources Les objectifs de ces programmes peuvent ecirctre lrsquoespionnage lrsquoouverture de portes deacuterobeacutees eacutemettre des requecirctes vers un site Internet jusqursquoagrave saturation
ExempleExempleI Love You Un ver lanceacute en 2000 et qui a atteint 31 millions de machines en 4 jours
Infection Le ver eacutetait dissimuleacute en piegravece jointe drsquoun courriel Cette piegravece jointe eacutetait preacutesenteacutee comme Love-Letter-for-youtxtvbs Lrsquoextension vbs indique que le fichier est un script Visual Basic Comme lrsquoextension nrsquoapparaicirct pas sur Windows les utilisateurs voyaient la piegravece jointe comme Love-Letter-for-youtxt Objectif Le script lisait la liste des contacts de lrsquoutilisateur pour envoyer ce mecircme message agrave ceux-ci La plate-forme Windows eacutetait viseacutee Des fichiers eacutetaient deacutetruits et remplaceacutes par ce script Il changeait la page drsquoaccueil drsquoInternet Explorer pour teacuteleacutecharger un cheval de Troie
ExempleExempleCode Red Un ver qui a infecteacute 359 000 ordinateurs en moins de 14 heures le 19 juillet 2001
Infections Le ver se multipliait en essayant des adresses IP aleacuteatoires pour ensuite infecter des serveurs qui faisaient tourner Microsoft IIS avec une faille de seacutecuriteacute
Objectif Monter une attaque par deacuteni de service (DOS) contre la Maison-Blanche
Lrsquoattaque a eacuteteacute facile agrave repousser car le ver veacuterifiait avant de lancer lrsquoattaque que le serveur agrave lrsquoadresse IP (au lieu du nom de domaine) de la Maison-Blanche eacutecoutait le port 80 (le port des serveurs Web) En changeant lrsquoadresse IP de la Maison-Blanche lrsquoattaque a eacuteteacute repousseacutee
ExempleExempleCabir Est un virusver (deacutemonstration de faisabiliteacute laquoproof of conceptraquo) qui srsquoattaque agrave la teacuteleacutephonie mobile Crsquoest un fichier de 15 ko nommeacute CARIBESIS
Infection Se propage par la teacuteleacutephonie mobile gracircce agrave la technologie Bluetooth et le systegraveme drsquoexploitation Symbian OS
Action Agrave chaque fois que le teacuteleacutephone infecteacute est ouvert le mot laquoCariberaquo srsquoaffiche Il tente de se propager aux peacuteripheacuteriques BlueTooth de la zone du teacuteleacutephone infecteacute Il nrsquoest pas meacutechant nrsquoavait pour but que de deacutemontrer la faisabiliteacute
AntivirusAntivirusLes antivirus sont des programmes qui deacutetectent les virus les vers et les chevaux de Troie sur votre ordinateur Ils les eacuteliminent
Ils visitent les fichiers sur votre disque dans le but de trouver des bouts de programmes reconnus comme dangereux
Ceci est possible eacutetant donneacute une base de donneacutees agrave jour contenant les virus connus sous la forme de signatures de virus Une signature est un motif (laquopatternraquo) qui caracteacuterise un virus donneacute
Un antivirus nrsquoest efficace que si sa base de donneacutees est mise agrave jour constamment Les compagnies drsquoantivirus vont vite pour mettre agrave jour leur base de donneacutees lorsqursquoun nouveau virus est identifieacute
Malheureusement les utilisateurs tardent agrave mettre leur copie agrave jour causant bien des infections
Tromper les antivirusTromper les antivirusDe nouveaux virus utilisent les meacutethodes de la cryptographie pour deacutejouer les antivirus
Des virus sont chiffreacutes pour les rendre non reconnaissables par les antivirus car ils ont toujours un aspect diffeacuterent
Ces virus ont un petit code en clair qui permet de les deacutecoder et de les charger en meacutemoire pour ecirctre exeacutecuteacutes Ce code est ce que les antivirus doivent deacutetecter
Ces virus sont de trois types
Oligomorphique Le virus est chiffreacute agrave chaque reacuteplication
Polymorphique Le virus est chiffreacute et la routine de deacutechiffrement est capable de changer certaines de ses instructions au fil des reacuteplications
Meacutetamorphique Le virus change de forme au fil des reacuteplications
IntrusionsIntrusionsPour qursquoun virus ver ou cheval de Troie soit deacuteleacutetegravere encore faut-il qursquoil srsquoinstalle sur votre machine
Mecircme si un adversaire peut parler agrave votre machine ceci nrsquoimplique pas qursquoil peut installer un logiciel sur celle-ci encore moins srsquoil nrsquoen est pas un utilisateur
Pour ce faire les adversaires peuvent essayer diverses strateacutegies
Faiblesses du systegraveme drsquoexploitation ou du logiciel du serveur Nous allons voir un exemple de ce type drsquoattaque attaques par deacutebordement Une page Web nrsquoest pas un objet passif Elle peut contenir du code (JavaScript Perl etc) malveillant
Tromper lrsquoutilisateur Crsquoest peut-ecirctre plus simple Cas speacutecial du piratage psychologique Cliquer ici pour installer un joli logiciel il faut espeacuterer que lrsquoantivirus deacutetecte ceci avant qursquoil ne soit trop tard
Deacutetecter les intrusionsDeacutetecter les intrusionsUne faccedilon diffeacuterente de deacutetecter les logiciels ou utilisateurs malveillants consiste agrave deacutetecter les comportements malveillants
Un systegraveme peut surveiller les processus pour deacutetecter les comportements malveillants
Une telle approche a lrsquoavantage de ne pas deacutependre drsquoinformation sur les virus et les attaques
Un coupe-feu dynamique est un exemple de cette approche
Il surveille les connexions et tente de deacuteterminer si un client transmet des donneacutees agrave contenu suspect (comme la taille)
Requecirctes Requecirctes malveillantesmalveillantes
dlkjfdsflkjsd dlkjfdsflkjsd fjdskl gfjdlskewqewewewewhdfbfbfbww fjdskl gfjdlskewqewewewewhdfbfbfbww jaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfjaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfwewqewqewqewqewqewqeweekjwweeqqqsxcswdswewqewqewqewqewqewqeweekjwweeqqqsxcswdsdddds dddds ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqqwwq qwwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewqeweekwqwqwefdscxcccj qeweekwqwqwefdscxcccj ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxzcwq zcwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfssaDSADSADSsfghdskjgfhdsgfihoiehjrfssaDSADSADSADDSDSDSSDSDSADDSDSDSSDSDSIl arrive que de longues requecirctes puissent faire planter un systegraveme
mal programmeacute Un adversaire peut donc soumettre des chaicircnes tregraves longues dans le but de rendre le systegraveme inopeacuterant (ou mecircme pire assujetti) comme nous le verrons plus loin
Et agrave peu pregraves nrsquoimporte qui Et agrave peu pregraves nrsquoimporte qui peut proposer un service peut proposer un service
comme celui-ci comme celui-ci
Un coupe-feu peut filtrer les requecirctes anormalement longues pour les ignorer Mecircme les systegravemes avec programmes erroneacutes seront agrave lrsquoabri de ce type drsquoattaque
SELECT SELECT FROM Passwords FROM Passwords WHERE user=rsquoWHERE user=rsquoJugheadJugheadrsquo AND password=rsquorsquo AND password=rsquoxrsquo xrsquo OR lsquo1rsquo=lsquo1OR lsquo1rsquo=lsquo1rsquorsquo
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Requecirctes Requecirctes malveillantesmalveillantes
HTTPSHTTPS
Password Password xrsquo OR xrsquo OR lsquo1rsquo=rsquo1lsquo1rsquo=rsquo1
Un coupe-feu dynamique peut filtrer des requecirctes bizarres comme xrsquo OR lsquo1rsquo=rsquo1xrsquo OR lsquo1rsquo=rsquo1
Ceci est beaucoup plus difficile agrave Ceci est beaucoup plus difficile agrave reacutealiser par un coupe-feu que reacutealiser par un coupe-feu que
lrsquoexemple preacuteceacutedentlrsquoexemple preacuteceacutedent
Approche Approche comportementalecomportementaleUne autre approche pour la deacutetection drsquointrusions consiste agrave
observer certains aspects du comportement des utilisateurs et programmes
activiteacutes de connexion et de session
activiteacutes relieacutees agrave lrsquoexeacutecution de programme et drsquoaccegraves aux fichiers
Il y a deux approches pour la deacutetection de comportements suspects
Par regravegles (rule-based) Un ensemble de regravegles deacutecrivant les comportements normaux est eacutetabli Les comportements anormaux (trop loin des normaux) sont rejeteacutes
Statistique Des statistiques sur les utilisateurs normaux sont creacuteeacutees Le comportement de lrsquoutilisateurprogramme observeacute est compareacute aux statistiques Un comportement montrant un trop grand eacutecart avec les statistiques est rejeteacute
Problegravemes avec les Problegravemes avec les systegravemes de deacutetection systegravemes de deacutetection
drsquointrusion (IDS)drsquointrusion (IDS)Le problegraveme majeur avec lrsquoapproche est le mecircme qursquoavec la biomeacutetrie Le systegraveme qui surveille doit ecirctre assez toleacuterant pour autoriser les comportements normaux mais suffisamment restrictif pour attraper les acteurs malveillants
Ce problegraveme nrsquoest pas tregraves bien compris et les solutions proposeacutees ne sont pas tout agrave fait satisfaisantes
La deacutetection drsquointrusion est bien inutile si le systegraveme ne reacuteagit pas de la bonne faccedilon lorsqursquoune intrusion est deacutetecteacutee La partie du systegraveme qui alerte lrsquoadministrateur qui interdit lrsquoaccegraves qui effectue quelque autre tacircche pour eacuteliminer la menace est tout aussi importante que celle qui deacutetecte
Le pot de mielLe pot de miel
Le pot de miel (laquohoney potraquo) est un truc pratique pour la deacutetection drsquointrusions
Une ressource bidon qui semble inteacuteressante pour un adversaire est creacuteeacutee
Puisque celle-ci est bidon on peut supposer que si quelqursquoun y accegravede crsquoest qursquoil srsquoadonne agrave une activiteacute malveillante
En consultant les traces il peut ecirctre possible de retrouver lrsquoutilisateur malveillant
Ceci peut se faire agrave lrsquoinsu de lrsquointrus
ExempleExemple
Un hocircpital ameacutericain soupccedilonnait que quelqursquoun consultait les dossiers de patients sans en avoir lrsquoautorisation
Ils ont creacuteeacute des fichiers pour des patients qui nrsquoexistent pas
Les accegraves agrave ces fichiers ont alors eacuteteacute retraceacutes jusqursquoagrave lrsquoutilisateur malveillant
Les attaques de lrsquointeacuterieurLes attaques de lrsquointeacuterieurPresque tout ce que nous avons vu a pour but la protection contre les attaques venues de lrsquoexteacuterieur
Les attaques peuvent tregraves bien eacutemaner de lrsquointeacuterieur et peuvent causer des problegravemes seacuterieux
Le premiegravere chose agrave comprendre est qursquoil nrsquoest pas possible de se preacutemunir contre ces attaques si les utilisateurs ont tous les droits sur le systegraveme cible
Il est donc neacutecessaire qursquoune partie du systegraveme soit garantie de fonctionner selon ses speacutecifications mecircme sous attaque
Sans cette hypothegravese le systegraveme est sous le controcircle complet de lrsquoadversaire
Base informatique Base informatique seacutecuriseacuteeseacutecuriseacutee
laquotrusted computing baseraquo (TCB)laquotrusted computing baseraquo (TCB)
Une base seacutecuriseacutee peut ecirctre eacutetablie en utilisant de la seacutecuriteacute mateacuterielle logicielle par mot de passe par exemple
Le rocircle de ce systegraveme de base est de controcircler lrsquoaccegraves aux ressources et le flux drsquoinformation sur celui-ci
Pour bien comprendre comment ces protections fonctionnent nous devons mettre de lrsquoordre dans nos ideacutees Nous devons voir agrave quoi ressemble une politique de seacutecuriteacute dans ce sceacutenario
Crsquoest notre prochain sujet
PreacuteventionPreacutevention
Disposer drsquoune sauvegarde de ses donneacutees
Faire un audit des accegraves inutilement ouverts
Les comptes drsquoadministration ont des mots de passe seacutecuriseacutes
Suppression des comptes utilisateurs non utiliseacutes
Deacutesactiver les services (p ex internet) non utiliseacutes sur les machines et supprimer les partages de fichiers qui ne sont pas neacutecessaires
Le neacutecessaire
PreacuteventionPreacutevention
Mettre agrave jour les logiciels agrave lrsquoaide des derniegraveres rustines (laquopatchesraquo) de seacutecuriteacute officielles pour fermer les bregraveches
Installer un coupe-feu
Structurer les reacuteseaux en zones eacutetanches par activiteacute et sensibiliteacute (VLAN) Instituer un systegraveme de mots de passe Isoler les serveurs Internet VLAN Virtual Local Area Network regroupe les machines de faccedilon logique et non physique
Srsquoabonner aux lettres drsquoinformation (laquonewslettersraquo) de seacutecuriteacute des diffeacuterents fournisseurs
Le souhaitable
Coupe-feuCoupe-feuUn coupe-feu permet de couper lrsquoaccegraves agrave un reacuteseau local Crsquoest le seul point drsquoaccegraves agrave un reacuteseau local agrave partir de lrsquoexteacuterieur
Les techniques que nous avons vues jusqursquoagrave maintenant ne permettent pas drsquoeacuteviter de communiquer avec des adversaires
Mecircme si nous insistons pour faire un eacutechange de cleacute authentifieacute avec quelqursquoun une certaine quantiteacute drsquoinformation eacutechangeacutee avec des adversaires potentiels ne peut ecirctre eacuteviteacutee
Ceci pourrait permettre agrave lrsquoadversaire de pirater un ordinateur en utilisant une attaque par deacutebordement de tampon
Le concept du coupe-feu Lrsquoadversaire ne peut attaquer un ordinateur avec lequel il ne communique pas
Lrsquoaspect drsquoun coupe-feuLrsquoaspect drsquoun coupe-feu
coupe-feu
reacuteseau local (LAN)
LAN priveacutereacuteseau public
Coupe-feu filtrage de paquetsCoupe-feu filtrage de paquets
Un coupe-feu est simplement une machine ou un logiciel qui arrecircte ou retire une partie de la circulation sur un reacuteseau
Il est habituellement placeacute sur la connexion entre le reacuteseau local et lrsquoInternet Le trafic de reacuteseau doit donc passer par celui-ci pour relier le reacuteseau local agrave lrsquoInternet
La maniegravere la plus simple drsquoutiliser un coupe-feu consiste agrave lui demander de couper toute communication qui tente de se connecter agrave une machine que vous ne voulez pas voir communiquer avec lrsquoexteacuterieur
Filtrage de paquets Filtrage de paquets commentcommentSouvenons-nous que les connexions TCP demandent que
des paquets speacuteciaux soient transmis et accepteacutes dans le but drsquoeacutetablir une connexion
Ces paquets sont faciles agrave reconnaicirctre car certains drapeaux (laquoflagsraquo) seront activeacutes Les paquets suivants pourront ecirctre associeacutes agrave une connexion eacutetablie preacuteceacutedemment
Le protocole UDP eacutetablit une communication sans ecirctre orienteacute connexion Un paquet est transmis en espeacuterant qursquoil se rende agrave destination LrsquoUDP est utiliseacute pour communiquer avec les serveurs DNS qui traduisent les adresses sous une forme lisible en adresses IP
Le coupe-feu peut tout simplement eacuteliminer les paquets eacutetablissant une connexion TCP sur une machine locale et tout le trafic UDP Ceci est nommeacute filtrage simple des paquets
Filtrage de paquets Filtrage de paquets commentcomment
Un coupe-feu par filtrage de paquets reacuteside tregraves bas dans la pile TCPIP au niveau Internet ou mecircme Reacuteseau Crsquoest la seule faccedilon de srsquoassurer que tout ce qui va du reacuteseau local ou vient de lrsquoInternet sera observeacute
Le filtrage des paquets peut ecirctre configureacute par une politique qui deacutetermine quels paquets seront bloqueacutes ou autoriseacutes
Il srsquoagit du coupe-feu original le plus simple et le plus facile agrave reacutealiser Il peut ecirctre tregraves sucircr car il peut bloquer toute la circulation Il est cependant neacutecessaire de permettre des accegraves ce qui rend possibles certaines attaques
Les limites du filtrage de Les limites du filtrage de paquetspaquetsEacutevidemment toutes les connexions ne peuvent ecirctre
eacutelimineacutees les serveurs Web et de courriel doivent bien ecirctre autoriseacutes agrave communiquer (ils ont besoin entre autres choses
de communiquer avec le serveur DNS via UDP)Nous pouvons deacuteplacer ce serveur Nous pouvons deacuteplacer ce serveur agrave lrsquoexteacuterieur mais comment alors agrave lrsquoexteacuterieur mais comment alors
le mettre agrave jourle mettre agrave jour
Nous pouvons deacuteplacer ce serveur Nous pouvons deacuteplacer ce serveur agrave lrsquoexteacuterieur mais comment alors agrave lrsquoexteacuterieur mais comment alors
le mettre agrave jourle mettre agrave jour
La bonne nouvelle est que toutes les La bonne nouvelle est que toutes les attaques devront passer par ce attaques devront passer par ce serveur si le filtrage est strict serveur si le filtrage est strict
La bonne nouvelle est que toutes les La bonne nouvelle est que toutes les attaques devront passer par ce attaques devront passer par ce serveur si le filtrage est strict serveur si le filtrage est strict
pourrait ecirctre possible si le pourrait ecirctre possible si le filtrage est trop lacircchefiltrage est trop lacircche
pourrait ecirctre possible si le pourrait ecirctre possible si le filtrage est trop lacircchefiltrage est trop lacircche
DMZ (laquoDemilitarized zoneraquo) une zone laquodeacutemilitariseacuteeraquo entre lrsquoInternet et le reacuteseau interne dans laquelle on peut placer les serveurs WEB accessibles depuis lrsquoexteacuterieur La zone est munie drsquoun coupe-feu pour cette tacircche Les coupe-feu peuvent avoir une sortie DMZ pour le serveur Web
Politiques de filtragePolitiques de filtrageSouvenons-nous que les paquets contiennent les informations suivantes
les donneacutees
lrsquoadresse IP drsquoorigine et de destination (incluant le port de destination)
lrsquoinformation sur le protocole par lequel ils doivent ecirctre manipuleacutes
lrsquoinformation sur des erreurs eacuteventuelles et
de lrsquoinformation sur le type de donneacutees en transit
Un politique de filtrage eacutenonce une liste drsquoautorisations et drsquointerdictions des types
autoriseinterdit les paquets selon lrsquoadresse IP drsquooriginedestination
autoriseinterdit les paquets selon leur port de destination
autoriseinterdit les paquets selon le protocole
Conclusion Conclusion (filtrage de paquets)(filtrage de paquets)
Pour ecirctre complegravetement sucircr le filtrage de paquets doit ecirctre tregraves restrictif ce qui peut trop limiter lrsquoaccegraves au reacuteseau
Si le filtrage est plus lacircche alors il pourrait devenir possible agrave lrsquoadversaire de communiquer avec des machines du reacuteseau local
Ceci demande agrave lrsquoadversaire de tenter beaucoup drsquoadresses IP jusqursquoagrave ce qursquoune machine reacuteponde
En conclusion les coupe-feu devraient faire quelque chose de plus intelligent que le simple filtrage
Ils doivent examiner les paquets en deacutetail pour deacutecider quoi faire avec ceux-ci Ils devraient mecircme ecirctre capables de modifier des paquets si neacutecessaire
Coupe-feu proxyCoupe-feu proxyLes proxy (laquoserveurs mandatairesraquo) permettent de faire du filtrage intelligent Il ne permet aucune connexion sur une machine locale agrave partir de lrsquoexteacuterieur
Le proxy gegravere toutes les connexions au nom des machines de reacuteseau local
Si une machine locale a un logiciel qui deacutesire acceacuteder agrave lrsquoInternet alors celui-ci devra ecirctre configureacute pour communiquer avec le coupe-feu agrave la place Le coupe-feu eacutetablira alors la connexion
Vu de lrsquoexteacuterieur le reacuteseau local est complegravetement cacheacute derriegravere le coupe-feu Seul celui-ci est visible
Essayer plusieurs adresses IP pour espeacuterer une reacuteponse ne fonctionne pas ici
Une attaque doit srsquoen prendre au proxy Une machine est plus facile agrave proteacuteger que plusieurs
Proxy en imagesProxy en imagesLe proxy comme une zone tampon entre
lrsquoInternet et un reacuteseau local
Pendant une connexion internet
Cacher votre adresse Cacher votre adresse IPIPVotre adresse IP reacutevegravele votre point drsquoentreacutee sur lrsquoInternet
Peut permettre de retrouver votre fournisseur le reacuteseau de votre employeur votre eacutecole ou votre terminal public
Il srsquoagit de lrsquoidentiteacute de votre machine pendant que vous ecirctes en ligne Sa porte sur le monde
Vous pouvez dissimuler votre adresse IP sur le Web en utilisant un serveur proxy anonyme
Un serveur proxy speacutecialiseacute pour la navigation Web anonyme utilise sa propre adresse IP agrave la place de la vocirctre pour chaque requecircte sortante
Il peut mecircme chiffrer les communications Web ne permettant plus la surveillance de vos actions
Proxy pour et contre Proxy pour et contre
Un proxy permet de proteacuteger un reacuteseau local drsquoune faccedilon tregraves efficace Un seul point faible neacutecessite notre attention
Cette solution nrsquoest pas tregraves flexible Les logiciels clients des machines locales doivent savoir comment utiliser un proxy Sinon rien ne fonctionnera puisque celles-ci sont invisibles
Nous pourrions peut-ecirctre faire croire au client que le service est donneacute par le coupe-feu mais celui-ci doit savoir quoi faire pour acheminer la connexion vers sa destination Ceci demande de configurer chaque type de connexion
Exemple de Proxy TorExemple de Proxy Tor
Coupe-feu dynamique Coupe-feu dynamique (laquostateful firewallraquo)(laquostateful firewallraquo)
Nous avons vu que les coupe-feu statiques agrave filtrage de paquets interviennent en fonction de paquets individuels
Un serveur FTP va ouvrir des connexions sur des ports de hautes valeurs Le filtrage de paquets ne peut pas savoir qursquoune connexion sur le port 6783 appartient agrave une connexion FTP leacutegitime Ces paquets seront eacutelimineacutes
Le coupe-feu dynamique reacutesout ce problegraveme en meacutemorisant les connexions ouvertes par des connexions leacutegitimes
Il est aussi possible de transformer lrsquoadresse IP drsquoune machine locale par quelque chose de diffeacuterent Le coupe-feu agrave mascarade permet drsquoeacuteviter les attaques qui consistent agrave essayer des adresses IP dans le but drsquoobtenir une reacuteponse
Le coupe-feu peut ecirctre configureacute pour eacuteliminer les connexions qui font des trucs bizarres comme la transmission drsquoune chaicircne trop longue
Toujours la pile TCPIPToujours la pile TCPIP
Champs du protocole Champs du protocole IPIP
Champs utiles pour le protocole IP
Le protocole IP fonctionne agrave partir de segments
Protocole UDPProtocole UDP(ses champs utiles)(ses champs utiles)
Champs utiles pour le protocole UDP
Protocole TCPProtocole TCP(ses champs utiles)(ses champs utiles)
Champs utiles pour le protocole TCP
Port de lrsquoapplication Port de lrsquoapplication en cours sur la en cours sur la machine sourcemachine source
Port de lrsquoapplication Port de lrsquoapplication sur la machine sur la machine
destinationdestination
Le numeacutero drsquoordre du Le numeacutero drsquoordre du prochain segment (IP) prochain segment (IP)
attenduattendu
URG paquet agrave traiter de faccedilon urgenteACK paquet est un accuseacute de reacuteceptionPSH paquet fonctionne selon la meacutethode push
RST connexion reacuteinitialiseacuteeSYN indique une demande drsquoeacutetablissement de connexionFIN indique une interruption de connexion
Le numeacutero drsquoordre du segment (IP) Le numeacutero drsquoordre du segment (IP) courant si SYN=0 et le numeacutero drsquoordre courant si SYN=0 et le numeacutero drsquoordre
initial pour synchroniser les nos de initial pour synchroniser les nos de seacutequence (ISN)seacutequence (ISN)
DrapeauxDrapeaux
Filtrage extrecircmeFiltrage extrecircmeTCP est orienteacute connexion Pour en eacutetablir une de A vers B on doit transmettre SYN=1 dans le premier paquet de lrsquoeacutetablissement de connexion agrave trois eacutetapes (laquothree-way handshakeraquo)
Un filtrage simple consiste agrave laisser tomber tous les paquets qui ne contiennent que le drapeau SYN=1
Il devient impossible drsquoeacutetablir une connexion TCP de lrsquoexteacuterieur du mur
Si en plus les paquets UDP sont eacutelimineacutes alors la situation devrait ecirctre tregraves sucircre
Cette politique ne permet pas de se connecter au serveur Web cependant
Activer le serveur Web Activer le serveur Web et accegraves agrave un DNSet accegraves agrave un DNS
Pour donner accegraves au serveur Web nous pourrions faire la chose suivante
Nous autorisons une exception agrave la regravegle preacuteceacutedente
Nous autorisons les paquets SYN=1 pour le serveur Web sur le port 80 (port http)
Nous voudrions aussi permettre lrsquoaccegraves agrave un serveur DNS pour la conversion drsquoadresse comme httpwwwiroumontrealca en 13220424179
Il suffit de laisser les paquets UDP vers et depuis au moins un serveur DNS sur le port 53 (UDP)
Le reacutesultatLe reacutesultat
Si le pirate trouve une faille sur le serveur Web alors il pourrait attaquer le reacuteseau local
Pour eacuteviter ceci il faut seacuteparer le serveur Web des autresLe filtrage par paquets est insuffisant
Deux filtres valent mieux Deux filtres valent mieux qursquounqursquoun
ProxyProxyIl y a drsquoautres services sur lrsquoInternet qui utilisent le protocole UDP flux de donneacutees videacuteo jeux videacuteo
De plus excepteacute pour les paquets SYN=1 il est possible de transmettre des paquets TCP aux ordinateurs du reacuteseau local
Le proxy peut rendre les machines du reacuteseau local invisibles pas le filtrage simple de paquets
Approche proxyApproche proxy
Coupe-feu Coupe-feu dynamiquesdynamiques
Les proxys ne sont pas tregraves flexibles Les coupe-feu dynamiques permettent drsquoutiliser les logiciels drsquoune faccedilon plus transparente
Il srsquoagit drsquoun filtre avanceacute qui permet de veacuterifier que les paquets appartiennent agrave une connexion deacutejagrave eacutetablie Crsquoest seulement lorsque crsquoest le cas que le paquet peut passer
Parce qursquoil est conscient drsquoune connexion il peut appliquer NAT etou PAT
NAT Dynamique (laquoDynamic Network Address Translationraquo) Le coupe-feu traduit les adresses du reacuteseau Toutes les machines du reacuteseau possegravedent vu de lrsquoexteacuterieur la mecircme adresse IP
PAT (laquoPort Address Translationraquo) Le coupe-feu traduit les numeacuteros de port par lesquels les paquets arrivent sur les hocirctes locaux
Ces coupe-feu sont appeleacutes coupe-feu avec mascarade
NAT a eacuteteacute mis au point agrave NAT a eacuteteacute mis au point agrave lrsquoorigine pour reacutepondre agrave la lrsquoorigine pour reacutepondre agrave la
peacutenurie drsquoadresses IP avec le peacutenurie drsquoadresses IP avec le protocole IPv4protocole IPv4
NAT a eacuteteacute mis au point agrave NAT a eacuteteacute mis au point agrave lrsquoorigine pour reacutepondre agrave la lrsquoorigine pour reacutepondre agrave la
peacutenurie drsquoadresses IP avec le peacutenurie drsquoadresses IP avec le protocole IPv4protocole IPv4
Coupe-feu agrave Coupe-feu agrave mascarademascarade
Filtrage dynamique eacutetenduFiltrage dynamique eacutetenduLe filtrage des coupe-feu dynamiques nrsquoest pas limiteacute aux protocoles TCPIP
Pour des applications usuelles le filtrage peut srsquoappliquer au protocole
Le coupe-feu peut ainsi deacutetecter des comportements inhabituels
Peut aussi filtrer certaines parties des donneacutees transmises
Pour le protocole HTTP le filtre peut supprimer les applications Java
Pour le protocole SMTP le filtre peut supprimer les piegraveces jointes drsquoun certain type
Conclusion sur les coupe-Conclusion sur les coupe-feufeu
Les coupe-feu permettent de filtrer le trafic entre le reacuteseau local et lrsquoInternet en nrsquoadministrant qursquoune seule machine
Les coupe-feu ne sont cependant pas une solution magique pour reacutesoudre les problegravemes causeacutes par les attaques exteacuterieures agrave un reacuteseau local
Les coupe-feu pour un seul ordinateur personnel peuvent offrir une solution sans trop drsquoentretien
Les coupe-feu neacutecessitent des mises agrave jour freacutequentes lorsque le reacuteseau local est de bonne taille Lorsque le reacuteseau local change la configuration du coupe-feu doit aussi changer
Penser que lrsquoinstallation drsquoun coupe-feu rend votre reacuteseau sucircr est un peu de la penseacutee magique (neacutecessaire mais pas suffisant)
Logiciels malveillantsLogiciels malveillantsUn adversaire peut une fois passeacute le coupe-feu et les autres deacutefenses vouloir installer un programme malveillant sur la machine locale Ceux-ci sont de trois types
Chevaux de Troie Programme qui semble tout agrave fait utile mais qui cache une fonction malveillante Par exemple donne accegraves agrave des donneacutees priveacutees donne des droits drsquoaccegraves non autoriseacutes ou deacutetruit des donneacutees
Virus Programme qui infecte un autre programme sur votre ordinateur Agrave partir du programme infecteacute le virus se propage vers drsquoautres programmes Apregraves un certain temps ou eacuteveacutenement les virus peuvent entreprendre certaines actions Celles-ci peuvent ecirctre lrsquoeacutelimination de fichiers la deacuteteacuterioration de fonctions du systegraveme drsquoexploitation etc
Vers Programmes qui infectent un ordinateur sans avoir agrave ecirctre heacutebergeacutes par drsquoautres programmes Ils sont des programmes indeacutependants Ils se multiplient en exploitant diffeacuterentes ressources Les objectifs de ces programmes peuvent ecirctre lrsquoespionnage lrsquoouverture de portes deacuterobeacutees eacutemettre des requecirctes vers un site Internet jusqursquoagrave saturation
ExempleExempleI Love You Un ver lanceacute en 2000 et qui a atteint 31 millions de machines en 4 jours
Infection Le ver eacutetait dissimuleacute en piegravece jointe drsquoun courriel Cette piegravece jointe eacutetait preacutesenteacutee comme Love-Letter-for-youtxtvbs Lrsquoextension vbs indique que le fichier est un script Visual Basic Comme lrsquoextension nrsquoapparaicirct pas sur Windows les utilisateurs voyaient la piegravece jointe comme Love-Letter-for-youtxt Objectif Le script lisait la liste des contacts de lrsquoutilisateur pour envoyer ce mecircme message agrave ceux-ci La plate-forme Windows eacutetait viseacutee Des fichiers eacutetaient deacutetruits et remplaceacutes par ce script Il changeait la page drsquoaccueil drsquoInternet Explorer pour teacuteleacutecharger un cheval de Troie
ExempleExempleCode Red Un ver qui a infecteacute 359 000 ordinateurs en moins de 14 heures le 19 juillet 2001
Infections Le ver se multipliait en essayant des adresses IP aleacuteatoires pour ensuite infecter des serveurs qui faisaient tourner Microsoft IIS avec une faille de seacutecuriteacute
Objectif Monter une attaque par deacuteni de service (DOS) contre la Maison-Blanche
Lrsquoattaque a eacuteteacute facile agrave repousser car le ver veacuterifiait avant de lancer lrsquoattaque que le serveur agrave lrsquoadresse IP (au lieu du nom de domaine) de la Maison-Blanche eacutecoutait le port 80 (le port des serveurs Web) En changeant lrsquoadresse IP de la Maison-Blanche lrsquoattaque a eacuteteacute repousseacutee
ExempleExempleCabir Est un virusver (deacutemonstration de faisabiliteacute laquoproof of conceptraquo) qui srsquoattaque agrave la teacuteleacutephonie mobile Crsquoest un fichier de 15 ko nommeacute CARIBESIS
Infection Se propage par la teacuteleacutephonie mobile gracircce agrave la technologie Bluetooth et le systegraveme drsquoexploitation Symbian OS
Action Agrave chaque fois que le teacuteleacutephone infecteacute est ouvert le mot laquoCariberaquo srsquoaffiche Il tente de se propager aux peacuteripheacuteriques BlueTooth de la zone du teacuteleacutephone infecteacute Il nrsquoest pas meacutechant nrsquoavait pour but que de deacutemontrer la faisabiliteacute
AntivirusAntivirusLes antivirus sont des programmes qui deacutetectent les virus les vers et les chevaux de Troie sur votre ordinateur Ils les eacuteliminent
Ils visitent les fichiers sur votre disque dans le but de trouver des bouts de programmes reconnus comme dangereux
Ceci est possible eacutetant donneacute une base de donneacutees agrave jour contenant les virus connus sous la forme de signatures de virus Une signature est un motif (laquopatternraquo) qui caracteacuterise un virus donneacute
Un antivirus nrsquoest efficace que si sa base de donneacutees est mise agrave jour constamment Les compagnies drsquoantivirus vont vite pour mettre agrave jour leur base de donneacutees lorsqursquoun nouveau virus est identifieacute
Malheureusement les utilisateurs tardent agrave mettre leur copie agrave jour causant bien des infections
Tromper les antivirusTromper les antivirusDe nouveaux virus utilisent les meacutethodes de la cryptographie pour deacutejouer les antivirus
Des virus sont chiffreacutes pour les rendre non reconnaissables par les antivirus car ils ont toujours un aspect diffeacuterent
Ces virus ont un petit code en clair qui permet de les deacutecoder et de les charger en meacutemoire pour ecirctre exeacutecuteacutes Ce code est ce que les antivirus doivent deacutetecter
Ces virus sont de trois types
Oligomorphique Le virus est chiffreacute agrave chaque reacuteplication
Polymorphique Le virus est chiffreacute et la routine de deacutechiffrement est capable de changer certaines de ses instructions au fil des reacuteplications
Meacutetamorphique Le virus change de forme au fil des reacuteplications
IntrusionsIntrusionsPour qursquoun virus ver ou cheval de Troie soit deacuteleacutetegravere encore faut-il qursquoil srsquoinstalle sur votre machine
Mecircme si un adversaire peut parler agrave votre machine ceci nrsquoimplique pas qursquoil peut installer un logiciel sur celle-ci encore moins srsquoil nrsquoen est pas un utilisateur
Pour ce faire les adversaires peuvent essayer diverses strateacutegies
Faiblesses du systegraveme drsquoexploitation ou du logiciel du serveur Nous allons voir un exemple de ce type drsquoattaque attaques par deacutebordement Une page Web nrsquoest pas un objet passif Elle peut contenir du code (JavaScript Perl etc) malveillant
Tromper lrsquoutilisateur Crsquoest peut-ecirctre plus simple Cas speacutecial du piratage psychologique Cliquer ici pour installer un joli logiciel il faut espeacuterer que lrsquoantivirus deacutetecte ceci avant qursquoil ne soit trop tard
Deacutetecter les intrusionsDeacutetecter les intrusionsUne faccedilon diffeacuterente de deacutetecter les logiciels ou utilisateurs malveillants consiste agrave deacutetecter les comportements malveillants
Un systegraveme peut surveiller les processus pour deacutetecter les comportements malveillants
Une telle approche a lrsquoavantage de ne pas deacutependre drsquoinformation sur les virus et les attaques
Un coupe-feu dynamique est un exemple de cette approche
Il surveille les connexions et tente de deacuteterminer si un client transmet des donneacutees agrave contenu suspect (comme la taille)
Requecirctes Requecirctes malveillantesmalveillantes
dlkjfdsflkjsd dlkjfdsflkjsd fjdskl gfjdlskewqewewewewhdfbfbfbww fjdskl gfjdlskewqewewewewhdfbfbfbww jaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfjaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfwewqewqewqewqewqewqeweekjwweeqqqsxcswdswewqewqewqewqewqewqeweekjwweeqqqsxcswdsdddds dddds ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqqwwq qwwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewqeweekwqwqwefdscxcccj qeweekwqwqwefdscxcccj ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxzcwq zcwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfssaDSADSADSsfghdskjgfhdsgfihoiehjrfssaDSADSADSADDSDSDSSDSDSADDSDSDSSDSDSIl arrive que de longues requecirctes puissent faire planter un systegraveme
mal programmeacute Un adversaire peut donc soumettre des chaicircnes tregraves longues dans le but de rendre le systegraveme inopeacuterant (ou mecircme pire assujetti) comme nous le verrons plus loin
Et agrave peu pregraves nrsquoimporte qui Et agrave peu pregraves nrsquoimporte qui peut proposer un service peut proposer un service
comme celui-ci comme celui-ci
Un coupe-feu peut filtrer les requecirctes anormalement longues pour les ignorer Mecircme les systegravemes avec programmes erroneacutes seront agrave lrsquoabri de ce type drsquoattaque
SELECT SELECT FROM Passwords FROM Passwords WHERE user=rsquoWHERE user=rsquoJugheadJugheadrsquo AND password=rsquorsquo AND password=rsquoxrsquo xrsquo OR lsquo1rsquo=lsquo1OR lsquo1rsquo=lsquo1rsquorsquo
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Requecirctes Requecirctes malveillantesmalveillantes
HTTPSHTTPS
Password Password xrsquo OR xrsquo OR lsquo1rsquo=rsquo1lsquo1rsquo=rsquo1
Un coupe-feu dynamique peut filtrer des requecirctes bizarres comme xrsquo OR lsquo1rsquo=rsquo1xrsquo OR lsquo1rsquo=rsquo1
Ceci est beaucoup plus difficile agrave Ceci est beaucoup plus difficile agrave reacutealiser par un coupe-feu que reacutealiser par un coupe-feu que
lrsquoexemple preacuteceacutedentlrsquoexemple preacuteceacutedent
Approche Approche comportementalecomportementaleUne autre approche pour la deacutetection drsquointrusions consiste agrave
observer certains aspects du comportement des utilisateurs et programmes
activiteacutes de connexion et de session
activiteacutes relieacutees agrave lrsquoexeacutecution de programme et drsquoaccegraves aux fichiers
Il y a deux approches pour la deacutetection de comportements suspects
Par regravegles (rule-based) Un ensemble de regravegles deacutecrivant les comportements normaux est eacutetabli Les comportements anormaux (trop loin des normaux) sont rejeteacutes
Statistique Des statistiques sur les utilisateurs normaux sont creacuteeacutees Le comportement de lrsquoutilisateurprogramme observeacute est compareacute aux statistiques Un comportement montrant un trop grand eacutecart avec les statistiques est rejeteacute
Problegravemes avec les Problegravemes avec les systegravemes de deacutetection systegravemes de deacutetection
drsquointrusion (IDS)drsquointrusion (IDS)Le problegraveme majeur avec lrsquoapproche est le mecircme qursquoavec la biomeacutetrie Le systegraveme qui surveille doit ecirctre assez toleacuterant pour autoriser les comportements normaux mais suffisamment restrictif pour attraper les acteurs malveillants
Ce problegraveme nrsquoest pas tregraves bien compris et les solutions proposeacutees ne sont pas tout agrave fait satisfaisantes
La deacutetection drsquointrusion est bien inutile si le systegraveme ne reacuteagit pas de la bonne faccedilon lorsqursquoune intrusion est deacutetecteacutee La partie du systegraveme qui alerte lrsquoadministrateur qui interdit lrsquoaccegraves qui effectue quelque autre tacircche pour eacuteliminer la menace est tout aussi importante que celle qui deacutetecte
Le pot de mielLe pot de miel
Le pot de miel (laquohoney potraquo) est un truc pratique pour la deacutetection drsquointrusions
Une ressource bidon qui semble inteacuteressante pour un adversaire est creacuteeacutee
Puisque celle-ci est bidon on peut supposer que si quelqursquoun y accegravede crsquoest qursquoil srsquoadonne agrave une activiteacute malveillante
En consultant les traces il peut ecirctre possible de retrouver lrsquoutilisateur malveillant
Ceci peut se faire agrave lrsquoinsu de lrsquointrus
ExempleExemple
Un hocircpital ameacutericain soupccedilonnait que quelqursquoun consultait les dossiers de patients sans en avoir lrsquoautorisation
Ils ont creacuteeacute des fichiers pour des patients qui nrsquoexistent pas
Les accegraves agrave ces fichiers ont alors eacuteteacute retraceacutes jusqursquoagrave lrsquoutilisateur malveillant
Les attaques de lrsquointeacuterieurLes attaques de lrsquointeacuterieurPresque tout ce que nous avons vu a pour but la protection contre les attaques venues de lrsquoexteacuterieur
Les attaques peuvent tregraves bien eacutemaner de lrsquointeacuterieur et peuvent causer des problegravemes seacuterieux
Le premiegravere chose agrave comprendre est qursquoil nrsquoest pas possible de se preacutemunir contre ces attaques si les utilisateurs ont tous les droits sur le systegraveme cible
Il est donc neacutecessaire qursquoune partie du systegraveme soit garantie de fonctionner selon ses speacutecifications mecircme sous attaque
Sans cette hypothegravese le systegraveme est sous le controcircle complet de lrsquoadversaire
Base informatique Base informatique seacutecuriseacuteeseacutecuriseacutee
laquotrusted computing baseraquo (TCB)laquotrusted computing baseraquo (TCB)
Une base seacutecuriseacutee peut ecirctre eacutetablie en utilisant de la seacutecuriteacute mateacuterielle logicielle par mot de passe par exemple
Le rocircle de ce systegraveme de base est de controcircler lrsquoaccegraves aux ressources et le flux drsquoinformation sur celui-ci
Pour bien comprendre comment ces protections fonctionnent nous devons mettre de lrsquoordre dans nos ideacutees Nous devons voir agrave quoi ressemble une politique de seacutecuriteacute dans ce sceacutenario
Crsquoest notre prochain sujet
PreacuteventionPreacutevention
Mettre agrave jour les logiciels agrave lrsquoaide des derniegraveres rustines (laquopatchesraquo) de seacutecuriteacute officielles pour fermer les bregraveches
Installer un coupe-feu
Structurer les reacuteseaux en zones eacutetanches par activiteacute et sensibiliteacute (VLAN) Instituer un systegraveme de mots de passe Isoler les serveurs Internet VLAN Virtual Local Area Network regroupe les machines de faccedilon logique et non physique
Srsquoabonner aux lettres drsquoinformation (laquonewslettersraquo) de seacutecuriteacute des diffeacuterents fournisseurs
Le souhaitable
Coupe-feuCoupe-feuUn coupe-feu permet de couper lrsquoaccegraves agrave un reacuteseau local Crsquoest le seul point drsquoaccegraves agrave un reacuteseau local agrave partir de lrsquoexteacuterieur
Les techniques que nous avons vues jusqursquoagrave maintenant ne permettent pas drsquoeacuteviter de communiquer avec des adversaires
Mecircme si nous insistons pour faire un eacutechange de cleacute authentifieacute avec quelqursquoun une certaine quantiteacute drsquoinformation eacutechangeacutee avec des adversaires potentiels ne peut ecirctre eacuteviteacutee
Ceci pourrait permettre agrave lrsquoadversaire de pirater un ordinateur en utilisant une attaque par deacutebordement de tampon
Le concept du coupe-feu Lrsquoadversaire ne peut attaquer un ordinateur avec lequel il ne communique pas
Lrsquoaspect drsquoun coupe-feuLrsquoaspect drsquoun coupe-feu
coupe-feu
reacuteseau local (LAN)
LAN priveacutereacuteseau public
Coupe-feu filtrage de paquetsCoupe-feu filtrage de paquets
Un coupe-feu est simplement une machine ou un logiciel qui arrecircte ou retire une partie de la circulation sur un reacuteseau
Il est habituellement placeacute sur la connexion entre le reacuteseau local et lrsquoInternet Le trafic de reacuteseau doit donc passer par celui-ci pour relier le reacuteseau local agrave lrsquoInternet
La maniegravere la plus simple drsquoutiliser un coupe-feu consiste agrave lui demander de couper toute communication qui tente de se connecter agrave une machine que vous ne voulez pas voir communiquer avec lrsquoexteacuterieur
Filtrage de paquets Filtrage de paquets commentcommentSouvenons-nous que les connexions TCP demandent que
des paquets speacuteciaux soient transmis et accepteacutes dans le but drsquoeacutetablir une connexion
Ces paquets sont faciles agrave reconnaicirctre car certains drapeaux (laquoflagsraquo) seront activeacutes Les paquets suivants pourront ecirctre associeacutes agrave une connexion eacutetablie preacuteceacutedemment
Le protocole UDP eacutetablit une communication sans ecirctre orienteacute connexion Un paquet est transmis en espeacuterant qursquoil se rende agrave destination LrsquoUDP est utiliseacute pour communiquer avec les serveurs DNS qui traduisent les adresses sous une forme lisible en adresses IP
Le coupe-feu peut tout simplement eacuteliminer les paquets eacutetablissant une connexion TCP sur une machine locale et tout le trafic UDP Ceci est nommeacute filtrage simple des paquets
Filtrage de paquets Filtrage de paquets commentcomment
Un coupe-feu par filtrage de paquets reacuteside tregraves bas dans la pile TCPIP au niveau Internet ou mecircme Reacuteseau Crsquoest la seule faccedilon de srsquoassurer que tout ce qui va du reacuteseau local ou vient de lrsquoInternet sera observeacute
Le filtrage des paquets peut ecirctre configureacute par une politique qui deacutetermine quels paquets seront bloqueacutes ou autoriseacutes
Il srsquoagit du coupe-feu original le plus simple et le plus facile agrave reacutealiser Il peut ecirctre tregraves sucircr car il peut bloquer toute la circulation Il est cependant neacutecessaire de permettre des accegraves ce qui rend possibles certaines attaques
Les limites du filtrage de Les limites du filtrage de paquetspaquetsEacutevidemment toutes les connexions ne peuvent ecirctre
eacutelimineacutees les serveurs Web et de courriel doivent bien ecirctre autoriseacutes agrave communiquer (ils ont besoin entre autres choses
de communiquer avec le serveur DNS via UDP)Nous pouvons deacuteplacer ce serveur Nous pouvons deacuteplacer ce serveur agrave lrsquoexteacuterieur mais comment alors agrave lrsquoexteacuterieur mais comment alors
le mettre agrave jourle mettre agrave jour
Nous pouvons deacuteplacer ce serveur Nous pouvons deacuteplacer ce serveur agrave lrsquoexteacuterieur mais comment alors agrave lrsquoexteacuterieur mais comment alors
le mettre agrave jourle mettre agrave jour
La bonne nouvelle est que toutes les La bonne nouvelle est que toutes les attaques devront passer par ce attaques devront passer par ce serveur si le filtrage est strict serveur si le filtrage est strict
La bonne nouvelle est que toutes les La bonne nouvelle est que toutes les attaques devront passer par ce attaques devront passer par ce serveur si le filtrage est strict serveur si le filtrage est strict
pourrait ecirctre possible si le pourrait ecirctre possible si le filtrage est trop lacircchefiltrage est trop lacircche
pourrait ecirctre possible si le pourrait ecirctre possible si le filtrage est trop lacircchefiltrage est trop lacircche
DMZ (laquoDemilitarized zoneraquo) une zone laquodeacutemilitariseacuteeraquo entre lrsquoInternet et le reacuteseau interne dans laquelle on peut placer les serveurs WEB accessibles depuis lrsquoexteacuterieur La zone est munie drsquoun coupe-feu pour cette tacircche Les coupe-feu peuvent avoir une sortie DMZ pour le serveur Web
Politiques de filtragePolitiques de filtrageSouvenons-nous que les paquets contiennent les informations suivantes
les donneacutees
lrsquoadresse IP drsquoorigine et de destination (incluant le port de destination)
lrsquoinformation sur le protocole par lequel ils doivent ecirctre manipuleacutes
lrsquoinformation sur des erreurs eacuteventuelles et
de lrsquoinformation sur le type de donneacutees en transit
Un politique de filtrage eacutenonce une liste drsquoautorisations et drsquointerdictions des types
autoriseinterdit les paquets selon lrsquoadresse IP drsquooriginedestination
autoriseinterdit les paquets selon leur port de destination
autoriseinterdit les paquets selon le protocole
Conclusion Conclusion (filtrage de paquets)(filtrage de paquets)
Pour ecirctre complegravetement sucircr le filtrage de paquets doit ecirctre tregraves restrictif ce qui peut trop limiter lrsquoaccegraves au reacuteseau
Si le filtrage est plus lacircche alors il pourrait devenir possible agrave lrsquoadversaire de communiquer avec des machines du reacuteseau local
Ceci demande agrave lrsquoadversaire de tenter beaucoup drsquoadresses IP jusqursquoagrave ce qursquoune machine reacuteponde
En conclusion les coupe-feu devraient faire quelque chose de plus intelligent que le simple filtrage
Ils doivent examiner les paquets en deacutetail pour deacutecider quoi faire avec ceux-ci Ils devraient mecircme ecirctre capables de modifier des paquets si neacutecessaire
Coupe-feu proxyCoupe-feu proxyLes proxy (laquoserveurs mandatairesraquo) permettent de faire du filtrage intelligent Il ne permet aucune connexion sur une machine locale agrave partir de lrsquoexteacuterieur
Le proxy gegravere toutes les connexions au nom des machines de reacuteseau local
Si une machine locale a un logiciel qui deacutesire acceacuteder agrave lrsquoInternet alors celui-ci devra ecirctre configureacute pour communiquer avec le coupe-feu agrave la place Le coupe-feu eacutetablira alors la connexion
Vu de lrsquoexteacuterieur le reacuteseau local est complegravetement cacheacute derriegravere le coupe-feu Seul celui-ci est visible
Essayer plusieurs adresses IP pour espeacuterer une reacuteponse ne fonctionne pas ici
Une attaque doit srsquoen prendre au proxy Une machine est plus facile agrave proteacuteger que plusieurs
Proxy en imagesProxy en imagesLe proxy comme une zone tampon entre
lrsquoInternet et un reacuteseau local
Pendant une connexion internet
Cacher votre adresse Cacher votre adresse IPIPVotre adresse IP reacutevegravele votre point drsquoentreacutee sur lrsquoInternet
Peut permettre de retrouver votre fournisseur le reacuteseau de votre employeur votre eacutecole ou votre terminal public
Il srsquoagit de lrsquoidentiteacute de votre machine pendant que vous ecirctes en ligne Sa porte sur le monde
Vous pouvez dissimuler votre adresse IP sur le Web en utilisant un serveur proxy anonyme
Un serveur proxy speacutecialiseacute pour la navigation Web anonyme utilise sa propre adresse IP agrave la place de la vocirctre pour chaque requecircte sortante
Il peut mecircme chiffrer les communications Web ne permettant plus la surveillance de vos actions
Proxy pour et contre Proxy pour et contre
Un proxy permet de proteacuteger un reacuteseau local drsquoune faccedilon tregraves efficace Un seul point faible neacutecessite notre attention
Cette solution nrsquoest pas tregraves flexible Les logiciels clients des machines locales doivent savoir comment utiliser un proxy Sinon rien ne fonctionnera puisque celles-ci sont invisibles
Nous pourrions peut-ecirctre faire croire au client que le service est donneacute par le coupe-feu mais celui-ci doit savoir quoi faire pour acheminer la connexion vers sa destination Ceci demande de configurer chaque type de connexion
Exemple de Proxy TorExemple de Proxy Tor
Coupe-feu dynamique Coupe-feu dynamique (laquostateful firewallraquo)(laquostateful firewallraquo)
Nous avons vu que les coupe-feu statiques agrave filtrage de paquets interviennent en fonction de paquets individuels
Un serveur FTP va ouvrir des connexions sur des ports de hautes valeurs Le filtrage de paquets ne peut pas savoir qursquoune connexion sur le port 6783 appartient agrave une connexion FTP leacutegitime Ces paquets seront eacutelimineacutes
Le coupe-feu dynamique reacutesout ce problegraveme en meacutemorisant les connexions ouvertes par des connexions leacutegitimes
Il est aussi possible de transformer lrsquoadresse IP drsquoune machine locale par quelque chose de diffeacuterent Le coupe-feu agrave mascarade permet drsquoeacuteviter les attaques qui consistent agrave essayer des adresses IP dans le but drsquoobtenir une reacuteponse
Le coupe-feu peut ecirctre configureacute pour eacuteliminer les connexions qui font des trucs bizarres comme la transmission drsquoune chaicircne trop longue
Toujours la pile TCPIPToujours la pile TCPIP
Champs du protocole Champs du protocole IPIP
Champs utiles pour le protocole IP
Le protocole IP fonctionne agrave partir de segments
Protocole UDPProtocole UDP(ses champs utiles)(ses champs utiles)
Champs utiles pour le protocole UDP
Protocole TCPProtocole TCP(ses champs utiles)(ses champs utiles)
Champs utiles pour le protocole TCP
Port de lrsquoapplication Port de lrsquoapplication en cours sur la en cours sur la machine sourcemachine source
Port de lrsquoapplication Port de lrsquoapplication sur la machine sur la machine
destinationdestination
Le numeacutero drsquoordre du Le numeacutero drsquoordre du prochain segment (IP) prochain segment (IP)
attenduattendu
URG paquet agrave traiter de faccedilon urgenteACK paquet est un accuseacute de reacuteceptionPSH paquet fonctionne selon la meacutethode push
RST connexion reacuteinitialiseacuteeSYN indique une demande drsquoeacutetablissement de connexionFIN indique une interruption de connexion
Le numeacutero drsquoordre du segment (IP) Le numeacutero drsquoordre du segment (IP) courant si SYN=0 et le numeacutero drsquoordre courant si SYN=0 et le numeacutero drsquoordre
initial pour synchroniser les nos de initial pour synchroniser les nos de seacutequence (ISN)seacutequence (ISN)
DrapeauxDrapeaux
Filtrage extrecircmeFiltrage extrecircmeTCP est orienteacute connexion Pour en eacutetablir une de A vers B on doit transmettre SYN=1 dans le premier paquet de lrsquoeacutetablissement de connexion agrave trois eacutetapes (laquothree-way handshakeraquo)
Un filtrage simple consiste agrave laisser tomber tous les paquets qui ne contiennent que le drapeau SYN=1
Il devient impossible drsquoeacutetablir une connexion TCP de lrsquoexteacuterieur du mur
Si en plus les paquets UDP sont eacutelimineacutes alors la situation devrait ecirctre tregraves sucircre
Cette politique ne permet pas de se connecter au serveur Web cependant
Activer le serveur Web Activer le serveur Web et accegraves agrave un DNSet accegraves agrave un DNS
Pour donner accegraves au serveur Web nous pourrions faire la chose suivante
Nous autorisons une exception agrave la regravegle preacuteceacutedente
Nous autorisons les paquets SYN=1 pour le serveur Web sur le port 80 (port http)
Nous voudrions aussi permettre lrsquoaccegraves agrave un serveur DNS pour la conversion drsquoadresse comme httpwwwiroumontrealca en 13220424179
Il suffit de laisser les paquets UDP vers et depuis au moins un serveur DNS sur le port 53 (UDP)
Le reacutesultatLe reacutesultat
Si le pirate trouve une faille sur le serveur Web alors il pourrait attaquer le reacuteseau local
Pour eacuteviter ceci il faut seacuteparer le serveur Web des autresLe filtrage par paquets est insuffisant
Deux filtres valent mieux Deux filtres valent mieux qursquounqursquoun
ProxyProxyIl y a drsquoautres services sur lrsquoInternet qui utilisent le protocole UDP flux de donneacutees videacuteo jeux videacuteo
De plus excepteacute pour les paquets SYN=1 il est possible de transmettre des paquets TCP aux ordinateurs du reacuteseau local
Le proxy peut rendre les machines du reacuteseau local invisibles pas le filtrage simple de paquets
Approche proxyApproche proxy
Coupe-feu Coupe-feu dynamiquesdynamiques
Les proxys ne sont pas tregraves flexibles Les coupe-feu dynamiques permettent drsquoutiliser les logiciels drsquoune faccedilon plus transparente
Il srsquoagit drsquoun filtre avanceacute qui permet de veacuterifier que les paquets appartiennent agrave une connexion deacutejagrave eacutetablie Crsquoest seulement lorsque crsquoest le cas que le paquet peut passer
Parce qursquoil est conscient drsquoune connexion il peut appliquer NAT etou PAT
NAT Dynamique (laquoDynamic Network Address Translationraquo) Le coupe-feu traduit les adresses du reacuteseau Toutes les machines du reacuteseau possegravedent vu de lrsquoexteacuterieur la mecircme adresse IP
PAT (laquoPort Address Translationraquo) Le coupe-feu traduit les numeacuteros de port par lesquels les paquets arrivent sur les hocirctes locaux
Ces coupe-feu sont appeleacutes coupe-feu avec mascarade
NAT a eacuteteacute mis au point agrave NAT a eacuteteacute mis au point agrave lrsquoorigine pour reacutepondre agrave la lrsquoorigine pour reacutepondre agrave la
peacutenurie drsquoadresses IP avec le peacutenurie drsquoadresses IP avec le protocole IPv4protocole IPv4
NAT a eacuteteacute mis au point agrave NAT a eacuteteacute mis au point agrave lrsquoorigine pour reacutepondre agrave la lrsquoorigine pour reacutepondre agrave la
peacutenurie drsquoadresses IP avec le peacutenurie drsquoadresses IP avec le protocole IPv4protocole IPv4
Coupe-feu agrave Coupe-feu agrave mascarademascarade
Filtrage dynamique eacutetenduFiltrage dynamique eacutetenduLe filtrage des coupe-feu dynamiques nrsquoest pas limiteacute aux protocoles TCPIP
Pour des applications usuelles le filtrage peut srsquoappliquer au protocole
Le coupe-feu peut ainsi deacutetecter des comportements inhabituels
Peut aussi filtrer certaines parties des donneacutees transmises
Pour le protocole HTTP le filtre peut supprimer les applications Java
Pour le protocole SMTP le filtre peut supprimer les piegraveces jointes drsquoun certain type
Conclusion sur les coupe-Conclusion sur les coupe-feufeu
Les coupe-feu permettent de filtrer le trafic entre le reacuteseau local et lrsquoInternet en nrsquoadministrant qursquoune seule machine
Les coupe-feu ne sont cependant pas une solution magique pour reacutesoudre les problegravemes causeacutes par les attaques exteacuterieures agrave un reacuteseau local
Les coupe-feu pour un seul ordinateur personnel peuvent offrir une solution sans trop drsquoentretien
Les coupe-feu neacutecessitent des mises agrave jour freacutequentes lorsque le reacuteseau local est de bonne taille Lorsque le reacuteseau local change la configuration du coupe-feu doit aussi changer
Penser que lrsquoinstallation drsquoun coupe-feu rend votre reacuteseau sucircr est un peu de la penseacutee magique (neacutecessaire mais pas suffisant)
Logiciels malveillantsLogiciels malveillantsUn adversaire peut une fois passeacute le coupe-feu et les autres deacutefenses vouloir installer un programme malveillant sur la machine locale Ceux-ci sont de trois types
Chevaux de Troie Programme qui semble tout agrave fait utile mais qui cache une fonction malveillante Par exemple donne accegraves agrave des donneacutees priveacutees donne des droits drsquoaccegraves non autoriseacutes ou deacutetruit des donneacutees
Virus Programme qui infecte un autre programme sur votre ordinateur Agrave partir du programme infecteacute le virus se propage vers drsquoautres programmes Apregraves un certain temps ou eacuteveacutenement les virus peuvent entreprendre certaines actions Celles-ci peuvent ecirctre lrsquoeacutelimination de fichiers la deacuteteacuterioration de fonctions du systegraveme drsquoexploitation etc
Vers Programmes qui infectent un ordinateur sans avoir agrave ecirctre heacutebergeacutes par drsquoautres programmes Ils sont des programmes indeacutependants Ils se multiplient en exploitant diffeacuterentes ressources Les objectifs de ces programmes peuvent ecirctre lrsquoespionnage lrsquoouverture de portes deacuterobeacutees eacutemettre des requecirctes vers un site Internet jusqursquoagrave saturation
ExempleExempleI Love You Un ver lanceacute en 2000 et qui a atteint 31 millions de machines en 4 jours
Infection Le ver eacutetait dissimuleacute en piegravece jointe drsquoun courriel Cette piegravece jointe eacutetait preacutesenteacutee comme Love-Letter-for-youtxtvbs Lrsquoextension vbs indique que le fichier est un script Visual Basic Comme lrsquoextension nrsquoapparaicirct pas sur Windows les utilisateurs voyaient la piegravece jointe comme Love-Letter-for-youtxt Objectif Le script lisait la liste des contacts de lrsquoutilisateur pour envoyer ce mecircme message agrave ceux-ci La plate-forme Windows eacutetait viseacutee Des fichiers eacutetaient deacutetruits et remplaceacutes par ce script Il changeait la page drsquoaccueil drsquoInternet Explorer pour teacuteleacutecharger un cheval de Troie
ExempleExempleCode Red Un ver qui a infecteacute 359 000 ordinateurs en moins de 14 heures le 19 juillet 2001
Infections Le ver se multipliait en essayant des adresses IP aleacuteatoires pour ensuite infecter des serveurs qui faisaient tourner Microsoft IIS avec une faille de seacutecuriteacute
Objectif Monter une attaque par deacuteni de service (DOS) contre la Maison-Blanche
Lrsquoattaque a eacuteteacute facile agrave repousser car le ver veacuterifiait avant de lancer lrsquoattaque que le serveur agrave lrsquoadresse IP (au lieu du nom de domaine) de la Maison-Blanche eacutecoutait le port 80 (le port des serveurs Web) En changeant lrsquoadresse IP de la Maison-Blanche lrsquoattaque a eacuteteacute repousseacutee
ExempleExempleCabir Est un virusver (deacutemonstration de faisabiliteacute laquoproof of conceptraquo) qui srsquoattaque agrave la teacuteleacutephonie mobile Crsquoest un fichier de 15 ko nommeacute CARIBESIS
Infection Se propage par la teacuteleacutephonie mobile gracircce agrave la technologie Bluetooth et le systegraveme drsquoexploitation Symbian OS
Action Agrave chaque fois que le teacuteleacutephone infecteacute est ouvert le mot laquoCariberaquo srsquoaffiche Il tente de se propager aux peacuteripheacuteriques BlueTooth de la zone du teacuteleacutephone infecteacute Il nrsquoest pas meacutechant nrsquoavait pour but que de deacutemontrer la faisabiliteacute
AntivirusAntivirusLes antivirus sont des programmes qui deacutetectent les virus les vers et les chevaux de Troie sur votre ordinateur Ils les eacuteliminent
Ils visitent les fichiers sur votre disque dans le but de trouver des bouts de programmes reconnus comme dangereux
Ceci est possible eacutetant donneacute une base de donneacutees agrave jour contenant les virus connus sous la forme de signatures de virus Une signature est un motif (laquopatternraquo) qui caracteacuterise un virus donneacute
Un antivirus nrsquoest efficace que si sa base de donneacutees est mise agrave jour constamment Les compagnies drsquoantivirus vont vite pour mettre agrave jour leur base de donneacutees lorsqursquoun nouveau virus est identifieacute
Malheureusement les utilisateurs tardent agrave mettre leur copie agrave jour causant bien des infections
Tromper les antivirusTromper les antivirusDe nouveaux virus utilisent les meacutethodes de la cryptographie pour deacutejouer les antivirus
Des virus sont chiffreacutes pour les rendre non reconnaissables par les antivirus car ils ont toujours un aspect diffeacuterent
Ces virus ont un petit code en clair qui permet de les deacutecoder et de les charger en meacutemoire pour ecirctre exeacutecuteacutes Ce code est ce que les antivirus doivent deacutetecter
Ces virus sont de trois types
Oligomorphique Le virus est chiffreacute agrave chaque reacuteplication
Polymorphique Le virus est chiffreacute et la routine de deacutechiffrement est capable de changer certaines de ses instructions au fil des reacuteplications
Meacutetamorphique Le virus change de forme au fil des reacuteplications
IntrusionsIntrusionsPour qursquoun virus ver ou cheval de Troie soit deacuteleacutetegravere encore faut-il qursquoil srsquoinstalle sur votre machine
Mecircme si un adversaire peut parler agrave votre machine ceci nrsquoimplique pas qursquoil peut installer un logiciel sur celle-ci encore moins srsquoil nrsquoen est pas un utilisateur
Pour ce faire les adversaires peuvent essayer diverses strateacutegies
Faiblesses du systegraveme drsquoexploitation ou du logiciel du serveur Nous allons voir un exemple de ce type drsquoattaque attaques par deacutebordement Une page Web nrsquoest pas un objet passif Elle peut contenir du code (JavaScript Perl etc) malveillant
Tromper lrsquoutilisateur Crsquoest peut-ecirctre plus simple Cas speacutecial du piratage psychologique Cliquer ici pour installer un joli logiciel il faut espeacuterer que lrsquoantivirus deacutetecte ceci avant qursquoil ne soit trop tard
Deacutetecter les intrusionsDeacutetecter les intrusionsUne faccedilon diffeacuterente de deacutetecter les logiciels ou utilisateurs malveillants consiste agrave deacutetecter les comportements malveillants
Un systegraveme peut surveiller les processus pour deacutetecter les comportements malveillants
Une telle approche a lrsquoavantage de ne pas deacutependre drsquoinformation sur les virus et les attaques
Un coupe-feu dynamique est un exemple de cette approche
Il surveille les connexions et tente de deacuteterminer si un client transmet des donneacutees agrave contenu suspect (comme la taille)
Requecirctes Requecirctes malveillantesmalveillantes
dlkjfdsflkjsd dlkjfdsflkjsd fjdskl gfjdlskewqewewewewhdfbfbfbww fjdskl gfjdlskewqewewewewhdfbfbfbww jaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfjaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfwewqewqewqewqewqewqeweekjwweeqqqsxcswdswewqewqewqewqewqewqeweekjwweeqqqsxcswdsdddds dddds ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqqwwq qwwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewqeweekwqwqwefdscxcccj qeweekwqwqwefdscxcccj ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxzcwq zcwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfssaDSADSADSsfghdskjgfhdsgfihoiehjrfssaDSADSADSADDSDSDSSDSDSADDSDSDSSDSDSIl arrive que de longues requecirctes puissent faire planter un systegraveme
mal programmeacute Un adversaire peut donc soumettre des chaicircnes tregraves longues dans le but de rendre le systegraveme inopeacuterant (ou mecircme pire assujetti) comme nous le verrons plus loin
Et agrave peu pregraves nrsquoimporte qui Et agrave peu pregraves nrsquoimporte qui peut proposer un service peut proposer un service
comme celui-ci comme celui-ci
Un coupe-feu peut filtrer les requecirctes anormalement longues pour les ignorer Mecircme les systegravemes avec programmes erroneacutes seront agrave lrsquoabri de ce type drsquoattaque
SELECT SELECT FROM Passwords FROM Passwords WHERE user=rsquoWHERE user=rsquoJugheadJugheadrsquo AND password=rsquorsquo AND password=rsquoxrsquo xrsquo OR lsquo1rsquo=lsquo1OR lsquo1rsquo=lsquo1rsquorsquo
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Requecirctes Requecirctes malveillantesmalveillantes
HTTPSHTTPS
Password Password xrsquo OR xrsquo OR lsquo1rsquo=rsquo1lsquo1rsquo=rsquo1
Un coupe-feu dynamique peut filtrer des requecirctes bizarres comme xrsquo OR lsquo1rsquo=rsquo1xrsquo OR lsquo1rsquo=rsquo1
Ceci est beaucoup plus difficile agrave Ceci est beaucoup plus difficile agrave reacutealiser par un coupe-feu que reacutealiser par un coupe-feu que
lrsquoexemple preacuteceacutedentlrsquoexemple preacuteceacutedent
Approche Approche comportementalecomportementaleUne autre approche pour la deacutetection drsquointrusions consiste agrave
observer certains aspects du comportement des utilisateurs et programmes
activiteacutes de connexion et de session
activiteacutes relieacutees agrave lrsquoexeacutecution de programme et drsquoaccegraves aux fichiers
Il y a deux approches pour la deacutetection de comportements suspects
Par regravegles (rule-based) Un ensemble de regravegles deacutecrivant les comportements normaux est eacutetabli Les comportements anormaux (trop loin des normaux) sont rejeteacutes
Statistique Des statistiques sur les utilisateurs normaux sont creacuteeacutees Le comportement de lrsquoutilisateurprogramme observeacute est compareacute aux statistiques Un comportement montrant un trop grand eacutecart avec les statistiques est rejeteacute
Problegravemes avec les Problegravemes avec les systegravemes de deacutetection systegravemes de deacutetection
drsquointrusion (IDS)drsquointrusion (IDS)Le problegraveme majeur avec lrsquoapproche est le mecircme qursquoavec la biomeacutetrie Le systegraveme qui surveille doit ecirctre assez toleacuterant pour autoriser les comportements normaux mais suffisamment restrictif pour attraper les acteurs malveillants
Ce problegraveme nrsquoest pas tregraves bien compris et les solutions proposeacutees ne sont pas tout agrave fait satisfaisantes
La deacutetection drsquointrusion est bien inutile si le systegraveme ne reacuteagit pas de la bonne faccedilon lorsqursquoune intrusion est deacutetecteacutee La partie du systegraveme qui alerte lrsquoadministrateur qui interdit lrsquoaccegraves qui effectue quelque autre tacircche pour eacuteliminer la menace est tout aussi importante que celle qui deacutetecte
Le pot de mielLe pot de miel
Le pot de miel (laquohoney potraquo) est un truc pratique pour la deacutetection drsquointrusions
Une ressource bidon qui semble inteacuteressante pour un adversaire est creacuteeacutee
Puisque celle-ci est bidon on peut supposer que si quelqursquoun y accegravede crsquoest qursquoil srsquoadonne agrave une activiteacute malveillante
En consultant les traces il peut ecirctre possible de retrouver lrsquoutilisateur malveillant
Ceci peut se faire agrave lrsquoinsu de lrsquointrus
ExempleExemple
Un hocircpital ameacutericain soupccedilonnait que quelqursquoun consultait les dossiers de patients sans en avoir lrsquoautorisation
Ils ont creacuteeacute des fichiers pour des patients qui nrsquoexistent pas
Les accegraves agrave ces fichiers ont alors eacuteteacute retraceacutes jusqursquoagrave lrsquoutilisateur malveillant
Les attaques de lrsquointeacuterieurLes attaques de lrsquointeacuterieurPresque tout ce que nous avons vu a pour but la protection contre les attaques venues de lrsquoexteacuterieur
Les attaques peuvent tregraves bien eacutemaner de lrsquointeacuterieur et peuvent causer des problegravemes seacuterieux
Le premiegravere chose agrave comprendre est qursquoil nrsquoest pas possible de se preacutemunir contre ces attaques si les utilisateurs ont tous les droits sur le systegraveme cible
Il est donc neacutecessaire qursquoune partie du systegraveme soit garantie de fonctionner selon ses speacutecifications mecircme sous attaque
Sans cette hypothegravese le systegraveme est sous le controcircle complet de lrsquoadversaire
Base informatique Base informatique seacutecuriseacuteeseacutecuriseacutee
laquotrusted computing baseraquo (TCB)laquotrusted computing baseraquo (TCB)
Une base seacutecuriseacutee peut ecirctre eacutetablie en utilisant de la seacutecuriteacute mateacuterielle logicielle par mot de passe par exemple
Le rocircle de ce systegraveme de base est de controcircler lrsquoaccegraves aux ressources et le flux drsquoinformation sur celui-ci
Pour bien comprendre comment ces protections fonctionnent nous devons mettre de lrsquoordre dans nos ideacutees Nous devons voir agrave quoi ressemble une politique de seacutecuriteacute dans ce sceacutenario
Crsquoest notre prochain sujet
Coupe-feuCoupe-feuUn coupe-feu permet de couper lrsquoaccegraves agrave un reacuteseau local Crsquoest le seul point drsquoaccegraves agrave un reacuteseau local agrave partir de lrsquoexteacuterieur
Les techniques que nous avons vues jusqursquoagrave maintenant ne permettent pas drsquoeacuteviter de communiquer avec des adversaires
Mecircme si nous insistons pour faire un eacutechange de cleacute authentifieacute avec quelqursquoun une certaine quantiteacute drsquoinformation eacutechangeacutee avec des adversaires potentiels ne peut ecirctre eacuteviteacutee
Ceci pourrait permettre agrave lrsquoadversaire de pirater un ordinateur en utilisant une attaque par deacutebordement de tampon
Le concept du coupe-feu Lrsquoadversaire ne peut attaquer un ordinateur avec lequel il ne communique pas
Lrsquoaspect drsquoun coupe-feuLrsquoaspect drsquoun coupe-feu
coupe-feu
reacuteseau local (LAN)
LAN priveacutereacuteseau public
Coupe-feu filtrage de paquetsCoupe-feu filtrage de paquets
Un coupe-feu est simplement une machine ou un logiciel qui arrecircte ou retire une partie de la circulation sur un reacuteseau
Il est habituellement placeacute sur la connexion entre le reacuteseau local et lrsquoInternet Le trafic de reacuteseau doit donc passer par celui-ci pour relier le reacuteseau local agrave lrsquoInternet
La maniegravere la plus simple drsquoutiliser un coupe-feu consiste agrave lui demander de couper toute communication qui tente de se connecter agrave une machine que vous ne voulez pas voir communiquer avec lrsquoexteacuterieur
Filtrage de paquets Filtrage de paquets commentcommentSouvenons-nous que les connexions TCP demandent que
des paquets speacuteciaux soient transmis et accepteacutes dans le but drsquoeacutetablir une connexion
Ces paquets sont faciles agrave reconnaicirctre car certains drapeaux (laquoflagsraquo) seront activeacutes Les paquets suivants pourront ecirctre associeacutes agrave une connexion eacutetablie preacuteceacutedemment
Le protocole UDP eacutetablit une communication sans ecirctre orienteacute connexion Un paquet est transmis en espeacuterant qursquoil se rende agrave destination LrsquoUDP est utiliseacute pour communiquer avec les serveurs DNS qui traduisent les adresses sous une forme lisible en adresses IP
Le coupe-feu peut tout simplement eacuteliminer les paquets eacutetablissant une connexion TCP sur une machine locale et tout le trafic UDP Ceci est nommeacute filtrage simple des paquets
Filtrage de paquets Filtrage de paquets commentcomment
Un coupe-feu par filtrage de paquets reacuteside tregraves bas dans la pile TCPIP au niveau Internet ou mecircme Reacuteseau Crsquoest la seule faccedilon de srsquoassurer que tout ce qui va du reacuteseau local ou vient de lrsquoInternet sera observeacute
Le filtrage des paquets peut ecirctre configureacute par une politique qui deacutetermine quels paquets seront bloqueacutes ou autoriseacutes
Il srsquoagit du coupe-feu original le plus simple et le plus facile agrave reacutealiser Il peut ecirctre tregraves sucircr car il peut bloquer toute la circulation Il est cependant neacutecessaire de permettre des accegraves ce qui rend possibles certaines attaques
Les limites du filtrage de Les limites du filtrage de paquetspaquetsEacutevidemment toutes les connexions ne peuvent ecirctre
eacutelimineacutees les serveurs Web et de courriel doivent bien ecirctre autoriseacutes agrave communiquer (ils ont besoin entre autres choses
de communiquer avec le serveur DNS via UDP)Nous pouvons deacuteplacer ce serveur Nous pouvons deacuteplacer ce serveur agrave lrsquoexteacuterieur mais comment alors agrave lrsquoexteacuterieur mais comment alors
le mettre agrave jourle mettre agrave jour
Nous pouvons deacuteplacer ce serveur Nous pouvons deacuteplacer ce serveur agrave lrsquoexteacuterieur mais comment alors agrave lrsquoexteacuterieur mais comment alors
le mettre agrave jourle mettre agrave jour
La bonne nouvelle est que toutes les La bonne nouvelle est que toutes les attaques devront passer par ce attaques devront passer par ce serveur si le filtrage est strict serveur si le filtrage est strict
La bonne nouvelle est que toutes les La bonne nouvelle est que toutes les attaques devront passer par ce attaques devront passer par ce serveur si le filtrage est strict serveur si le filtrage est strict
pourrait ecirctre possible si le pourrait ecirctre possible si le filtrage est trop lacircchefiltrage est trop lacircche
pourrait ecirctre possible si le pourrait ecirctre possible si le filtrage est trop lacircchefiltrage est trop lacircche
DMZ (laquoDemilitarized zoneraquo) une zone laquodeacutemilitariseacuteeraquo entre lrsquoInternet et le reacuteseau interne dans laquelle on peut placer les serveurs WEB accessibles depuis lrsquoexteacuterieur La zone est munie drsquoun coupe-feu pour cette tacircche Les coupe-feu peuvent avoir une sortie DMZ pour le serveur Web
Politiques de filtragePolitiques de filtrageSouvenons-nous que les paquets contiennent les informations suivantes
les donneacutees
lrsquoadresse IP drsquoorigine et de destination (incluant le port de destination)
lrsquoinformation sur le protocole par lequel ils doivent ecirctre manipuleacutes
lrsquoinformation sur des erreurs eacuteventuelles et
de lrsquoinformation sur le type de donneacutees en transit
Un politique de filtrage eacutenonce une liste drsquoautorisations et drsquointerdictions des types
autoriseinterdit les paquets selon lrsquoadresse IP drsquooriginedestination
autoriseinterdit les paquets selon leur port de destination
autoriseinterdit les paquets selon le protocole
Conclusion Conclusion (filtrage de paquets)(filtrage de paquets)
Pour ecirctre complegravetement sucircr le filtrage de paquets doit ecirctre tregraves restrictif ce qui peut trop limiter lrsquoaccegraves au reacuteseau
Si le filtrage est plus lacircche alors il pourrait devenir possible agrave lrsquoadversaire de communiquer avec des machines du reacuteseau local
Ceci demande agrave lrsquoadversaire de tenter beaucoup drsquoadresses IP jusqursquoagrave ce qursquoune machine reacuteponde
En conclusion les coupe-feu devraient faire quelque chose de plus intelligent que le simple filtrage
Ils doivent examiner les paquets en deacutetail pour deacutecider quoi faire avec ceux-ci Ils devraient mecircme ecirctre capables de modifier des paquets si neacutecessaire
Coupe-feu proxyCoupe-feu proxyLes proxy (laquoserveurs mandatairesraquo) permettent de faire du filtrage intelligent Il ne permet aucune connexion sur une machine locale agrave partir de lrsquoexteacuterieur
Le proxy gegravere toutes les connexions au nom des machines de reacuteseau local
Si une machine locale a un logiciel qui deacutesire acceacuteder agrave lrsquoInternet alors celui-ci devra ecirctre configureacute pour communiquer avec le coupe-feu agrave la place Le coupe-feu eacutetablira alors la connexion
Vu de lrsquoexteacuterieur le reacuteseau local est complegravetement cacheacute derriegravere le coupe-feu Seul celui-ci est visible
Essayer plusieurs adresses IP pour espeacuterer une reacuteponse ne fonctionne pas ici
Une attaque doit srsquoen prendre au proxy Une machine est plus facile agrave proteacuteger que plusieurs
Proxy en imagesProxy en imagesLe proxy comme une zone tampon entre
lrsquoInternet et un reacuteseau local
Pendant une connexion internet
Cacher votre adresse Cacher votre adresse IPIPVotre adresse IP reacutevegravele votre point drsquoentreacutee sur lrsquoInternet
Peut permettre de retrouver votre fournisseur le reacuteseau de votre employeur votre eacutecole ou votre terminal public
Il srsquoagit de lrsquoidentiteacute de votre machine pendant que vous ecirctes en ligne Sa porte sur le monde
Vous pouvez dissimuler votre adresse IP sur le Web en utilisant un serveur proxy anonyme
Un serveur proxy speacutecialiseacute pour la navigation Web anonyme utilise sa propre adresse IP agrave la place de la vocirctre pour chaque requecircte sortante
Il peut mecircme chiffrer les communications Web ne permettant plus la surveillance de vos actions
Proxy pour et contre Proxy pour et contre
Un proxy permet de proteacuteger un reacuteseau local drsquoune faccedilon tregraves efficace Un seul point faible neacutecessite notre attention
Cette solution nrsquoest pas tregraves flexible Les logiciels clients des machines locales doivent savoir comment utiliser un proxy Sinon rien ne fonctionnera puisque celles-ci sont invisibles
Nous pourrions peut-ecirctre faire croire au client que le service est donneacute par le coupe-feu mais celui-ci doit savoir quoi faire pour acheminer la connexion vers sa destination Ceci demande de configurer chaque type de connexion
Exemple de Proxy TorExemple de Proxy Tor
Coupe-feu dynamique Coupe-feu dynamique (laquostateful firewallraquo)(laquostateful firewallraquo)
Nous avons vu que les coupe-feu statiques agrave filtrage de paquets interviennent en fonction de paquets individuels
Un serveur FTP va ouvrir des connexions sur des ports de hautes valeurs Le filtrage de paquets ne peut pas savoir qursquoune connexion sur le port 6783 appartient agrave une connexion FTP leacutegitime Ces paquets seront eacutelimineacutes
Le coupe-feu dynamique reacutesout ce problegraveme en meacutemorisant les connexions ouvertes par des connexions leacutegitimes
Il est aussi possible de transformer lrsquoadresse IP drsquoune machine locale par quelque chose de diffeacuterent Le coupe-feu agrave mascarade permet drsquoeacuteviter les attaques qui consistent agrave essayer des adresses IP dans le but drsquoobtenir une reacuteponse
Le coupe-feu peut ecirctre configureacute pour eacuteliminer les connexions qui font des trucs bizarres comme la transmission drsquoune chaicircne trop longue
Toujours la pile TCPIPToujours la pile TCPIP
Champs du protocole Champs du protocole IPIP
Champs utiles pour le protocole IP
Le protocole IP fonctionne agrave partir de segments
Protocole UDPProtocole UDP(ses champs utiles)(ses champs utiles)
Champs utiles pour le protocole UDP
Protocole TCPProtocole TCP(ses champs utiles)(ses champs utiles)
Champs utiles pour le protocole TCP
Port de lrsquoapplication Port de lrsquoapplication en cours sur la en cours sur la machine sourcemachine source
Port de lrsquoapplication Port de lrsquoapplication sur la machine sur la machine
destinationdestination
Le numeacutero drsquoordre du Le numeacutero drsquoordre du prochain segment (IP) prochain segment (IP)
attenduattendu
URG paquet agrave traiter de faccedilon urgenteACK paquet est un accuseacute de reacuteceptionPSH paquet fonctionne selon la meacutethode push
RST connexion reacuteinitialiseacuteeSYN indique une demande drsquoeacutetablissement de connexionFIN indique une interruption de connexion
Le numeacutero drsquoordre du segment (IP) Le numeacutero drsquoordre du segment (IP) courant si SYN=0 et le numeacutero drsquoordre courant si SYN=0 et le numeacutero drsquoordre
initial pour synchroniser les nos de initial pour synchroniser les nos de seacutequence (ISN)seacutequence (ISN)
DrapeauxDrapeaux
Filtrage extrecircmeFiltrage extrecircmeTCP est orienteacute connexion Pour en eacutetablir une de A vers B on doit transmettre SYN=1 dans le premier paquet de lrsquoeacutetablissement de connexion agrave trois eacutetapes (laquothree-way handshakeraquo)
Un filtrage simple consiste agrave laisser tomber tous les paquets qui ne contiennent que le drapeau SYN=1
Il devient impossible drsquoeacutetablir une connexion TCP de lrsquoexteacuterieur du mur
Si en plus les paquets UDP sont eacutelimineacutes alors la situation devrait ecirctre tregraves sucircre
Cette politique ne permet pas de se connecter au serveur Web cependant
Activer le serveur Web Activer le serveur Web et accegraves agrave un DNSet accegraves agrave un DNS
Pour donner accegraves au serveur Web nous pourrions faire la chose suivante
Nous autorisons une exception agrave la regravegle preacuteceacutedente
Nous autorisons les paquets SYN=1 pour le serveur Web sur le port 80 (port http)
Nous voudrions aussi permettre lrsquoaccegraves agrave un serveur DNS pour la conversion drsquoadresse comme httpwwwiroumontrealca en 13220424179
Il suffit de laisser les paquets UDP vers et depuis au moins un serveur DNS sur le port 53 (UDP)
Le reacutesultatLe reacutesultat
Si le pirate trouve une faille sur le serveur Web alors il pourrait attaquer le reacuteseau local
Pour eacuteviter ceci il faut seacuteparer le serveur Web des autresLe filtrage par paquets est insuffisant
Deux filtres valent mieux Deux filtres valent mieux qursquounqursquoun
ProxyProxyIl y a drsquoautres services sur lrsquoInternet qui utilisent le protocole UDP flux de donneacutees videacuteo jeux videacuteo
De plus excepteacute pour les paquets SYN=1 il est possible de transmettre des paquets TCP aux ordinateurs du reacuteseau local
Le proxy peut rendre les machines du reacuteseau local invisibles pas le filtrage simple de paquets
Approche proxyApproche proxy
Coupe-feu Coupe-feu dynamiquesdynamiques
Les proxys ne sont pas tregraves flexibles Les coupe-feu dynamiques permettent drsquoutiliser les logiciels drsquoune faccedilon plus transparente
Il srsquoagit drsquoun filtre avanceacute qui permet de veacuterifier que les paquets appartiennent agrave une connexion deacutejagrave eacutetablie Crsquoest seulement lorsque crsquoest le cas que le paquet peut passer
Parce qursquoil est conscient drsquoune connexion il peut appliquer NAT etou PAT
NAT Dynamique (laquoDynamic Network Address Translationraquo) Le coupe-feu traduit les adresses du reacuteseau Toutes les machines du reacuteseau possegravedent vu de lrsquoexteacuterieur la mecircme adresse IP
PAT (laquoPort Address Translationraquo) Le coupe-feu traduit les numeacuteros de port par lesquels les paquets arrivent sur les hocirctes locaux
Ces coupe-feu sont appeleacutes coupe-feu avec mascarade
NAT a eacuteteacute mis au point agrave NAT a eacuteteacute mis au point agrave lrsquoorigine pour reacutepondre agrave la lrsquoorigine pour reacutepondre agrave la
peacutenurie drsquoadresses IP avec le peacutenurie drsquoadresses IP avec le protocole IPv4protocole IPv4
NAT a eacuteteacute mis au point agrave NAT a eacuteteacute mis au point agrave lrsquoorigine pour reacutepondre agrave la lrsquoorigine pour reacutepondre agrave la
peacutenurie drsquoadresses IP avec le peacutenurie drsquoadresses IP avec le protocole IPv4protocole IPv4
Coupe-feu agrave Coupe-feu agrave mascarademascarade
Filtrage dynamique eacutetenduFiltrage dynamique eacutetenduLe filtrage des coupe-feu dynamiques nrsquoest pas limiteacute aux protocoles TCPIP
Pour des applications usuelles le filtrage peut srsquoappliquer au protocole
Le coupe-feu peut ainsi deacutetecter des comportements inhabituels
Peut aussi filtrer certaines parties des donneacutees transmises
Pour le protocole HTTP le filtre peut supprimer les applications Java
Pour le protocole SMTP le filtre peut supprimer les piegraveces jointes drsquoun certain type
Conclusion sur les coupe-Conclusion sur les coupe-feufeu
Les coupe-feu permettent de filtrer le trafic entre le reacuteseau local et lrsquoInternet en nrsquoadministrant qursquoune seule machine
Les coupe-feu ne sont cependant pas une solution magique pour reacutesoudre les problegravemes causeacutes par les attaques exteacuterieures agrave un reacuteseau local
Les coupe-feu pour un seul ordinateur personnel peuvent offrir une solution sans trop drsquoentretien
Les coupe-feu neacutecessitent des mises agrave jour freacutequentes lorsque le reacuteseau local est de bonne taille Lorsque le reacuteseau local change la configuration du coupe-feu doit aussi changer
Penser que lrsquoinstallation drsquoun coupe-feu rend votre reacuteseau sucircr est un peu de la penseacutee magique (neacutecessaire mais pas suffisant)
Logiciels malveillantsLogiciels malveillantsUn adversaire peut une fois passeacute le coupe-feu et les autres deacutefenses vouloir installer un programme malveillant sur la machine locale Ceux-ci sont de trois types
Chevaux de Troie Programme qui semble tout agrave fait utile mais qui cache une fonction malveillante Par exemple donne accegraves agrave des donneacutees priveacutees donne des droits drsquoaccegraves non autoriseacutes ou deacutetruit des donneacutees
Virus Programme qui infecte un autre programme sur votre ordinateur Agrave partir du programme infecteacute le virus se propage vers drsquoautres programmes Apregraves un certain temps ou eacuteveacutenement les virus peuvent entreprendre certaines actions Celles-ci peuvent ecirctre lrsquoeacutelimination de fichiers la deacuteteacuterioration de fonctions du systegraveme drsquoexploitation etc
Vers Programmes qui infectent un ordinateur sans avoir agrave ecirctre heacutebergeacutes par drsquoautres programmes Ils sont des programmes indeacutependants Ils se multiplient en exploitant diffeacuterentes ressources Les objectifs de ces programmes peuvent ecirctre lrsquoespionnage lrsquoouverture de portes deacuterobeacutees eacutemettre des requecirctes vers un site Internet jusqursquoagrave saturation
ExempleExempleI Love You Un ver lanceacute en 2000 et qui a atteint 31 millions de machines en 4 jours
Infection Le ver eacutetait dissimuleacute en piegravece jointe drsquoun courriel Cette piegravece jointe eacutetait preacutesenteacutee comme Love-Letter-for-youtxtvbs Lrsquoextension vbs indique que le fichier est un script Visual Basic Comme lrsquoextension nrsquoapparaicirct pas sur Windows les utilisateurs voyaient la piegravece jointe comme Love-Letter-for-youtxt Objectif Le script lisait la liste des contacts de lrsquoutilisateur pour envoyer ce mecircme message agrave ceux-ci La plate-forme Windows eacutetait viseacutee Des fichiers eacutetaient deacutetruits et remplaceacutes par ce script Il changeait la page drsquoaccueil drsquoInternet Explorer pour teacuteleacutecharger un cheval de Troie
ExempleExempleCode Red Un ver qui a infecteacute 359 000 ordinateurs en moins de 14 heures le 19 juillet 2001
Infections Le ver se multipliait en essayant des adresses IP aleacuteatoires pour ensuite infecter des serveurs qui faisaient tourner Microsoft IIS avec une faille de seacutecuriteacute
Objectif Monter une attaque par deacuteni de service (DOS) contre la Maison-Blanche
Lrsquoattaque a eacuteteacute facile agrave repousser car le ver veacuterifiait avant de lancer lrsquoattaque que le serveur agrave lrsquoadresse IP (au lieu du nom de domaine) de la Maison-Blanche eacutecoutait le port 80 (le port des serveurs Web) En changeant lrsquoadresse IP de la Maison-Blanche lrsquoattaque a eacuteteacute repousseacutee
ExempleExempleCabir Est un virusver (deacutemonstration de faisabiliteacute laquoproof of conceptraquo) qui srsquoattaque agrave la teacuteleacutephonie mobile Crsquoest un fichier de 15 ko nommeacute CARIBESIS
Infection Se propage par la teacuteleacutephonie mobile gracircce agrave la technologie Bluetooth et le systegraveme drsquoexploitation Symbian OS
Action Agrave chaque fois que le teacuteleacutephone infecteacute est ouvert le mot laquoCariberaquo srsquoaffiche Il tente de se propager aux peacuteripheacuteriques BlueTooth de la zone du teacuteleacutephone infecteacute Il nrsquoest pas meacutechant nrsquoavait pour but que de deacutemontrer la faisabiliteacute
AntivirusAntivirusLes antivirus sont des programmes qui deacutetectent les virus les vers et les chevaux de Troie sur votre ordinateur Ils les eacuteliminent
Ils visitent les fichiers sur votre disque dans le but de trouver des bouts de programmes reconnus comme dangereux
Ceci est possible eacutetant donneacute une base de donneacutees agrave jour contenant les virus connus sous la forme de signatures de virus Une signature est un motif (laquopatternraquo) qui caracteacuterise un virus donneacute
Un antivirus nrsquoest efficace que si sa base de donneacutees est mise agrave jour constamment Les compagnies drsquoantivirus vont vite pour mettre agrave jour leur base de donneacutees lorsqursquoun nouveau virus est identifieacute
Malheureusement les utilisateurs tardent agrave mettre leur copie agrave jour causant bien des infections
Tromper les antivirusTromper les antivirusDe nouveaux virus utilisent les meacutethodes de la cryptographie pour deacutejouer les antivirus
Des virus sont chiffreacutes pour les rendre non reconnaissables par les antivirus car ils ont toujours un aspect diffeacuterent
Ces virus ont un petit code en clair qui permet de les deacutecoder et de les charger en meacutemoire pour ecirctre exeacutecuteacutes Ce code est ce que les antivirus doivent deacutetecter
Ces virus sont de trois types
Oligomorphique Le virus est chiffreacute agrave chaque reacuteplication
Polymorphique Le virus est chiffreacute et la routine de deacutechiffrement est capable de changer certaines de ses instructions au fil des reacuteplications
Meacutetamorphique Le virus change de forme au fil des reacuteplications
IntrusionsIntrusionsPour qursquoun virus ver ou cheval de Troie soit deacuteleacutetegravere encore faut-il qursquoil srsquoinstalle sur votre machine
Mecircme si un adversaire peut parler agrave votre machine ceci nrsquoimplique pas qursquoil peut installer un logiciel sur celle-ci encore moins srsquoil nrsquoen est pas un utilisateur
Pour ce faire les adversaires peuvent essayer diverses strateacutegies
Faiblesses du systegraveme drsquoexploitation ou du logiciel du serveur Nous allons voir un exemple de ce type drsquoattaque attaques par deacutebordement Une page Web nrsquoest pas un objet passif Elle peut contenir du code (JavaScript Perl etc) malveillant
Tromper lrsquoutilisateur Crsquoest peut-ecirctre plus simple Cas speacutecial du piratage psychologique Cliquer ici pour installer un joli logiciel il faut espeacuterer que lrsquoantivirus deacutetecte ceci avant qursquoil ne soit trop tard
Deacutetecter les intrusionsDeacutetecter les intrusionsUne faccedilon diffeacuterente de deacutetecter les logiciels ou utilisateurs malveillants consiste agrave deacutetecter les comportements malveillants
Un systegraveme peut surveiller les processus pour deacutetecter les comportements malveillants
Une telle approche a lrsquoavantage de ne pas deacutependre drsquoinformation sur les virus et les attaques
Un coupe-feu dynamique est un exemple de cette approche
Il surveille les connexions et tente de deacuteterminer si un client transmet des donneacutees agrave contenu suspect (comme la taille)
Requecirctes Requecirctes malveillantesmalveillantes
dlkjfdsflkjsd dlkjfdsflkjsd fjdskl gfjdlskewqewewewewhdfbfbfbww fjdskl gfjdlskewqewewewewhdfbfbfbww jaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfjaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfwewqewqewqewqewqewqeweekjwweeqqqsxcswdswewqewqewqewqewqewqeweekjwweeqqqsxcswdsdddds dddds ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqqwwq qwwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewqeweekwqwqwefdscxcccj qeweekwqwqwefdscxcccj ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxzcwq zcwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfssaDSADSADSsfghdskjgfhdsgfihoiehjrfssaDSADSADSADDSDSDSSDSDSADDSDSDSSDSDSIl arrive que de longues requecirctes puissent faire planter un systegraveme
mal programmeacute Un adversaire peut donc soumettre des chaicircnes tregraves longues dans le but de rendre le systegraveme inopeacuterant (ou mecircme pire assujetti) comme nous le verrons plus loin
Et agrave peu pregraves nrsquoimporte qui Et agrave peu pregraves nrsquoimporte qui peut proposer un service peut proposer un service
comme celui-ci comme celui-ci
Un coupe-feu peut filtrer les requecirctes anormalement longues pour les ignorer Mecircme les systegravemes avec programmes erroneacutes seront agrave lrsquoabri de ce type drsquoattaque
SELECT SELECT FROM Passwords FROM Passwords WHERE user=rsquoWHERE user=rsquoJugheadJugheadrsquo AND password=rsquorsquo AND password=rsquoxrsquo xrsquo OR lsquo1rsquo=lsquo1OR lsquo1rsquo=lsquo1rsquorsquo
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Requecirctes Requecirctes malveillantesmalveillantes
HTTPSHTTPS
Password Password xrsquo OR xrsquo OR lsquo1rsquo=rsquo1lsquo1rsquo=rsquo1
Un coupe-feu dynamique peut filtrer des requecirctes bizarres comme xrsquo OR lsquo1rsquo=rsquo1xrsquo OR lsquo1rsquo=rsquo1
Ceci est beaucoup plus difficile agrave Ceci est beaucoup plus difficile agrave reacutealiser par un coupe-feu que reacutealiser par un coupe-feu que
lrsquoexemple preacuteceacutedentlrsquoexemple preacuteceacutedent
Approche Approche comportementalecomportementaleUne autre approche pour la deacutetection drsquointrusions consiste agrave
observer certains aspects du comportement des utilisateurs et programmes
activiteacutes de connexion et de session
activiteacutes relieacutees agrave lrsquoexeacutecution de programme et drsquoaccegraves aux fichiers
Il y a deux approches pour la deacutetection de comportements suspects
Par regravegles (rule-based) Un ensemble de regravegles deacutecrivant les comportements normaux est eacutetabli Les comportements anormaux (trop loin des normaux) sont rejeteacutes
Statistique Des statistiques sur les utilisateurs normaux sont creacuteeacutees Le comportement de lrsquoutilisateurprogramme observeacute est compareacute aux statistiques Un comportement montrant un trop grand eacutecart avec les statistiques est rejeteacute
Problegravemes avec les Problegravemes avec les systegravemes de deacutetection systegravemes de deacutetection
drsquointrusion (IDS)drsquointrusion (IDS)Le problegraveme majeur avec lrsquoapproche est le mecircme qursquoavec la biomeacutetrie Le systegraveme qui surveille doit ecirctre assez toleacuterant pour autoriser les comportements normaux mais suffisamment restrictif pour attraper les acteurs malveillants
Ce problegraveme nrsquoest pas tregraves bien compris et les solutions proposeacutees ne sont pas tout agrave fait satisfaisantes
La deacutetection drsquointrusion est bien inutile si le systegraveme ne reacuteagit pas de la bonne faccedilon lorsqursquoune intrusion est deacutetecteacutee La partie du systegraveme qui alerte lrsquoadministrateur qui interdit lrsquoaccegraves qui effectue quelque autre tacircche pour eacuteliminer la menace est tout aussi importante que celle qui deacutetecte
Le pot de mielLe pot de miel
Le pot de miel (laquohoney potraquo) est un truc pratique pour la deacutetection drsquointrusions
Une ressource bidon qui semble inteacuteressante pour un adversaire est creacuteeacutee
Puisque celle-ci est bidon on peut supposer que si quelqursquoun y accegravede crsquoest qursquoil srsquoadonne agrave une activiteacute malveillante
En consultant les traces il peut ecirctre possible de retrouver lrsquoutilisateur malveillant
Ceci peut se faire agrave lrsquoinsu de lrsquointrus
ExempleExemple
Un hocircpital ameacutericain soupccedilonnait que quelqursquoun consultait les dossiers de patients sans en avoir lrsquoautorisation
Ils ont creacuteeacute des fichiers pour des patients qui nrsquoexistent pas
Les accegraves agrave ces fichiers ont alors eacuteteacute retraceacutes jusqursquoagrave lrsquoutilisateur malveillant
Les attaques de lrsquointeacuterieurLes attaques de lrsquointeacuterieurPresque tout ce que nous avons vu a pour but la protection contre les attaques venues de lrsquoexteacuterieur
Les attaques peuvent tregraves bien eacutemaner de lrsquointeacuterieur et peuvent causer des problegravemes seacuterieux
Le premiegravere chose agrave comprendre est qursquoil nrsquoest pas possible de se preacutemunir contre ces attaques si les utilisateurs ont tous les droits sur le systegraveme cible
Il est donc neacutecessaire qursquoune partie du systegraveme soit garantie de fonctionner selon ses speacutecifications mecircme sous attaque
Sans cette hypothegravese le systegraveme est sous le controcircle complet de lrsquoadversaire
Base informatique Base informatique seacutecuriseacuteeseacutecuriseacutee
laquotrusted computing baseraquo (TCB)laquotrusted computing baseraquo (TCB)
Une base seacutecuriseacutee peut ecirctre eacutetablie en utilisant de la seacutecuriteacute mateacuterielle logicielle par mot de passe par exemple
Le rocircle de ce systegraveme de base est de controcircler lrsquoaccegraves aux ressources et le flux drsquoinformation sur celui-ci
Pour bien comprendre comment ces protections fonctionnent nous devons mettre de lrsquoordre dans nos ideacutees Nous devons voir agrave quoi ressemble une politique de seacutecuriteacute dans ce sceacutenario
Crsquoest notre prochain sujet
Lrsquoaspect drsquoun coupe-feuLrsquoaspect drsquoun coupe-feu
coupe-feu
reacuteseau local (LAN)
LAN priveacutereacuteseau public
Coupe-feu filtrage de paquetsCoupe-feu filtrage de paquets
Un coupe-feu est simplement une machine ou un logiciel qui arrecircte ou retire une partie de la circulation sur un reacuteseau
Il est habituellement placeacute sur la connexion entre le reacuteseau local et lrsquoInternet Le trafic de reacuteseau doit donc passer par celui-ci pour relier le reacuteseau local agrave lrsquoInternet
La maniegravere la plus simple drsquoutiliser un coupe-feu consiste agrave lui demander de couper toute communication qui tente de se connecter agrave une machine que vous ne voulez pas voir communiquer avec lrsquoexteacuterieur
Filtrage de paquets Filtrage de paquets commentcommentSouvenons-nous que les connexions TCP demandent que
des paquets speacuteciaux soient transmis et accepteacutes dans le but drsquoeacutetablir une connexion
Ces paquets sont faciles agrave reconnaicirctre car certains drapeaux (laquoflagsraquo) seront activeacutes Les paquets suivants pourront ecirctre associeacutes agrave une connexion eacutetablie preacuteceacutedemment
Le protocole UDP eacutetablit une communication sans ecirctre orienteacute connexion Un paquet est transmis en espeacuterant qursquoil se rende agrave destination LrsquoUDP est utiliseacute pour communiquer avec les serveurs DNS qui traduisent les adresses sous une forme lisible en adresses IP
Le coupe-feu peut tout simplement eacuteliminer les paquets eacutetablissant une connexion TCP sur une machine locale et tout le trafic UDP Ceci est nommeacute filtrage simple des paquets
Filtrage de paquets Filtrage de paquets commentcomment
Un coupe-feu par filtrage de paquets reacuteside tregraves bas dans la pile TCPIP au niveau Internet ou mecircme Reacuteseau Crsquoest la seule faccedilon de srsquoassurer que tout ce qui va du reacuteseau local ou vient de lrsquoInternet sera observeacute
Le filtrage des paquets peut ecirctre configureacute par une politique qui deacutetermine quels paquets seront bloqueacutes ou autoriseacutes
Il srsquoagit du coupe-feu original le plus simple et le plus facile agrave reacutealiser Il peut ecirctre tregraves sucircr car il peut bloquer toute la circulation Il est cependant neacutecessaire de permettre des accegraves ce qui rend possibles certaines attaques
Les limites du filtrage de Les limites du filtrage de paquetspaquetsEacutevidemment toutes les connexions ne peuvent ecirctre
eacutelimineacutees les serveurs Web et de courriel doivent bien ecirctre autoriseacutes agrave communiquer (ils ont besoin entre autres choses
de communiquer avec le serveur DNS via UDP)Nous pouvons deacuteplacer ce serveur Nous pouvons deacuteplacer ce serveur agrave lrsquoexteacuterieur mais comment alors agrave lrsquoexteacuterieur mais comment alors
le mettre agrave jourle mettre agrave jour
Nous pouvons deacuteplacer ce serveur Nous pouvons deacuteplacer ce serveur agrave lrsquoexteacuterieur mais comment alors agrave lrsquoexteacuterieur mais comment alors
le mettre agrave jourle mettre agrave jour
La bonne nouvelle est que toutes les La bonne nouvelle est que toutes les attaques devront passer par ce attaques devront passer par ce serveur si le filtrage est strict serveur si le filtrage est strict
La bonne nouvelle est que toutes les La bonne nouvelle est que toutes les attaques devront passer par ce attaques devront passer par ce serveur si le filtrage est strict serveur si le filtrage est strict
pourrait ecirctre possible si le pourrait ecirctre possible si le filtrage est trop lacircchefiltrage est trop lacircche
pourrait ecirctre possible si le pourrait ecirctre possible si le filtrage est trop lacircchefiltrage est trop lacircche
DMZ (laquoDemilitarized zoneraquo) une zone laquodeacutemilitariseacuteeraquo entre lrsquoInternet et le reacuteseau interne dans laquelle on peut placer les serveurs WEB accessibles depuis lrsquoexteacuterieur La zone est munie drsquoun coupe-feu pour cette tacircche Les coupe-feu peuvent avoir une sortie DMZ pour le serveur Web
Politiques de filtragePolitiques de filtrageSouvenons-nous que les paquets contiennent les informations suivantes
les donneacutees
lrsquoadresse IP drsquoorigine et de destination (incluant le port de destination)
lrsquoinformation sur le protocole par lequel ils doivent ecirctre manipuleacutes
lrsquoinformation sur des erreurs eacuteventuelles et
de lrsquoinformation sur le type de donneacutees en transit
Un politique de filtrage eacutenonce une liste drsquoautorisations et drsquointerdictions des types
autoriseinterdit les paquets selon lrsquoadresse IP drsquooriginedestination
autoriseinterdit les paquets selon leur port de destination
autoriseinterdit les paquets selon le protocole
Conclusion Conclusion (filtrage de paquets)(filtrage de paquets)
Pour ecirctre complegravetement sucircr le filtrage de paquets doit ecirctre tregraves restrictif ce qui peut trop limiter lrsquoaccegraves au reacuteseau
Si le filtrage est plus lacircche alors il pourrait devenir possible agrave lrsquoadversaire de communiquer avec des machines du reacuteseau local
Ceci demande agrave lrsquoadversaire de tenter beaucoup drsquoadresses IP jusqursquoagrave ce qursquoune machine reacuteponde
En conclusion les coupe-feu devraient faire quelque chose de plus intelligent que le simple filtrage
Ils doivent examiner les paquets en deacutetail pour deacutecider quoi faire avec ceux-ci Ils devraient mecircme ecirctre capables de modifier des paquets si neacutecessaire
Coupe-feu proxyCoupe-feu proxyLes proxy (laquoserveurs mandatairesraquo) permettent de faire du filtrage intelligent Il ne permet aucune connexion sur une machine locale agrave partir de lrsquoexteacuterieur
Le proxy gegravere toutes les connexions au nom des machines de reacuteseau local
Si une machine locale a un logiciel qui deacutesire acceacuteder agrave lrsquoInternet alors celui-ci devra ecirctre configureacute pour communiquer avec le coupe-feu agrave la place Le coupe-feu eacutetablira alors la connexion
Vu de lrsquoexteacuterieur le reacuteseau local est complegravetement cacheacute derriegravere le coupe-feu Seul celui-ci est visible
Essayer plusieurs adresses IP pour espeacuterer une reacuteponse ne fonctionne pas ici
Une attaque doit srsquoen prendre au proxy Une machine est plus facile agrave proteacuteger que plusieurs
Proxy en imagesProxy en imagesLe proxy comme une zone tampon entre
lrsquoInternet et un reacuteseau local
Pendant une connexion internet
Cacher votre adresse Cacher votre adresse IPIPVotre adresse IP reacutevegravele votre point drsquoentreacutee sur lrsquoInternet
Peut permettre de retrouver votre fournisseur le reacuteseau de votre employeur votre eacutecole ou votre terminal public
Il srsquoagit de lrsquoidentiteacute de votre machine pendant que vous ecirctes en ligne Sa porte sur le monde
Vous pouvez dissimuler votre adresse IP sur le Web en utilisant un serveur proxy anonyme
Un serveur proxy speacutecialiseacute pour la navigation Web anonyme utilise sa propre adresse IP agrave la place de la vocirctre pour chaque requecircte sortante
Il peut mecircme chiffrer les communications Web ne permettant plus la surveillance de vos actions
Proxy pour et contre Proxy pour et contre
Un proxy permet de proteacuteger un reacuteseau local drsquoune faccedilon tregraves efficace Un seul point faible neacutecessite notre attention
Cette solution nrsquoest pas tregraves flexible Les logiciels clients des machines locales doivent savoir comment utiliser un proxy Sinon rien ne fonctionnera puisque celles-ci sont invisibles
Nous pourrions peut-ecirctre faire croire au client que le service est donneacute par le coupe-feu mais celui-ci doit savoir quoi faire pour acheminer la connexion vers sa destination Ceci demande de configurer chaque type de connexion
Exemple de Proxy TorExemple de Proxy Tor
Coupe-feu dynamique Coupe-feu dynamique (laquostateful firewallraquo)(laquostateful firewallraquo)
Nous avons vu que les coupe-feu statiques agrave filtrage de paquets interviennent en fonction de paquets individuels
Un serveur FTP va ouvrir des connexions sur des ports de hautes valeurs Le filtrage de paquets ne peut pas savoir qursquoune connexion sur le port 6783 appartient agrave une connexion FTP leacutegitime Ces paquets seront eacutelimineacutes
Le coupe-feu dynamique reacutesout ce problegraveme en meacutemorisant les connexions ouvertes par des connexions leacutegitimes
Il est aussi possible de transformer lrsquoadresse IP drsquoune machine locale par quelque chose de diffeacuterent Le coupe-feu agrave mascarade permet drsquoeacuteviter les attaques qui consistent agrave essayer des adresses IP dans le but drsquoobtenir une reacuteponse
Le coupe-feu peut ecirctre configureacute pour eacuteliminer les connexions qui font des trucs bizarres comme la transmission drsquoune chaicircne trop longue
Toujours la pile TCPIPToujours la pile TCPIP
Champs du protocole Champs du protocole IPIP
Champs utiles pour le protocole IP
Le protocole IP fonctionne agrave partir de segments
Protocole UDPProtocole UDP(ses champs utiles)(ses champs utiles)
Champs utiles pour le protocole UDP
Protocole TCPProtocole TCP(ses champs utiles)(ses champs utiles)
Champs utiles pour le protocole TCP
Port de lrsquoapplication Port de lrsquoapplication en cours sur la en cours sur la machine sourcemachine source
Port de lrsquoapplication Port de lrsquoapplication sur la machine sur la machine
destinationdestination
Le numeacutero drsquoordre du Le numeacutero drsquoordre du prochain segment (IP) prochain segment (IP)
attenduattendu
URG paquet agrave traiter de faccedilon urgenteACK paquet est un accuseacute de reacuteceptionPSH paquet fonctionne selon la meacutethode push
RST connexion reacuteinitialiseacuteeSYN indique une demande drsquoeacutetablissement de connexionFIN indique une interruption de connexion
Le numeacutero drsquoordre du segment (IP) Le numeacutero drsquoordre du segment (IP) courant si SYN=0 et le numeacutero drsquoordre courant si SYN=0 et le numeacutero drsquoordre
initial pour synchroniser les nos de initial pour synchroniser les nos de seacutequence (ISN)seacutequence (ISN)
DrapeauxDrapeaux
Filtrage extrecircmeFiltrage extrecircmeTCP est orienteacute connexion Pour en eacutetablir une de A vers B on doit transmettre SYN=1 dans le premier paquet de lrsquoeacutetablissement de connexion agrave trois eacutetapes (laquothree-way handshakeraquo)
Un filtrage simple consiste agrave laisser tomber tous les paquets qui ne contiennent que le drapeau SYN=1
Il devient impossible drsquoeacutetablir une connexion TCP de lrsquoexteacuterieur du mur
Si en plus les paquets UDP sont eacutelimineacutes alors la situation devrait ecirctre tregraves sucircre
Cette politique ne permet pas de se connecter au serveur Web cependant
Activer le serveur Web Activer le serveur Web et accegraves agrave un DNSet accegraves agrave un DNS
Pour donner accegraves au serveur Web nous pourrions faire la chose suivante
Nous autorisons une exception agrave la regravegle preacuteceacutedente
Nous autorisons les paquets SYN=1 pour le serveur Web sur le port 80 (port http)
Nous voudrions aussi permettre lrsquoaccegraves agrave un serveur DNS pour la conversion drsquoadresse comme httpwwwiroumontrealca en 13220424179
Il suffit de laisser les paquets UDP vers et depuis au moins un serveur DNS sur le port 53 (UDP)
Le reacutesultatLe reacutesultat
Si le pirate trouve une faille sur le serveur Web alors il pourrait attaquer le reacuteseau local
Pour eacuteviter ceci il faut seacuteparer le serveur Web des autresLe filtrage par paquets est insuffisant
Deux filtres valent mieux Deux filtres valent mieux qursquounqursquoun
ProxyProxyIl y a drsquoautres services sur lrsquoInternet qui utilisent le protocole UDP flux de donneacutees videacuteo jeux videacuteo
De plus excepteacute pour les paquets SYN=1 il est possible de transmettre des paquets TCP aux ordinateurs du reacuteseau local
Le proxy peut rendre les machines du reacuteseau local invisibles pas le filtrage simple de paquets
Approche proxyApproche proxy
Coupe-feu Coupe-feu dynamiquesdynamiques
Les proxys ne sont pas tregraves flexibles Les coupe-feu dynamiques permettent drsquoutiliser les logiciels drsquoune faccedilon plus transparente
Il srsquoagit drsquoun filtre avanceacute qui permet de veacuterifier que les paquets appartiennent agrave une connexion deacutejagrave eacutetablie Crsquoest seulement lorsque crsquoest le cas que le paquet peut passer
Parce qursquoil est conscient drsquoune connexion il peut appliquer NAT etou PAT
NAT Dynamique (laquoDynamic Network Address Translationraquo) Le coupe-feu traduit les adresses du reacuteseau Toutes les machines du reacuteseau possegravedent vu de lrsquoexteacuterieur la mecircme adresse IP
PAT (laquoPort Address Translationraquo) Le coupe-feu traduit les numeacuteros de port par lesquels les paquets arrivent sur les hocirctes locaux
Ces coupe-feu sont appeleacutes coupe-feu avec mascarade
NAT a eacuteteacute mis au point agrave NAT a eacuteteacute mis au point agrave lrsquoorigine pour reacutepondre agrave la lrsquoorigine pour reacutepondre agrave la
peacutenurie drsquoadresses IP avec le peacutenurie drsquoadresses IP avec le protocole IPv4protocole IPv4
NAT a eacuteteacute mis au point agrave NAT a eacuteteacute mis au point agrave lrsquoorigine pour reacutepondre agrave la lrsquoorigine pour reacutepondre agrave la
peacutenurie drsquoadresses IP avec le peacutenurie drsquoadresses IP avec le protocole IPv4protocole IPv4
Coupe-feu agrave Coupe-feu agrave mascarademascarade
Filtrage dynamique eacutetenduFiltrage dynamique eacutetenduLe filtrage des coupe-feu dynamiques nrsquoest pas limiteacute aux protocoles TCPIP
Pour des applications usuelles le filtrage peut srsquoappliquer au protocole
Le coupe-feu peut ainsi deacutetecter des comportements inhabituels
Peut aussi filtrer certaines parties des donneacutees transmises
Pour le protocole HTTP le filtre peut supprimer les applications Java
Pour le protocole SMTP le filtre peut supprimer les piegraveces jointes drsquoun certain type
Conclusion sur les coupe-Conclusion sur les coupe-feufeu
Les coupe-feu permettent de filtrer le trafic entre le reacuteseau local et lrsquoInternet en nrsquoadministrant qursquoune seule machine
Les coupe-feu ne sont cependant pas une solution magique pour reacutesoudre les problegravemes causeacutes par les attaques exteacuterieures agrave un reacuteseau local
Les coupe-feu pour un seul ordinateur personnel peuvent offrir une solution sans trop drsquoentretien
Les coupe-feu neacutecessitent des mises agrave jour freacutequentes lorsque le reacuteseau local est de bonne taille Lorsque le reacuteseau local change la configuration du coupe-feu doit aussi changer
Penser que lrsquoinstallation drsquoun coupe-feu rend votre reacuteseau sucircr est un peu de la penseacutee magique (neacutecessaire mais pas suffisant)
Logiciels malveillantsLogiciels malveillantsUn adversaire peut une fois passeacute le coupe-feu et les autres deacutefenses vouloir installer un programme malveillant sur la machine locale Ceux-ci sont de trois types
Chevaux de Troie Programme qui semble tout agrave fait utile mais qui cache une fonction malveillante Par exemple donne accegraves agrave des donneacutees priveacutees donne des droits drsquoaccegraves non autoriseacutes ou deacutetruit des donneacutees
Virus Programme qui infecte un autre programme sur votre ordinateur Agrave partir du programme infecteacute le virus se propage vers drsquoautres programmes Apregraves un certain temps ou eacuteveacutenement les virus peuvent entreprendre certaines actions Celles-ci peuvent ecirctre lrsquoeacutelimination de fichiers la deacuteteacuterioration de fonctions du systegraveme drsquoexploitation etc
Vers Programmes qui infectent un ordinateur sans avoir agrave ecirctre heacutebergeacutes par drsquoautres programmes Ils sont des programmes indeacutependants Ils se multiplient en exploitant diffeacuterentes ressources Les objectifs de ces programmes peuvent ecirctre lrsquoespionnage lrsquoouverture de portes deacuterobeacutees eacutemettre des requecirctes vers un site Internet jusqursquoagrave saturation
ExempleExempleI Love You Un ver lanceacute en 2000 et qui a atteint 31 millions de machines en 4 jours
Infection Le ver eacutetait dissimuleacute en piegravece jointe drsquoun courriel Cette piegravece jointe eacutetait preacutesenteacutee comme Love-Letter-for-youtxtvbs Lrsquoextension vbs indique que le fichier est un script Visual Basic Comme lrsquoextension nrsquoapparaicirct pas sur Windows les utilisateurs voyaient la piegravece jointe comme Love-Letter-for-youtxt Objectif Le script lisait la liste des contacts de lrsquoutilisateur pour envoyer ce mecircme message agrave ceux-ci La plate-forme Windows eacutetait viseacutee Des fichiers eacutetaient deacutetruits et remplaceacutes par ce script Il changeait la page drsquoaccueil drsquoInternet Explorer pour teacuteleacutecharger un cheval de Troie
ExempleExempleCode Red Un ver qui a infecteacute 359 000 ordinateurs en moins de 14 heures le 19 juillet 2001
Infections Le ver se multipliait en essayant des adresses IP aleacuteatoires pour ensuite infecter des serveurs qui faisaient tourner Microsoft IIS avec une faille de seacutecuriteacute
Objectif Monter une attaque par deacuteni de service (DOS) contre la Maison-Blanche
Lrsquoattaque a eacuteteacute facile agrave repousser car le ver veacuterifiait avant de lancer lrsquoattaque que le serveur agrave lrsquoadresse IP (au lieu du nom de domaine) de la Maison-Blanche eacutecoutait le port 80 (le port des serveurs Web) En changeant lrsquoadresse IP de la Maison-Blanche lrsquoattaque a eacuteteacute repousseacutee
ExempleExempleCabir Est un virusver (deacutemonstration de faisabiliteacute laquoproof of conceptraquo) qui srsquoattaque agrave la teacuteleacutephonie mobile Crsquoest un fichier de 15 ko nommeacute CARIBESIS
Infection Se propage par la teacuteleacutephonie mobile gracircce agrave la technologie Bluetooth et le systegraveme drsquoexploitation Symbian OS
Action Agrave chaque fois que le teacuteleacutephone infecteacute est ouvert le mot laquoCariberaquo srsquoaffiche Il tente de se propager aux peacuteripheacuteriques BlueTooth de la zone du teacuteleacutephone infecteacute Il nrsquoest pas meacutechant nrsquoavait pour but que de deacutemontrer la faisabiliteacute
AntivirusAntivirusLes antivirus sont des programmes qui deacutetectent les virus les vers et les chevaux de Troie sur votre ordinateur Ils les eacuteliminent
Ils visitent les fichiers sur votre disque dans le but de trouver des bouts de programmes reconnus comme dangereux
Ceci est possible eacutetant donneacute une base de donneacutees agrave jour contenant les virus connus sous la forme de signatures de virus Une signature est un motif (laquopatternraquo) qui caracteacuterise un virus donneacute
Un antivirus nrsquoest efficace que si sa base de donneacutees est mise agrave jour constamment Les compagnies drsquoantivirus vont vite pour mettre agrave jour leur base de donneacutees lorsqursquoun nouveau virus est identifieacute
Malheureusement les utilisateurs tardent agrave mettre leur copie agrave jour causant bien des infections
Tromper les antivirusTromper les antivirusDe nouveaux virus utilisent les meacutethodes de la cryptographie pour deacutejouer les antivirus
Des virus sont chiffreacutes pour les rendre non reconnaissables par les antivirus car ils ont toujours un aspect diffeacuterent
Ces virus ont un petit code en clair qui permet de les deacutecoder et de les charger en meacutemoire pour ecirctre exeacutecuteacutes Ce code est ce que les antivirus doivent deacutetecter
Ces virus sont de trois types
Oligomorphique Le virus est chiffreacute agrave chaque reacuteplication
Polymorphique Le virus est chiffreacute et la routine de deacutechiffrement est capable de changer certaines de ses instructions au fil des reacuteplications
Meacutetamorphique Le virus change de forme au fil des reacuteplications
IntrusionsIntrusionsPour qursquoun virus ver ou cheval de Troie soit deacuteleacutetegravere encore faut-il qursquoil srsquoinstalle sur votre machine
Mecircme si un adversaire peut parler agrave votre machine ceci nrsquoimplique pas qursquoil peut installer un logiciel sur celle-ci encore moins srsquoil nrsquoen est pas un utilisateur
Pour ce faire les adversaires peuvent essayer diverses strateacutegies
Faiblesses du systegraveme drsquoexploitation ou du logiciel du serveur Nous allons voir un exemple de ce type drsquoattaque attaques par deacutebordement Une page Web nrsquoest pas un objet passif Elle peut contenir du code (JavaScript Perl etc) malveillant
Tromper lrsquoutilisateur Crsquoest peut-ecirctre plus simple Cas speacutecial du piratage psychologique Cliquer ici pour installer un joli logiciel il faut espeacuterer que lrsquoantivirus deacutetecte ceci avant qursquoil ne soit trop tard
Deacutetecter les intrusionsDeacutetecter les intrusionsUne faccedilon diffeacuterente de deacutetecter les logiciels ou utilisateurs malveillants consiste agrave deacutetecter les comportements malveillants
Un systegraveme peut surveiller les processus pour deacutetecter les comportements malveillants
Une telle approche a lrsquoavantage de ne pas deacutependre drsquoinformation sur les virus et les attaques
Un coupe-feu dynamique est un exemple de cette approche
Il surveille les connexions et tente de deacuteterminer si un client transmet des donneacutees agrave contenu suspect (comme la taille)
Requecirctes Requecirctes malveillantesmalveillantes
dlkjfdsflkjsd dlkjfdsflkjsd fjdskl gfjdlskewqewewewewhdfbfbfbww fjdskl gfjdlskewqewewewewhdfbfbfbww jaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfjaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfwewqewqewqewqewqewqeweekjwweeqqqsxcswdswewqewqewqewqewqewqeweekjwweeqqqsxcswdsdddds dddds ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqqwwq qwwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewqeweekwqwqwefdscxcccj qeweekwqwqwefdscxcccj ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxzcwq zcwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfssaDSADSADSsfghdskjgfhdsgfihoiehjrfssaDSADSADSADDSDSDSSDSDSADDSDSDSSDSDSIl arrive que de longues requecirctes puissent faire planter un systegraveme
mal programmeacute Un adversaire peut donc soumettre des chaicircnes tregraves longues dans le but de rendre le systegraveme inopeacuterant (ou mecircme pire assujetti) comme nous le verrons plus loin
Et agrave peu pregraves nrsquoimporte qui Et agrave peu pregraves nrsquoimporte qui peut proposer un service peut proposer un service
comme celui-ci comme celui-ci
Un coupe-feu peut filtrer les requecirctes anormalement longues pour les ignorer Mecircme les systegravemes avec programmes erroneacutes seront agrave lrsquoabri de ce type drsquoattaque
SELECT SELECT FROM Passwords FROM Passwords WHERE user=rsquoWHERE user=rsquoJugheadJugheadrsquo AND password=rsquorsquo AND password=rsquoxrsquo xrsquo OR lsquo1rsquo=lsquo1OR lsquo1rsquo=lsquo1rsquorsquo
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Requecirctes Requecirctes malveillantesmalveillantes
HTTPSHTTPS
Password Password xrsquo OR xrsquo OR lsquo1rsquo=rsquo1lsquo1rsquo=rsquo1
Un coupe-feu dynamique peut filtrer des requecirctes bizarres comme xrsquo OR lsquo1rsquo=rsquo1xrsquo OR lsquo1rsquo=rsquo1
Ceci est beaucoup plus difficile agrave Ceci est beaucoup plus difficile agrave reacutealiser par un coupe-feu que reacutealiser par un coupe-feu que
lrsquoexemple preacuteceacutedentlrsquoexemple preacuteceacutedent
Approche Approche comportementalecomportementaleUne autre approche pour la deacutetection drsquointrusions consiste agrave
observer certains aspects du comportement des utilisateurs et programmes
activiteacutes de connexion et de session
activiteacutes relieacutees agrave lrsquoexeacutecution de programme et drsquoaccegraves aux fichiers
Il y a deux approches pour la deacutetection de comportements suspects
Par regravegles (rule-based) Un ensemble de regravegles deacutecrivant les comportements normaux est eacutetabli Les comportements anormaux (trop loin des normaux) sont rejeteacutes
Statistique Des statistiques sur les utilisateurs normaux sont creacuteeacutees Le comportement de lrsquoutilisateurprogramme observeacute est compareacute aux statistiques Un comportement montrant un trop grand eacutecart avec les statistiques est rejeteacute
Problegravemes avec les Problegravemes avec les systegravemes de deacutetection systegravemes de deacutetection
drsquointrusion (IDS)drsquointrusion (IDS)Le problegraveme majeur avec lrsquoapproche est le mecircme qursquoavec la biomeacutetrie Le systegraveme qui surveille doit ecirctre assez toleacuterant pour autoriser les comportements normaux mais suffisamment restrictif pour attraper les acteurs malveillants
Ce problegraveme nrsquoest pas tregraves bien compris et les solutions proposeacutees ne sont pas tout agrave fait satisfaisantes
La deacutetection drsquointrusion est bien inutile si le systegraveme ne reacuteagit pas de la bonne faccedilon lorsqursquoune intrusion est deacutetecteacutee La partie du systegraveme qui alerte lrsquoadministrateur qui interdit lrsquoaccegraves qui effectue quelque autre tacircche pour eacuteliminer la menace est tout aussi importante que celle qui deacutetecte
Le pot de mielLe pot de miel
Le pot de miel (laquohoney potraquo) est un truc pratique pour la deacutetection drsquointrusions
Une ressource bidon qui semble inteacuteressante pour un adversaire est creacuteeacutee
Puisque celle-ci est bidon on peut supposer que si quelqursquoun y accegravede crsquoest qursquoil srsquoadonne agrave une activiteacute malveillante
En consultant les traces il peut ecirctre possible de retrouver lrsquoutilisateur malveillant
Ceci peut se faire agrave lrsquoinsu de lrsquointrus
ExempleExemple
Un hocircpital ameacutericain soupccedilonnait que quelqursquoun consultait les dossiers de patients sans en avoir lrsquoautorisation
Ils ont creacuteeacute des fichiers pour des patients qui nrsquoexistent pas
Les accegraves agrave ces fichiers ont alors eacuteteacute retraceacutes jusqursquoagrave lrsquoutilisateur malveillant
Les attaques de lrsquointeacuterieurLes attaques de lrsquointeacuterieurPresque tout ce que nous avons vu a pour but la protection contre les attaques venues de lrsquoexteacuterieur
Les attaques peuvent tregraves bien eacutemaner de lrsquointeacuterieur et peuvent causer des problegravemes seacuterieux
Le premiegravere chose agrave comprendre est qursquoil nrsquoest pas possible de se preacutemunir contre ces attaques si les utilisateurs ont tous les droits sur le systegraveme cible
Il est donc neacutecessaire qursquoune partie du systegraveme soit garantie de fonctionner selon ses speacutecifications mecircme sous attaque
Sans cette hypothegravese le systegraveme est sous le controcircle complet de lrsquoadversaire
Base informatique Base informatique seacutecuriseacuteeseacutecuriseacutee
laquotrusted computing baseraquo (TCB)laquotrusted computing baseraquo (TCB)
Une base seacutecuriseacutee peut ecirctre eacutetablie en utilisant de la seacutecuriteacute mateacuterielle logicielle par mot de passe par exemple
Le rocircle de ce systegraveme de base est de controcircler lrsquoaccegraves aux ressources et le flux drsquoinformation sur celui-ci
Pour bien comprendre comment ces protections fonctionnent nous devons mettre de lrsquoordre dans nos ideacutees Nous devons voir agrave quoi ressemble une politique de seacutecuriteacute dans ce sceacutenario
Crsquoest notre prochain sujet
Coupe-feu filtrage de paquetsCoupe-feu filtrage de paquets
Un coupe-feu est simplement une machine ou un logiciel qui arrecircte ou retire une partie de la circulation sur un reacuteseau
Il est habituellement placeacute sur la connexion entre le reacuteseau local et lrsquoInternet Le trafic de reacuteseau doit donc passer par celui-ci pour relier le reacuteseau local agrave lrsquoInternet
La maniegravere la plus simple drsquoutiliser un coupe-feu consiste agrave lui demander de couper toute communication qui tente de se connecter agrave une machine que vous ne voulez pas voir communiquer avec lrsquoexteacuterieur
Filtrage de paquets Filtrage de paquets commentcommentSouvenons-nous que les connexions TCP demandent que
des paquets speacuteciaux soient transmis et accepteacutes dans le but drsquoeacutetablir une connexion
Ces paquets sont faciles agrave reconnaicirctre car certains drapeaux (laquoflagsraquo) seront activeacutes Les paquets suivants pourront ecirctre associeacutes agrave une connexion eacutetablie preacuteceacutedemment
Le protocole UDP eacutetablit une communication sans ecirctre orienteacute connexion Un paquet est transmis en espeacuterant qursquoil se rende agrave destination LrsquoUDP est utiliseacute pour communiquer avec les serveurs DNS qui traduisent les adresses sous une forme lisible en adresses IP
Le coupe-feu peut tout simplement eacuteliminer les paquets eacutetablissant une connexion TCP sur une machine locale et tout le trafic UDP Ceci est nommeacute filtrage simple des paquets
Filtrage de paquets Filtrage de paquets commentcomment
Un coupe-feu par filtrage de paquets reacuteside tregraves bas dans la pile TCPIP au niveau Internet ou mecircme Reacuteseau Crsquoest la seule faccedilon de srsquoassurer que tout ce qui va du reacuteseau local ou vient de lrsquoInternet sera observeacute
Le filtrage des paquets peut ecirctre configureacute par une politique qui deacutetermine quels paquets seront bloqueacutes ou autoriseacutes
Il srsquoagit du coupe-feu original le plus simple et le plus facile agrave reacutealiser Il peut ecirctre tregraves sucircr car il peut bloquer toute la circulation Il est cependant neacutecessaire de permettre des accegraves ce qui rend possibles certaines attaques
Les limites du filtrage de Les limites du filtrage de paquetspaquetsEacutevidemment toutes les connexions ne peuvent ecirctre
eacutelimineacutees les serveurs Web et de courriel doivent bien ecirctre autoriseacutes agrave communiquer (ils ont besoin entre autres choses
de communiquer avec le serveur DNS via UDP)Nous pouvons deacuteplacer ce serveur Nous pouvons deacuteplacer ce serveur agrave lrsquoexteacuterieur mais comment alors agrave lrsquoexteacuterieur mais comment alors
le mettre agrave jourle mettre agrave jour
Nous pouvons deacuteplacer ce serveur Nous pouvons deacuteplacer ce serveur agrave lrsquoexteacuterieur mais comment alors agrave lrsquoexteacuterieur mais comment alors
le mettre agrave jourle mettre agrave jour
La bonne nouvelle est que toutes les La bonne nouvelle est que toutes les attaques devront passer par ce attaques devront passer par ce serveur si le filtrage est strict serveur si le filtrage est strict
La bonne nouvelle est que toutes les La bonne nouvelle est que toutes les attaques devront passer par ce attaques devront passer par ce serveur si le filtrage est strict serveur si le filtrage est strict
pourrait ecirctre possible si le pourrait ecirctre possible si le filtrage est trop lacircchefiltrage est trop lacircche
pourrait ecirctre possible si le pourrait ecirctre possible si le filtrage est trop lacircchefiltrage est trop lacircche
DMZ (laquoDemilitarized zoneraquo) une zone laquodeacutemilitariseacuteeraquo entre lrsquoInternet et le reacuteseau interne dans laquelle on peut placer les serveurs WEB accessibles depuis lrsquoexteacuterieur La zone est munie drsquoun coupe-feu pour cette tacircche Les coupe-feu peuvent avoir une sortie DMZ pour le serveur Web
Politiques de filtragePolitiques de filtrageSouvenons-nous que les paquets contiennent les informations suivantes
les donneacutees
lrsquoadresse IP drsquoorigine et de destination (incluant le port de destination)
lrsquoinformation sur le protocole par lequel ils doivent ecirctre manipuleacutes
lrsquoinformation sur des erreurs eacuteventuelles et
de lrsquoinformation sur le type de donneacutees en transit
Un politique de filtrage eacutenonce une liste drsquoautorisations et drsquointerdictions des types
autoriseinterdit les paquets selon lrsquoadresse IP drsquooriginedestination
autoriseinterdit les paquets selon leur port de destination
autoriseinterdit les paquets selon le protocole
Conclusion Conclusion (filtrage de paquets)(filtrage de paquets)
Pour ecirctre complegravetement sucircr le filtrage de paquets doit ecirctre tregraves restrictif ce qui peut trop limiter lrsquoaccegraves au reacuteseau
Si le filtrage est plus lacircche alors il pourrait devenir possible agrave lrsquoadversaire de communiquer avec des machines du reacuteseau local
Ceci demande agrave lrsquoadversaire de tenter beaucoup drsquoadresses IP jusqursquoagrave ce qursquoune machine reacuteponde
En conclusion les coupe-feu devraient faire quelque chose de plus intelligent que le simple filtrage
Ils doivent examiner les paquets en deacutetail pour deacutecider quoi faire avec ceux-ci Ils devraient mecircme ecirctre capables de modifier des paquets si neacutecessaire
Coupe-feu proxyCoupe-feu proxyLes proxy (laquoserveurs mandatairesraquo) permettent de faire du filtrage intelligent Il ne permet aucune connexion sur une machine locale agrave partir de lrsquoexteacuterieur
Le proxy gegravere toutes les connexions au nom des machines de reacuteseau local
Si une machine locale a un logiciel qui deacutesire acceacuteder agrave lrsquoInternet alors celui-ci devra ecirctre configureacute pour communiquer avec le coupe-feu agrave la place Le coupe-feu eacutetablira alors la connexion
Vu de lrsquoexteacuterieur le reacuteseau local est complegravetement cacheacute derriegravere le coupe-feu Seul celui-ci est visible
Essayer plusieurs adresses IP pour espeacuterer une reacuteponse ne fonctionne pas ici
Une attaque doit srsquoen prendre au proxy Une machine est plus facile agrave proteacuteger que plusieurs
Proxy en imagesProxy en imagesLe proxy comme une zone tampon entre
lrsquoInternet et un reacuteseau local
Pendant une connexion internet
Cacher votre adresse Cacher votre adresse IPIPVotre adresse IP reacutevegravele votre point drsquoentreacutee sur lrsquoInternet
Peut permettre de retrouver votre fournisseur le reacuteseau de votre employeur votre eacutecole ou votre terminal public
Il srsquoagit de lrsquoidentiteacute de votre machine pendant que vous ecirctes en ligne Sa porte sur le monde
Vous pouvez dissimuler votre adresse IP sur le Web en utilisant un serveur proxy anonyme
Un serveur proxy speacutecialiseacute pour la navigation Web anonyme utilise sa propre adresse IP agrave la place de la vocirctre pour chaque requecircte sortante
Il peut mecircme chiffrer les communications Web ne permettant plus la surveillance de vos actions
Proxy pour et contre Proxy pour et contre
Un proxy permet de proteacuteger un reacuteseau local drsquoune faccedilon tregraves efficace Un seul point faible neacutecessite notre attention
Cette solution nrsquoest pas tregraves flexible Les logiciels clients des machines locales doivent savoir comment utiliser un proxy Sinon rien ne fonctionnera puisque celles-ci sont invisibles
Nous pourrions peut-ecirctre faire croire au client que le service est donneacute par le coupe-feu mais celui-ci doit savoir quoi faire pour acheminer la connexion vers sa destination Ceci demande de configurer chaque type de connexion
Exemple de Proxy TorExemple de Proxy Tor
Coupe-feu dynamique Coupe-feu dynamique (laquostateful firewallraquo)(laquostateful firewallraquo)
Nous avons vu que les coupe-feu statiques agrave filtrage de paquets interviennent en fonction de paquets individuels
Un serveur FTP va ouvrir des connexions sur des ports de hautes valeurs Le filtrage de paquets ne peut pas savoir qursquoune connexion sur le port 6783 appartient agrave une connexion FTP leacutegitime Ces paquets seront eacutelimineacutes
Le coupe-feu dynamique reacutesout ce problegraveme en meacutemorisant les connexions ouvertes par des connexions leacutegitimes
Il est aussi possible de transformer lrsquoadresse IP drsquoune machine locale par quelque chose de diffeacuterent Le coupe-feu agrave mascarade permet drsquoeacuteviter les attaques qui consistent agrave essayer des adresses IP dans le but drsquoobtenir une reacuteponse
Le coupe-feu peut ecirctre configureacute pour eacuteliminer les connexions qui font des trucs bizarres comme la transmission drsquoune chaicircne trop longue
Toujours la pile TCPIPToujours la pile TCPIP
Champs du protocole Champs du protocole IPIP
Champs utiles pour le protocole IP
Le protocole IP fonctionne agrave partir de segments
Protocole UDPProtocole UDP(ses champs utiles)(ses champs utiles)
Champs utiles pour le protocole UDP
Protocole TCPProtocole TCP(ses champs utiles)(ses champs utiles)
Champs utiles pour le protocole TCP
Port de lrsquoapplication Port de lrsquoapplication en cours sur la en cours sur la machine sourcemachine source
Port de lrsquoapplication Port de lrsquoapplication sur la machine sur la machine
destinationdestination
Le numeacutero drsquoordre du Le numeacutero drsquoordre du prochain segment (IP) prochain segment (IP)
attenduattendu
URG paquet agrave traiter de faccedilon urgenteACK paquet est un accuseacute de reacuteceptionPSH paquet fonctionne selon la meacutethode push
RST connexion reacuteinitialiseacuteeSYN indique une demande drsquoeacutetablissement de connexionFIN indique une interruption de connexion
Le numeacutero drsquoordre du segment (IP) Le numeacutero drsquoordre du segment (IP) courant si SYN=0 et le numeacutero drsquoordre courant si SYN=0 et le numeacutero drsquoordre
initial pour synchroniser les nos de initial pour synchroniser les nos de seacutequence (ISN)seacutequence (ISN)
DrapeauxDrapeaux
Filtrage extrecircmeFiltrage extrecircmeTCP est orienteacute connexion Pour en eacutetablir une de A vers B on doit transmettre SYN=1 dans le premier paquet de lrsquoeacutetablissement de connexion agrave trois eacutetapes (laquothree-way handshakeraquo)
Un filtrage simple consiste agrave laisser tomber tous les paquets qui ne contiennent que le drapeau SYN=1
Il devient impossible drsquoeacutetablir une connexion TCP de lrsquoexteacuterieur du mur
Si en plus les paquets UDP sont eacutelimineacutes alors la situation devrait ecirctre tregraves sucircre
Cette politique ne permet pas de se connecter au serveur Web cependant
Activer le serveur Web Activer le serveur Web et accegraves agrave un DNSet accegraves agrave un DNS
Pour donner accegraves au serveur Web nous pourrions faire la chose suivante
Nous autorisons une exception agrave la regravegle preacuteceacutedente
Nous autorisons les paquets SYN=1 pour le serveur Web sur le port 80 (port http)
Nous voudrions aussi permettre lrsquoaccegraves agrave un serveur DNS pour la conversion drsquoadresse comme httpwwwiroumontrealca en 13220424179
Il suffit de laisser les paquets UDP vers et depuis au moins un serveur DNS sur le port 53 (UDP)
Le reacutesultatLe reacutesultat
Si le pirate trouve une faille sur le serveur Web alors il pourrait attaquer le reacuteseau local
Pour eacuteviter ceci il faut seacuteparer le serveur Web des autresLe filtrage par paquets est insuffisant
Deux filtres valent mieux Deux filtres valent mieux qursquounqursquoun
ProxyProxyIl y a drsquoautres services sur lrsquoInternet qui utilisent le protocole UDP flux de donneacutees videacuteo jeux videacuteo
De plus excepteacute pour les paquets SYN=1 il est possible de transmettre des paquets TCP aux ordinateurs du reacuteseau local
Le proxy peut rendre les machines du reacuteseau local invisibles pas le filtrage simple de paquets
Approche proxyApproche proxy
Coupe-feu Coupe-feu dynamiquesdynamiques
Les proxys ne sont pas tregraves flexibles Les coupe-feu dynamiques permettent drsquoutiliser les logiciels drsquoune faccedilon plus transparente
Il srsquoagit drsquoun filtre avanceacute qui permet de veacuterifier que les paquets appartiennent agrave une connexion deacutejagrave eacutetablie Crsquoest seulement lorsque crsquoest le cas que le paquet peut passer
Parce qursquoil est conscient drsquoune connexion il peut appliquer NAT etou PAT
NAT Dynamique (laquoDynamic Network Address Translationraquo) Le coupe-feu traduit les adresses du reacuteseau Toutes les machines du reacuteseau possegravedent vu de lrsquoexteacuterieur la mecircme adresse IP
PAT (laquoPort Address Translationraquo) Le coupe-feu traduit les numeacuteros de port par lesquels les paquets arrivent sur les hocirctes locaux
Ces coupe-feu sont appeleacutes coupe-feu avec mascarade
NAT a eacuteteacute mis au point agrave NAT a eacuteteacute mis au point agrave lrsquoorigine pour reacutepondre agrave la lrsquoorigine pour reacutepondre agrave la
peacutenurie drsquoadresses IP avec le peacutenurie drsquoadresses IP avec le protocole IPv4protocole IPv4
NAT a eacuteteacute mis au point agrave NAT a eacuteteacute mis au point agrave lrsquoorigine pour reacutepondre agrave la lrsquoorigine pour reacutepondre agrave la
peacutenurie drsquoadresses IP avec le peacutenurie drsquoadresses IP avec le protocole IPv4protocole IPv4
Coupe-feu agrave Coupe-feu agrave mascarademascarade
Filtrage dynamique eacutetenduFiltrage dynamique eacutetenduLe filtrage des coupe-feu dynamiques nrsquoest pas limiteacute aux protocoles TCPIP
Pour des applications usuelles le filtrage peut srsquoappliquer au protocole
Le coupe-feu peut ainsi deacutetecter des comportements inhabituels
Peut aussi filtrer certaines parties des donneacutees transmises
Pour le protocole HTTP le filtre peut supprimer les applications Java
Pour le protocole SMTP le filtre peut supprimer les piegraveces jointes drsquoun certain type
Conclusion sur les coupe-Conclusion sur les coupe-feufeu
Les coupe-feu permettent de filtrer le trafic entre le reacuteseau local et lrsquoInternet en nrsquoadministrant qursquoune seule machine
Les coupe-feu ne sont cependant pas une solution magique pour reacutesoudre les problegravemes causeacutes par les attaques exteacuterieures agrave un reacuteseau local
Les coupe-feu pour un seul ordinateur personnel peuvent offrir une solution sans trop drsquoentretien
Les coupe-feu neacutecessitent des mises agrave jour freacutequentes lorsque le reacuteseau local est de bonne taille Lorsque le reacuteseau local change la configuration du coupe-feu doit aussi changer
Penser que lrsquoinstallation drsquoun coupe-feu rend votre reacuteseau sucircr est un peu de la penseacutee magique (neacutecessaire mais pas suffisant)
Logiciels malveillantsLogiciels malveillantsUn adversaire peut une fois passeacute le coupe-feu et les autres deacutefenses vouloir installer un programme malveillant sur la machine locale Ceux-ci sont de trois types
Chevaux de Troie Programme qui semble tout agrave fait utile mais qui cache une fonction malveillante Par exemple donne accegraves agrave des donneacutees priveacutees donne des droits drsquoaccegraves non autoriseacutes ou deacutetruit des donneacutees
Virus Programme qui infecte un autre programme sur votre ordinateur Agrave partir du programme infecteacute le virus se propage vers drsquoautres programmes Apregraves un certain temps ou eacuteveacutenement les virus peuvent entreprendre certaines actions Celles-ci peuvent ecirctre lrsquoeacutelimination de fichiers la deacuteteacuterioration de fonctions du systegraveme drsquoexploitation etc
Vers Programmes qui infectent un ordinateur sans avoir agrave ecirctre heacutebergeacutes par drsquoautres programmes Ils sont des programmes indeacutependants Ils se multiplient en exploitant diffeacuterentes ressources Les objectifs de ces programmes peuvent ecirctre lrsquoespionnage lrsquoouverture de portes deacuterobeacutees eacutemettre des requecirctes vers un site Internet jusqursquoagrave saturation
ExempleExempleI Love You Un ver lanceacute en 2000 et qui a atteint 31 millions de machines en 4 jours
Infection Le ver eacutetait dissimuleacute en piegravece jointe drsquoun courriel Cette piegravece jointe eacutetait preacutesenteacutee comme Love-Letter-for-youtxtvbs Lrsquoextension vbs indique que le fichier est un script Visual Basic Comme lrsquoextension nrsquoapparaicirct pas sur Windows les utilisateurs voyaient la piegravece jointe comme Love-Letter-for-youtxt Objectif Le script lisait la liste des contacts de lrsquoutilisateur pour envoyer ce mecircme message agrave ceux-ci La plate-forme Windows eacutetait viseacutee Des fichiers eacutetaient deacutetruits et remplaceacutes par ce script Il changeait la page drsquoaccueil drsquoInternet Explorer pour teacuteleacutecharger un cheval de Troie
ExempleExempleCode Red Un ver qui a infecteacute 359 000 ordinateurs en moins de 14 heures le 19 juillet 2001
Infections Le ver se multipliait en essayant des adresses IP aleacuteatoires pour ensuite infecter des serveurs qui faisaient tourner Microsoft IIS avec une faille de seacutecuriteacute
Objectif Monter une attaque par deacuteni de service (DOS) contre la Maison-Blanche
Lrsquoattaque a eacuteteacute facile agrave repousser car le ver veacuterifiait avant de lancer lrsquoattaque que le serveur agrave lrsquoadresse IP (au lieu du nom de domaine) de la Maison-Blanche eacutecoutait le port 80 (le port des serveurs Web) En changeant lrsquoadresse IP de la Maison-Blanche lrsquoattaque a eacuteteacute repousseacutee
ExempleExempleCabir Est un virusver (deacutemonstration de faisabiliteacute laquoproof of conceptraquo) qui srsquoattaque agrave la teacuteleacutephonie mobile Crsquoest un fichier de 15 ko nommeacute CARIBESIS
Infection Se propage par la teacuteleacutephonie mobile gracircce agrave la technologie Bluetooth et le systegraveme drsquoexploitation Symbian OS
Action Agrave chaque fois que le teacuteleacutephone infecteacute est ouvert le mot laquoCariberaquo srsquoaffiche Il tente de se propager aux peacuteripheacuteriques BlueTooth de la zone du teacuteleacutephone infecteacute Il nrsquoest pas meacutechant nrsquoavait pour but que de deacutemontrer la faisabiliteacute
AntivirusAntivirusLes antivirus sont des programmes qui deacutetectent les virus les vers et les chevaux de Troie sur votre ordinateur Ils les eacuteliminent
Ils visitent les fichiers sur votre disque dans le but de trouver des bouts de programmes reconnus comme dangereux
Ceci est possible eacutetant donneacute une base de donneacutees agrave jour contenant les virus connus sous la forme de signatures de virus Une signature est un motif (laquopatternraquo) qui caracteacuterise un virus donneacute
Un antivirus nrsquoest efficace que si sa base de donneacutees est mise agrave jour constamment Les compagnies drsquoantivirus vont vite pour mettre agrave jour leur base de donneacutees lorsqursquoun nouveau virus est identifieacute
Malheureusement les utilisateurs tardent agrave mettre leur copie agrave jour causant bien des infections
Tromper les antivirusTromper les antivirusDe nouveaux virus utilisent les meacutethodes de la cryptographie pour deacutejouer les antivirus
Des virus sont chiffreacutes pour les rendre non reconnaissables par les antivirus car ils ont toujours un aspect diffeacuterent
Ces virus ont un petit code en clair qui permet de les deacutecoder et de les charger en meacutemoire pour ecirctre exeacutecuteacutes Ce code est ce que les antivirus doivent deacutetecter
Ces virus sont de trois types
Oligomorphique Le virus est chiffreacute agrave chaque reacuteplication
Polymorphique Le virus est chiffreacute et la routine de deacutechiffrement est capable de changer certaines de ses instructions au fil des reacuteplications
Meacutetamorphique Le virus change de forme au fil des reacuteplications
IntrusionsIntrusionsPour qursquoun virus ver ou cheval de Troie soit deacuteleacutetegravere encore faut-il qursquoil srsquoinstalle sur votre machine
Mecircme si un adversaire peut parler agrave votre machine ceci nrsquoimplique pas qursquoil peut installer un logiciel sur celle-ci encore moins srsquoil nrsquoen est pas un utilisateur
Pour ce faire les adversaires peuvent essayer diverses strateacutegies
Faiblesses du systegraveme drsquoexploitation ou du logiciel du serveur Nous allons voir un exemple de ce type drsquoattaque attaques par deacutebordement Une page Web nrsquoest pas un objet passif Elle peut contenir du code (JavaScript Perl etc) malveillant
Tromper lrsquoutilisateur Crsquoest peut-ecirctre plus simple Cas speacutecial du piratage psychologique Cliquer ici pour installer un joli logiciel il faut espeacuterer que lrsquoantivirus deacutetecte ceci avant qursquoil ne soit trop tard
Deacutetecter les intrusionsDeacutetecter les intrusionsUne faccedilon diffeacuterente de deacutetecter les logiciels ou utilisateurs malveillants consiste agrave deacutetecter les comportements malveillants
Un systegraveme peut surveiller les processus pour deacutetecter les comportements malveillants
Une telle approche a lrsquoavantage de ne pas deacutependre drsquoinformation sur les virus et les attaques
Un coupe-feu dynamique est un exemple de cette approche
Il surveille les connexions et tente de deacuteterminer si un client transmet des donneacutees agrave contenu suspect (comme la taille)
Requecirctes Requecirctes malveillantesmalveillantes
dlkjfdsflkjsd dlkjfdsflkjsd fjdskl gfjdlskewqewewewewhdfbfbfbww fjdskl gfjdlskewqewewewewhdfbfbfbww jaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfjaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfwewqewqewqewqewqewqeweekjwweeqqqsxcswdswewqewqewqewqewqewqeweekjwweeqqqsxcswdsdddds dddds ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqqwwq qwwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewqeweekwqwqwefdscxcccj qeweekwqwqwefdscxcccj ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxzcwq zcwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfssaDSADSADSsfghdskjgfhdsgfihoiehjrfssaDSADSADSADDSDSDSSDSDSADDSDSDSSDSDSIl arrive que de longues requecirctes puissent faire planter un systegraveme
mal programmeacute Un adversaire peut donc soumettre des chaicircnes tregraves longues dans le but de rendre le systegraveme inopeacuterant (ou mecircme pire assujetti) comme nous le verrons plus loin
Et agrave peu pregraves nrsquoimporte qui Et agrave peu pregraves nrsquoimporte qui peut proposer un service peut proposer un service
comme celui-ci comme celui-ci
Un coupe-feu peut filtrer les requecirctes anormalement longues pour les ignorer Mecircme les systegravemes avec programmes erroneacutes seront agrave lrsquoabri de ce type drsquoattaque
SELECT SELECT FROM Passwords FROM Passwords WHERE user=rsquoWHERE user=rsquoJugheadJugheadrsquo AND password=rsquorsquo AND password=rsquoxrsquo xrsquo OR lsquo1rsquo=lsquo1OR lsquo1rsquo=lsquo1rsquorsquo
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Requecirctes Requecirctes malveillantesmalveillantes
HTTPSHTTPS
Password Password xrsquo OR xrsquo OR lsquo1rsquo=rsquo1lsquo1rsquo=rsquo1
Un coupe-feu dynamique peut filtrer des requecirctes bizarres comme xrsquo OR lsquo1rsquo=rsquo1xrsquo OR lsquo1rsquo=rsquo1
Ceci est beaucoup plus difficile agrave Ceci est beaucoup plus difficile agrave reacutealiser par un coupe-feu que reacutealiser par un coupe-feu que
lrsquoexemple preacuteceacutedentlrsquoexemple preacuteceacutedent
Approche Approche comportementalecomportementaleUne autre approche pour la deacutetection drsquointrusions consiste agrave
observer certains aspects du comportement des utilisateurs et programmes
activiteacutes de connexion et de session
activiteacutes relieacutees agrave lrsquoexeacutecution de programme et drsquoaccegraves aux fichiers
Il y a deux approches pour la deacutetection de comportements suspects
Par regravegles (rule-based) Un ensemble de regravegles deacutecrivant les comportements normaux est eacutetabli Les comportements anormaux (trop loin des normaux) sont rejeteacutes
Statistique Des statistiques sur les utilisateurs normaux sont creacuteeacutees Le comportement de lrsquoutilisateurprogramme observeacute est compareacute aux statistiques Un comportement montrant un trop grand eacutecart avec les statistiques est rejeteacute
Problegravemes avec les Problegravemes avec les systegravemes de deacutetection systegravemes de deacutetection
drsquointrusion (IDS)drsquointrusion (IDS)Le problegraveme majeur avec lrsquoapproche est le mecircme qursquoavec la biomeacutetrie Le systegraveme qui surveille doit ecirctre assez toleacuterant pour autoriser les comportements normaux mais suffisamment restrictif pour attraper les acteurs malveillants
Ce problegraveme nrsquoest pas tregraves bien compris et les solutions proposeacutees ne sont pas tout agrave fait satisfaisantes
La deacutetection drsquointrusion est bien inutile si le systegraveme ne reacuteagit pas de la bonne faccedilon lorsqursquoune intrusion est deacutetecteacutee La partie du systegraveme qui alerte lrsquoadministrateur qui interdit lrsquoaccegraves qui effectue quelque autre tacircche pour eacuteliminer la menace est tout aussi importante que celle qui deacutetecte
Le pot de mielLe pot de miel
Le pot de miel (laquohoney potraquo) est un truc pratique pour la deacutetection drsquointrusions
Une ressource bidon qui semble inteacuteressante pour un adversaire est creacuteeacutee
Puisque celle-ci est bidon on peut supposer que si quelqursquoun y accegravede crsquoest qursquoil srsquoadonne agrave une activiteacute malveillante
En consultant les traces il peut ecirctre possible de retrouver lrsquoutilisateur malveillant
Ceci peut se faire agrave lrsquoinsu de lrsquointrus
ExempleExemple
Un hocircpital ameacutericain soupccedilonnait que quelqursquoun consultait les dossiers de patients sans en avoir lrsquoautorisation
Ils ont creacuteeacute des fichiers pour des patients qui nrsquoexistent pas
Les accegraves agrave ces fichiers ont alors eacuteteacute retraceacutes jusqursquoagrave lrsquoutilisateur malveillant
Les attaques de lrsquointeacuterieurLes attaques de lrsquointeacuterieurPresque tout ce que nous avons vu a pour but la protection contre les attaques venues de lrsquoexteacuterieur
Les attaques peuvent tregraves bien eacutemaner de lrsquointeacuterieur et peuvent causer des problegravemes seacuterieux
Le premiegravere chose agrave comprendre est qursquoil nrsquoest pas possible de se preacutemunir contre ces attaques si les utilisateurs ont tous les droits sur le systegraveme cible
Il est donc neacutecessaire qursquoune partie du systegraveme soit garantie de fonctionner selon ses speacutecifications mecircme sous attaque
Sans cette hypothegravese le systegraveme est sous le controcircle complet de lrsquoadversaire
Base informatique Base informatique seacutecuriseacuteeseacutecuriseacutee
laquotrusted computing baseraquo (TCB)laquotrusted computing baseraquo (TCB)
Une base seacutecuriseacutee peut ecirctre eacutetablie en utilisant de la seacutecuriteacute mateacuterielle logicielle par mot de passe par exemple
Le rocircle de ce systegraveme de base est de controcircler lrsquoaccegraves aux ressources et le flux drsquoinformation sur celui-ci
Pour bien comprendre comment ces protections fonctionnent nous devons mettre de lrsquoordre dans nos ideacutees Nous devons voir agrave quoi ressemble une politique de seacutecuriteacute dans ce sceacutenario
Crsquoest notre prochain sujet
Filtrage de paquets Filtrage de paquets commentcommentSouvenons-nous que les connexions TCP demandent que
des paquets speacuteciaux soient transmis et accepteacutes dans le but drsquoeacutetablir une connexion
Ces paquets sont faciles agrave reconnaicirctre car certains drapeaux (laquoflagsraquo) seront activeacutes Les paquets suivants pourront ecirctre associeacutes agrave une connexion eacutetablie preacuteceacutedemment
Le protocole UDP eacutetablit une communication sans ecirctre orienteacute connexion Un paquet est transmis en espeacuterant qursquoil se rende agrave destination LrsquoUDP est utiliseacute pour communiquer avec les serveurs DNS qui traduisent les adresses sous une forme lisible en adresses IP
Le coupe-feu peut tout simplement eacuteliminer les paquets eacutetablissant une connexion TCP sur une machine locale et tout le trafic UDP Ceci est nommeacute filtrage simple des paquets
Filtrage de paquets Filtrage de paquets commentcomment
Un coupe-feu par filtrage de paquets reacuteside tregraves bas dans la pile TCPIP au niveau Internet ou mecircme Reacuteseau Crsquoest la seule faccedilon de srsquoassurer que tout ce qui va du reacuteseau local ou vient de lrsquoInternet sera observeacute
Le filtrage des paquets peut ecirctre configureacute par une politique qui deacutetermine quels paquets seront bloqueacutes ou autoriseacutes
Il srsquoagit du coupe-feu original le plus simple et le plus facile agrave reacutealiser Il peut ecirctre tregraves sucircr car il peut bloquer toute la circulation Il est cependant neacutecessaire de permettre des accegraves ce qui rend possibles certaines attaques
Les limites du filtrage de Les limites du filtrage de paquetspaquetsEacutevidemment toutes les connexions ne peuvent ecirctre
eacutelimineacutees les serveurs Web et de courriel doivent bien ecirctre autoriseacutes agrave communiquer (ils ont besoin entre autres choses
de communiquer avec le serveur DNS via UDP)Nous pouvons deacuteplacer ce serveur Nous pouvons deacuteplacer ce serveur agrave lrsquoexteacuterieur mais comment alors agrave lrsquoexteacuterieur mais comment alors
le mettre agrave jourle mettre agrave jour
Nous pouvons deacuteplacer ce serveur Nous pouvons deacuteplacer ce serveur agrave lrsquoexteacuterieur mais comment alors agrave lrsquoexteacuterieur mais comment alors
le mettre agrave jourle mettre agrave jour
La bonne nouvelle est que toutes les La bonne nouvelle est que toutes les attaques devront passer par ce attaques devront passer par ce serveur si le filtrage est strict serveur si le filtrage est strict
La bonne nouvelle est que toutes les La bonne nouvelle est que toutes les attaques devront passer par ce attaques devront passer par ce serveur si le filtrage est strict serveur si le filtrage est strict
pourrait ecirctre possible si le pourrait ecirctre possible si le filtrage est trop lacircchefiltrage est trop lacircche
pourrait ecirctre possible si le pourrait ecirctre possible si le filtrage est trop lacircchefiltrage est trop lacircche
DMZ (laquoDemilitarized zoneraquo) une zone laquodeacutemilitariseacuteeraquo entre lrsquoInternet et le reacuteseau interne dans laquelle on peut placer les serveurs WEB accessibles depuis lrsquoexteacuterieur La zone est munie drsquoun coupe-feu pour cette tacircche Les coupe-feu peuvent avoir une sortie DMZ pour le serveur Web
Politiques de filtragePolitiques de filtrageSouvenons-nous que les paquets contiennent les informations suivantes
les donneacutees
lrsquoadresse IP drsquoorigine et de destination (incluant le port de destination)
lrsquoinformation sur le protocole par lequel ils doivent ecirctre manipuleacutes
lrsquoinformation sur des erreurs eacuteventuelles et
de lrsquoinformation sur le type de donneacutees en transit
Un politique de filtrage eacutenonce une liste drsquoautorisations et drsquointerdictions des types
autoriseinterdit les paquets selon lrsquoadresse IP drsquooriginedestination
autoriseinterdit les paquets selon leur port de destination
autoriseinterdit les paquets selon le protocole
Conclusion Conclusion (filtrage de paquets)(filtrage de paquets)
Pour ecirctre complegravetement sucircr le filtrage de paquets doit ecirctre tregraves restrictif ce qui peut trop limiter lrsquoaccegraves au reacuteseau
Si le filtrage est plus lacircche alors il pourrait devenir possible agrave lrsquoadversaire de communiquer avec des machines du reacuteseau local
Ceci demande agrave lrsquoadversaire de tenter beaucoup drsquoadresses IP jusqursquoagrave ce qursquoune machine reacuteponde
En conclusion les coupe-feu devraient faire quelque chose de plus intelligent que le simple filtrage
Ils doivent examiner les paquets en deacutetail pour deacutecider quoi faire avec ceux-ci Ils devraient mecircme ecirctre capables de modifier des paquets si neacutecessaire
Coupe-feu proxyCoupe-feu proxyLes proxy (laquoserveurs mandatairesraquo) permettent de faire du filtrage intelligent Il ne permet aucune connexion sur une machine locale agrave partir de lrsquoexteacuterieur
Le proxy gegravere toutes les connexions au nom des machines de reacuteseau local
Si une machine locale a un logiciel qui deacutesire acceacuteder agrave lrsquoInternet alors celui-ci devra ecirctre configureacute pour communiquer avec le coupe-feu agrave la place Le coupe-feu eacutetablira alors la connexion
Vu de lrsquoexteacuterieur le reacuteseau local est complegravetement cacheacute derriegravere le coupe-feu Seul celui-ci est visible
Essayer plusieurs adresses IP pour espeacuterer une reacuteponse ne fonctionne pas ici
Une attaque doit srsquoen prendre au proxy Une machine est plus facile agrave proteacuteger que plusieurs
Proxy en imagesProxy en imagesLe proxy comme une zone tampon entre
lrsquoInternet et un reacuteseau local
Pendant une connexion internet
Cacher votre adresse Cacher votre adresse IPIPVotre adresse IP reacutevegravele votre point drsquoentreacutee sur lrsquoInternet
Peut permettre de retrouver votre fournisseur le reacuteseau de votre employeur votre eacutecole ou votre terminal public
Il srsquoagit de lrsquoidentiteacute de votre machine pendant que vous ecirctes en ligne Sa porte sur le monde
Vous pouvez dissimuler votre adresse IP sur le Web en utilisant un serveur proxy anonyme
Un serveur proxy speacutecialiseacute pour la navigation Web anonyme utilise sa propre adresse IP agrave la place de la vocirctre pour chaque requecircte sortante
Il peut mecircme chiffrer les communications Web ne permettant plus la surveillance de vos actions
Proxy pour et contre Proxy pour et contre
Un proxy permet de proteacuteger un reacuteseau local drsquoune faccedilon tregraves efficace Un seul point faible neacutecessite notre attention
Cette solution nrsquoest pas tregraves flexible Les logiciels clients des machines locales doivent savoir comment utiliser un proxy Sinon rien ne fonctionnera puisque celles-ci sont invisibles
Nous pourrions peut-ecirctre faire croire au client que le service est donneacute par le coupe-feu mais celui-ci doit savoir quoi faire pour acheminer la connexion vers sa destination Ceci demande de configurer chaque type de connexion
Exemple de Proxy TorExemple de Proxy Tor
Coupe-feu dynamique Coupe-feu dynamique (laquostateful firewallraquo)(laquostateful firewallraquo)
Nous avons vu que les coupe-feu statiques agrave filtrage de paquets interviennent en fonction de paquets individuels
Un serveur FTP va ouvrir des connexions sur des ports de hautes valeurs Le filtrage de paquets ne peut pas savoir qursquoune connexion sur le port 6783 appartient agrave une connexion FTP leacutegitime Ces paquets seront eacutelimineacutes
Le coupe-feu dynamique reacutesout ce problegraveme en meacutemorisant les connexions ouvertes par des connexions leacutegitimes
Il est aussi possible de transformer lrsquoadresse IP drsquoune machine locale par quelque chose de diffeacuterent Le coupe-feu agrave mascarade permet drsquoeacuteviter les attaques qui consistent agrave essayer des adresses IP dans le but drsquoobtenir une reacuteponse
Le coupe-feu peut ecirctre configureacute pour eacuteliminer les connexions qui font des trucs bizarres comme la transmission drsquoune chaicircne trop longue
Toujours la pile TCPIPToujours la pile TCPIP
Champs du protocole Champs du protocole IPIP
Champs utiles pour le protocole IP
Le protocole IP fonctionne agrave partir de segments
Protocole UDPProtocole UDP(ses champs utiles)(ses champs utiles)
Champs utiles pour le protocole UDP
Protocole TCPProtocole TCP(ses champs utiles)(ses champs utiles)
Champs utiles pour le protocole TCP
Port de lrsquoapplication Port de lrsquoapplication en cours sur la en cours sur la machine sourcemachine source
Port de lrsquoapplication Port de lrsquoapplication sur la machine sur la machine
destinationdestination
Le numeacutero drsquoordre du Le numeacutero drsquoordre du prochain segment (IP) prochain segment (IP)
attenduattendu
URG paquet agrave traiter de faccedilon urgenteACK paquet est un accuseacute de reacuteceptionPSH paquet fonctionne selon la meacutethode push
RST connexion reacuteinitialiseacuteeSYN indique une demande drsquoeacutetablissement de connexionFIN indique une interruption de connexion
Le numeacutero drsquoordre du segment (IP) Le numeacutero drsquoordre du segment (IP) courant si SYN=0 et le numeacutero drsquoordre courant si SYN=0 et le numeacutero drsquoordre
initial pour synchroniser les nos de initial pour synchroniser les nos de seacutequence (ISN)seacutequence (ISN)
DrapeauxDrapeaux
Filtrage extrecircmeFiltrage extrecircmeTCP est orienteacute connexion Pour en eacutetablir une de A vers B on doit transmettre SYN=1 dans le premier paquet de lrsquoeacutetablissement de connexion agrave trois eacutetapes (laquothree-way handshakeraquo)
Un filtrage simple consiste agrave laisser tomber tous les paquets qui ne contiennent que le drapeau SYN=1
Il devient impossible drsquoeacutetablir une connexion TCP de lrsquoexteacuterieur du mur
Si en plus les paquets UDP sont eacutelimineacutes alors la situation devrait ecirctre tregraves sucircre
Cette politique ne permet pas de se connecter au serveur Web cependant
Activer le serveur Web Activer le serveur Web et accegraves agrave un DNSet accegraves agrave un DNS
Pour donner accegraves au serveur Web nous pourrions faire la chose suivante
Nous autorisons une exception agrave la regravegle preacuteceacutedente
Nous autorisons les paquets SYN=1 pour le serveur Web sur le port 80 (port http)
Nous voudrions aussi permettre lrsquoaccegraves agrave un serveur DNS pour la conversion drsquoadresse comme httpwwwiroumontrealca en 13220424179
Il suffit de laisser les paquets UDP vers et depuis au moins un serveur DNS sur le port 53 (UDP)
Le reacutesultatLe reacutesultat
Si le pirate trouve une faille sur le serveur Web alors il pourrait attaquer le reacuteseau local
Pour eacuteviter ceci il faut seacuteparer le serveur Web des autresLe filtrage par paquets est insuffisant
Deux filtres valent mieux Deux filtres valent mieux qursquounqursquoun
ProxyProxyIl y a drsquoautres services sur lrsquoInternet qui utilisent le protocole UDP flux de donneacutees videacuteo jeux videacuteo
De plus excepteacute pour les paquets SYN=1 il est possible de transmettre des paquets TCP aux ordinateurs du reacuteseau local
Le proxy peut rendre les machines du reacuteseau local invisibles pas le filtrage simple de paquets
Approche proxyApproche proxy
Coupe-feu Coupe-feu dynamiquesdynamiques
Les proxys ne sont pas tregraves flexibles Les coupe-feu dynamiques permettent drsquoutiliser les logiciels drsquoune faccedilon plus transparente
Il srsquoagit drsquoun filtre avanceacute qui permet de veacuterifier que les paquets appartiennent agrave une connexion deacutejagrave eacutetablie Crsquoest seulement lorsque crsquoest le cas que le paquet peut passer
Parce qursquoil est conscient drsquoune connexion il peut appliquer NAT etou PAT
NAT Dynamique (laquoDynamic Network Address Translationraquo) Le coupe-feu traduit les adresses du reacuteseau Toutes les machines du reacuteseau possegravedent vu de lrsquoexteacuterieur la mecircme adresse IP
PAT (laquoPort Address Translationraquo) Le coupe-feu traduit les numeacuteros de port par lesquels les paquets arrivent sur les hocirctes locaux
Ces coupe-feu sont appeleacutes coupe-feu avec mascarade
NAT a eacuteteacute mis au point agrave NAT a eacuteteacute mis au point agrave lrsquoorigine pour reacutepondre agrave la lrsquoorigine pour reacutepondre agrave la
peacutenurie drsquoadresses IP avec le peacutenurie drsquoadresses IP avec le protocole IPv4protocole IPv4
NAT a eacuteteacute mis au point agrave NAT a eacuteteacute mis au point agrave lrsquoorigine pour reacutepondre agrave la lrsquoorigine pour reacutepondre agrave la
peacutenurie drsquoadresses IP avec le peacutenurie drsquoadresses IP avec le protocole IPv4protocole IPv4
Coupe-feu agrave Coupe-feu agrave mascarademascarade
Filtrage dynamique eacutetenduFiltrage dynamique eacutetenduLe filtrage des coupe-feu dynamiques nrsquoest pas limiteacute aux protocoles TCPIP
Pour des applications usuelles le filtrage peut srsquoappliquer au protocole
Le coupe-feu peut ainsi deacutetecter des comportements inhabituels
Peut aussi filtrer certaines parties des donneacutees transmises
Pour le protocole HTTP le filtre peut supprimer les applications Java
Pour le protocole SMTP le filtre peut supprimer les piegraveces jointes drsquoun certain type
Conclusion sur les coupe-Conclusion sur les coupe-feufeu
Les coupe-feu permettent de filtrer le trafic entre le reacuteseau local et lrsquoInternet en nrsquoadministrant qursquoune seule machine
Les coupe-feu ne sont cependant pas une solution magique pour reacutesoudre les problegravemes causeacutes par les attaques exteacuterieures agrave un reacuteseau local
Les coupe-feu pour un seul ordinateur personnel peuvent offrir une solution sans trop drsquoentretien
Les coupe-feu neacutecessitent des mises agrave jour freacutequentes lorsque le reacuteseau local est de bonne taille Lorsque le reacuteseau local change la configuration du coupe-feu doit aussi changer
Penser que lrsquoinstallation drsquoun coupe-feu rend votre reacuteseau sucircr est un peu de la penseacutee magique (neacutecessaire mais pas suffisant)
Logiciels malveillantsLogiciels malveillantsUn adversaire peut une fois passeacute le coupe-feu et les autres deacutefenses vouloir installer un programme malveillant sur la machine locale Ceux-ci sont de trois types
Chevaux de Troie Programme qui semble tout agrave fait utile mais qui cache une fonction malveillante Par exemple donne accegraves agrave des donneacutees priveacutees donne des droits drsquoaccegraves non autoriseacutes ou deacutetruit des donneacutees
Virus Programme qui infecte un autre programme sur votre ordinateur Agrave partir du programme infecteacute le virus se propage vers drsquoautres programmes Apregraves un certain temps ou eacuteveacutenement les virus peuvent entreprendre certaines actions Celles-ci peuvent ecirctre lrsquoeacutelimination de fichiers la deacuteteacuterioration de fonctions du systegraveme drsquoexploitation etc
Vers Programmes qui infectent un ordinateur sans avoir agrave ecirctre heacutebergeacutes par drsquoautres programmes Ils sont des programmes indeacutependants Ils se multiplient en exploitant diffeacuterentes ressources Les objectifs de ces programmes peuvent ecirctre lrsquoespionnage lrsquoouverture de portes deacuterobeacutees eacutemettre des requecirctes vers un site Internet jusqursquoagrave saturation
ExempleExempleI Love You Un ver lanceacute en 2000 et qui a atteint 31 millions de machines en 4 jours
Infection Le ver eacutetait dissimuleacute en piegravece jointe drsquoun courriel Cette piegravece jointe eacutetait preacutesenteacutee comme Love-Letter-for-youtxtvbs Lrsquoextension vbs indique que le fichier est un script Visual Basic Comme lrsquoextension nrsquoapparaicirct pas sur Windows les utilisateurs voyaient la piegravece jointe comme Love-Letter-for-youtxt Objectif Le script lisait la liste des contacts de lrsquoutilisateur pour envoyer ce mecircme message agrave ceux-ci La plate-forme Windows eacutetait viseacutee Des fichiers eacutetaient deacutetruits et remplaceacutes par ce script Il changeait la page drsquoaccueil drsquoInternet Explorer pour teacuteleacutecharger un cheval de Troie
ExempleExempleCode Red Un ver qui a infecteacute 359 000 ordinateurs en moins de 14 heures le 19 juillet 2001
Infections Le ver se multipliait en essayant des adresses IP aleacuteatoires pour ensuite infecter des serveurs qui faisaient tourner Microsoft IIS avec une faille de seacutecuriteacute
Objectif Monter une attaque par deacuteni de service (DOS) contre la Maison-Blanche
Lrsquoattaque a eacuteteacute facile agrave repousser car le ver veacuterifiait avant de lancer lrsquoattaque que le serveur agrave lrsquoadresse IP (au lieu du nom de domaine) de la Maison-Blanche eacutecoutait le port 80 (le port des serveurs Web) En changeant lrsquoadresse IP de la Maison-Blanche lrsquoattaque a eacuteteacute repousseacutee
ExempleExempleCabir Est un virusver (deacutemonstration de faisabiliteacute laquoproof of conceptraquo) qui srsquoattaque agrave la teacuteleacutephonie mobile Crsquoest un fichier de 15 ko nommeacute CARIBESIS
Infection Se propage par la teacuteleacutephonie mobile gracircce agrave la technologie Bluetooth et le systegraveme drsquoexploitation Symbian OS
Action Agrave chaque fois que le teacuteleacutephone infecteacute est ouvert le mot laquoCariberaquo srsquoaffiche Il tente de se propager aux peacuteripheacuteriques BlueTooth de la zone du teacuteleacutephone infecteacute Il nrsquoest pas meacutechant nrsquoavait pour but que de deacutemontrer la faisabiliteacute
AntivirusAntivirusLes antivirus sont des programmes qui deacutetectent les virus les vers et les chevaux de Troie sur votre ordinateur Ils les eacuteliminent
Ils visitent les fichiers sur votre disque dans le but de trouver des bouts de programmes reconnus comme dangereux
Ceci est possible eacutetant donneacute une base de donneacutees agrave jour contenant les virus connus sous la forme de signatures de virus Une signature est un motif (laquopatternraquo) qui caracteacuterise un virus donneacute
Un antivirus nrsquoest efficace que si sa base de donneacutees est mise agrave jour constamment Les compagnies drsquoantivirus vont vite pour mettre agrave jour leur base de donneacutees lorsqursquoun nouveau virus est identifieacute
Malheureusement les utilisateurs tardent agrave mettre leur copie agrave jour causant bien des infections
Tromper les antivirusTromper les antivirusDe nouveaux virus utilisent les meacutethodes de la cryptographie pour deacutejouer les antivirus
Des virus sont chiffreacutes pour les rendre non reconnaissables par les antivirus car ils ont toujours un aspect diffeacuterent
Ces virus ont un petit code en clair qui permet de les deacutecoder et de les charger en meacutemoire pour ecirctre exeacutecuteacutes Ce code est ce que les antivirus doivent deacutetecter
Ces virus sont de trois types
Oligomorphique Le virus est chiffreacute agrave chaque reacuteplication
Polymorphique Le virus est chiffreacute et la routine de deacutechiffrement est capable de changer certaines de ses instructions au fil des reacuteplications
Meacutetamorphique Le virus change de forme au fil des reacuteplications
IntrusionsIntrusionsPour qursquoun virus ver ou cheval de Troie soit deacuteleacutetegravere encore faut-il qursquoil srsquoinstalle sur votre machine
Mecircme si un adversaire peut parler agrave votre machine ceci nrsquoimplique pas qursquoil peut installer un logiciel sur celle-ci encore moins srsquoil nrsquoen est pas un utilisateur
Pour ce faire les adversaires peuvent essayer diverses strateacutegies
Faiblesses du systegraveme drsquoexploitation ou du logiciel du serveur Nous allons voir un exemple de ce type drsquoattaque attaques par deacutebordement Une page Web nrsquoest pas un objet passif Elle peut contenir du code (JavaScript Perl etc) malveillant
Tromper lrsquoutilisateur Crsquoest peut-ecirctre plus simple Cas speacutecial du piratage psychologique Cliquer ici pour installer un joli logiciel il faut espeacuterer que lrsquoantivirus deacutetecte ceci avant qursquoil ne soit trop tard
Deacutetecter les intrusionsDeacutetecter les intrusionsUne faccedilon diffeacuterente de deacutetecter les logiciels ou utilisateurs malveillants consiste agrave deacutetecter les comportements malveillants
Un systegraveme peut surveiller les processus pour deacutetecter les comportements malveillants
Une telle approche a lrsquoavantage de ne pas deacutependre drsquoinformation sur les virus et les attaques
Un coupe-feu dynamique est un exemple de cette approche
Il surveille les connexions et tente de deacuteterminer si un client transmet des donneacutees agrave contenu suspect (comme la taille)
Requecirctes Requecirctes malveillantesmalveillantes
dlkjfdsflkjsd dlkjfdsflkjsd fjdskl gfjdlskewqewewewewhdfbfbfbww fjdskl gfjdlskewqewewewewhdfbfbfbww jaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfjaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfwewqewqewqewqewqewqeweekjwweeqqqsxcswdswewqewqewqewqewqewqeweekjwweeqqqsxcswdsdddds dddds ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqqwwq qwwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewqeweekwqwqwefdscxcccj qeweekwqwqwefdscxcccj ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxzcwq zcwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfssaDSADSADSsfghdskjgfhdsgfihoiehjrfssaDSADSADSADDSDSDSSDSDSADDSDSDSSDSDSIl arrive que de longues requecirctes puissent faire planter un systegraveme
mal programmeacute Un adversaire peut donc soumettre des chaicircnes tregraves longues dans le but de rendre le systegraveme inopeacuterant (ou mecircme pire assujetti) comme nous le verrons plus loin
Et agrave peu pregraves nrsquoimporte qui Et agrave peu pregraves nrsquoimporte qui peut proposer un service peut proposer un service
comme celui-ci comme celui-ci
Un coupe-feu peut filtrer les requecirctes anormalement longues pour les ignorer Mecircme les systegravemes avec programmes erroneacutes seront agrave lrsquoabri de ce type drsquoattaque
SELECT SELECT FROM Passwords FROM Passwords WHERE user=rsquoWHERE user=rsquoJugheadJugheadrsquo AND password=rsquorsquo AND password=rsquoxrsquo xrsquo OR lsquo1rsquo=lsquo1OR lsquo1rsquo=lsquo1rsquorsquo
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Requecirctes Requecirctes malveillantesmalveillantes
HTTPSHTTPS
Password Password xrsquo OR xrsquo OR lsquo1rsquo=rsquo1lsquo1rsquo=rsquo1
Un coupe-feu dynamique peut filtrer des requecirctes bizarres comme xrsquo OR lsquo1rsquo=rsquo1xrsquo OR lsquo1rsquo=rsquo1
Ceci est beaucoup plus difficile agrave Ceci est beaucoup plus difficile agrave reacutealiser par un coupe-feu que reacutealiser par un coupe-feu que
lrsquoexemple preacuteceacutedentlrsquoexemple preacuteceacutedent
Approche Approche comportementalecomportementaleUne autre approche pour la deacutetection drsquointrusions consiste agrave
observer certains aspects du comportement des utilisateurs et programmes
activiteacutes de connexion et de session
activiteacutes relieacutees agrave lrsquoexeacutecution de programme et drsquoaccegraves aux fichiers
Il y a deux approches pour la deacutetection de comportements suspects
Par regravegles (rule-based) Un ensemble de regravegles deacutecrivant les comportements normaux est eacutetabli Les comportements anormaux (trop loin des normaux) sont rejeteacutes
Statistique Des statistiques sur les utilisateurs normaux sont creacuteeacutees Le comportement de lrsquoutilisateurprogramme observeacute est compareacute aux statistiques Un comportement montrant un trop grand eacutecart avec les statistiques est rejeteacute
Problegravemes avec les Problegravemes avec les systegravemes de deacutetection systegravemes de deacutetection
drsquointrusion (IDS)drsquointrusion (IDS)Le problegraveme majeur avec lrsquoapproche est le mecircme qursquoavec la biomeacutetrie Le systegraveme qui surveille doit ecirctre assez toleacuterant pour autoriser les comportements normaux mais suffisamment restrictif pour attraper les acteurs malveillants
Ce problegraveme nrsquoest pas tregraves bien compris et les solutions proposeacutees ne sont pas tout agrave fait satisfaisantes
La deacutetection drsquointrusion est bien inutile si le systegraveme ne reacuteagit pas de la bonne faccedilon lorsqursquoune intrusion est deacutetecteacutee La partie du systegraveme qui alerte lrsquoadministrateur qui interdit lrsquoaccegraves qui effectue quelque autre tacircche pour eacuteliminer la menace est tout aussi importante que celle qui deacutetecte
Le pot de mielLe pot de miel
Le pot de miel (laquohoney potraquo) est un truc pratique pour la deacutetection drsquointrusions
Une ressource bidon qui semble inteacuteressante pour un adversaire est creacuteeacutee
Puisque celle-ci est bidon on peut supposer que si quelqursquoun y accegravede crsquoest qursquoil srsquoadonne agrave une activiteacute malveillante
En consultant les traces il peut ecirctre possible de retrouver lrsquoutilisateur malveillant
Ceci peut se faire agrave lrsquoinsu de lrsquointrus
ExempleExemple
Un hocircpital ameacutericain soupccedilonnait que quelqursquoun consultait les dossiers de patients sans en avoir lrsquoautorisation
Ils ont creacuteeacute des fichiers pour des patients qui nrsquoexistent pas
Les accegraves agrave ces fichiers ont alors eacuteteacute retraceacutes jusqursquoagrave lrsquoutilisateur malveillant
Les attaques de lrsquointeacuterieurLes attaques de lrsquointeacuterieurPresque tout ce que nous avons vu a pour but la protection contre les attaques venues de lrsquoexteacuterieur
Les attaques peuvent tregraves bien eacutemaner de lrsquointeacuterieur et peuvent causer des problegravemes seacuterieux
Le premiegravere chose agrave comprendre est qursquoil nrsquoest pas possible de se preacutemunir contre ces attaques si les utilisateurs ont tous les droits sur le systegraveme cible
Il est donc neacutecessaire qursquoune partie du systegraveme soit garantie de fonctionner selon ses speacutecifications mecircme sous attaque
Sans cette hypothegravese le systegraveme est sous le controcircle complet de lrsquoadversaire
Base informatique Base informatique seacutecuriseacuteeseacutecuriseacutee
laquotrusted computing baseraquo (TCB)laquotrusted computing baseraquo (TCB)
Une base seacutecuriseacutee peut ecirctre eacutetablie en utilisant de la seacutecuriteacute mateacuterielle logicielle par mot de passe par exemple
Le rocircle de ce systegraveme de base est de controcircler lrsquoaccegraves aux ressources et le flux drsquoinformation sur celui-ci
Pour bien comprendre comment ces protections fonctionnent nous devons mettre de lrsquoordre dans nos ideacutees Nous devons voir agrave quoi ressemble une politique de seacutecuriteacute dans ce sceacutenario
Crsquoest notre prochain sujet
Filtrage de paquets Filtrage de paquets commentcomment
Un coupe-feu par filtrage de paquets reacuteside tregraves bas dans la pile TCPIP au niveau Internet ou mecircme Reacuteseau Crsquoest la seule faccedilon de srsquoassurer que tout ce qui va du reacuteseau local ou vient de lrsquoInternet sera observeacute
Le filtrage des paquets peut ecirctre configureacute par une politique qui deacutetermine quels paquets seront bloqueacutes ou autoriseacutes
Il srsquoagit du coupe-feu original le plus simple et le plus facile agrave reacutealiser Il peut ecirctre tregraves sucircr car il peut bloquer toute la circulation Il est cependant neacutecessaire de permettre des accegraves ce qui rend possibles certaines attaques
Les limites du filtrage de Les limites du filtrage de paquetspaquetsEacutevidemment toutes les connexions ne peuvent ecirctre
eacutelimineacutees les serveurs Web et de courriel doivent bien ecirctre autoriseacutes agrave communiquer (ils ont besoin entre autres choses
de communiquer avec le serveur DNS via UDP)Nous pouvons deacuteplacer ce serveur Nous pouvons deacuteplacer ce serveur agrave lrsquoexteacuterieur mais comment alors agrave lrsquoexteacuterieur mais comment alors
le mettre agrave jourle mettre agrave jour
Nous pouvons deacuteplacer ce serveur Nous pouvons deacuteplacer ce serveur agrave lrsquoexteacuterieur mais comment alors agrave lrsquoexteacuterieur mais comment alors
le mettre agrave jourle mettre agrave jour
La bonne nouvelle est que toutes les La bonne nouvelle est que toutes les attaques devront passer par ce attaques devront passer par ce serveur si le filtrage est strict serveur si le filtrage est strict
La bonne nouvelle est que toutes les La bonne nouvelle est que toutes les attaques devront passer par ce attaques devront passer par ce serveur si le filtrage est strict serveur si le filtrage est strict
pourrait ecirctre possible si le pourrait ecirctre possible si le filtrage est trop lacircchefiltrage est trop lacircche
pourrait ecirctre possible si le pourrait ecirctre possible si le filtrage est trop lacircchefiltrage est trop lacircche
DMZ (laquoDemilitarized zoneraquo) une zone laquodeacutemilitariseacuteeraquo entre lrsquoInternet et le reacuteseau interne dans laquelle on peut placer les serveurs WEB accessibles depuis lrsquoexteacuterieur La zone est munie drsquoun coupe-feu pour cette tacircche Les coupe-feu peuvent avoir une sortie DMZ pour le serveur Web
Politiques de filtragePolitiques de filtrageSouvenons-nous que les paquets contiennent les informations suivantes
les donneacutees
lrsquoadresse IP drsquoorigine et de destination (incluant le port de destination)
lrsquoinformation sur le protocole par lequel ils doivent ecirctre manipuleacutes
lrsquoinformation sur des erreurs eacuteventuelles et
de lrsquoinformation sur le type de donneacutees en transit
Un politique de filtrage eacutenonce une liste drsquoautorisations et drsquointerdictions des types
autoriseinterdit les paquets selon lrsquoadresse IP drsquooriginedestination
autoriseinterdit les paquets selon leur port de destination
autoriseinterdit les paquets selon le protocole
Conclusion Conclusion (filtrage de paquets)(filtrage de paquets)
Pour ecirctre complegravetement sucircr le filtrage de paquets doit ecirctre tregraves restrictif ce qui peut trop limiter lrsquoaccegraves au reacuteseau
Si le filtrage est plus lacircche alors il pourrait devenir possible agrave lrsquoadversaire de communiquer avec des machines du reacuteseau local
Ceci demande agrave lrsquoadversaire de tenter beaucoup drsquoadresses IP jusqursquoagrave ce qursquoune machine reacuteponde
En conclusion les coupe-feu devraient faire quelque chose de plus intelligent que le simple filtrage
Ils doivent examiner les paquets en deacutetail pour deacutecider quoi faire avec ceux-ci Ils devraient mecircme ecirctre capables de modifier des paquets si neacutecessaire
Coupe-feu proxyCoupe-feu proxyLes proxy (laquoserveurs mandatairesraquo) permettent de faire du filtrage intelligent Il ne permet aucune connexion sur une machine locale agrave partir de lrsquoexteacuterieur
Le proxy gegravere toutes les connexions au nom des machines de reacuteseau local
Si une machine locale a un logiciel qui deacutesire acceacuteder agrave lrsquoInternet alors celui-ci devra ecirctre configureacute pour communiquer avec le coupe-feu agrave la place Le coupe-feu eacutetablira alors la connexion
Vu de lrsquoexteacuterieur le reacuteseau local est complegravetement cacheacute derriegravere le coupe-feu Seul celui-ci est visible
Essayer plusieurs adresses IP pour espeacuterer une reacuteponse ne fonctionne pas ici
Une attaque doit srsquoen prendre au proxy Une machine est plus facile agrave proteacuteger que plusieurs
Proxy en imagesProxy en imagesLe proxy comme une zone tampon entre
lrsquoInternet et un reacuteseau local
Pendant une connexion internet
Cacher votre adresse Cacher votre adresse IPIPVotre adresse IP reacutevegravele votre point drsquoentreacutee sur lrsquoInternet
Peut permettre de retrouver votre fournisseur le reacuteseau de votre employeur votre eacutecole ou votre terminal public
Il srsquoagit de lrsquoidentiteacute de votre machine pendant que vous ecirctes en ligne Sa porte sur le monde
Vous pouvez dissimuler votre adresse IP sur le Web en utilisant un serveur proxy anonyme
Un serveur proxy speacutecialiseacute pour la navigation Web anonyme utilise sa propre adresse IP agrave la place de la vocirctre pour chaque requecircte sortante
Il peut mecircme chiffrer les communications Web ne permettant plus la surveillance de vos actions
Proxy pour et contre Proxy pour et contre
Un proxy permet de proteacuteger un reacuteseau local drsquoune faccedilon tregraves efficace Un seul point faible neacutecessite notre attention
Cette solution nrsquoest pas tregraves flexible Les logiciels clients des machines locales doivent savoir comment utiliser un proxy Sinon rien ne fonctionnera puisque celles-ci sont invisibles
Nous pourrions peut-ecirctre faire croire au client que le service est donneacute par le coupe-feu mais celui-ci doit savoir quoi faire pour acheminer la connexion vers sa destination Ceci demande de configurer chaque type de connexion
Exemple de Proxy TorExemple de Proxy Tor
Coupe-feu dynamique Coupe-feu dynamique (laquostateful firewallraquo)(laquostateful firewallraquo)
Nous avons vu que les coupe-feu statiques agrave filtrage de paquets interviennent en fonction de paquets individuels
Un serveur FTP va ouvrir des connexions sur des ports de hautes valeurs Le filtrage de paquets ne peut pas savoir qursquoune connexion sur le port 6783 appartient agrave une connexion FTP leacutegitime Ces paquets seront eacutelimineacutes
Le coupe-feu dynamique reacutesout ce problegraveme en meacutemorisant les connexions ouvertes par des connexions leacutegitimes
Il est aussi possible de transformer lrsquoadresse IP drsquoune machine locale par quelque chose de diffeacuterent Le coupe-feu agrave mascarade permet drsquoeacuteviter les attaques qui consistent agrave essayer des adresses IP dans le but drsquoobtenir une reacuteponse
Le coupe-feu peut ecirctre configureacute pour eacuteliminer les connexions qui font des trucs bizarres comme la transmission drsquoune chaicircne trop longue
Toujours la pile TCPIPToujours la pile TCPIP
Champs du protocole Champs du protocole IPIP
Champs utiles pour le protocole IP
Le protocole IP fonctionne agrave partir de segments
Protocole UDPProtocole UDP(ses champs utiles)(ses champs utiles)
Champs utiles pour le protocole UDP
Protocole TCPProtocole TCP(ses champs utiles)(ses champs utiles)
Champs utiles pour le protocole TCP
Port de lrsquoapplication Port de lrsquoapplication en cours sur la en cours sur la machine sourcemachine source
Port de lrsquoapplication Port de lrsquoapplication sur la machine sur la machine
destinationdestination
Le numeacutero drsquoordre du Le numeacutero drsquoordre du prochain segment (IP) prochain segment (IP)
attenduattendu
URG paquet agrave traiter de faccedilon urgenteACK paquet est un accuseacute de reacuteceptionPSH paquet fonctionne selon la meacutethode push
RST connexion reacuteinitialiseacuteeSYN indique une demande drsquoeacutetablissement de connexionFIN indique une interruption de connexion
Le numeacutero drsquoordre du segment (IP) Le numeacutero drsquoordre du segment (IP) courant si SYN=0 et le numeacutero drsquoordre courant si SYN=0 et le numeacutero drsquoordre
initial pour synchroniser les nos de initial pour synchroniser les nos de seacutequence (ISN)seacutequence (ISN)
DrapeauxDrapeaux
Filtrage extrecircmeFiltrage extrecircmeTCP est orienteacute connexion Pour en eacutetablir une de A vers B on doit transmettre SYN=1 dans le premier paquet de lrsquoeacutetablissement de connexion agrave trois eacutetapes (laquothree-way handshakeraquo)
Un filtrage simple consiste agrave laisser tomber tous les paquets qui ne contiennent que le drapeau SYN=1
Il devient impossible drsquoeacutetablir une connexion TCP de lrsquoexteacuterieur du mur
Si en plus les paquets UDP sont eacutelimineacutes alors la situation devrait ecirctre tregraves sucircre
Cette politique ne permet pas de se connecter au serveur Web cependant
Activer le serveur Web Activer le serveur Web et accegraves agrave un DNSet accegraves agrave un DNS
Pour donner accegraves au serveur Web nous pourrions faire la chose suivante
Nous autorisons une exception agrave la regravegle preacuteceacutedente
Nous autorisons les paquets SYN=1 pour le serveur Web sur le port 80 (port http)
Nous voudrions aussi permettre lrsquoaccegraves agrave un serveur DNS pour la conversion drsquoadresse comme httpwwwiroumontrealca en 13220424179
Il suffit de laisser les paquets UDP vers et depuis au moins un serveur DNS sur le port 53 (UDP)
Le reacutesultatLe reacutesultat
Si le pirate trouve une faille sur le serveur Web alors il pourrait attaquer le reacuteseau local
Pour eacuteviter ceci il faut seacuteparer le serveur Web des autresLe filtrage par paquets est insuffisant
Deux filtres valent mieux Deux filtres valent mieux qursquounqursquoun
ProxyProxyIl y a drsquoautres services sur lrsquoInternet qui utilisent le protocole UDP flux de donneacutees videacuteo jeux videacuteo
De plus excepteacute pour les paquets SYN=1 il est possible de transmettre des paquets TCP aux ordinateurs du reacuteseau local
Le proxy peut rendre les machines du reacuteseau local invisibles pas le filtrage simple de paquets
Approche proxyApproche proxy
Coupe-feu Coupe-feu dynamiquesdynamiques
Les proxys ne sont pas tregraves flexibles Les coupe-feu dynamiques permettent drsquoutiliser les logiciels drsquoune faccedilon plus transparente
Il srsquoagit drsquoun filtre avanceacute qui permet de veacuterifier que les paquets appartiennent agrave une connexion deacutejagrave eacutetablie Crsquoest seulement lorsque crsquoest le cas que le paquet peut passer
Parce qursquoil est conscient drsquoune connexion il peut appliquer NAT etou PAT
NAT Dynamique (laquoDynamic Network Address Translationraquo) Le coupe-feu traduit les adresses du reacuteseau Toutes les machines du reacuteseau possegravedent vu de lrsquoexteacuterieur la mecircme adresse IP
PAT (laquoPort Address Translationraquo) Le coupe-feu traduit les numeacuteros de port par lesquels les paquets arrivent sur les hocirctes locaux
Ces coupe-feu sont appeleacutes coupe-feu avec mascarade
NAT a eacuteteacute mis au point agrave NAT a eacuteteacute mis au point agrave lrsquoorigine pour reacutepondre agrave la lrsquoorigine pour reacutepondre agrave la
peacutenurie drsquoadresses IP avec le peacutenurie drsquoadresses IP avec le protocole IPv4protocole IPv4
NAT a eacuteteacute mis au point agrave NAT a eacuteteacute mis au point agrave lrsquoorigine pour reacutepondre agrave la lrsquoorigine pour reacutepondre agrave la
peacutenurie drsquoadresses IP avec le peacutenurie drsquoadresses IP avec le protocole IPv4protocole IPv4
Coupe-feu agrave Coupe-feu agrave mascarademascarade
Filtrage dynamique eacutetenduFiltrage dynamique eacutetenduLe filtrage des coupe-feu dynamiques nrsquoest pas limiteacute aux protocoles TCPIP
Pour des applications usuelles le filtrage peut srsquoappliquer au protocole
Le coupe-feu peut ainsi deacutetecter des comportements inhabituels
Peut aussi filtrer certaines parties des donneacutees transmises
Pour le protocole HTTP le filtre peut supprimer les applications Java
Pour le protocole SMTP le filtre peut supprimer les piegraveces jointes drsquoun certain type
Conclusion sur les coupe-Conclusion sur les coupe-feufeu
Les coupe-feu permettent de filtrer le trafic entre le reacuteseau local et lrsquoInternet en nrsquoadministrant qursquoune seule machine
Les coupe-feu ne sont cependant pas une solution magique pour reacutesoudre les problegravemes causeacutes par les attaques exteacuterieures agrave un reacuteseau local
Les coupe-feu pour un seul ordinateur personnel peuvent offrir une solution sans trop drsquoentretien
Les coupe-feu neacutecessitent des mises agrave jour freacutequentes lorsque le reacuteseau local est de bonne taille Lorsque le reacuteseau local change la configuration du coupe-feu doit aussi changer
Penser que lrsquoinstallation drsquoun coupe-feu rend votre reacuteseau sucircr est un peu de la penseacutee magique (neacutecessaire mais pas suffisant)
Logiciels malveillantsLogiciels malveillantsUn adversaire peut une fois passeacute le coupe-feu et les autres deacutefenses vouloir installer un programme malveillant sur la machine locale Ceux-ci sont de trois types
Chevaux de Troie Programme qui semble tout agrave fait utile mais qui cache une fonction malveillante Par exemple donne accegraves agrave des donneacutees priveacutees donne des droits drsquoaccegraves non autoriseacutes ou deacutetruit des donneacutees
Virus Programme qui infecte un autre programme sur votre ordinateur Agrave partir du programme infecteacute le virus se propage vers drsquoautres programmes Apregraves un certain temps ou eacuteveacutenement les virus peuvent entreprendre certaines actions Celles-ci peuvent ecirctre lrsquoeacutelimination de fichiers la deacuteteacuterioration de fonctions du systegraveme drsquoexploitation etc
Vers Programmes qui infectent un ordinateur sans avoir agrave ecirctre heacutebergeacutes par drsquoautres programmes Ils sont des programmes indeacutependants Ils se multiplient en exploitant diffeacuterentes ressources Les objectifs de ces programmes peuvent ecirctre lrsquoespionnage lrsquoouverture de portes deacuterobeacutees eacutemettre des requecirctes vers un site Internet jusqursquoagrave saturation
ExempleExempleI Love You Un ver lanceacute en 2000 et qui a atteint 31 millions de machines en 4 jours
Infection Le ver eacutetait dissimuleacute en piegravece jointe drsquoun courriel Cette piegravece jointe eacutetait preacutesenteacutee comme Love-Letter-for-youtxtvbs Lrsquoextension vbs indique que le fichier est un script Visual Basic Comme lrsquoextension nrsquoapparaicirct pas sur Windows les utilisateurs voyaient la piegravece jointe comme Love-Letter-for-youtxt Objectif Le script lisait la liste des contacts de lrsquoutilisateur pour envoyer ce mecircme message agrave ceux-ci La plate-forme Windows eacutetait viseacutee Des fichiers eacutetaient deacutetruits et remplaceacutes par ce script Il changeait la page drsquoaccueil drsquoInternet Explorer pour teacuteleacutecharger un cheval de Troie
ExempleExempleCode Red Un ver qui a infecteacute 359 000 ordinateurs en moins de 14 heures le 19 juillet 2001
Infections Le ver se multipliait en essayant des adresses IP aleacuteatoires pour ensuite infecter des serveurs qui faisaient tourner Microsoft IIS avec une faille de seacutecuriteacute
Objectif Monter une attaque par deacuteni de service (DOS) contre la Maison-Blanche
Lrsquoattaque a eacuteteacute facile agrave repousser car le ver veacuterifiait avant de lancer lrsquoattaque que le serveur agrave lrsquoadresse IP (au lieu du nom de domaine) de la Maison-Blanche eacutecoutait le port 80 (le port des serveurs Web) En changeant lrsquoadresse IP de la Maison-Blanche lrsquoattaque a eacuteteacute repousseacutee
ExempleExempleCabir Est un virusver (deacutemonstration de faisabiliteacute laquoproof of conceptraquo) qui srsquoattaque agrave la teacuteleacutephonie mobile Crsquoest un fichier de 15 ko nommeacute CARIBESIS
Infection Se propage par la teacuteleacutephonie mobile gracircce agrave la technologie Bluetooth et le systegraveme drsquoexploitation Symbian OS
Action Agrave chaque fois que le teacuteleacutephone infecteacute est ouvert le mot laquoCariberaquo srsquoaffiche Il tente de se propager aux peacuteripheacuteriques BlueTooth de la zone du teacuteleacutephone infecteacute Il nrsquoest pas meacutechant nrsquoavait pour but que de deacutemontrer la faisabiliteacute
AntivirusAntivirusLes antivirus sont des programmes qui deacutetectent les virus les vers et les chevaux de Troie sur votre ordinateur Ils les eacuteliminent
Ils visitent les fichiers sur votre disque dans le but de trouver des bouts de programmes reconnus comme dangereux
Ceci est possible eacutetant donneacute une base de donneacutees agrave jour contenant les virus connus sous la forme de signatures de virus Une signature est un motif (laquopatternraquo) qui caracteacuterise un virus donneacute
Un antivirus nrsquoest efficace que si sa base de donneacutees est mise agrave jour constamment Les compagnies drsquoantivirus vont vite pour mettre agrave jour leur base de donneacutees lorsqursquoun nouveau virus est identifieacute
Malheureusement les utilisateurs tardent agrave mettre leur copie agrave jour causant bien des infections
Tromper les antivirusTromper les antivirusDe nouveaux virus utilisent les meacutethodes de la cryptographie pour deacutejouer les antivirus
Des virus sont chiffreacutes pour les rendre non reconnaissables par les antivirus car ils ont toujours un aspect diffeacuterent
Ces virus ont un petit code en clair qui permet de les deacutecoder et de les charger en meacutemoire pour ecirctre exeacutecuteacutes Ce code est ce que les antivirus doivent deacutetecter
Ces virus sont de trois types
Oligomorphique Le virus est chiffreacute agrave chaque reacuteplication
Polymorphique Le virus est chiffreacute et la routine de deacutechiffrement est capable de changer certaines de ses instructions au fil des reacuteplications
Meacutetamorphique Le virus change de forme au fil des reacuteplications
IntrusionsIntrusionsPour qursquoun virus ver ou cheval de Troie soit deacuteleacutetegravere encore faut-il qursquoil srsquoinstalle sur votre machine
Mecircme si un adversaire peut parler agrave votre machine ceci nrsquoimplique pas qursquoil peut installer un logiciel sur celle-ci encore moins srsquoil nrsquoen est pas un utilisateur
Pour ce faire les adversaires peuvent essayer diverses strateacutegies
Faiblesses du systegraveme drsquoexploitation ou du logiciel du serveur Nous allons voir un exemple de ce type drsquoattaque attaques par deacutebordement Une page Web nrsquoest pas un objet passif Elle peut contenir du code (JavaScript Perl etc) malveillant
Tromper lrsquoutilisateur Crsquoest peut-ecirctre plus simple Cas speacutecial du piratage psychologique Cliquer ici pour installer un joli logiciel il faut espeacuterer que lrsquoantivirus deacutetecte ceci avant qursquoil ne soit trop tard
Deacutetecter les intrusionsDeacutetecter les intrusionsUne faccedilon diffeacuterente de deacutetecter les logiciels ou utilisateurs malveillants consiste agrave deacutetecter les comportements malveillants
Un systegraveme peut surveiller les processus pour deacutetecter les comportements malveillants
Une telle approche a lrsquoavantage de ne pas deacutependre drsquoinformation sur les virus et les attaques
Un coupe-feu dynamique est un exemple de cette approche
Il surveille les connexions et tente de deacuteterminer si un client transmet des donneacutees agrave contenu suspect (comme la taille)
Requecirctes Requecirctes malveillantesmalveillantes
dlkjfdsflkjsd dlkjfdsflkjsd fjdskl gfjdlskewqewewewewhdfbfbfbww fjdskl gfjdlskewqewewewewhdfbfbfbww jaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfjaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfwewqewqewqewqewqewqeweekjwweeqqqsxcswdswewqewqewqewqewqewqeweekjwweeqqqsxcswdsdddds dddds ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqqwwq qwwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewqeweekwqwqwefdscxcccj qeweekwqwqwefdscxcccj ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxzcwq zcwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfssaDSADSADSsfghdskjgfhdsgfihoiehjrfssaDSADSADSADDSDSDSSDSDSADDSDSDSSDSDSIl arrive que de longues requecirctes puissent faire planter un systegraveme
mal programmeacute Un adversaire peut donc soumettre des chaicircnes tregraves longues dans le but de rendre le systegraveme inopeacuterant (ou mecircme pire assujetti) comme nous le verrons plus loin
Et agrave peu pregraves nrsquoimporte qui Et agrave peu pregraves nrsquoimporte qui peut proposer un service peut proposer un service
comme celui-ci comme celui-ci
Un coupe-feu peut filtrer les requecirctes anormalement longues pour les ignorer Mecircme les systegravemes avec programmes erroneacutes seront agrave lrsquoabri de ce type drsquoattaque
SELECT SELECT FROM Passwords FROM Passwords WHERE user=rsquoWHERE user=rsquoJugheadJugheadrsquo AND password=rsquorsquo AND password=rsquoxrsquo xrsquo OR lsquo1rsquo=lsquo1OR lsquo1rsquo=lsquo1rsquorsquo
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Requecirctes Requecirctes malveillantesmalveillantes
HTTPSHTTPS
Password Password xrsquo OR xrsquo OR lsquo1rsquo=rsquo1lsquo1rsquo=rsquo1
Un coupe-feu dynamique peut filtrer des requecirctes bizarres comme xrsquo OR lsquo1rsquo=rsquo1xrsquo OR lsquo1rsquo=rsquo1
Ceci est beaucoup plus difficile agrave Ceci est beaucoup plus difficile agrave reacutealiser par un coupe-feu que reacutealiser par un coupe-feu que
lrsquoexemple preacuteceacutedentlrsquoexemple preacuteceacutedent
Approche Approche comportementalecomportementaleUne autre approche pour la deacutetection drsquointrusions consiste agrave
observer certains aspects du comportement des utilisateurs et programmes
activiteacutes de connexion et de session
activiteacutes relieacutees agrave lrsquoexeacutecution de programme et drsquoaccegraves aux fichiers
Il y a deux approches pour la deacutetection de comportements suspects
Par regravegles (rule-based) Un ensemble de regravegles deacutecrivant les comportements normaux est eacutetabli Les comportements anormaux (trop loin des normaux) sont rejeteacutes
Statistique Des statistiques sur les utilisateurs normaux sont creacuteeacutees Le comportement de lrsquoutilisateurprogramme observeacute est compareacute aux statistiques Un comportement montrant un trop grand eacutecart avec les statistiques est rejeteacute
Problegravemes avec les Problegravemes avec les systegravemes de deacutetection systegravemes de deacutetection
drsquointrusion (IDS)drsquointrusion (IDS)Le problegraveme majeur avec lrsquoapproche est le mecircme qursquoavec la biomeacutetrie Le systegraveme qui surveille doit ecirctre assez toleacuterant pour autoriser les comportements normaux mais suffisamment restrictif pour attraper les acteurs malveillants
Ce problegraveme nrsquoest pas tregraves bien compris et les solutions proposeacutees ne sont pas tout agrave fait satisfaisantes
La deacutetection drsquointrusion est bien inutile si le systegraveme ne reacuteagit pas de la bonne faccedilon lorsqursquoune intrusion est deacutetecteacutee La partie du systegraveme qui alerte lrsquoadministrateur qui interdit lrsquoaccegraves qui effectue quelque autre tacircche pour eacuteliminer la menace est tout aussi importante que celle qui deacutetecte
Le pot de mielLe pot de miel
Le pot de miel (laquohoney potraquo) est un truc pratique pour la deacutetection drsquointrusions
Une ressource bidon qui semble inteacuteressante pour un adversaire est creacuteeacutee
Puisque celle-ci est bidon on peut supposer que si quelqursquoun y accegravede crsquoest qursquoil srsquoadonne agrave une activiteacute malveillante
En consultant les traces il peut ecirctre possible de retrouver lrsquoutilisateur malveillant
Ceci peut se faire agrave lrsquoinsu de lrsquointrus
ExempleExemple
Un hocircpital ameacutericain soupccedilonnait que quelqursquoun consultait les dossiers de patients sans en avoir lrsquoautorisation
Ils ont creacuteeacute des fichiers pour des patients qui nrsquoexistent pas
Les accegraves agrave ces fichiers ont alors eacuteteacute retraceacutes jusqursquoagrave lrsquoutilisateur malveillant
Les attaques de lrsquointeacuterieurLes attaques de lrsquointeacuterieurPresque tout ce que nous avons vu a pour but la protection contre les attaques venues de lrsquoexteacuterieur
Les attaques peuvent tregraves bien eacutemaner de lrsquointeacuterieur et peuvent causer des problegravemes seacuterieux
Le premiegravere chose agrave comprendre est qursquoil nrsquoest pas possible de se preacutemunir contre ces attaques si les utilisateurs ont tous les droits sur le systegraveme cible
Il est donc neacutecessaire qursquoune partie du systegraveme soit garantie de fonctionner selon ses speacutecifications mecircme sous attaque
Sans cette hypothegravese le systegraveme est sous le controcircle complet de lrsquoadversaire
Base informatique Base informatique seacutecuriseacuteeseacutecuriseacutee
laquotrusted computing baseraquo (TCB)laquotrusted computing baseraquo (TCB)
Une base seacutecuriseacutee peut ecirctre eacutetablie en utilisant de la seacutecuriteacute mateacuterielle logicielle par mot de passe par exemple
Le rocircle de ce systegraveme de base est de controcircler lrsquoaccegraves aux ressources et le flux drsquoinformation sur celui-ci
Pour bien comprendre comment ces protections fonctionnent nous devons mettre de lrsquoordre dans nos ideacutees Nous devons voir agrave quoi ressemble une politique de seacutecuriteacute dans ce sceacutenario
Crsquoest notre prochain sujet
Les limites du filtrage de Les limites du filtrage de paquetspaquetsEacutevidemment toutes les connexions ne peuvent ecirctre
eacutelimineacutees les serveurs Web et de courriel doivent bien ecirctre autoriseacutes agrave communiquer (ils ont besoin entre autres choses
de communiquer avec le serveur DNS via UDP)Nous pouvons deacuteplacer ce serveur Nous pouvons deacuteplacer ce serveur agrave lrsquoexteacuterieur mais comment alors agrave lrsquoexteacuterieur mais comment alors
le mettre agrave jourle mettre agrave jour
Nous pouvons deacuteplacer ce serveur Nous pouvons deacuteplacer ce serveur agrave lrsquoexteacuterieur mais comment alors agrave lrsquoexteacuterieur mais comment alors
le mettre agrave jourle mettre agrave jour
La bonne nouvelle est que toutes les La bonne nouvelle est que toutes les attaques devront passer par ce attaques devront passer par ce serveur si le filtrage est strict serveur si le filtrage est strict
La bonne nouvelle est que toutes les La bonne nouvelle est que toutes les attaques devront passer par ce attaques devront passer par ce serveur si le filtrage est strict serveur si le filtrage est strict
pourrait ecirctre possible si le pourrait ecirctre possible si le filtrage est trop lacircchefiltrage est trop lacircche
pourrait ecirctre possible si le pourrait ecirctre possible si le filtrage est trop lacircchefiltrage est trop lacircche
DMZ (laquoDemilitarized zoneraquo) une zone laquodeacutemilitariseacuteeraquo entre lrsquoInternet et le reacuteseau interne dans laquelle on peut placer les serveurs WEB accessibles depuis lrsquoexteacuterieur La zone est munie drsquoun coupe-feu pour cette tacircche Les coupe-feu peuvent avoir une sortie DMZ pour le serveur Web
Politiques de filtragePolitiques de filtrageSouvenons-nous que les paquets contiennent les informations suivantes
les donneacutees
lrsquoadresse IP drsquoorigine et de destination (incluant le port de destination)
lrsquoinformation sur le protocole par lequel ils doivent ecirctre manipuleacutes
lrsquoinformation sur des erreurs eacuteventuelles et
de lrsquoinformation sur le type de donneacutees en transit
Un politique de filtrage eacutenonce une liste drsquoautorisations et drsquointerdictions des types
autoriseinterdit les paquets selon lrsquoadresse IP drsquooriginedestination
autoriseinterdit les paquets selon leur port de destination
autoriseinterdit les paquets selon le protocole
Conclusion Conclusion (filtrage de paquets)(filtrage de paquets)
Pour ecirctre complegravetement sucircr le filtrage de paquets doit ecirctre tregraves restrictif ce qui peut trop limiter lrsquoaccegraves au reacuteseau
Si le filtrage est plus lacircche alors il pourrait devenir possible agrave lrsquoadversaire de communiquer avec des machines du reacuteseau local
Ceci demande agrave lrsquoadversaire de tenter beaucoup drsquoadresses IP jusqursquoagrave ce qursquoune machine reacuteponde
En conclusion les coupe-feu devraient faire quelque chose de plus intelligent que le simple filtrage
Ils doivent examiner les paquets en deacutetail pour deacutecider quoi faire avec ceux-ci Ils devraient mecircme ecirctre capables de modifier des paquets si neacutecessaire
Coupe-feu proxyCoupe-feu proxyLes proxy (laquoserveurs mandatairesraquo) permettent de faire du filtrage intelligent Il ne permet aucune connexion sur une machine locale agrave partir de lrsquoexteacuterieur
Le proxy gegravere toutes les connexions au nom des machines de reacuteseau local
Si une machine locale a un logiciel qui deacutesire acceacuteder agrave lrsquoInternet alors celui-ci devra ecirctre configureacute pour communiquer avec le coupe-feu agrave la place Le coupe-feu eacutetablira alors la connexion
Vu de lrsquoexteacuterieur le reacuteseau local est complegravetement cacheacute derriegravere le coupe-feu Seul celui-ci est visible
Essayer plusieurs adresses IP pour espeacuterer une reacuteponse ne fonctionne pas ici
Une attaque doit srsquoen prendre au proxy Une machine est plus facile agrave proteacuteger que plusieurs
Proxy en imagesProxy en imagesLe proxy comme une zone tampon entre
lrsquoInternet et un reacuteseau local
Pendant une connexion internet
Cacher votre adresse Cacher votre adresse IPIPVotre adresse IP reacutevegravele votre point drsquoentreacutee sur lrsquoInternet
Peut permettre de retrouver votre fournisseur le reacuteseau de votre employeur votre eacutecole ou votre terminal public
Il srsquoagit de lrsquoidentiteacute de votre machine pendant que vous ecirctes en ligne Sa porte sur le monde
Vous pouvez dissimuler votre adresse IP sur le Web en utilisant un serveur proxy anonyme
Un serveur proxy speacutecialiseacute pour la navigation Web anonyme utilise sa propre adresse IP agrave la place de la vocirctre pour chaque requecircte sortante
Il peut mecircme chiffrer les communications Web ne permettant plus la surveillance de vos actions
Proxy pour et contre Proxy pour et contre
Un proxy permet de proteacuteger un reacuteseau local drsquoune faccedilon tregraves efficace Un seul point faible neacutecessite notre attention
Cette solution nrsquoest pas tregraves flexible Les logiciels clients des machines locales doivent savoir comment utiliser un proxy Sinon rien ne fonctionnera puisque celles-ci sont invisibles
Nous pourrions peut-ecirctre faire croire au client que le service est donneacute par le coupe-feu mais celui-ci doit savoir quoi faire pour acheminer la connexion vers sa destination Ceci demande de configurer chaque type de connexion
Exemple de Proxy TorExemple de Proxy Tor
Coupe-feu dynamique Coupe-feu dynamique (laquostateful firewallraquo)(laquostateful firewallraquo)
Nous avons vu que les coupe-feu statiques agrave filtrage de paquets interviennent en fonction de paquets individuels
Un serveur FTP va ouvrir des connexions sur des ports de hautes valeurs Le filtrage de paquets ne peut pas savoir qursquoune connexion sur le port 6783 appartient agrave une connexion FTP leacutegitime Ces paquets seront eacutelimineacutes
Le coupe-feu dynamique reacutesout ce problegraveme en meacutemorisant les connexions ouvertes par des connexions leacutegitimes
Il est aussi possible de transformer lrsquoadresse IP drsquoune machine locale par quelque chose de diffeacuterent Le coupe-feu agrave mascarade permet drsquoeacuteviter les attaques qui consistent agrave essayer des adresses IP dans le but drsquoobtenir une reacuteponse
Le coupe-feu peut ecirctre configureacute pour eacuteliminer les connexions qui font des trucs bizarres comme la transmission drsquoune chaicircne trop longue
Toujours la pile TCPIPToujours la pile TCPIP
Champs du protocole Champs du protocole IPIP
Champs utiles pour le protocole IP
Le protocole IP fonctionne agrave partir de segments
Protocole UDPProtocole UDP(ses champs utiles)(ses champs utiles)
Champs utiles pour le protocole UDP
Protocole TCPProtocole TCP(ses champs utiles)(ses champs utiles)
Champs utiles pour le protocole TCP
Port de lrsquoapplication Port de lrsquoapplication en cours sur la en cours sur la machine sourcemachine source
Port de lrsquoapplication Port de lrsquoapplication sur la machine sur la machine
destinationdestination
Le numeacutero drsquoordre du Le numeacutero drsquoordre du prochain segment (IP) prochain segment (IP)
attenduattendu
URG paquet agrave traiter de faccedilon urgenteACK paquet est un accuseacute de reacuteceptionPSH paquet fonctionne selon la meacutethode push
RST connexion reacuteinitialiseacuteeSYN indique une demande drsquoeacutetablissement de connexionFIN indique une interruption de connexion
Le numeacutero drsquoordre du segment (IP) Le numeacutero drsquoordre du segment (IP) courant si SYN=0 et le numeacutero drsquoordre courant si SYN=0 et le numeacutero drsquoordre
initial pour synchroniser les nos de initial pour synchroniser les nos de seacutequence (ISN)seacutequence (ISN)
DrapeauxDrapeaux
Filtrage extrecircmeFiltrage extrecircmeTCP est orienteacute connexion Pour en eacutetablir une de A vers B on doit transmettre SYN=1 dans le premier paquet de lrsquoeacutetablissement de connexion agrave trois eacutetapes (laquothree-way handshakeraquo)
Un filtrage simple consiste agrave laisser tomber tous les paquets qui ne contiennent que le drapeau SYN=1
Il devient impossible drsquoeacutetablir une connexion TCP de lrsquoexteacuterieur du mur
Si en plus les paquets UDP sont eacutelimineacutes alors la situation devrait ecirctre tregraves sucircre
Cette politique ne permet pas de se connecter au serveur Web cependant
Activer le serveur Web Activer le serveur Web et accegraves agrave un DNSet accegraves agrave un DNS
Pour donner accegraves au serveur Web nous pourrions faire la chose suivante
Nous autorisons une exception agrave la regravegle preacuteceacutedente
Nous autorisons les paquets SYN=1 pour le serveur Web sur le port 80 (port http)
Nous voudrions aussi permettre lrsquoaccegraves agrave un serveur DNS pour la conversion drsquoadresse comme httpwwwiroumontrealca en 13220424179
Il suffit de laisser les paquets UDP vers et depuis au moins un serveur DNS sur le port 53 (UDP)
Le reacutesultatLe reacutesultat
Si le pirate trouve une faille sur le serveur Web alors il pourrait attaquer le reacuteseau local
Pour eacuteviter ceci il faut seacuteparer le serveur Web des autresLe filtrage par paquets est insuffisant
Deux filtres valent mieux Deux filtres valent mieux qursquounqursquoun
ProxyProxyIl y a drsquoautres services sur lrsquoInternet qui utilisent le protocole UDP flux de donneacutees videacuteo jeux videacuteo
De plus excepteacute pour les paquets SYN=1 il est possible de transmettre des paquets TCP aux ordinateurs du reacuteseau local
Le proxy peut rendre les machines du reacuteseau local invisibles pas le filtrage simple de paquets
Approche proxyApproche proxy
Coupe-feu Coupe-feu dynamiquesdynamiques
Les proxys ne sont pas tregraves flexibles Les coupe-feu dynamiques permettent drsquoutiliser les logiciels drsquoune faccedilon plus transparente
Il srsquoagit drsquoun filtre avanceacute qui permet de veacuterifier que les paquets appartiennent agrave une connexion deacutejagrave eacutetablie Crsquoest seulement lorsque crsquoest le cas que le paquet peut passer
Parce qursquoil est conscient drsquoune connexion il peut appliquer NAT etou PAT
NAT Dynamique (laquoDynamic Network Address Translationraquo) Le coupe-feu traduit les adresses du reacuteseau Toutes les machines du reacuteseau possegravedent vu de lrsquoexteacuterieur la mecircme adresse IP
PAT (laquoPort Address Translationraquo) Le coupe-feu traduit les numeacuteros de port par lesquels les paquets arrivent sur les hocirctes locaux
Ces coupe-feu sont appeleacutes coupe-feu avec mascarade
NAT a eacuteteacute mis au point agrave NAT a eacuteteacute mis au point agrave lrsquoorigine pour reacutepondre agrave la lrsquoorigine pour reacutepondre agrave la
peacutenurie drsquoadresses IP avec le peacutenurie drsquoadresses IP avec le protocole IPv4protocole IPv4
NAT a eacuteteacute mis au point agrave NAT a eacuteteacute mis au point agrave lrsquoorigine pour reacutepondre agrave la lrsquoorigine pour reacutepondre agrave la
peacutenurie drsquoadresses IP avec le peacutenurie drsquoadresses IP avec le protocole IPv4protocole IPv4
Coupe-feu agrave Coupe-feu agrave mascarademascarade
Filtrage dynamique eacutetenduFiltrage dynamique eacutetenduLe filtrage des coupe-feu dynamiques nrsquoest pas limiteacute aux protocoles TCPIP
Pour des applications usuelles le filtrage peut srsquoappliquer au protocole
Le coupe-feu peut ainsi deacutetecter des comportements inhabituels
Peut aussi filtrer certaines parties des donneacutees transmises
Pour le protocole HTTP le filtre peut supprimer les applications Java
Pour le protocole SMTP le filtre peut supprimer les piegraveces jointes drsquoun certain type
Conclusion sur les coupe-Conclusion sur les coupe-feufeu
Les coupe-feu permettent de filtrer le trafic entre le reacuteseau local et lrsquoInternet en nrsquoadministrant qursquoune seule machine
Les coupe-feu ne sont cependant pas une solution magique pour reacutesoudre les problegravemes causeacutes par les attaques exteacuterieures agrave un reacuteseau local
Les coupe-feu pour un seul ordinateur personnel peuvent offrir une solution sans trop drsquoentretien
Les coupe-feu neacutecessitent des mises agrave jour freacutequentes lorsque le reacuteseau local est de bonne taille Lorsque le reacuteseau local change la configuration du coupe-feu doit aussi changer
Penser que lrsquoinstallation drsquoun coupe-feu rend votre reacuteseau sucircr est un peu de la penseacutee magique (neacutecessaire mais pas suffisant)
Logiciels malveillantsLogiciels malveillantsUn adversaire peut une fois passeacute le coupe-feu et les autres deacutefenses vouloir installer un programme malveillant sur la machine locale Ceux-ci sont de trois types
Chevaux de Troie Programme qui semble tout agrave fait utile mais qui cache une fonction malveillante Par exemple donne accegraves agrave des donneacutees priveacutees donne des droits drsquoaccegraves non autoriseacutes ou deacutetruit des donneacutees
Virus Programme qui infecte un autre programme sur votre ordinateur Agrave partir du programme infecteacute le virus se propage vers drsquoautres programmes Apregraves un certain temps ou eacuteveacutenement les virus peuvent entreprendre certaines actions Celles-ci peuvent ecirctre lrsquoeacutelimination de fichiers la deacuteteacuterioration de fonctions du systegraveme drsquoexploitation etc
Vers Programmes qui infectent un ordinateur sans avoir agrave ecirctre heacutebergeacutes par drsquoautres programmes Ils sont des programmes indeacutependants Ils se multiplient en exploitant diffeacuterentes ressources Les objectifs de ces programmes peuvent ecirctre lrsquoespionnage lrsquoouverture de portes deacuterobeacutees eacutemettre des requecirctes vers un site Internet jusqursquoagrave saturation
ExempleExempleI Love You Un ver lanceacute en 2000 et qui a atteint 31 millions de machines en 4 jours
Infection Le ver eacutetait dissimuleacute en piegravece jointe drsquoun courriel Cette piegravece jointe eacutetait preacutesenteacutee comme Love-Letter-for-youtxtvbs Lrsquoextension vbs indique que le fichier est un script Visual Basic Comme lrsquoextension nrsquoapparaicirct pas sur Windows les utilisateurs voyaient la piegravece jointe comme Love-Letter-for-youtxt Objectif Le script lisait la liste des contacts de lrsquoutilisateur pour envoyer ce mecircme message agrave ceux-ci La plate-forme Windows eacutetait viseacutee Des fichiers eacutetaient deacutetruits et remplaceacutes par ce script Il changeait la page drsquoaccueil drsquoInternet Explorer pour teacuteleacutecharger un cheval de Troie
ExempleExempleCode Red Un ver qui a infecteacute 359 000 ordinateurs en moins de 14 heures le 19 juillet 2001
Infections Le ver se multipliait en essayant des adresses IP aleacuteatoires pour ensuite infecter des serveurs qui faisaient tourner Microsoft IIS avec une faille de seacutecuriteacute
Objectif Monter une attaque par deacuteni de service (DOS) contre la Maison-Blanche
Lrsquoattaque a eacuteteacute facile agrave repousser car le ver veacuterifiait avant de lancer lrsquoattaque que le serveur agrave lrsquoadresse IP (au lieu du nom de domaine) de la Maison-Blanche eacutecoutait le port 80 (le port des serveurs Web) En changeant lrsquoadresse IP de la Maison-Blanche lrsquoattaque a eacuteteacute repousseacutee
ExempleExempleCabir Est un virusver (deacutemonstration de faisabiliteacute laquoproof of conceptraquo) qui srsquoattaque agrave la teacuteleacutephonie mobile Crsquoest un fichier de 15 ko nommeacute CARIBESIS
Infection Se propage par la teacuteleacutephonie mobile gracircce agrave la technologie Bluetooth et le systegraveme drsquoexploitation Symbian OS
Action Agrave chaque fois que le teacuteleacutephone infecteacute est ouvert le mot laquoCariberaquo srsquoaffiche Il tente de se propager aux peacuteripheacuteriques BlueTooth de la zone du teacuteleacutephone infecteacute Il nrsquoest pas meacutechant nrsquoavait pour but que de deacutemontrer la faisabiliteacute
AntivirusAntivirusLes antivirus sont des programmes qui deacutetectent les virus les vers et les chevaux de Troie sur votre ordinateur Ils les eacuteliminent
Ils visitent les fichiers sur votre disque dans le but de trouver des bouts de programmes reconnus comme dangereux
Ceci est possible eacutetant donneacute une base de donneacutees agrave jour contenant les virus connus sous la forme de signatures de virus Une signature est un motif (laquopatternraquo) qui caracteacuterise un virus donneacute
Un antivirus nrsquoest efficace que si sa base de donneacutees est mise agrave jour constamment Les compagnies drsquoantivirus vont vite pour mettre agrave jour leur base de donneacutees lorsqursquoun nouveau virus est identifieacute
Malheureusement les utilisateurs tardent agrave mettre leur copie agrave jour causant bien des infections
Tromper les antivirusTromper les antivirusDe nouveaux virus utilisent les meacutethodes de la cryptographie pour deacutejouer les antivirus
Des virus sont chiffreacutes pour les rendre non reconnaissables par les antivirus car ils ont toujours un aspect diffeacuterent
Ces virus ont un petit code en clair qui permet de les deacutecoder et de les charger en meacutemoire pour ecirctre exeacutecuteacutes Ce code est ce que les antivirus doivent deacutetecter
Ces virus sont de trois types
Oligomorphique Le virus est chiffreacute agrave chaque reacuteplication
Polymorphique Le virus est chiffreacute et la routine de deacutechiffrement est capable de changer certaines de ses instructions au fil des reacuteplications
Meacutetamorphique Le virus change de forme au fil des reacuteplications
IntrusionsIntrusionsPour qursquoun virus ver ou cheval de Troie soit deacuteleacutetegravere encore faut-il qursquoil srsquoinstalle sur votre machine
Mecircme si un adversaire peut parler agrave votre machine ceci nrsquoimplique pas qursquoil peut installer un logiciel sur celle-ci encore moins srsquoil nrsquoen est pas un utilisateur
Pour ce faire les adversaires peuvent essayer diverses strateacutegies
Faiblesses du systegraveme drsquoexploitation ou du logiciel du serveur Nous allons voir un exemple de ce type drsquoattaque attaques par deacutebordement Une page Web nrsquoest pas un objet passif Elle peut contenir du code (JavaScript Perl etc) malveillant
Tromper lrsquoutilisateur Crsquoest peut-ecirctre plus simple Cas speacutecial du piratage psychologique Cliquer ici pour installer un joli logiciel il faut espeacuterer que lrsquoantivirus deacutetecte ceci avant qursquoil ne soit trop tard
Deacutetecter les intrusionsDeacutetecter les intrusionsUne faccedilon diffeacuterente de deacutetecter les logiciels ou utilisateurs malveillants consiste agrave deacutetecter les comportements malveillants
Un systegraveme peut surveiller les processus pour deacutetecter les comportements malveillants
Une telle approche a lrsquoavantage de ne pas deacutependre drsquoinformation sur les virus et les attaques
Un coupe-feu dynamique est un exemple de cette approche
Il surveille les connexions et tente de deacuteterminer si un client transmet des donneacutees agrave contenu suspect (comme la taille)
Requecirctes Requecirctes malveillantesmalveillantes
dlkjfdsflkjsd dlkjfdsflkjsd fjdskl gfjdlskewqewewewewhdfbfbfbww fjdskl gfjdlskewqewewewewhdfbfbfbww jaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfjaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfwewqewqewqewqewqewqeweekjwweeqqqsxcswdswewqewqewqewqewqewqeweekjwweeqqqsxcswdsdddds dddds ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqqwwq qwwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewqeweekwqwqwefdscxcccj qeweekwqwqwefdscxcccj ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxzcwq zcwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfssaDSADSADSsfghdskjgfhdsgfihoiehjrfssaDSADSADSADDSDSDSSDSDSADDSDSDSSDSDSIl arrive que de longues requecirctes puissent faire planter un systegraveme
mal programmeacute Un adversaire peut donc soumettre des chaicircnes tregraves longues dans le but de rendre le systegraveme inopeacuterant (ou mecircme pire assujetti) comme nous le verrons plus loin
Et agrave peu pregraves nrsquoimporte qui Et agrave peu pregraves nrsquoimporte qui peut proposer un service peut proposer un service
comme celui-ci comme celui-ci
Un coupe-feu peut filtrer les requecirctes anormalement longues pour les ignorer Mecircme les systegravemes avec programmes erroneacutes seront agrave lrsquoabri de ce type drsquoattaque
SELECT SELECT FROM Passwords FROM Passwords WHERE user=rsquoWHERE user=rsquoJugheadJugheadrsquo AND password=rsquorsquo AND password=rsquoxrsquo xrsquo OR lsquo1rsquo=lsquo1OR lsquo1rsquo=lsquo1rsquorsquo
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Requecirctes Requecirctes malveillantesmalveillantes
HTTPSHTTPS
Password Password xrsquo OR xrsquo OR lsquo1rsquo=rsquo1lsquo1rsquo=rsquo1
Un coupe-feu dynamique peut filtrer des requecirctes bizarres comme xrsquo OR lsquo1rsquo=rsquo1xrsquo OR lsquo1rsquo=rsquo1
Ceci est beaucoup plus difficile agrave Ceci est beaucoup plus difficile agrave reacutealiser par un coupe-feu que reacutealiser par un coupe-feu que
lrsquoexemple preacuteceacutedentlrsquoexemple preacuteceacutedent
Approche Approche comportementalecomportementaleUne autre approche pour la deacutetection drsquointrusions consiste agrave
observer certains aspects du comportement des utilisateurs et programmes
activiteacutes de connexion et de session
activiteacutes relieacutees agrave lrsquoexeacutecution de programme et drsquoaccegraves aux fichiers
Il y a deux approches pour la deacutetection de comportements suspects
Par regravegles (rule-based) Un ensemble de regravegles deacutecrivant les comportements normaux est eacutetabli Les comportements anormaux (trop loin des normaux) sont rejeteacutes
Statistique Des statistiques sur les utilisateurs normaux sont creacuteeacutees Le comportement de lrsquoutilisateurprogramme observeacute est compareacute aux statistiques Un comportement montrant un trop grand eacutecart avec les statistiques est rejeteacute
Problegravemes avec les Problegravemes avec les systegravemes de deacutetection systegravemes de deacutetection
drsquointrusion (IDS)drsquointrusion (IDS)Le problegraveme majeur avec lrsquoapproche est le mecircme qursquoavec la biomeacutetrie Le systegraveme qui surveille doit ecirctre assez toleacuterant pour autoriser les comportements normaux mais suffisamment restrictif pour attraper les acteurs malveillants
Ce problegraveme nrsquoest pas tregraves bien compris et les solutions proposeacutees ne sont pas tout agrave fait satisfaisantes
La deacutetection drsquointrusion est bien inutile si le systegraveme ne reacuteagit pas de la bonne faccedilon lorsqursquoune intrusion est deacutetecteacutee La partie du systegraveme qui alerte lrsquoadministrateur qui interdit lrsquoaccegraves qui effectue quelque autre tacircche pour eacuteliminer la menace est tout aussi importante que celle qui deacutetecte
Le pot de mielLe pot de miel
Le pot de miel (laquohoney potraquo) est un truc pratique pour la deacutetection drsquointrusions
Une ressource bidon qui semble inteacuteressante pour un adversaire est creacuteeacutee
Puisque celle-ci est bidon on peut supposer que si quelqursquoun y accegravede crsquoest qursquoil srsquoadonne agrave une activiteacute malveillante
En consultant les traces il peut ecirctre possible de retrouver lrsquoutilisateur malveillant
Ceci peut se faire agrave lrsquoinsu de lrsquointrus
ExempleExemple
Un hocircpital ameacutericain soupccedilonnait que quelqursquoun consultait les dossiers de patients sans en avoir lrsquoautorisation
Ils ont creacuteeacute des fichiers pour des patients qui nrsquoexistent pas
Les accegraves agrave ces fichiers ont alors eacuteteacute retraceacutes jusqursquoagrave lrsquoutilisateur malveillant
Les attaques de lrsquointeacuterieurLes attaques de lrsquointeacuterieurPresque tout ce que nous avons vu a pour but la protection contre les attaques venues de lrsquoexteacuterieur
Les attaques peuvent tregraves bien eacutemaner de lrsquointeacuterieur et peuvent causer des problegravemes seacuterieux
Le premiegravere chose agrave comprendre est qursquoil nrsquoest pas possible de se preacutemunir contre ces attaques si les utilisateurs ont tous les droits sur le systegraveme cible
Il est donc neacutecessaire qursquoune partie du systegraveme soit garantie de fonctionner selon ses speacutecifications mecircme sous attaque
Sans cette hypothegravese le systegraveme est sous le controcircle complet de lrsquoadversaire
Base informatique Base informatique seacutecuriseacuteeseacutecuriseacutee
laquotrusted computing baseraquo (TCB)laquotrusted computing baseraquo (TCB)
Une base seacutecuriseacutee peut ecirctre eacutetablie en utilisant de la seacutecuriteacute mateacuterielle logicielle par mot de passe par exemple
Le rocircle de ce systegraveme de base est de controcircler lrsquoaccegraves aux ressources et le flux drsquoinformation sur celui-ci
Pour bien comprendre comment ces protections fonctionnent nous devons mettre de lrsquoordre dans nos ideacutees Nous devons voir agrave quoi ressemble une politique de seacutecuriteacute dans ce sceacutenario
Crsquoest notre prochain sujet
Politiques de filtragePolitiques de filtrageSouvenons-nous que les paquets contiennent les informations suivantes
les donneacutees
lrsquoadresse IP drsquoorigine et de destination (incluant le port de destination)
lrsquoinformation sur le protocole par lequel ils doivent ecirctre manipuleacutes
lrsquoinformation sur des erreurs eacuteventuelles et
de lrsquoinformation sur le type de donneacutees en transit
Un politique de filtrage eacutenonce une liste drsquoautorisations et drsquointerdictions des types
autoriseinterdit les paquets selon lrsquoadresse IP drsquooriginedestination
autoriseinterdit les paquets selon leur port de destination
autoriseinterdit les paquets selon le protocole
Conclusion Conclusion (filtrage de paquets)(filtrage de paquets)
Pour ecirctre complegravetement sucircr le filtrage de paquets doit ecirctre tregraves restrictif ce qui peut trop limiter lrsquoaccegraves au reacuteseau
Si le filtrage est plus lacircche alors il pourrait devenir possible agrave lrsquoadversaire de communiquer avec des machines du reacuteseau local
Ceci demande agrave lrsquoadversaire de tenter beaucoup drsquoadresses IP jusqursquoagrave ce qursquoune machine reacuteponde
En conclusion les coupe-feu devraient faire quelque chose de plus intelligent que le simple filtrage
Ils doivent examiner les paquets en deacutetail pour deacutecider quoi faire avec ceux-ci Ils devraient mecircme ecirctre capables de modifier des paquets si neacutecessaire
Coupe-feu proxyCoupe-feu proxyLes proxy (laquoserveurs mandatairesraquo) permettent de faire du filtrage intelligent Il ne permet aucune connexion sur une machine locale agrave partir de lrsquoexteacuterieur
Le proxy gegravere toutes les connexions au nom des machines de reacuteseau local
Si une machine locale a un logiciel qui deacutesire acceacuteder agrave lrsquoInternet alors celui-ci devra ecirctre configureacute pour communiquer avec le coupe-feu agrave la place Le coupe-feu eacutetablira alors la connexion
Vu de lrsquoexteacuterieur le reacuteseau local est complegravetement cacheacute derriegravere le coupe-feu Seul celui-ci est visible
Essayer plusieurs adresses IP pour espeacuterer une reacuteponse ne fonctionne pas ici
Une attaque doit srsquoen prendre au proxy Une machine est plus facile agrave proteacuteger que plusieurs
Proxy en imagesProxy en imagesLe proxy comme une zone tampon entre
lrsquoInternet et un reacuteseau local
Pendant une connexion internet
Cacher votre adresse Cacher votre adresse IPIPVotre adresse IP reacutevegravele votre point drsquoentreacutee sur lrsquoInternet
Peut permettre de retrouver votre fournisseur le reacuteseau de votre employeur votre eacutecole ou votre terminal public
Il srsquoagit de lrsquoidentiteacute de votre machine pendant que vous ecirctes en ligne Sa porte sur le monde
Vous pouvez dissimuler votre adresse IP sur le Web en utilisant un serveur proxy anonyme
Un serveur proxy speacutecialiseacute pour la navigation Web anonyme utilise sa propre adresse IP agrave la place de la vocirctre pour chaque requecircte sortante
Il peut mecircme chiffrer les communications Web ne permettant plus la surveillance de vos actions
Proxy pour et contre Proxy pour et contre
Un proxy permet de proteacuteger un reacuteseau local drsquoune faccedilon tregraves efficace Un seul point faible neacutecessite notre attention
Cette solution nrsquoest pas tregraves flexible Les logiciels clients des machines locales doivent savoir comment utiliser un proxy Sinon rien ne fonctionnera puisque celles-ci sont invisibles
Nous pourrions peut-ecirctre faire croire au client que le service est donneacute par le coupe-feu mais celui-ci doit savoir quoi faire pour acheminer la connexion vers sa destination Ceci demande de configurer chaque type de connexion
Exemple de Proxy TorExemple de Proxy Tor
Coupe-feu dynamique Coupe-feu dynamique (laquostateful firewallraquo)(laquostateful firewallraquo)
Nous avons vu que les coupe-feu statiques agrave filtrage de paquets interviennent en fonction de paquets individuels
Un serveur FTP va ouvrir des connexions sur des ports de hautes valeurs Le filtrage de paquets ne peut pas savoir qursquoune connexion sur le port 6783 appartient agrave une connexion FTP leacutegitime Ces paquets seront eacutelimineacutes
Le coupe-feu dynamique reacutesout ce problegraveme en meacutemorisant les connexions ouvertes par des connexions leacutegitimes
Il est aussi possible de transformer lrsquoadresse IP drsquoune machine locale par quelque chose de diffeacuterent Le coupe-feu agrave mascarade permet drsquoeacuteviter les attaques qui consistent agrave essayer des adresses IP dans le but drsquoobtenir une reacuteponse
Le coupe-feu peut ecirctre configureacute pour eacuteliminer les connexions qui font des trucs bizarres comme la transmission drsquoune chaicircne trop longue
Toujours la pile TCPIPToujours la pile TCPIP
Champs du protocole Champs du protocole IPIP
Champs utiles pour le protocole IP
Le protocole IP fonctionne agrave partir de segments
Protocole UDPProtocole UDP(ses champs utiles)(ses champs utiles)
Champs utiles pour le protocole UDP
Protocole TCPProtocole TCP(ses champs utiles)(ses champs utiles)
Champs utiles pour le protocole TCP
Port de lrsquoapplication Port de lrsquoapplication en cours sur la en cours sur la machine sourcemachine source
Port de lrsquoapplication Port de lrsquoapplication sur la machine sur la machine
destinationdestination
Le numeacutero drsquoordre du Le numeacutero drsquoordre du prochain segment (IP) prochain segment (IP)
attenduattendu
URG paquet agrave traiter de faccedilon urgenteACK paquet est un accuseacute de reacuteceptionPSH paquet fonctionne selon la meacutethode push
RST connexion reacuteinitialiseacuteeSYN indique une demande drsquoeacutetablissement de connexionFIN indique une interruption de connexion
Le numeacutero drsquoordre du segment (IP) Le numeacutero drsquoordre du segment (IP) courant si SYN=0 et le numeacutero drsquoordre courant si SYN=0 et le numeacutero drsquoordre
initial pour synchroniser les nos de initial pour synchroniser les nos de seacutequence (ISN)seacutequence (ISN)
DrapeauxDrapeaux
Filtrage extrecircmeFiltrage extrecircmeTCP est orienteacute connexion Pour en eacutetablir une de A vers B on doit transmettre SYN=1 dans le premier paquet de lrsquoeacutetablissement de connexion agrave trois eacutetapes (laquothree-way handshakeraquo)
Un filtrage simple consiste agrave laisser tomber tous les paquets qui ne contiennent que le drapeau SYN=1
Il devient impossible drsquoeacutetablir une connexion TCP de lrsquoexteacuterieur du mur
Si en plus les paquets UDP sont eacutelimineacutes alors la situation devrait ecirctre tregraves sucircre
Cette politique ne permet pas de se connecter au serveur Web cependant
Activer le serveur Web Activer le serveur Web et accegraves agrave un DNSet accegraves agrave un DNS
Pour donner accegraves au serveur Web nous pourrions faire la chose suivante
Nous autorisons une exception agrave la regravegle preacuteceacutedente
Nous autorisons les paquets SYN=1 pour le serveur Web sur le port 80 (port http)
Nous voudrions aussi permettre lrsquoaccegraves agrave un serveur DNS pour la conversion drsquoadresse comme httpwwwiroumontrealca en 13220424179
Il suffit de laisser les paquets UDP vers et depuis au moins un serveur DNS sur le port 53 (UDP)
Le reacutesultatLe reacutesultat
Si le pirate trouve une faille sur le serveur Web alors il pourrait attaquer le reacuteseau local
Pour eacuteviter ceci il faut seacuteparer le serveur Web des autresLe filtrage par paquets est insuffisant
Deux filtres valent mieux Deux filtres valent mieux qursquounqursquoun
ProxyProxyIl y a drsquoautres services sur lrsquoInternet qui utilisent le protocole UDP flux de donneacutees videacuteo jeux videacuteo
De plus excepteacute pour les paquets SYN=1 il est possible de transmettre des paquets TCP aux ordinateurs du reacuteseau local
Le proxy peut rendre les machines du reacuteseau local invisibles pas le filtrage simple de paquets
Approche proxyApproche proxy
Coupe-feu Coupe-feu dynamiquesdynamiques
Les proxys ne sont pas tregraves flexibles Les coupe-feu dynamiques permettent drsquoutiliser les logiciels drsquoune faccedilon plus transparente
Il srsquoagit drsquoun filtre avanceacute qui permet de veacuterifier que les paquets appartiennent agrave une connexion deacutejagrave eacutetablie Crsquoest seulement lorsque crsquoest le cas que le paquet peut passer
Parce qursquoil est conscient drsquoune connexion il peut appliquer NAT etou PAT
NAT Dynamique (laquoDynamic Network Address Translationraquo) Le coupe-feu traduit les adresses du reacuteseau Toutes les machines du reacuteseau possegravedent vu de lrsquoexteacuterieur la mecircme adresse IP
PAT (laquoPort Address Translationraquo) Le coupe-feu traduit les numeacuteros de port par lesquels les paquets arrivent sur les hocirctes locaux
Ces coupe-feu sont appeleacutes coupe-feu avec mascarade
NAT a eacuteteacute mis au point agrave NAT a eacuteteacute mis au point agrave lrsquoorigine pour reacutepondre agrave la lrsquoorigine pour reacutepondre agrave la
peacutenurie drsquoadresses IP avec le peacutenurie drsquoadresses IP avec le protocole IPv4protocole IPv4
NAT a eacuteteacute mis au point agrave NAT a eacuteteacute mis au point agrave lrsquoorigine pour reacutepondre agrave la lrsquoorigine pour reacutepondre agrave la
peacutenurie drsquoadresses IP avec le peacutenurie drsquoadresses IP avec le protocole IPv4protocole IPv4
Coupe-feu agrave Coupe-feu agrave mascarademascarade
Filtrage dynamique eacutetenduFiltrage dynamique eacutetenduLe filtrage des coupe-feu dynamiques nrsquoest pas limiteacute aux protocoles TCPIP
Pour des applications usuelles le filtrage peut srsquoappliquer au protocole
Le coupe-feu peut ainsi deacutetecter des comportements inhabituels
Peut aussi filtrer certaines parties des donneacutees transmises
Pour le protocole HTTP le filtre peut supprimer les applications Java
Pour le protocole SMTP le filtre peut supprimer les piegraveces jointes drsquoun certain type
Conclusion sur les coupe-Conclusion sur les coupe-feufeu
Les coupe-feu permettent de filtrer le trafic entre le reacuteseau local et lrsquoInternet en nrsquoadministrant qursquoune seule machine
Les coupe-feu ne sont cependant pas une solution magique pour reacutesoudre les problegravemes causeacutes par les attaques exteacuterieures agrave un reacuteseau local
Les coupe-feu pour un seul ordinateur personnel peuvent offrir une solution sans trop drsquoentretien
Les coupe-feu neacutecessitent des mises agrave jour freacutequentes lorsque le reacuteseau local est de bonne taille Lorsque le reacuteseau local change la configuration du coupe-feu doit aussi changer
Penser que lrsquoinstallation drsquoun coupe-feu rend votre reacuteseau sucircr est un peu de la penseacutee magique (neacutecessaire mais pas suffisant)
Logiciels malveillantsLogiciels malveillantsUn adversaire peut une fois passeacute le coupe-feu et les autres deacutefenses vouloir installer un programme malveillant sur la machine locale Ceux-ci sont de trois types
Chevaux de Troie Programme qui semble tout agrave fait utile mais qui cache une fonction malveillante Par exemple donne accegraves agrave des donneacutees priveacutees donne des droits drsquoaccegraves non autoriseacutes ou deacutetruit des donneacutees
Virus Programme qui infecte un autre programme sur votre ordinateur Agrave partir du programme infecteacute le virus se propage vers drsquoautres programmes Apregraves un certain temps ou eacuteveacutenement les virus peuvent entreprendre certaines actions Celles-ci peuvent ecirctre lrsquoeacutelimination de fichiers la deacuteteacuterioration de fonctions du systegraveme drsquoexploitation etc
Vers Programmes qui infectent un ordinateur sans avoir agrave ecirctre heacutebergeacutes par drsquoautres programmes Ils sont des programmes indeacutependants Ils se multiplient en exploitant diffeacuterentes ressources Les objectifs de ces programmes peuvent ecirctre lrsquoespionnage lrsquoouverture de portes deacuterobeacutees eacutemettre des requecirctes vers un site Internet jusqursquoagrave saturation
ExempleExempleI Love You Un ver lanceacute en 2000 et qui a atteint 31 millions de machines en 4 jours
Infection Le ver eacutetait dissimuleacute en piegravece jointe drsquoun courriel Cette piegravece jointe eacutetait preacutesenteacutee comme Love-Letter-for-youtxtvbs Lrsquoextension vbs indique que le fichier est un script Visual Basic Comme lrsquoextension nrsquoapparaicirct pas sur Windows les utilisateurs voyaient la piegravece jointe comme Love-Letter-for-youtxt Objectif Le script lisait la liste des contacts de lrsquoutilisateur pour envoyer ce mecircme message agrave ceux-ci La plate-forme Windows eacutetait viseacutee Des fichiers eacutetaient deacutetruits et remplaceacutes par ce script Il changeait la page drsquoaccueil drsquoInternet Explorer pour teacuteleacutecharger un cheval de Troie
ExempleExempleCode Red Un ver qui a infecteacute 359 000 ordinateurs en moins de 14 heures le 19 juillet 2001
Infections Le ver se multipliait en essayant des adresses IP aleacuteatoires pour ensuite infecter des serveurs qui faisaient tourner Microsoft IIS avec une faille de seacutecuriteacute
Objectif Monter une attaque par deacuteni de service (DOS) contre la Maison-Blanche
Lrsquoattaque a eacuteteacute facile agrave repousser car le ver veacuterifiait avant de lancer lrsquoattaque que le serveur agrave lrsquoadresse IP (au lieu du nom de domaine) de la Maison-Blanche eacutecoutait le port 80 (le port des serveurs Web) En changeant lrsquoadresse IP de la Maison-Blanche lrsquoattaque a eacuteteacute repousseacutee
ExempleExempleCabir Est un virusver (deacutemonstration de faisabiliteacute laquoproof of conceptraquo) qui srsquoattaque agrave la teacuteleacutephonie mobile Crsquoest un fichier de 15 ko nommeacute CARIBESIS
Infection Se propage par la teacuteleacutephonie mobile gracircce agrave la technologie Bluetooth et le systegraveme drsquoexploitation Symbian OS
Action Agrave chaque fois que le teacuteleacutephone infecteacute est ouvert le mot laquoCariberaquo srsquoaffiche Il tente de se propager aux peacuteripheacuteriques BlueTooth de la zone du teacuteleacutephone infecteacute Il nrsquoest pas meacutechant nrsquoavait pour but que de deacutemontrer la faisabiliteacute
AntivirusAntivirusLes antivirus sont des programmes qui deacutetectent les virus les vers et les chevaux de Troie sur votre ordinateur Ils les eacuteliminent
Ils visitent les fichiers sur votre disque dans le but de trouver des bouts de programmes reconnus comme dangereux
Ceci est possible eacutetant donneacute une base de donneacutees agrave jour contenant les virus connus sous la forme de signatures de virus Une signature est un motif (laquopatternraquo) qui caracteacuterise un virus donneacute
Un antivirus nrsquoest efficace que si sa base de donneacutees est mise agrave jour constamment Les compagnies drsquoantivirus vont vite pour mettre agrave jour leur base de donneacutees lorsqursquoun nouveau virus est identifieacute
Malheureusement les utilisateurs tardent agrave mettre leur copie agrave jour causant bien des infections
Tromper les antivirusTromper les antivirusDe nouveaux virus utilisent les meacutethodes de la cryptographie pour deacutejouer les antivirus
Des virus sont chiffreacutes pour les rendre non reconnaissables par les antivirus car ils ont toujours un aspect diffeacuterent
Ces virus ont un petit code en clair qui permet de les deacutecoder et de les charger en meacutemoire pour ecirctre exeacutecuteacutes Ce code est ce que les antivirus doivent deacutetecter
Ces virus sont de trois types
Oligomorphique Le virus est chiffreacute agrave chaque reacuteplication
Polymorphique Le virus est chiffreacute et la routine de deacutechiffrement est capable de changer certaines de ses instructions au fil des reacuteplications
Meacutetamorphique Le virus change de forme au fil des reacuteplications
IntrusionsIntrusionsPour qursquoun virus ver ou cheval de Troie soit deacuteleacutetegravere encore faut-il qursquoil srsquoinstalle sur votre machine
Mecircme si un adversaire peut parler agrave votre machine ceci nrsquoimplique pas qursquoil peut installer un logiciel sur celle-ci encore moins srsquoil nrsquoen est pas un utilisateur
Pour ce faire les adversaires peuvent essayer diverses strateacutegies
Faiblesses du systegraveme drsquoexploitation ou du logiciel du serveur Nous allons voir un exemple de ce type drsquoattaque attaques par deacutebordement Une page Web nrsquoest pas un objet passif Elle peut contenir du code (JavaScript Perl etc) malveillant
Tromper lrsquoutilisateur Crsquoest peut-ecirctre plus simple Cas speacutecial du piratage psychologique Cliquer ici pour installer un joli logiciel il faut espeacuterer que lrsquoantivirus deacutetecte ceci avant qursquoil ne soit trop tard
Deacutetecter les intrusionsDeacutetecter les intrusionsUne faccedilon diffeacuterente de deacutetecter les logiciels ou utilisateurs malveillants consiste agrave deacutetecter les comportements malveillants
Un systegraveme peut surveiller les processus pour deacutetecter les comportements malveillants
Une telle approche a lrsquoavantage de ne pas deacutependre drsquoinformation sur les virus et les attaques
Un coupe-feu dynamique est un exemple de cette approche
Il surveille les connexions et tente de deacuteterminer si un client transmet des donneacutees agrave contenu suspect (comme la taille)
Requecirctes Requecirctes malveillantesmalveillantes
dlkjfdsflkjsd dlkjfdsflkjsd fjdskl gfjdlskewqewewewewhdfbfbfbww fjdskl gfjdlskewqewewewewhdfbfbfbww jaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfjaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfwewqewqewqewqewqewqeweekjwweeqqqsxcswdswewqewqewqewqewqewqeweekjwweeqqqsxcswdsdddds dddds ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqqwwq qwwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewqeweekwqwqwefdscxcccj qeweekwqwqwefdscxcccj ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxzcwq zcwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfssaDSADSADSsfghdskjgfhdsgfihoiehjrfssaDSADSADSADDSDSDSSDSDSADDSDSDSSDSDSIl arrive que de longues requecirctes puissent faire planter un systegraveme
mal programmeacute Un adversaire peut donc soumettre des chaicircnes tregraves longues dans le but de rendre le systegraveme inopeacuterant (ou mecircme pire assujetti) comme nous le verrons plus loin
Et agrave peu pregraves nrsquoimporte qui Et agrave peu pregraves nrsquoimporte qui peut proposer un service peut proposer un service
comme celui-ci comme celui-ci
Un coupe-feu peut filtrer les requecirctes anormalement longues pour les ignorer Mecircme les systegravemes avec programmes erroneacutes seront agrave lrsquoabri de ce type drsquoattaque
SELECT SELECT FROM Passwords FROM Passwords WHERE user=rsquoWHERE user=rsquoJugheadJugheadrsquo AND password=rsquorsquo AND password=rsquoxrsquo xrsquo OR lsquo1rsquo=lsquo1OR lsquo1rsquo=lsquo1rsquorsquo
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Requecirctes Requecirctes malveillantesmalveillantes
HTTPSHTTPS
Password Password xrsquo OR xrsquo OR lsquo1rsquo=rsquo1lsquo1rsquo=rsquo1
Un coupe-feu dynamique peut filtrer des requecirctes bizarres comme xrsquo OR lsquo1rsquo=rsquo1xrsquo OR lsquo1rsquo=rsquo1
Ceci est beaucoup plus difficile agrave Ceci est beaucoup plus difficile agrave reacutealiser par un coupe-feu que reacutealiser par un coupe-feu que
lrsquoexemple preacuteceacutedentlrsquoexemple preacuteceacutedent
Approche Approche comportementalecomportementaleUne autre approche pour la deacutetection drsquointrusions consiste agrave
observer certains aspects du comportement des utilisateurs et programmes
activiteacutes de connexion et de session
activiteacutes relieacutees agrave lrsquoexeacutecution de programme et drsquoaccegraves aux fichiers
Il y a deux approches pour la deacutetection de comportements suspects
Par regravegles (rule-based) Un ensemble de regravegles deacutecrivant les comportements normaux est eacutetabli Les comportements anormaux (trop loin des normaux) sont rejeteacutes
Statistique Des statistiques sur les utilisateurs normaux sont creacuteeacutees Le comportement de lrsquoutilisateurprogramme observeacute est compareacute aux statistiques Un comportement montrant un trop grand eacutecart avec les statistiques est rejeteacute
Problegravemes avec les Problegravemes avec les systegravemes de deacutetection systegravemes de deacutetection
drsquointrusion (IDS)drsquointrusion (IDS)Le problegraveme majeur avec lrsquoapproche est le mecircme qursquoavec la biomeacutetrie Le systegraveme qui surveille doit ecirctre assez toleacuterant pour autoriser les comportements normaux mais suffisamment restrictif pour attraper les acteurs malveillants
Ce problegraveme nrsquoest pas tregraves bien compris et les solutions proposeacutees ne sont pas tout agrave fait satisfaisantes
La deacutetection drsquointrusion est bien inutile si le systegraveme ne reacuteagit pas de la bonne faccedilon lorsqursquoune intrusion est deacutetecteacutee La partie du systegraveme qui alerte lrsquoadministrateur qui interdit lrsquoaccegraves qui effectue quelque autre tacircche pour eacuteliminer la menace est tout aussi importante que celle qui deacutetecte
Le pot de mielLe pot de miel
Le pot de miel (laquohoney potraquo) est un truc pratique pour la deacutetection drsquointrusions
Une ressource bidon qui semble inteacuteressante pour un adversaire est creacuteeacutee
Puisque celle-ci est bidon on peut supposer que si quelqursquoun y accegravede crsquoest qursquoil srsquoadonne agrave une activiteacute malveillante
En consultant les traces il peut ecirctre possible de retrouver lrsquoutilisateur malveillant
Ceci peut se faire agrave lrsquoinsu de lrsquointrus
ExempleExemple
Un hocircpital ameacutericain soupccedilonnait que quelqursquoun consultait les dossiers de patients sans en avoir lrsquoautorisation
Ils ont creacuteeacute des fichiers pour des patients qui nrsquoexistent pas
Les accegraves agrave ces fichiers ont alors eacuteteacute retraceacutes jusqursquoagrave lrsquoutilisateur malveillant
Les attaques de lrsquointeacuterieurLes attaques de lrsquointeacuterieurPresque tout ce que nous avons vu a pour but la protection contre les attaques venues de lrsquoexteacuterieur
Les attaques peuvent tregraves bien eacutemaner de lrsquointeacuterieur et peuvent causer des problegravemes seacuterieux
Le premiegravere chose agrave comprendre est qursquoil nrsquoest pas possible de se preacutemunir contre ces attaques si les utilisateurs ont tous les droits sur le systegraveme cible
Il est donc neacutecessaire qursquoune partie du systegraveme soit garantie de fonctionner selon ses speacutecifications mecircme sous attaque
Sans cette hypothegravese le systegraveme est sous le controcircle complet de lrsquoadversaire
Base informatique Base informatique seacutecuriseacuteeseacutecuriseacutee
laquotrusted computing baseraquo (TCB)laquotrusted computing baseraquo (TCB)
Une base seacutecuriseacutee peut ecirctre eacutetablie en utilisant de la seacutecuriteacute mateacuterielle logicielle par mot de passe par exemple
Le rocircle de ce systegraveme de base est de controcircler lrsquoaccegraves aux ressources et le flux drsquoinformation sur celui-ci
Pour bien comprendre comment ces protections fonctionnent nous devons mettre de lrsquoordre dans nos ideacutees Nous devons voir agrave quoi ressemble une politique de seacutecuriteacute dans ce sceacutenario
Crsquoest notre prochain sujet
Conclusion Conclusion (filtrage de paquets)(filtrage de paquets)
Pour ecirctre complegravetement sucircr le filtrage de paquets doit ecirctre tregraves restrictif ce qui peut trop limiter lrsquoaccegraves au reacuteseau
Si le filtrage est plus lacircche alors il pourrait devenir possible agrave lrsquoadversaire de communiquer avec des machines du reacuteseau local
Ceci demande agrave lrsquoadversaire de tenter beaucoup drsquoadresses IP jusqursquoagrave ce qursquoune machine reacuteponde
En conclusion les coupe-feu devraient faire quelque chose de plus intelligent que le simple filtrage
Ils doivent examiner les paquets en deacutetail pour deacutecider quoi faire avec ceux-ci Ils devraient mecircme ecirctre capables de modifier des paquets si neacutecessaire
Coupe-feu proxyCoupe-feu proxyLes proxy (laquoserveurs mandatairesraquo) permettent de faire du filtrage intelligent Il ne permet aucune connexion sur une machine locale agrave partir de lrsquoexteacuterieur
Le proxy gegravere toutes les connexions au nom des machines de reacuteseau local
Si une machine locale a un logiciel qui deacutesire acceacuteder agrave lrsquoInternet alors celui-ci devra ecirctre configureacute pour communiquer avec le coupe-feu agrave la place Le coupe-feu eacutetablira alors la connexion
Vu de lrsquoexteacuterieur le reacuteseau local est complegravetement cacheacute derriegravere le coupe-feu Seul celui-ci est visible
Essayer plusieurs adresses IP pour espeacuterer une reacuteponse ne fonctionne pas ici
Une attaque doit srsquoen prendre au proxy Une machine est plus facile agrave proteacuteger que plusieurs
Proxy en imagesProxy en imagesLe proxy comme une zone tampon entre
lrsquoInternet et un reacuteseau local
Pendant une connexion internet
Cacher votre adresse Cacher votre adresse IPIPVotre adresse IP reacutevegravele votre point drsquoentreacutee sur lrsquoInternet
Peut permettre de retrouver votre fournisseur le reacuteseau de votre employeur votre eacutecole ou votre terminal public
Il srsquoagit de lrsquoidentiteacute de votre machine pendant que vous ecirctes en ligne Sa porte sur le monde
Vous pouvez dissimuler votre adresse IP sur le Web en utilisant un serveur proxy anonyme
Un serveur proxy speacutecialiseacute pour la navigation Web anonyme utilise sa propre adresse IP agrave la place de la vocirctre pour chaque requecircte sortante
Il peut mecircme chiffrer les communications Web ne permettant plus la surveillance de vos actions
Proxy pour et contre Proxy pour et contre
Un proxy permet de proteacuteger un reacuteseau local drsquoune faccedilon tregraves efficace Un seul point faible neacutecessite notre attention
Cette solution nrsquoest pas tregraves flexible Les logiciels clients des machines locales doivent savoir comment utiliser un proxy Sinon rien ne fonctionnera puisque celles-ci sont invisibles
Nous pourrions peut-ecirctre faire croire au client que le service est donneacute par le coupe-feu mais celui-ci doit savoir quoi faire pour acheminer la connexion vers sa destination Ceci demande de configurer chaque type de connexion
Exemple de Proxy TorExemple de Proxy Tor
Coupe-feu dynamique Coupe-feu dynamique (laquostateful firewallraquo)(laquostateful firewallraquo)
Nous avons vu que les coupe-feu statiques agrave filtrage de paquets interviennent en fonction de paquets individuels
Un serveur FTP va ouvrir des connexions sur des ports de hautes valeurs Le filtrage de paquets ne peut pas savoir qursquoune connexion sur le port 6783 appartient agrave une connexion FTP leacutegitime Ces paquets seront eacutelimineacutes
Le coupe-feu dynamique reacutesout ce problegraveme en meacutemorisant les connexions ouvertes par des connexions leacutegitimes
Il est aussi possible de transformer lrsquoadresse IP drsquoune machine locale par quelque chose de diffeacuterent Le coupe-feu agrave mascarade permet drsquoeacuteviter les attaques qui consistent agrave essayer des adresses IP dans le but drsquoobtenir une reacuteponse
Le coupe-feu peut ecirctre configureacute pour eacuteliminer les connexions qui font des trucs bizarres comme la transmission drsquoune chaicircne trop longue
Toujours la pile TCPIPToujours la pile TCPIP
Champs du protocole Champs du protocole IPIP
Champs utiles pour le protocole IP
Le protocole IP fonctionne agrave partir de segments
Protocole UDPProtocole UDP(ses champs utiles)(ses champs utiles)
Champs utiles pour le protocole UDP
Protocole TCPProtocole TCP(ses champs utiles)(ses champs utiles)
Champs utiles pour le protocole TCP
Port de lrsquoapplication Port de lrsquoapplication en cours sur la en cours sur la machine sourcemachine source
Port de lrsquoapplication Port de lrsquoapplication sur la machine sur la machine
destinationdestination
Le numeacutero drsquoordre du Le numeacutero drsquoordre du prochain segment (IP) prochain segment (IP)
attenduattendu
URG paquet agrave traiter de faccedilon urgenteACK paquet est un accuseacute de reacuteceptionPSH paquet fonctionne selon la meacutethode push
RST connexion reacuteinitialiseacuteeSYN indique une demande drsquoeacutetablissement de connexionFIN indique une interruption de connexion
Le numeacutero drsquoordre du segment (IP) Le numeacutero drsquoordre du segment (IP) courant si SYN=0 et le numeacutero drsquoordre courant si SYN=0 et le numeacutero drsquoordre
initial pour synchroniser les nos de initial pour synchroniser les nos de seacutequence (ISN)seacutequence (ISN)
DrapeauxDrapeaux
Filtrage extrecircmeFiltrage extrecircmeTCP est orienteacute connexion Pour en eacutetablir une de A vers B on doit transmettre SYN=1 dans le premier paquet de lrsquoeacutetablissement de connexion agrave trois eacutetapes (laquothree-way handshakeraquo)
Un filtrage simple consiste agrave laisser tomber tous les paquets qui ne contiennent que le drapeau SYN=1
Il devient impossible drsquoeacutetablir une connexion TCP de lrsquoexteacuterieur du mur
Si en plus les paquets UDP sont eacutelimineacutes alors la situation devrait ecirctre tregraves sucircre
Cette politique ne permet pas de se connecter au serveur Web cependant
Activer le serveur Web Activer le serveur Web et accegraves agrave un DNSet accegraves agrave un DNS
Pour donner accegraves au serveur Web nous pourrions faire la chose suivante
Nous autorisons une exception agrave la regravegle preacuteceacutedente
Nous autorisons les paquets SYN=1 pour le serveur Web sur le port 80 (port http)
Nous voudrions aussi permettre lrsquoaccegraves agrave un serveur DNS pour la conversion drsquoadresse comme httpwwwiroumontrealca en 13220424179
Il suffit de laisser les paquets UDP vers et depuis au moins un serveur DNS sur le port 53 (UDP)
Le reacutesultatLe reacutesultat
Si le pirate trouve une faille sur le serveur Web alors il pourrait attaquer le reacuteseau local
Pour eacuteviter ceci il faut seacuteparer le serveur Web des autresLe filtrage par paquets est insuffisant
Deux filtres valent mieux Deux filtres valent mieux qursquounqursquoun
ProxyProxyIl y a drsquoautres services sur lrsquoInternet qui utilisent le protocole UDP flux de donneacutees videacuteo jeux videacuteo
De plus excepteacute pour les paquets SYN=1 il est possible de transmettre des paquets TCP aux ordinateurs du reacuteseau local
Le proxy peut rendre les machines du reacuteseau local invisibles pas le filtrage simple de paquets
Approche proxyApproche proxy
Coupe-feu Coupe-feu dynamiquesdynamiques
Les proxys ne sont pas tregraves flexibles Les coupe-feu dynamiques permettent drsquoutiliser les logiciels drsquoune faccedilon plus transparente
Il srsquoagit drsquoun filtre avanceacute qui permet de veacuterifier que les paquets appartiennent agrave une connexion deacutejagrave eacutetablie Crsquoest seulement lorsque crsquoest le cas que le paquet peut passer
Parce qursquoil est conscient drsquoune connexion il peut appliquer NAT etou PAT
NAT Dynamique (laquoDynamic Network Address Translationraquo) Le coupe-feu traduit les adresses du reacuteseau Toutes les machines du reacuteseau possegravedent vu de lrsquoexteacuterieur la mecircme adresse IP
PAT (laquoPort Address Translationraquo) Le coupe-feu traduit les numeacuteros de port par lesquels les paquets arrivent sur les hocirctes locaux
Ces coupe-feu sont appeleacutes coupe-feu avec mascarade
NAT a eacuteteacute mis au point agrave NAT a eacuteteacute mis au point agrave lrsquoorigine pour reacutepondre agrave la lrsquoorigine pour reacutepondre agrave la
peacutenurie drsquoadresses IP avec le peacutenurie drsquoadresses IP avec le protocole IPv4protocole IPv4
NAT a eacuteteacute mis au point agrave NAT a eacuteteacute mis au point agrave lrsquoorigine pour reacutepondre agrave la lrsquoorigine pour reacutepondre agrave la
peacutenurie drsquoadresses IP avec le peacutenurie drsquoadresses IP avec le protocole IPv4protocole IPv4
Coupe-feu agrave Coupe-feu agrave mascarademascarade
Filtrage dynamique eacutetenduFiltrage dynamique eacutetenduLe filtrage des coupe-feu dynamiques nrsquoest pas limiteacute aux protocoles TCPIP
Pour des applications usuelles le filtrage peut srsquoappliquer au protocole
Le coupe-feu peut ainsi deacutetecter des comportements inhabituels
Peut aussi filtrer certaines parties des donneacutees transmises
Pour le protocole HTTP le filtre peut supprimer les applications Java
Pour le protocole SMTP le filtre peut supprimer les piegraveces jointes drsquoun certain type
Conclusion sur les coupe-Conclusion sur les coupe-feufeu
Les coupe-feu permettent de filtrer le trafic entre le reacuteseau local et lrsquoInternet en nrsquoadministrant qursquoune seule machine
Les coupe-feu ne sont cependant pas une solution magique pour reacutesoudre les problegravemes causeacutes par les attaques exteacuterieures agrave un reacuteseau local
Les coupe-feu pour un seul ordinateur personnel peuvent offrir une solution sans trop drsquoentretien
Les coupe-feu neacutecessitent des mises agrave jour freacutequentes lorsque le reacuteseau local est de bonne taille Lorsque le reacuteseau local change la configuration du coupe-feu doit aussi changer
Penser que lrsquoinstallation drsquoun coupe-feu rend votre reacuteseau sucircr est un peu de la penseacutee magique (neacutecessaire mais pas suffisant)
Logiciels malveillantsLogiciels malveillantsUn adversaire peut une fois passeacute le coupe-feu et les autres deacutefenses vouloir installer un programme malveillant sur la machine locale Ceux-ci sont de trois types
Chevaux de Troie Programme qui semble tout agrave fait utile mais qui cache une fonction malveillante Par exemple donne accegraves agrave des donneacutees priveacutees donne des droits drsquoaccegraves non autoriseacutes ou deacutetruit des donneacutees
Virus Programme qui infecte un autre programme sur votre ordinateur Agrave partir du programme infecteacute le virus se propage vers drsquoautres programmes Apregraves un certain temps ou eacuteveacutenement les virus peuvent entreprendre certaines actions Celles-ci peuvent ecirctre lrsquoeacutelimination de fichiers la deacuteteacuterioration de fonctions du systegraveme drsquoexploitation etc
Vers Programmes qui infectent un ordinateur sans avoir agrave ecirctre heacutebergeacutes par drsquoautres programmes Ils sont des programmes indeacutependants Ils se multiplient en exploitant diffeacuterentes ressources Les objectifs de ces programmes peuvent ecirctre lrsquoespionnage lrsquoouverture de portes deacuterobeacutees eacutemettre des requecirctes vers un site Internet jusqursquoagrave saturation
ExempleExempleI Love You Un ver lanceacute en 2000 et qui a atteint 31 millions de machines en 4 jours
Infection Le ver eacutetait dissimuleacute en piegravece jointe drsquoun courriel Cette piegravece jointe eacutetait preacutesenteacutee comme Love-Letter-for-youtxtvbs Lrsquoextension vbs indique que le fichier est un script Visual Basic Comme lrsquoextension nrsquoapparaicirct pas sur Windows les utilisateurs voyaient la piegravece jointe comme Love-Letter-for-youtxt Objectif Le script lisait la liste des contacts de lrsquoutilisateur pour envoyer ce mecircme message agrave ceux-ci La plate-forme Windows eacutetait viseacutee Des fichiers eacutetaient deacutetruits et remplaceacutes par ce script Il changeait la page drsquoaccueil drsquoInternet Explorer pour teacuteleacutecharger un cheval de Troie
ExempleExempleCode Red Un ver qui a infecteacute 359 000 ordinateurs en moins de 14 heures le 19 juillet 2001
Infections Le ver se multipliait en essayant des adresses IP aleacuteatoires pour ensuite infecter des serveurs qui faisaient tourner Microsoft IIS avec une faille de seacutecuriteacute
Objectif Monter une attaque par deacuteni de service (DOS) contre la Maison-Blanche
Lrsquoattaque a eacuteteacute facile agrave repousser car le ver veacuterifiait avant de lancer lrsquoattaque que le serveur agrave lrsquoadresse IP (au lieu du nom de domaine) de la Maison-Blanche eacutecoutait le port 80 (le port des serveurs Web) En changeant lrsquoadresse IP de la Maison-Blanche lrsquoattaque a eacuteteacute repousseacutee
ExempleExempleCabir Est un virusver (deacutemonstration de faisabiliteacute laquoproof of conceptraquo) qui srsquoattaque agrave la teacuteleacutephonie mobile Crsquoest un fichier de 15 ko nommeacute CARIBESIS
Infection Se propage par la teacuteleacutephonie mobile gracircce agrave la technologie Bluetooth et le systegraveme drsquoexploitation Symbian OS
Action Agrave chaque fois que le teacuteleacutephone infecteacute est ouvert le mot laquoCariberaquo srsquoaffiche Il tente de se propager aux peacuteripheacuteriques BlueTooth de la zone du teacuteleacutephone infecteacute Il nrsquoest pas meacutechant nrsquoavait pour but que de deacutemontrer la faisabiliteacute
AntivirusAntivirusLes antivirus sont des programmes qui deacutetectent les virus les vers et les chevaux de Troie sur votre ordinateur Ils les eacuteliminent
Ils visitent les fichiers sur votre disque dans le but de trouver des bouts de programmes reconnus comme dangereux
Ceci est possible eacutetant donneacute une base de donneacutees agrave jour contenant les virus connus sous la forme de signatures de virus Une signature est un motif (laquopatternraquo) qui caracteacuterise un virus donneacute
Un antivirus nrsquoest efficace que si sa base de donneacutees est mise agrave jour constamment Les compagnies drsquoantivirus vont vite pour mettre agrave jour leur base de donneacutees lorsqursquoun nouveau virus est identifieacute
Malheureusement les utilisateurs tardent agrave mettre leur copie agrave jour causant bien des infections
Tromper les antivirusTromper les antivirusDe nouveaux virus utilisent les meacutethodes de la cryptographie pour deacutejouer les antivirus
Des virus sont chiffreacutes pour les rendre non reconnaissables par les antivirus car ils ont toujours un aspect diffeacuterent
Ces virus ont un petit code en clair qui permet de les deacutecoder et de les charger en meacutemoire pour ecirctre exeacutecuteacutes Ce code est ce que les antivirus doivent deacutetecter
Ces virus sont de trois types
Oligomorphique Le virus est chiffreacute agrave chaque reacuteplication
Polymorphique Le virus est chiffreacute et la routine de deacutechiffrement est capable de changer certaines de ses instructions au fil des reacuteplications
Meacutetamorphique Le virus change de forme au fil des reacuteplications
IntrusionsIntrusionsPour qursquoun virus ver ou cheval de Troie soit deacuteleacutetegravere encore faut-il qursquoil srsquoinstalle sur votre machine
Mecircme si un adversaire peut parler agrave votre machine ceci nrsquoimplique pas qursquoil peut installer un logiciel sur celle-ci encore moins srsquoil nrsquoen est pas un utilisateur
Pour ce faire les adversaires peuvent essayer diverses strateacutegies
Faiblesses du systegraveme drsquoexploitation ou du logiciel du serveur Nous allons voir un exemple de ce type drsquoattaque attaques par deacutebordement Une page Web nrsquoest pas un objet passif Elle peut contenir du code (JavaScript Perl etc) malveillant
Tromper lrsquoutilisateur Crsquoest peut-ecirctre plus simple Cas speacutecial du piratage psychologique Cliquer ici pour installer un joli logiciel il faut espeacuterer que lrsquoantivirus deacutetecte ceci avant qursquoil ne soit trop tard
Deacutetecter les intrusionsDeacutetecter les intrusionsUne faccedilon diffeacuterente de deacutetecter les logiciels ou utilisateurs malveillants consiste agrave deacutetecter les comportements malveillants
Un systegraveme peut surveiller les processus pour deacutetecter les comportements malveillants
Une telle approche a lrsquoavantage de ne pas deacutependre drsquoinformation sur les virus et les attaques
Un coupe-feu dynamique est un exemple de cette approche
Il surveille les connexions et tente de deacuteterminer si un client transmet des donneacutees agrave contenu suspect (comme la taille)
Requecirctes Requecirctes malveillantesmalveillantes
dlkjfdsflkjsd dlkjfdsflkjsd fjdskl gfjdlskewqewewewewhdfbfbfbww fjdskl gfjdlskewqewewewewhdfbfbfbww jaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfjaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfwewqewqewqewqewqewqeweekjwweeqqqsxcswdswewqewqewqewqewqewqeweekjwweeqqqsxcswdsdddds dddds ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqqwwq qwwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewqeweekwqwqwefdscxcccj qeweekwqwqwefdscxcccj ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxzcwq zcwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfssaDSADSADSsfghdskjgfhdsgfihoiehjrfssaDSADSADSADDSDSDSSDSDSADDSDSDSSDSDSIl arrive que de longues requecirctes puissent faire planter un systegraveme
mal programmeacute Un adversaire peut donc soumettre des chaicircnes tregraves longues dans le but de rendre le systegraveme inopeacuterant (ou mecircme pire assujetti) comme nous le verrons plus loin
Et agrave peu pregraves nrsquoimporte qui Et agrave peu pregraves nrsquoimporte qui peut proposer un service peut proposer un service
comme celui-ci comme celui-ci
Un coupe-feu peut filtrer les requecirctes anormalement longues pour les ignorer Mecircme les systegravemes avec programmes erroneacutes seront agrave lrsquoabri de ce type drsquoattaque
SELECT SELECT FROM Passwords FROM Passwords WHERE user=rsquoWHERE user=rsquoJugheadJugheadrsquo AND password=rsquorsquo AND password=rsquoxrsquo xrsquo OR lsquo1rsquo=lsquo1OR lsquo1rsquo=lsquo1rsquorsquo
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Requecirctes Requecirctes malveillantesmalveillantes
HTTPSHTTPS
Password Password xrsquo OR xrsquo OR lsquo1rsquo=rsquo1lsquo1rsquo=rsquo1
Un coupe-feu dynamique peut filtrer des requecirctes bizarres comme xrsquo OR lsquo1rsquo=rsquo1xrsquo OR lsquo1rsquo=rsquo1
Ceci est beaucoup plus difficile agrave Ceci est beaucoup plus difficile agrave reacutealiser par un coupe-feu que reacutealiser par un coupe-feu que
lrsquoexemple preacuteceacutedentlrsquoexemple preacuteceacutedent
Approche Approche comportementalecomportementaleUne autre approche pour la deacutetection drsquointrusions consiste agrave
observer certains aspects du comportement des utilisateurs et programmes
activiteacutes de connexion et de session
activiteacutes relieacutees agrave lrsquoexeacutecution de programme et drsquoaccegraves aux fichiers
Il y a deux approches pour la deacutetection de comportements suspects
Par regravegles (rule-based) Un ensemble de regravegles deacutecrivant les comportements normaux est eacutetabli Les comportements anormaux (trop loin des normaux) sont rejeteacutes
Statistique Des statistiques sur les utilisateurs normaux sont creacuteeacutees Le comportement de lrsquoutilisateurprogramme observeacute est compareacute aux statistiques Un comportement montrant un trop grand eacutecart avec les statistiques est rejeteacute
Problegravemes avec les Problegravemes avec les systegravemes de deacutetection systegravemes de deacutetection
drsquointrusion (IDS)drsquointrusion (IDS)Le problegraveme majeur avec lrsquoapproche est le mecircme qursquoavec la biomeacutetrie Le systegraveme qui surveille doit ecirctre assez toleacuterant pour autoriser les comportements normaux mais suffisamment restrictif pour attraper les acteurs malveillants
Ce problegraveme nrsquoest pas tregraves bien compris et les solutions proposeacutees ne sont pas tout agrave fait satisfaisantes
La deacutetection drsquointrusion est bien inutile si le systegraveme ne reacuteagit pas de la bonne faccedilon lorsqursquoune intrusion est deacutetecteacutee La partie du systegraveme qui alerte lrsquoadministrateur qui interdit lrsquoaccegraves qui effectue quelque autre tacircche pour eacuteliminer la menace est tout aussi importante que celle qui deacutetecte
Le pot de mielLe pot de miel
Le pot de miel (laquohoney potraquo) est un truc pratique pour la deacutetection drsquointrusions
Une ressource bidon qui semble inteacuteressante pour un adversaire est creacuteeacutee
Puisque celle-ci est bidon on peut supposer que si quelqursquoun y accegravede crsquoest qursquoil srsquoadonne agrave une activiteacute malveillante
En consultant les traces il peut ecirctre possible de retrouver lrsquoutilisateur malveillant
Ceci peut se faire agrave lrsquoinsu de lrsquointrus
ExempleExemple
Un hocircpital ameacutericain soupccedilonnait que quelqursquoun consultait les dossiers de patients sans en avoir lrsquoautorisation
Ils ont creacuteeacute des fichiers pour des patients qui nrsquoexistent pas
Les accegraves agrave ces fichiers ont alors eacuteteacute retraceacutes jusqursquoagrave lrsquoutilisateur malveillant
Les attaques de lrsquointeacuterieurLes attaques de lrsquointeacuterieurPresque tout ce que nous avons vu a pour but la protection contre les attaques venues de lrsquoexteacuterieur
Les attaques peuvent tregraves bien eacutemaner de lrsquointeacuterieur et peuvent causer des problegravemes seacuterieux
Le premiegravere chose agrave comprendre est qursquoil nrsquoest pas possible de se preacutemunir contre ces attaques si les utilisateurs ont tous les droits sur le systegraveme cible
Il est donc neacutecessaire qursquoune partie du systegraveme soit garantie de fonctionner selon ses speacutecifications mecircme sous attaque
Sans cette hypothegravese le systegraveme est sous le controcircle complet de lrsquoadversaire
Base informatique Base informatique seacutecuriseacuteeseacutecuriseacutee
laquotrusted computing baseraquo (TCB)laquotrusted computing baseraquo (TCB)
Une base seacutecuriseacutee peut ecirctre eacutetablie en utilisant de la seacutecuriteacute mateacuterielle logicielle par mot de passe par exemple
Le rocircle de ce systegraveme de base est de controcircler lrsquoaccegraves aux ressources et le flux drsquoinformation sur celui-ci
Pour bien comprendre comment ces protections fonctionnent nous devons mettre de lrsquoordre dans nos ideacutees Nous devons voir agrave quoi ressemble une politique de seacutecuriteacute dans ce sceacutenario
Crsquoest notre prochain sujet
Coupe-feu proxyCoupe-feu proxyLes proxy (laquoserveurs mandatairesraquo) permettent de faire du filtrage intelligent Il ne permet aucune connexion sur une machine locale agrave partir de lrsquoexteacuterieur
Le proxy gegravere toutes les connexions au nom des machines de reacuteseau local
Si une machine locale a un logiciel qui deacutesire acceacuteder agrave lrsquoInternet alors celui-ci devra ecirctre configureacute pour communiquer avec le coupe-feu agrave la place Le coupe-feu eacutetablira alors la connexion
Vu de lrsquoexteacuterieur le reacuteseau local est complegravetement cacheacute derriegravere le coupe-feu Seul celui-ci est visible
Essayer plusieurs adresses IP pour espeacuterer une reacuteponse ne fonctionne pas ici
Une attaque doit srsquoen prendre au proxy Une machine est plus facile agrave proteacuteger que plusieurs
Proxy en imagesProxy en imagesLe proxy comme une zone tampon entre
lrsquoInternet et un reacuteseau local
Pendant une connexion internet
Cacher votre adresse Cacher votre adresse IPIPVotre adresse IP reacutevegravele votre point drsquoentreacutee sur lrsquoInternet
Peut permettre de retrouver votre fournisseur le reacuteseau de votre employeur votre eacutecole ou votre terminal public
Il srsquoagit de lrsquoidentiteacute de votre machine pendant que vous ecirctes en ligne Sa porte sur le monde
Vous pouvez dissimuler votre adresse IP sur le Web en utilisant un serveur proxy anonyme
Un serveur proxy speacutecialiseacute pour la navigation Web anonyme utilise sa propre adresse IP agrave la place de la vocirctre pour chaque requecircte sortante
Il peut mecircme chiffrer les communications Web ne permettant plus la surveillance de vos actions
Proxy pour et contre Proxy pour et contre
Un proxy permet de proteacuteger un reacuteseau local drsquoune faccedilon tregraves efficace Un seul point faible neacutecessite notre attention
Cette solution nrsquoest pas tregraves flexible Les logiciels clients des machines locales doivent savoir comment utiliser un proxy Sinon rien ne fonctionnera puisque celles-ci sont invisibles
Nous pourrions peut-ecirctre faire croire au client que le service est donneacute par le coupe-feu mais celui-ci doit savoir quoi faire pour acheminer la connexion vers sa destination Ceci demande de configurer chaque type de connexion
Exemple de Proxy TorExemple de Proxy Tor
Coupe-feu dynamique Coupe-feu dynamique (laquostateful firewallraquo)(laquostateful firewallraquo)
Nous avons vu que les coupe-feu statiques agrave filtrage de paquets interviennent en fonction de paquets individuels
Un serveur FTP va ouvrir des connexions sur des ports de hautes valeurs Le filtrage de paquets ne peut pas savoir qursquoune connexion sur le port 6783 appartient agrave une connexion FTP leacutegitime Ces paquets seront eacutelimineacutes
Le coupe-feu dynamique reacutesout ce problegraveme en meacutemorisant les connexions ouvertes par des connexions leacutegitimes
Il est aussi possible de transformer lrsquoadresse IP drsquoune machine locale par quelque chose de diffeacuterent Le coupe-feu agrave mascarade permet drsquoeacuteviter les attaques qui consistent agrave essayer des adresses IP dans le but drsquoobtenir une reacuteponse
Le coupe-feu peut ecirctre configureacute pour eacuteliminer les connexions qui font des trucs bizarres comme la transmission drsquoune chaicircne trop longue
Toujours la pile TCPIPToujours la pile TCPIP
Champs du protocole Champs du protocole IPIP
Champs utiles pour le protocole IP
Le protocole IP fonctionne agrave partir de segments
Protocole UDPProtocole UDP(ses champs utiles)(ses champs utiles)
Champs utiles pour le protocole UDP
Protocole TCPProtocole TCP(ses champs utiles)(ses champs utiles)
Champs utiles pour le protocole TCP
Port de lrsquoapplication Port de lrsquoapplication en cours sur la en cours sur la machine sourcemachine source
Port de lrsquoapplication Port de lrsquoapplication sur la machine sur la machine
destinationdestination
Le numeacutero drsquoordre du Le numeacutero drsquoordre du prochain segment (IP) prochain segment (IP)
attenduattendu
URG paquet agrave traiter de faccedilon urgenteACK paquet est un accuseacute de reacuteceptionPSH paquet fonctionne selon la meacutethode push
RST connexion reacuteinitialiseacuteeSYN indique une demande drsquoeacutetablissement de connexionFIN indique une interruption de connexion
Le numeacutero drsquoordre du segment (IP) Le numeacutero drsquoordre du segment (IP) courant si SYN=0 et le numeacutero drsquoordre courant si SYN=0 et le numeacutero drsquoordre
initial pour synchroniser les nos de initial pour synchroniser les nos de seacutequence (ISN)seacutequence (ISN)
DrapeauxDrapeaux
Filtrage extrecircmeFiltrage extrecircmeTCP est orienteacute connexion Pour en eacutetablir une de A vers B on doit transmettre SYN=1 dans le premier paquet de lrsquoeacutetablissement de connexion agrave trois eacutetapes (laquothree-way handshakeraquo)
Un filtrage simple consiste agrave laisser tomber tous les paquets qui ne contiennent que le drapeau SYN=1
Il devient impossible drsquoeacutetablir une connexion TCP de lrsquoexteacuterieur du mur
Si en plus les paquets UDP sont eacutelimineacutes alors la situation devrait ecirctre tregraves sucircre
Cette politique ne permet pas de se connecter au serveur Web cependant
Activer le serveur Web Activer le serveur Web et accegraves agrave un DNSet accegraves agrave un DNS
Pour donner accegraves au serveur Web nous pourrions faire la chose suivante
Nous autorisons une exception agrave la regravegle preacuteceacutedente
Nous autorisons les paquets SYN=1 pour le serveur Web sur le port 80 (port http)
Nous voudrions aussi permettre lrsquoaccegraves agrave un serveur DNS pour la conversion drsquoadresse comme httpwwwiroumontrealca en 13220424179
Il suffit de laisser les paquets UDP vers et depuis au moins un serveur DNS sur le port 53 (UDP)
Le reacutesultatLe reacutesultat
Si le pirate trouve une faille sur le serveur Web alors il pourrait attaquer le reacuteseau local
Pour eacuteviter ceci il faut seacuteparer le serveur Web des autresLe filtrage par paquets est insuffisant
Deux filtres valent mieux Deux filtres valent mieux qursquounqursquoun
ProxyProxyIl y a drsquoautres services sur lrsquoInternet qui utilisent le protocole UDP flux de donneacutees videacuteo jeux videacuteo
De plus excepteacute pour les paquets SYN=1 il est possible de transmettre des paquets TCP aux ordinateurs du reacuteseau local
Le proxy peut rendre les machines du reacuteseau local invisibles pas le filtrage simple de paquets
Approche proxyApproche proxy
Coupe-feu Coupe-feu dynamiquesdynamiques
Les proxys ne sont pas tregraves flexibles Les coupe-feu dynamiques permettent drsquoutiliser les logiciels drsquoune faccedilon plus transparente
Il srsquoagit drsquoun filtre avanceacute qui permet de veacuterifier que les paquets appartiennent agrave une connexion deacutejagrave eacutetablie Crsquoest seulement lorsque crsquoest le cas que le paquet peut passer
Parce qursquoil est conscient drsquoune connexion il peut appliquer NAT etou PAT
NAT Dynamique (laquoDynamic Network Address Translationraquo) Le coupe-feu traduit les adresses du reacuteseau Toutes les machines du reacuteseau possegravedent vu de lrsquoexteacuterieur la mecircme adresse IP
PAT (laquoPort Address Translationraquo) Le coupe-feu traduit les numeacuteros de port par lesquels les paquets arrivent sur les hocirctes locaux
Ces coupe-feu sont appeleacutes coupe-feu avec mascarade
NAT a eacuteteacute mis au point agrave NAT a eacuteteacute mis au point agrave lrsquoorigine pour reacutepondre agrave la lrsquoorigine pour reacutepondre agrave la
peacutenurie drsquoadresses IP avec le peacutenurie drsquoadresses IP avec le protocole IPv4protocole IPv4
NAT a eacuteteacute mis au point agrave NAT a eacuteteacute mis au point agrave lrsquoorigine pour reacutepondre agrave la lrsquoorigine pour reacutepondre agrave la
peacutenurie drsquoadresses IP avec le peacutenurie drsquoadresses IP avec le protocole IPv4protocole IPv4
Coupe-feu agrave Coupe-feu agrave mascarademascarade
Filtrage dynamique eacutetenduFiltrage dynamique eacutetenduLe filtrage des coupe-feu dynamiques nrsquoest pas limiteacute aux protocoles TCPIP
Pour des applications usuelles le filtrage peut srsquoappliquer au protocole
Le coupe-feu peut ainsi deacutetecter des comportements inhabituels
Peut aussi filtrer certaines parties des donneacutees transmises
Pour le protocole HTTP le filtre peut supprimer les applications Java
Pour le protocole SMTP le filtre peut supprimer les piegraveces jointes drsquoun certain type
Conclusion sur les coupe-Conclusion sur les coupe-feufeu
Les coupe-feu permettent de filtrer le trafic entre le reacuteseau local et lrsquoInternet en nrsquoadministrant qursquoune seule machine
Les coupe-feu ne sont cependant pas une solution magique pour reacutesoudre les problegravemes causeacutes par les attaques exteacuterieures agrave un reacuteseau local
Les coupe-feu pour un seul ordinateur personnel peuvent offrir une solution sans trop drsquoentretien
Les coupe-feu neacutecessitent des mises agrave jour freacutequentes lorsque le reacuteseau local est de bonne taille Lorsque le reacuteseau local change la configuration du coupe-feu doit aussi changer
Penser que lrsquoinstallation drsquoun coupe-feu rend votre reacuteseau sucircr est un peu de la penseacutee magique (neacutecessaire mais pas suffisant)
Logiciels malveillantsLogiciels malveillantsUn adversaire peut une fois passeacute le coupe-feu et les autres deacutefenses vouloir installer un programme malveillant sur la machine locale Ceux-ci sont de trois types
Chevaux de Troie Programme qui semble tout agrave fait utile mais qui cache une fonction malveillante Par exemple donne accegraves agrave des donneacutees priveacutees donne des droits drsquoaccegraves non autoriseacutes ou deacutetruit des donneacutees
Virus Programme qui infecte un autre programme sur votre ordinateur Agrave partir du programme infecteacute le virus se propage vers drsquoautres programmes Apregraves un certain temps ou eacuteveacutenement les virus peuvent entreprendre certaines actions Celles-ci peuvent ecirctre lrsquoeacutelimination de fichiers la deacuteteacuterioration de fonctions du systegraveme drsquoexploitation etc
Vers Programmes qui infectent un ordinateur sans avoir agrave ecirctre heacutebergeacutes par drsquoautres programmes Ils sont des programmes indeacutependants Ils se multiplient en exploitant diffeacuterentes ressources Les objectifs de ces programmes peuvent ecirctre lrsquoespionnage lrsquoouverture de portes deacuterobeacutees eacutemettre des requecirctes vers un site Internet jusqursquoagrave saturation
ExempleExempleI Love You Un ver lanceacute en 2000 et qui a atteint 31 millions de machines en 4 jours
Infection Le ver eacutetait dissimuleacute en piegravece jointe drsquoun courriel Cette piegravece jointe eacutetait preacutesenteacutee comme Love-Letter-for-youtxtvbs Lrsquoextension vbs indique que le fichier est un script Visual Basic Comme lrsquoextension nrsquoapparaicirct pas sur Windows les utilisateurs voyaient la piegravece jointe comme Love-Letter-for-youtxt Objectif Le script lisait la liste des contacts de lrsquoutilisateur pour envoyer ce mecircme message agrave ceux-ci La plate-forme Windows eacutetait viseacutee Des fichiers eacutetaient deacutetruits et remplaceacutes par ce script Il changeait la page drsquoaccueil drsquoInternet Explorer pour teacuteleacutecharger un cheval de Troie
ExempleExempleCode Red Un ver qui a infecteacute 359 000 ordinateurs en moins de 14 heures le 19 juillet 2001
Infections Le ver se multipliait en essayant des adresses IP aleacuteatoires pour ensuite infecter des serveurs qui faisaient tourner Microsoft IIS avec une faille de seacutecuriteacute
Objectif Monter une attaque par deacuteni de service (DOS) contre la Maison-Blanche
Lrsquoattaque a eacuteteacute facile agrave repousser car le ver veacuterifiait avant de lancer lrsquoattaque que le serveur agrave lrsquoadresse IP (au lieu du nom de domaine) de la Maison-Blanche eacutecoutait le port 80 (le port des serveurs Web) En changeant lrsquoadresse IP de la Maison-Blanche lrsquoattaque a eacuteteacute repousseacutee
ExempleExempleCabir Est un virusver (deacutemonstration de faisabiliteacute laquoproof of conceptraquo) qui srsquoattaque agrave la teacuteleacutephonie mobile Crsquoest un fichier de 15 ko nommeacute CARIBESIS
Infection Se propage par la teacuteleacutephonie mobile gracircce agrave la technologie Bluetooth et le systegraveme drsquoexploitation Symbian OS
Action Agrave chaque fois que le teacuteleacutephone infecteacute est ouvert le mot laquoCariberaquo srsquoaffiche Il tente de se propager aux peacuteripheacuteriques BlueTooth de la zone du teacuteleacutephone infecteacute Il nrsquoest pas meacutechant nrsquoavait pour but que de deacutemontrer la faisabiliteacute
AntivirusAntivirusLes antivirus sont des programmes qui deacutetectent les virus les vers et les chevaux de Troie sur votre ordinateur Ils les eacuteliminent
Ils visitent les fichiers sur votre disque dans le but de trouver des bouts de programmes reconnus comme dangereux
Ceci est possible eacutetant donneacute une base de donneacutees agrave jour contenant les virus connus sous la forme de signatures de virus Une signature est un motif (laquopatternraquo) qui caracteacuterise un virus donneacute
Un antivirus nrsquoest efficace que si sa base de donneacutees est mise agrave jour constamment Les compagnies drsquoantivirus vont vite pour mettre agrave jour leur base de donneacutees lorsqursquoun nouveau virus est identifieacute
Malheureusement les utilisateurs tardent agrave mettre leur copie agrave jour causant bien des infections
Tromper les antivirusTromper les antivirusDe nouveaux virus utilisent les meacutethodes de la cryptographie pour deacutejouer les antivirus
Des virus sont chiffreacutes pour les rendre non reconnaissables par les antivirus car ils ont toujours un aspect diffeacuterent
Ces virus ont un petit code en clair qui permet de les deacutecoder et de les charger en meacutemoire pour ecirctre exeacutecuteacutes Ce code est ce que les antivirus doivent deacutetecter
Ces virus sont de trois types
Oligomorphique Le virus est chiffreacute agrave chaque reacuteplication
Polymorphique Le virus est chiffreacute et la routine de deacutechiffrement est capable de changer certaines de ses instructions au fil des reacuteplications
Meacutetamorphique Le virus change de forme au fil des reacuteplications
IntrusionsIntrusionsPour qursquoun virus ver ou cheval de Troie soit deacuteleacutetegravere encore faut-il qursquoil srsquoinstalle sur votre machine
Mecircme si un adversaire peut parler agrave votre machine ceci nrsquoimplique pas qursquoil peut installer un logiciel sur celle-ci encore moins srsquoil nrsquoen est pas un utilisateur
Pour ce faire les adversaires peuvent essayer diverses strateacutegies
Faiblesses du systegraveme drsquoexploitation ou du logiciel du serveur Nous allons voir un exemple de ce type drsquoattaque attaques par deacutebordement Une page Web nrsquoest pas un objet passif Elle peut contenir du code (JavaScript Perl etc) malveillant
Tromper lrsquoutilisateur Crsquoest peut-ecirctre plus simple Cas speacutecial du piratage psychologique Cliquer ici pour installer un joli logiciel il faut espeacuterer que lrsquoantivirus deacutetecte ceci avant qursquoil ne soit trop tard
Deacutetecter les intrusionsDeacutetecter les intrusionsUne faccedilon diffeacuterente de deacutetecter les logiciels ou utilisateurs malveillants consiste agrave deacutetecter les comportements malveillants
Un systegraveme peut surveiller les processus pour deacutetecter les comportements malveillants
Une telle approche a lrsquoavantage de ne pas deacutependre drsquoinformation sur les virus et les attaques
Un coupe-feu dynamique est un exemple de cette approche
Il surveille les connexions et tente de deacuteterminer si un client transmet des donneacutees agrave contenu suspect (comme la taille)
Requecirctes Requecirctes malveillantesmalveillantes
dlkjfdsflkjsd dlkjfdsflkjsd fjdskl gfjdlskewqewewewewhdfbfbfbww fjdskl gfjdlskewqewewewewhdfbfbfbww jaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfjaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfwewqewqewqewqewqewqeweekjwweeqqqsxcswdswewqewqewqewqewqewqeweekjwweeqqqsxcswdsdddds dddds ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqqwwq qwwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewqeweekwqwqwefdscxcccj qeweekwqwqwefdscxcccj ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxzcwq zcwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfssaDSADSADSsfghdskjgfhdsgfihoiehjrfssaDSADSADSADDSDSDSSDSDSADDSDSDSSDSDSIl arrive que de longues requecirctes puissent faire planter un systegraveme
mal programmeacute Un adversaire peut donc soumettre des chaicircnes tregraves longues dans le but de rendre le systegraveme inopeacuterant (ou mecircme pire assujetti) comme nous le verrons plus loin
Et agrave peu pregraves nrsquoimporte qui Et agrave peu pregraves nrsquoimporte qui peut proposer un service peut proposer un service
comme celui-ci comme celui-ci
Un coupe-feu peut filtrer les requecirctes anormalement longues pour les ignorer Mecircme les systegravemes avec programmes erroneacutes seront agrave lrsquoabri de ce type drsquoattaque
SELECT SELECT FROM Passwords FROM Passwords WHERE user=rsquoWHERE user=rsquoJugheadJugheadrsquo AND password=rsquorsquo AND password=rsquoxrsquo xrsquo OR lsquo1rsquo=lsquo1OR lsquo1rsquo=lsquo1rsquorsquo
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Requecirctes Requecirctes malveillantesmalveillantes
HTTPSHTTPS
Password Password xrsquo OR xrsquo OR lsquo1rsquo=rsquo1lsquo1rsquo=rsquo1
Un coupe-feu dynamique peut filtrer des requecirctes bizarres comme xrsquo OR lsquo1rsquo=rsquo1xrsquo OR lsquo1rsquo=rsquo1
Ceci est beaucoup plus difficile agrave Ceci est beaucoup plus difficile agrave reacutealiser par un coupe-feu que reacutealiser par un coupe-feu que
lrsquoexemple preacuteceacutedentlrsquoexemple preacuteceacutedent
Approche Approche comportementalecomportementaleUne autre approche pour la deacutetection drsquointrusions consiste agrave
observer certains aspects du comportement des utilisateurs et programmes
activiteacutes de connexion et de session
activiteacutes relieacutees agrave lrsquoexeacutecution de programme et drsquoaccegraves aux fichiers
Il y a deux approches pour la deacutetection de comportements suspects
Par regravegles (rule-based) Un ensemble de regravegles deacutecrivant les comportements normaux est eacutetabli Les comportements anormaux (trop loin des normaux) sont rejeteacutes
Statistique Des statistiques sur les utilisateurs normaux sont creacuteeacutees Le comportement de lrsquoutilisateurprogramme observeacute est compareacute aux statistiques Un comportement montrant un trop grand eacutecart avec les statistiques est rejeteacute
Problegravemes avec les Problegravemes avec les systegravemes de deacutetection systegravemes de deacutetection
drsquointrusion (IDS)drsquointrusion (IDS)Le problegraveme majeur avec lrsquoapproche est le mecircme qursquoavec la biomeacutetrie Le systegraveme qui surveille doit ecirctre assez toleacuterant pour autoriser les comportements normaux mais suffisamment restrictif pour attraper les acteurs malveillants
Ce problegraveme nrsquoest pas tregraves bien compris et les solutions proposeacutees ne sont pas tout agrave fait satisfaisantes
La deacutetection drsquointrusion est bien inutile si le systegraveme ne reacuteagit pas de la bonne faccedilon lorsqursquoune intrusion est deacutetecteacutee La partie du systegraveme qui alerte lrsquoadministrateur qui interdit lrsquoaccegraves qui effectue quelque autre tacircche pour eacuteliminer la menace est tout aussi importante que celle qui deacutetecte
Le pot de mielLe pot de miel
Le pot de miel (laquohoney potraquo) est un truc pratique pour la deacutetection drsquointrusions
Une ressource bidon qui semble inteacuteressante pour un adversaire est creacuteeacutee
Puisque celle-ci est bidon on peut supposer que si quelqursquoun y accegravede crsquoest qursquoil srsquoadonne agrave une activiteacute malveillante
En consultant les traces il peut ecirctre possible de retrouver lrsquoutilisateur malveillant
Ceci peut se faire agrave lrsquoinsu de lrsquointrus
ExempleExemple
Un hocircpital ameacutericain soupccedilonnait que quelqursquoun consultait les dossiers de patients sans en avoir lrsquoautorisation
Ils ont creacuteeacute des fichiers pour des patients qui nrsquoexistent pas
Les accegraves agrave ces fichiers ont alors eacuteteacute retraceacutes jusqursquoagrave lrsquoutilisateur malveillant
Les attaques de lrsquointeacuterieurLes attaques de lrsquointeacuterieurPresque tout ce que nous avons vu a pour but la protection contre les attaques venues de lrsquoexteacuterieur
Les attaques peuvent tregraves bien eacutemaner de lrsquointeacuterieur et peuvent causer des problegravemes seacuterieux
Le premiegravere chose agrave comprendre est qursquoil nrsquoest pas possible de se preacutemunir contre ces attaques si les utilisateurs ont tous les droits sur le systegraveme cible
Il est donc neacutecessaire qursquoune partie du systegraveme soit garantie de fonctionner selon ses speacutecifications mecircme sous attaque
Sans cette hypothegravese le systegraveme est sous le controcircle complet de lrsquoadversaire
Base informatique Base informatique seacutecuriseacuteeseacutecuriseacutee
laquotrusted computing baseraquo (TCB)laquotrusted computing baseraquo (TCB)
Une base seacutecuriseacutee peut ecirctre eacutetablie en utilisant de la seacutecuriteacute mateacuterielle logicielle par mot de passe par exemple
Le rocircle de ce systegraveme de base est de controcircler lrsquoaccegraves aux ressources et le flux drsquoinformation sur celui-ci
Pour bien comprendre comment ces protections fonctionnent nous devons mettre de lrsquoordre dans nos ideacutees Nous devons voir agrave quoi ressemble une politique de seacutecuriteacute dans ce sceacutenario
Crsquoest notre prochain sujet
Proxy en imagesProxy en imagesLe proxy comme une zone tampon entre
lrsquoInternet et un reacuteseau local
Pendant une connexion internet
Cacher votre adresse Cacher votre adresse IPIPVotre adresse IP reacutevegravele votre point drsquoentreacutee sur lrsquoInternet
Peut permettre de retrouver votre fournisseur le reacuteseau de votre employeur votre eacutecole ou votre terminal public
Il srsquoagit de lrsquoidentiteacute de votre machine pendant que vous ecirctes en ligne Sa porte sur le monde
Vous pouvez dissimuler votre adresse IP sur le Web en utilisant un serveur proxy anonyme
Un serveur proxy speacutecialiseacute pour la navigation Web anonyme utilise sa propre adresse IP agrave la place de la vocirctre pour chaque requecircte sortante
Il peut mecircme chiffrer les communications Web ne permettant plus la surveillance de vos actions
Proxy pour et contre Proxy pour et contre
Un proxy permet de proteacuteger un reacuteseau local drsquoune faccedilon tregraves efficace Un seul point faible neacutecessite notre attention
Cette solution nrsquoest pas tregraves flexible Les logiciels clients des machines locales doivent savoir comment utiliser un proxy Sinon rien ne fonctionnera puisque celles-ci sont invisibles
Nous pourrions peut-ecirctre faire croire au client que le service est donneacute par le coupe-feu mais celui-ci doit savoir quoi faire pour acheminer la connexion vers sa destination Ceci demande de configurer chaque type de connexion
Exemple de Proxy TorExemple de Proxy Tor
Coupe-feu dynamique Coupe-feu dynamique (laquostateful firewallraquo)(laquostateful firewallraquo)
Nous avons vu que les coupe-feu statiques agrave filtrage de paquets interviennent en fonction de paquets individuels
Un serveur FTP va ouvrir des connexions sur des ports de hautes valeurs Le filtrage de paquets ne peut pas savoir qursquoune connexion sur le port 6783 appartient agrave une connexion FTP leacutegitime Ces paquets seront eacutelimineacutes
Le coupe-feu dynamique reacutesout ce problegraveme en meacutemorisant les connexions ouvertes par des connexions leacutegitimes
Il est aussi possible de transformer lrsquoadresse IP drsquoune machine locale par quelque chose de diffeacuterent Le coupe-feu agrave mascarade permet drsquoeacuteviter les attaques qui consistent agrave essayer des adresses IP dans le but drsquoobtenir une reacuteponse
Le coupe-feu peut ecirctre configureacute pour eacuteliminer les connexions qui font des trucs bizarres comme la transmission drsquoune chaicircne trop longue
Toujours la pile TCPIPToujours la pile TCPIP
Champs du protocole Champs du protocole IPIP
Champs utiles pour le protocole IP
Le protocole IP fonctionne agrave partir de segments
Protocole UDPProtocole UDP(ses champs utiles)(ses champs utiles)
Champs utiles pour le protocole UDP
Protocole TCPProtocole TCP(ses champs utiles)(ses champs utiles)
Champs utiles pour le protocole TCP
Port de lrsquoapplication Port de lrsquoapplication en cours sur la en cours sur la machine sourcemachine source
Port de lrsquoapplication Port de lrsquoapplication sur la machine sur la machine
destinationdestination
Le numeacutero drsquoordre du Le numeacutero drsquoordre du prochain segment (IP) prochain segment (IP)
attenduattendu
URG paquet agrave traiter de faccedilon urgenteACK paquet est un accuseacute de reacuteceptionPSH paquet fonctionne selon la meacutethode push
RST connexion reacuteinitialiseacuteeSYN indique une demande drsquoeacutetablissement de connexionFIN indique une interruption de connexion
Le numeacutero drsquoordre du segment (IP) Le numeacutero drsquoordre du segment (IP) courant si SYN=0 et le numeacutero drsquoordre courant si SYN=0 et le numeacutero drsquoordre
initial pour synchroniser les nos de initial pour synchroniser les nos de seacutequence (ISN)seacutequence (ISN)
DrapeauxDrapeaux
Filtrage extrecircmeFiltrage extrecircmeTCP est orienteacute connexion Pour en eacutetablir une de A vers B on doit transmettre SYN=1 dans le premier paquet de lrsquoeacutetablissement de connexion agrave trois eacutetapes (laquothree-way handshakeraquo)
Un filtrage simple consiste agrave laisser tomber tous les paquets qui ne contiennent que le drapeau SYN=1
Il devient impossible drsquoeacutetablir une connexion TCP de lrsquoexteacuterieur du mur
Si en plus les paquets UDP sont eacutelimineacutes alors la situation devrait ecirctre tregraves sucircre
Cette politique ne permet pas de se connecter au serveur Web cependant
Activer le serveur Web Activer le serveur Web et accegraves agrave un DNSet accegraves agrave un DNS
Pour donner accegraves au serveur Web nous pourrions faire la chose suivante
Nous autorisons une exception agrave la regravegle preacuteceacutedente
Nous autorisons les paquets SYN=1 pour le serveur Web sur le port 80 (port http)
Nous voudrions aussi permettre lrsquoaccegraves agrave un serveur DNS pour la conversion drsquoadresse comme httpwwwiroumontrealca en 13220424179
Il suffit de laisser les paquets UDP vers et depuis au moins un serveur DNS sur le port 53 (UDP)
Le reacutesultatLe reacutesultat
Si le pirate trouve une faille sur le serveur Web alors il pourrait attaquer le reacuteseau local
Pour eacuteviter ceci il faut seacuteparer le serveur Web des autresLe filtrage par paquets est insuffisant
Deux filtres valent mieux Deux filtres valent mieux qursquounqursquoun
ProxyProxyIl y a drsquoautres services sur lrsquoInternet qui utilisent le protocole UDP flux de donneacutees videacuteo jeux videacuteo
De plus excepteacute pour les paquets SYN=1 il est possible de transmettre des paquets TCP aux ordinateurs du reacuteseau local
Le proxy peut rendre les machines du reacuteseau local invisibles pas le filtrage simple de paquets
Approche proxyApproche proxy
Coupe-feu Coupe-feu dynamiquesdynamiques
Les proxys ne sont pas tregraves flexibles Les coupe-feu dynamiques permettent drsquoutiliser les logiciels drsquoune faccedilon plus transparente
Il srsquoagit drsquoun filtre avanceacute qui permet de veacuterifier que les paquets appartiennent agrave une connexion deacutejagrave eacutetablie Crsquoest seulement lorsque crsquoest le cas que le paquet peut passer
Parce qursquoil est conscient drsquoune connexion il peut appliquer NAT etou PAT
NAT Dynamique (laquoDynamic Network Address Translationraquo) Le coupe-feu traduit les adresses du reacuteseau Toutes les machines du reacuteseau possegravedent vu de lrsquoexteacuterieur la mecircme adresse IP
PAT (laquoPort Address Translationraquo) Le coupe-feu traduit les numeacuteros de port par lesquels les paquets arrivent sur les hocirctes locaux
Ces coupe-feu sont appeleacutes coupe-feu avec mascarade
NAT a eacuteteacute mis au point agrave NAT a eacuteteacute mis au point agrave lrsquoorigine pour reacutepondre agrave la lrsquoorigine pour reacutepondre agrave la
peacutenurie drsquoadresses IP avec le peacutenurie drsquoadresses IP avec le protocole IPv4protocole IPv4
NAT a eacuteteacute mis au point agrave NAT a eacuteteacute mis au point agrave lrsquoorigine pour reacutepondre agrave la lrsquoorigine pour reacutepondre agrave la
peacutenurie drsquoadresses IP avec le peacutenurie drsquoadresses IP avec le protocole IPv4protocole IPv4
Coupe-feu agrave Coupe-feu agrave mascarademascarade
Filtrage dynamique eacutetenduFiltrage dynamique eacutetenduLe filtrage des coupe-feu dynamiques nrsquoest pas limiteacute aux protocoles TCPIP
Pour des applications usuelles le filtrage peut srsquoappliquer au protocole
Le coupe-feu peut ainsi deacutetecter des comportements inhabituels
Peut aussi filtrer certaines parties des donneacutees transmises
Pour le protocole HTTP le filtre peut supprimer les applications Java
Pour le protocole SMTP le filtre peut supprimer les piegraveces jointes drsquoun certain type
Conclusion sur les coupe-Conclusion sur les coupe-feufeu
Les coupe-feu permettent de filtrer le trafic entre le reacuteseau local et lrsquoInternet en nrsquoadministrant qursquoune seule machine
Les coupe-feu ne sont cependant pas une solution magique pour reacutesoudre les problegravemes causeacutes par les attaques exteacuterieures agrave un reacuteseau local
Les coupe-feu pour un seul ordinateur personnel peuvent offrir une solution sans trop drsquoentretien
Les coupe-feu neacutecessitent des mises agrave jour freacutequentes lorsque le reacuteseau local est de bonne taille Lorsque le reacuteseau local change la configuration du coupe-feu doit aussi changer
Penser que lrsquoinstallation drsquoun coupe-feu rend votre reacuteseau sucircr est un peu de la penseacutee magique (neacutecessaire mais pas suffisant)
Logiciels malveillantsLogiciels malveillantsUn adversaire peut une fois passeacute le coupe-feu et les autres deacutefenses vouloir installer un programme malveillant sur la machine locale Ceux-ci sont de trois types
Chevaux de Troie Programme qui semble tout agrave fait utile mais qui cache une fonction malveillante Par exemple donne accegraves agrave des donneacutees priveacutees donne des droits drsquoaccegraves non autoriseacutes ou deacutetruit des donneacutees
Virus Programme qui infecte un autre programme sur votre ordinateur Agrave partir du programme infecteacute le virus se propage vers drsquoautres programmes Apregraves un certain temps ou eacuteveacutenement les virus peuvent entreprendre certaines actions Celles-ci peuvent ecirctre lrsquoeacutelimination de fichiers la deacuteteacuterioration de fonctions du systegraveme drsquoexploitation etc
Vers Programmes qui infectent un ordinateur sans avoir agrave ecirctre heacutebergeacutes par drsquoautres programmes Ils sont des programmes indeacutependants Ils se multiplient en exploitant diffeacuterentes ressources Les objectifs de ces programmes peuvent ecirctre lrsquoespionnage lrsquoouverture de portes deacuterobeacutees eacutemettre des requecirctes vers un site Internet jusqursquoagrave saturation
ExempleExempleI Love You Un ver lanceacute en 2000 et qui a atteint 31 millions de machines en 4 jours
Infection Le ver eacutetait dissimuleacute en piegravece jointe drsquoun courriel Cette piegravece jointe eacutetait preacutesenteacutee comme Love-Letter-for-youtxtvbs Lrsquoextension vbs indique que le fichier est un script Visual Basic Comme lrsquoextension nrsquoapparaicirct pas sur Windows les utilisateurs voyaient la piegravece jointe comme Love-Letter-for-youtxt Objectif Le script lisait la liste des contacts de lrsquoutilisateur pour envoyer ce mecircme message agrave ceux-ci La plate-forme Windows eacutetait viseacutee Des fichiers eacutetaient deacutetruits et remplaceacutes par ce script Il changeait la page drsquoaccueil drsquoInternet Explorer pour teacuteleacutecharger un cheval de Troie
ExempleExempleCode Red Un ver qui a infecteacute 359 000 ordinateurs en moins de 14 heures le 19 juillet 2001
Infections Le ver se multipliait en essayant des adresses IP aleacuteatoires pour ensuite infecter des serveurs qui faisaient tourner Microsoft IIS avec une faille de seacutecuriteacute
Objectif Monter une attaque par deacuteni de service (DOS) contre la Maison-Blanche
Lrsquoattaque a eacuteteacute facile agrave repousser car le ver veacuterifiait avant de lancer lrsquoattaque que le serveur agrave lrsquoadresse IP (au lieu du nom de domaine) de la Maison-Blanche eacutecoutait le port 80 (le port des serveurs Web) En changeant lrsquoadresse IP de la Maison-Blanche lrsquoattaque a eacuteteacute repousseacutee
ExempleExempleCabir Est un virusver (deacutemonstration de faisabiliteacute laquoproof of conceptraquo) qui srsquoattaque agrave la teacuteleacutephonie mobile Crsquoest un fichier de 15 ko nommeacute CARIBESIS
Infection Se propage par la teacuteleacutephonie mobile gracircce agrave la technologie Bluetooth et le systegraveme drsquoexploitation Symbian OS
Action Agrave chaque fois que le teacuteleacutephone infecteacute est ouvert le mot laquoCariberaquo srsquoaffiche Il tente de se propager aux peacuteripheacuteriques BlueTooth de la zone du teacuteleacutephone infecteacute Il nrsquoest pas meacutechant nrsquoavait pour but que de deacutemontrer la faisabiliteacute
AntivirusAntivirusLes antivirus sont des programmes qui deacutetectent les virus les vers et les chevaux de Troie sur votre ordinateur Ils les eacuteliminent
Ils visitent les fichiers sur votre disque dans le but de trouver des bouts de programmes reconnus comme dangereux
Ceci est possible eacutetant donneacute une base de donneacutees agrave jour contenant les virus connus sous la forme de signatures de virus Une signature est un motif (laquopatternraquo) qui caracteacuterise un virus donneacute
Un antivirus nrsquoest efficace que si sa base de donneacutees est mise agrave jour constamment Les compagnies drsquoantivirus vont vite pour mettre agrave jour leur base de donneacutees lorsqursquoun nouveau virus est identifieacute
Malheureusement les utilisateurs tardent agrave mettre leur copie agrave jour causant bien des infections
Tromper les antivirusTromper les antivirusDe nouveaux virus utilisent les meacutethodes de la cryptographie pour deacutejouer les antivirus
Des virus sont chiffreacutes pour les rendre non reconnaissables par les antivirus car ils ont toujours un aspect diffeacuterent
Ces virus ont un petit code en clair qui permet de les deacutecoder et de les charger en meacutemoire pour ecirctre exeacutecuteacutes Ce code est ce que les antivirus doivent deacutetecter
Ces virus sont de trois types
Oligomorphique Le virus est chiffreacute agrave chaque reacuteplication
Polymorphique Le virus est chiffreacute et la routine de deacutechiffrement est capable de changer certaines de ses instructions au fil des reacuteplications
Meacutetamorphique Le virus change de forme au fil des reacuteplications
IntrusionsIntrusionsPour qursquoun virus ver ou cheval de Troie soit deacuteleacutetegravere encore faut-il qursquoil srsquoinstalle sur votre machine
Mecircme si un adversaire peut parler agrave votre machine ceci nrsquoimplique pas qursquoil peut installer un logiciel sur celle-ci encore moins srsquoil nrsquoen est pas un utilisateur
Pour ce faire les adversaires peuvent essayer diverses strateacutegies
Faiblesses du systegraveme drsquoexploitation ou du logiciel du serveur Nous allons voir un exemple de ce type drsquoattaque attaques par deacutebordement Une page Web nrsquoest pas un objet passif Elle peut contenir du code (JavaScript Perl etc) malveillant
Tromper lrsquoutilisateur Crsquoest peut-ecirctre plus simple Cas speacutecial du piratage psychologique Cliquer ici pour installer un joli logiciel il faut espeacuterer que lrsquoantivirus deacutetecte ceci avant qursquoil ne soit trop tard
Deacutetecter les intrusionsDeacutetecter les intrusionsUne faccedilon diffeacuterente de deacutetecter les logiciels ou utilisateurs malveillants consiste agrave deacutetecter les comportements malveillants
Un systegraveme peut surveiller les processus pour deacutetecter les comportements malveillants
Une telle approche a lrsquoavantage de ne pas deacutependre drsquoinformation sur les virus et les attaques
Un coupe-feu dynamique est un exemple de cette approche
Il surveille les connexions et tente de deacuteterminer si un client transmet des donneacutees agrave contenu suspect (comme la taille)
Requecirctes Requecirctes malveillantesmalveillantes
dlkjfdsflkjsd dlkjfdsflkjsd fjdskl gfjdlskewqewewewewhdfbfbfbww fjdskl gfjdlskewqewewewewhdfbfbfbww jaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfjaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfwewqewqewqewqewqewqeweekjwweeqqqsxcswdswewqewqewqewqewqewqeweekjwweeqqqsxcswdsdddds dddds ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqqwwq qwwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewqeweekwqwqwefdscxcccj qeweekwqwqwefdscxcccj ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxzcwq zcwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfssaDSADSADSsfghdskjgfhdsgfihoiehjrfssaDSADSADSADDSDSDSSDSDSADDSDSDSSDSDSIl arrive que de longues requecirctes puissent faire planter un systegraveme
mal programmeacute Un adversaire peut donc soumettre des chaicircnes tregraves longues dans le but de rendre le systegraveme inopeacuterant (ou mecircme pire assujetti) comme nous le verrons plus loin
Et agrave peu pregraves nrsquoimporte qui Et agrave peu pregraves nrsquoimporte qui peut proposer un service peut proposer un service
comme celui-ci comme celui-ci
Un coupe-feu peut filtrer les requecirctes anormalement longues pour les ignorer Mecircme les systegravemes avec programmes erroneacutes seront agrave lrsquoabri de ce type drsquoattaque
SELECT SELECT FROM Passwords FROM Passwords WHERE user=rsquoWHERE user=rsquoJugheadJugheadrsquo AND password=rsquorsquo AND password=rsquoxrsquo xrsquo OR lsquo1rsquo=lsquo1OR lsquo1rsquo=lsquo1rsquorsquo
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Requecirctes Requecirctes malveillantesmalveillantes
HTTPSHTTPS
Password Password xrsquo OR xrsquo OR lsquo1rsquo=rsquo1lsquo1rsquo=rsquo1
Un coupe-feu dynamique peut filtrer des requecirctes bizarres comme xrsquo OR lsquo1rsquo=rsquo1xrsquo OR lsquo1rsquo=rsquo1
Ceci est beaucoup plus difficile agrave Ceci est beaucoup plus difficile agrave reacutealiser par un coupe-feu que reacutealiser par un coupe-feu que
lrsquoexemple preacuteceacutedentlrsquoexemple preacuteceacutedent
Approche Approche comportementalecomportementaleUne autre approche pour la deacutetection drsquointrusions consiste agrave
observer certains aspects du comportement des utilisateurs et programmes
activiteacutes de connexion et de session
activiteacutes relieacutees agrave lrsquoexeacutecution de programme et drsquoaccegraves aux fichiers
Il y a deux approches pour la deacutetection de comportements suspects
Par regravegles (rule-based) Un ensemble de regravegles deacutecrivant les comportements normaux est eacutetabli Les comportements anormaux (trop loin des normaux) sont rejeteacutes
Statistique Des statistiques sur les utilisateurs normaux sont creacuteeacutees Le comportement de lrsquoutilisateurprogramme observeacute est compareacute aux statistiques Un comportement montrant un trop grand eacutecart avec les statistiques est rejeteacute
Problegravemes avec les Problegravemes avec les systegravemes de deacutetection systegravemes de deacutetection
drsquointrusion (IDS)drsquointrusion (IDS)Le problegraveme majeur avec lrsquoapproche est le mecircme qursquoavec la biomeacutetrie Le systegraveme qui surveille doit ecirctre assez toleacuterant pour autoriser les comportements normaux mais suffisamment restrictif pour attraper les acteurs malveillants
Ce problegraveme nrsquoest pas tregraves bien compris et les solutions proposeacutees ne sont pas tout agrave fait satisfaisantes
La deacutetection drsquointrusion est bien inutile si le systegraveme ne reacuteagit pas de la bonne faccedilon lorsqursquoune intrusion est deacutetecteacutee La partie du systegraveme qui alerte lrsquoadministrateur qui interdit lrsquoaccegraves qui effectue quelque autre tacircche pour eacuteliminer la menace est tout aussi importante que celle qui deacutetecte
Le pot de mielLe pot de miel
Le pot de miel (laquohoney potraquo) est un truc pratique pour la deacutetection drsquointrusions
Une ressource bidon qui semble inteacuteressante pour un adversaire est creacuteeacutee
Puisque celle-ci est bidon on peut supposer que si quelqursquoun y accegravede crsquoest qursquoil srsquoadonne agrave une activiteacute malveillante
En consultant les traces il peut ecirctre possible de retrouver lrsquoutilisateur malveillant
Ceci peut se faire agrave lrsquoinsu de lrsquointrus
ExempleExemple
Un hocircpital ameacutericain soupccedilonnait que quelqursquoun consultait les dossiers de patients sans en avoir lrsquoautorisation
Ils ont creacuteeacute des fichiers pour des patients qui nrsquoexistent pas
Les accegraves agrave ces fichiers ont alors eacuteteacute retraceacutes jusqursquoagrave lrsquoutilisateur malveillant
Les attaques de lrsquointeacuterieurLes attaques de lrsquointeacuterieurPresque tout ce que nous avons vu a pour but la protection contre les attaques venues de lrsquoexteacuterieur
Les attaques peuvent tregraves bien eacutemaner de lrsquointeacuterieur et peuvent causer des problegravemes seacuterieux
Le premiegravere chose agrave comprendre est qursquoil nrsquoest pas possible de se preacutemunir contre ces attaques si les utilisateurs ont tous les droits sur le systegraveme cible
Il est donc neacutecessaire qursquoune partie du systegraveme soit garantie de fonctionner selon ses speacutecifications mecircme sous attaque
Sans cette hypothegravese le systegraveme est sous le controcircle complet de lrsquoadversaire
Base informatique Base informatique seacutecuriseacuteeseacutecuriseacutee
laquotrusted computing baseraquo (TCB)laquotrusted computing baseraquo (TCB)
Une base seacutecuriseacutee peut ecirctre eacutetablie en utilisant de la seacutecuriteacute mateacuterielle logicielle par mot de passe par exemple
Le rocircle de ce systegraveme de base est de controcircler lrsquoaccegraves aux ressources et le flux drsquoinformation sur celui-ci
Pour bien comprendre comment ces protections fonctionnent nous devons mettre de lrsquoordre dans nos ideacutees Nous devons voir agrave quoi ressemble une politique de seacutecuriteacute dans ce sceacutenario
Crsquoest notre prochain sujet
Cacher votre adresse Cacher votre adresse IPIPVotre adresse IP reacutevegravele votre point drsquoentreacutee sur lrsquoInternet
Peut permettre de retrouver votre fournisseur le reacuteseau de votre employeur votre eacutecole ou votre terminal public
Il srsquoagit de lrsquoidentiteacute de votre machine pendant que vous ecirctes en ligne Sa porte sur le monde
Vous pouvez dissimuler votre adresse IP sur le Web en utilisant un serveur proxy anonyme
Un serveur proxy speacutecialiseacute pour la navigation Web anonyme utilise sa propre adresse IP agrave la place de la vocirctre pour chaque requecircte sortante
Il peut mecircme chiffrer les communications Web ne permettant plus la surveillance de vos actions
Proxy pour et contre Proxy pour et contre
Un proxy permet de proteacuteger un reacuteseau local drsquoune faccedilon tregraves efficace Un seul point faible neacutecessite notre attention
Cette solution nrsquoest pas tregraves flexible Les logiciels clients des machines locales doivent savoir comment utiliser un proxy Sinon rien ne fonctionnera puisque celles-ci sont invisibles
Nous pourrions peut-ecirctre faire croire au client que le service est donneacute par le coupe-feu mais celui-ci doit savoir quoi faire pour acheminer la connexion vers sa destination Ceci demande de configurer chaque type de connexion
Exemple de Proxy TorExemple de Proxy Tor
Coupe-feu dynamique Coupe-feu dynamique (laquostateful firewallraquo)(laquostateful firewallraquo)
Nous avons vu que les coupe-feu statiques agrave filtrage de paquets interviennent en fonction de paquets individuels
Un serveur FTP va ouvrir des connexions sur des ports de hautes valeurs Le filtrage de paquets ne peut pas savoir qursquoune connexion sur le port 6783 appartient agrave une connexion FTP leacutegitime Ces paquets seront eacutelimineacutes
Le coupe-feu dynamique reacutesout ce problegraveme en meacutemorisant les connexions ouvertes par des connexions leacutegitimes
Il est aussi possible de transformer lrsquoadresse IP drsquoune machine locale par quelque chose de diffeacuterent Le coupe-feu agrave mascarade permet drsquoeacuteviter les attaques qui consistent agrave essayer des adresses IP dans le but drsquoobtenir une reacuteponse
Le coupe-feu peut ecirctre configureacute pour eacuteliminer les connexions qui font des trucs bizarres comme la transmission drsquoune chaicircne trop longue
Toujours la pile TCPIPToujours la pile TCPIP
Champs du protocole Champs du protocole IPIP
Champs utiles pour le protocole IP
Le protocole IP fonctionne agrave partir de segments
Protocole UDPProtocole UDP(ses champs utiles)(ses champs utiles)
Champs utiles pour le protocole UDP
Protocole TCPProtocole TCP(ses champs utiles)(ses champs utiles)
Champs utiles pour le protocole TCP
Port de lrsquoapplication Port de lrsquoapplication en cours sur la en cours sur la machine sourcemachine source
Port de lrsquoapplication Port de lrsquoapplication sur la machine sur la machine
destinationdestination
Le numeacutero drsquoordre du Le numeacutero drsquoordre du prochain segment (IP) prochain segment (IP)
attenduattendu
URG paquet agrave traiter de faccedilon urgenteACK paquet est un accuseacute de reacuteceptionPSH paquet fonctionne selon la meacutethode push
RST connexion reacuteinitialiseacuteeSYN indique une demande drsquoeacutetablissement de connexionFIN indique une interruption de connexion
Le numeacutero drsquoordre du segment (IP) Le numeacutero drsquoordre du segment (IP) courant si SYN=0 et le numeacutero drsquoordre courant si SYN=0 et le numeacutero drsquoordre
initial pour synchroniser les nos de initial pour synchroniser les nos de seacutequence (ISN)seacutequence (ISN)
DrapeauxDrapeaux
Filtrage extrecircmeFiltrage extrecircmeTCP est orienteacute connexion Pour en eacutetablir une de A vers B on doit transmettre SYN=1 dans le premier paquet de lrsquoeacutetablissement de connexion agrave trois eacutetapes (laquothree-way handshakeraquo)
Un filtrage simple consiste agrave laisser tomber tous les paquets qui ne contiennent que le drapeau SYN=1
Il devient impossible drsquoeacutetablir une connexion TCP de lrsquoexteacuterieur du mur
Si en plus les paquets UDP sont eacutelimineacutes alors la situation devrait ecirctre tregraves sucircre
Cette politique ne permet pas de se connecter au serveur Web cependant
Activer le serveur Web Activer le serveur Web et accegraves agrave un DNSet accegraves agrave un DNS
Pour donner accegraves au serveur Web nous pourrions faire la chose suivante
Nous autorisons une exception agrave la regravegle preacuteceacutedente
Nous autorisons les paquets SYN=1 pour le serveur Web sur le port 80 (port http)
Nous voudrions aussi permettre lrsquoaccegraves agrave un serveur DNS pour la conversion drsquoadresse comme httpwwwiroumontrealca en 13220424179
Il suffit de laisser les paquets UDP vers et depuis au moins un serveur DNS sur le port 53 (UDP)
Le reacutesultatLe reacutesultat
Si le pirate trouve une faille sur le serveur Web alors il pourrait attaquer le reacuteseau local
Pour eacuteviter ceci il faut seacuteparer le serveur Web des autresLe filtrage par paquets est insuffisant
Deux filtres valent mieux Deux filtres valent mieux qursquounqursquoun
ProxyProxyIl y a drsquoautres services sur lrsquoInternet qui utilisent le protocole UDP flux de donneacutees videacuteo jeux videacuteo
De plus excepteacute pour les paquets SYN=1 il est possible de transmettre des paquets TCP aux ordinateurs du reacuteseau local
Le proxy peut rendre les machines du reacuteseau local invisibles pas le filtrage simple de paquets
Approche proxyApproche proxy
Coupe-feu Coupe-feu dynamiquesdynamiques
Les proxys ne sont pas tregraves flexibles Les coupe-feu dynamiques permettent drsquoutiliser les logiciels drsquoune faccedilon plus transparente
Il srsquoagit drsquoun filtre avanceacute qui permet de veacuterifier que les paquets appartiennent agrave une connexion deacutejagrave eacutetablie Crsquoest seulement lorsque crsquoest le cas que le paquet peut passer
Parce qursquoil est conscient drsquoune connexion il peut appliquer NAT etou PAT
NAT Dynamique (laquoDynamic Network Address Translationraquo) Le coupe-feu traduit les adresses du reacuteseau Toutes les machines du reacuteseau possegravedent vu de lrsquoexteacuterieur la mecircme adresse IP
PAT (laquoPort Address Translationraquo) Le coupe-feu traduit les numeacuteros de port par lesquels les paquets arrivent sur les hocirctes locaux
Ces coupe-feu sont appeleacutes coupe-feu avec mascarade
NAT a eacuteteacute mis au point agrave NAT a eacuteteacute mis au point agrave lrsquoorigine pour reacutepondre agrave la lrsquoorigine pour reacutepondre agrave la
peacutenurie drsquoadresses IP avec le peacutenurie drsquoadresses IP avec le protocole IPv4protocole IPv4
NAT a eacuteteacute mis au point agrave NAT a eacuteteacute mis au point agrave lrsquoorigine pour reacutepondre agrave la lrsquoorigine pour reacutepondre agrave la
peacutenurie drsquoadresses IP avec le peacutenurie drsquoadresses IP avec le protocole IPv4protocole IPv4
Coupe-feu agrave Coupe-feu agrave mascarademascarade
Filtrage dynamique eacutetenduFiltrage dynamique eacutetenduLe filtrage des coupe-feu dynamiques nrsquoest pas limiteacute aux protocoles TCPIP
Pour des applications usuelles le filtrage peut srsquoappliquer au protocole
Le coupe-feu peut ainsi deacutetecter des comportements inhabituels
Peut aussi filtrer certaines parties des donneacutees transmises
Pour le protocole HTTP le filtre peut supprimer les applications Java
Pour le protocole SMTP le filtre peut supprimer les piegraveces jointes drsquoun certain type
Conclusion sur les coupe-Conclusion sur les coupe-feufeu
Les coupe-feu permettent de filtrer le trafic entre le reacuteseau local et lrsquoInternet en nrsquoadministrant qursquoune seule machine
Les coupe-feu ne sont cependant pas une solution magique pour reacutesoudre les problegravemes causeacutes par les attaques exteacuterieures agrave un reacuteseau local
Les coupe-feu pour un seul ordinateur personnel peuvent offrir une solution sans trop drsquoentretien
Les coupe-feu neacutecessitent des mises agrave jour freacutequentes lorsque le reacuteseau local est de bonne taille Lorsque le reacuteseau local change la configuration du coupe-feu doit aussi changer
Penser que lrsquoinstallation drsquoun coupe-feu rend votre reacuteseau sucircr est un peu de la penseacutee magique (neacutecessaire mais pas suffisant)
Logiciels malveillantsLogiciels malveillantsUn adversaire peut une fois passeacute le coupe-feu et les autres deacutefenses vouloir installer un programme malveillant sur la machine locale Ceux-ci sont de trois types
Chevaux de Troie Programme qui semble tout agrave fait utile mais qui cache une fonction malveillante Par exemple donne accegraves agrave des donneacutees priveacutees donne des droits drsquoaccegraves non autoriseacutes ou deacutetruit des donneacutees
Virus Programme qui infecte un autre programme sur votre ordinateur Agrave partir du programme infecteacute le virus se propage vers drsquoautres programmes Apregraves un certain temps ou eacuteveacutenement les virus peuvent entreprendre certaines actions Celles-ci peuvent ecirctre lrsquoeacutelimination de fichiers la deacuteteacuterioration de fonctions du systegraveme drsquoexploitation etc
Vers Programmes qui infectent un ordinateur sans avoir agrave ecirctre heacutebergeacutes par drsquoautres programmes Ils sont des programmes indeacutependants Ils se multiplient en exploitant diffeacuterentes ressources Les objectifs de ces programmes peuvent ecirctre lrsquoespionnage lrsquoouverture de portes deacuterobeacutees eacutemettre des requecirctes vers un site Internet jusqursquoagrave saturation
ExempleExempleI Love You Un ver lanceacute en 2000 et qui a atteint 31 millions de machines en 4 jours
Infection Le ver eacutetait dissimuleacute en piegravece jointe drsquoun courriel Cette piegravece jointe eacutetait preacutesenteacutee comme Love-Letter-for-youtxtvbs Lrsquoextension vbs indique que le fichier est un script Visual Basic Comme lrsquoextension nrsquoapparaicirct pas sur Windows les utilisateurs voyaient la piegravece jointe comme Love-Letter-for-youtxt Objectif Le script lisait la liste des contacts de lrsquoutilisateur pour envoyer ce mecircme message agrave ceux-ci La plate-forme Windows eacutetait viseacutee Des fichiers eacutetaient deacutetruits et remplaceacutes par ce script Il changeait la page drsquoaccueil drsquoInternet Explorer pour teacuteleacutecharger un cheval de Troie
ExempleExempleCode Red Un ver qui a infecteacute 359 000 ordinateurs en moins de 14 heures le 19 juillet 2001
Infections Le ver se multipliait en essayant des adresses IP aleacuteatoires pour ensuite infecter des serveurs qui faisaient tourner Microsoft IIS avec une faille de seacutecuriteacute
Objectif Monter une attaque par deacuteni de service (DOS) contre la Maison-Blanche
Lrsquoattaque a eacuteteacute facile agrave repousser car le ver veacuterifiait avant de lancer lrsquoattaque que le serveur agrave lrsquoadresse IP (au lieu du nom de domaine) de la Maison-Blanche eacutecoutait le port 80 (le port des serveurs Web) En changeant lrsquoadresse IP de la Maison-Blanche lrsquoattaque a eacuteteacute repousseacutee
ExempleExempleCabir Est un virusver (deacutemonstration de faisabiliteacute laquoproof of conceptraquo) qui srsquoattaque agrave la teacuteleacutephonie mobile Crsquoest un fichier de 15 ko nommeacute CARIBESIS
Infection Se propage par la teacuteleacutephonie mobile gracircce agrave la technologie Bluetooth et le systegraveme drsquoexploitation Symbian OS
Action Agrave chaque fois que le teacuteleacutephone infecteacute est ouvert le mot laquoCariberaquo srsquoaffiche Il tente de se propager aux peacuteripheacuteriques BlueTooth de la zone du teacuteleacutephone infecteacute Il nrsquoest pas meacutechant nrsquoavait pour but que de deacutemontrer la faisabiliteacute
AntivirusAntivirusLes antivirus sont des programmes qui deacutetectent les virus les vers et les chevaux de Troie sur votre ordinateur Ils les eacuteliminent
Ils visitent les fichiers sur votre disque dans le but de trouver des bouts de programmes reconnus comme dangereux
Ceci est possible eacutetant donneacute une base de donneacutees agrave jour contenant les virus connus sous la forme de signatures de virus Une signature est un motif (laquopatternraquo) qui caracteacuterise un virus donneacute
Un antivirus nrsquoest efficace que si sa base de donneacutees est mise agrave jour constamment Les compagnies drsquoantivirus vont vite pour mettre agrave jour leur base de donneacutees lorsqursquoun nouveau virus est identifieacute
Malheureusement les utilisateurs tardent agrave mettre leur copie agrave jour causant bien des infections
Tromper les antivirusTromper les antivirusDe nouveaux virus utilisent les meacutethodes de la cryptographie pour deacutejouer les antivirus
Des virus sont chiffreacutes pour les rendre non reconnaissables par les antivirus car ils ont toujours un aspect diffeacuterent
Ces virus ont un petit code en clair qui permet de les deacutecoder et de les charger en meacutemoire pour ecirctre exeacutecuteacutes Ce code est ce que les antivirus doivent deacutetecter
Ces virus sont de trois types
Oligomorphique Le virus est chiffreacute agrave chaque reacuteplication
Polymorphique Le virus est chiffreacute et la routine de deacutechiffrement est capable de changer certaines de ses instructions au fil des reacuteplications
Meacutetamorphique Le virus change de forme au fil des reacuteplications
IntrusionsIntrusionsPour qursquoun virus ver ou cheval de Troie soit deacuteleacutetegravere encore faut-il qursquoil srsquoinstalle sur votre machine
Mecircme si un adversaire peut parler agrave votre machine ceci nrsquoimplique pas qursquoil peut installer un logiciel sur celle-ci encore moins srsquoil nrsquoen est pas un utilisateur
Pour ce faire les adversaires peuvent essayer diverses strateacutegies
Faiblesses du systegraveme drsquoexploitation ou du logiciel du serveur Nous allons voir un exemple de ce type drsquoattaque attaques par deacutebordement Une page Web nrsquoest pas un objet passif Elle peut contenir du code (JavaScript Perl etc) malveillant
Tromper lrsquoutilisateur Crsquoest peut-ecirctre plus simple Cas speacutecial du piratage psychologique Cliquer ici pour installer un joli logiciel il faut espeacuterer que lrsquoantivirus deacutetecte ceci avant qursquoil ne soit trop tard
Deacutetecter les intrusionsDeacutetecter les intrusionsUne faccedilon diffeacuterente de deacutetecter les logiciels ou utilisateurs malveillants consiste agrave deacutetecter les comportements malveillants
Un systegraveme peut surveiller les processus pour deacutetecter les comportements malveillants
Une telle approche a lrsquoavantage de ne pas deacutependre drsquoinformation sur les virus et les attaques
Un coupe-feu dynamique est un exemple de cette approche
Il surveille les connexions et tente de deacuteterminer si un client transmet des donneacutees agrave contenu suspect (comme la taille)
Requecirctes Requecirctes malveillantesmalveillantes
dlkjfdsflkjsd dlkjfdsflkjsd fjdskl gfjdlskewqewewewewhdfbfbfbww fjdskl gfjdlskewqewewewewhdfbfbfbww jaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfjaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfwewqewqewqewqewqewqeweekjwweeqqqsxcswdswewqewqewqewqewqewqeweekjwweeqqqsxcswdsdddds dddds ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqqwwq qwwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewqeweekwqwqwefdscxcccj qeweekwqwqwefdscxcccj ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxzcwq zcwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfssaDSADSADSsfghdskjgfhdsgfihoiehjrfssaDSADSADSADDSDSDSSDSDSADDSDSDSSDSDSIl arrive que de longues requecirctes puissent faire planter un systegraveme
mal programmeacute Un adversaire peut donc soumettre des chaicircnes tregraves longues dans le but de rendre le systegraveme inopeacuterant (ou mecircme pire assujetti) comme nous le verrons plus loin
Et agrave peu pregraves nrsquoimporte qui Et agrave peu pregraves nrsquoimporte qui peut proposer un service peut proposer un service
comme celui-ci comme celui-ci
Un coupe-feu peut filtrer les requecirctes anormalement longues pour les ignorer Mecircme les systegravemes avec programmes erroneacutes seront agrave lrsquoabri de ce type drsquoattaque
SELECT SELECT FROM Passwords FROM Passwords WHERE user=rsquoWHERE user=rsquoJugheadJugheadrsquo AND password=rsquorsquo AND password=rsquoxrsquo xrsquo OR lsquo1rsquo=lsquo1OR lsquo1rsquo=lsquo1rsquorsquo
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Requecirctes Requecirctes malveillantesmalveillantes
HTTPSHTTPS
Password Password xrsquo OR xrsquo OR lsquo1rsquo=rsquo1lsquo1rsquo=rsquo1
Un coupe-feu dynamique peut filtrer des requecirctes bizarres comme xrsquo OR lsquo1rsquo=rsquo1xrsquo OR lsquo1rsquo=rsquo1
Ceci est beaucoup plus difficile agrave Ceci est beaucoup plus difficile agrave reacutealiser par un coupe-feu que reacutealiser par un coupe-feu que
lrsquoexemple preacuteceacutedentlrsquoexemple preacuteceacutedent
Approche Approche comportementalecomportementaleUne autre approche pour la deacutetection drsquointrusions consiste agrave
observer certains aspects du comportement des utilisateurs et programmes
activiteacutes de connexion et de session
activiteacutes relieacutees agrave lrsquoexeacutecution de programme et drsquoaccegraves aux fichiers
Il y a deux approches pour la deacutetection de comportements suspects
Par regravegles (rule-based) Un ensemble de regravegles deacutecrivant les comportements normaux est eacutetabli Les comportements anormaux (trop loin des normaux) sont rejeteacutes
Statistique Des statistiques sur les utilisateurs normaux sont creacuteeacutees Le comportement de lrsquoutilisateurprogramme observeacute est compareacute aux statistiques Un comportement montrant un trop grand eacutecart avec les statistiques est rejeteacute
Problegravemes avec les Problegravemes avec les systegravemes de deacutetection systegravemes de deacutetection
drsquointrusion (IDS)drsquointrusion (IDS)Le problegraveme majeur avec lrsquoapproche est le mecircme qursquoavec la biomeacutetrie Le systegraveme qui surveille doit ecirctre assez toleacuterant pour autoriser les comportements normaux mais suffisamment restrictif pour attraper les acteurs malveillants
Ce problegraveme nrsquoest pas tregraves bien compris et les solutions proposeacutees ne sont pas tout agrave fait satisfaisantes
La deacutetection drsquointrusion est bien inutile si le systegraveme ne reacuteagit pas de la bonne faccedilon lorsqursquoune intrusion est deacutetecteacutee La partie du systegraveme qui alerte lrsquoadministrateur qui interdit lrsquoaccegraves qui effectue quelque autre tacircche pour eacuteliminer la menace est tout aussi importante que celle qui deacutetecte
Le pot de mielLe pot de miel
Le pot de miel (laquohoney potraquo) est un truc pratique pour la deacutetection drsquointrusions
Une ressource bidon qui semble inteacuteressante pour un adversaire est creacuteeacutee
Puisque celle-ci est bidon on peut supposer que si quelqursquoun y accegravede crsquoest qursquoil srsquoadonne agrave une activiteacute malveillante
En consultant les traces il peut ecirctre possible de retrouver lrsquoutilisateur malveillant
Ceci peut se faire agrave lrsquoinsu de lrsquointrus
ExempleExemple
Un hocircpital ameacutericain soupccedilonnait que quelqursquoun consultait les dossiers de patients sans en avoir lrsquoautorisation
Ils ont creacuteeacute des fichiers pour des patients qui nrsquoexistent pas
Les accegraves agrave ces fichiers ont alors eacuteteacute retraceacutes jusqursquoagrave lrsquoutilisateur malveillant
Les attaques de lrsquointeacuterieurLes attaques de lrsquointeacuterieurPresque tout ce que nous avons vu a pour but la protection contre les attaques venues de lrsquoexteacuterieur
Les attaques peuvent tregraves bien eacutemaner de lrsquointeacuterieur et peuvent causer des problegravemes seacuterieux
Le premiegravere chose agrave comprendre est qursquoil nrsquoest pas possible de se preacutemunir contre ces attaques si les utilisateurs ont tous les droits sur le systegraveme cible
Il est donc neacutecessaire qursquoune partie du systegraveme soit garantie de fonctionner selon ses speacutecifications mecircme sous attaque
Sans cette hypothegravese le systegraveme est sous le controcircle complet de lrsquoadversaire
Base informatique Base informatique seacutecuriseacuteeseacutecuriseacutee
laquotrusted computing baseraquo (TCB)laquotrusted computing baseraquo (TCB)
Une base seacutecuriseacutee peut ecirctre eacutetablie en utilisant de la seacutecuriteacute mateacuterielle logicielle par mot de passe par exemple
Le rocircle de ce systegraveme de base est de controcircler lrsquoaccegraves aux ressources et le flux drsquoinformation sur celui-ci
Pour bien comprendre comment ces protections fonctionnent nous devons mettre de lrsquoordre dans nos ideacutees Nous devons voir agrave quoi ressemble une politique de seacutecuriteacute dans ce sceacutenario
Crsquoest notre prochain sujet
Proxy pour et contre Proxy pour et contre
Un proxy permet de proteacuteger un reacuteseau local drsquoune faccedilon tregraves efficace Un seul point faible neacutecessite notre attention
Cette solution nrsquoest pas tregraves flexible Les logiciels clients des machines locales doivent savoir comment utiliser un proxy Sinon rien ne fonctionnera puisque celles-ci sont invisibles
Nous pourrions peut-ecirctre faire croire au client que le service est donneacute par le coupe-feu mais celui-ci doit savoir quoi faire pour acheminer la connexion vers sa destination Ceci demande de configurer chaque type de connexion
Exemple de Proxy TorExemple de Proxy Tor
Coupe-feu dynamique Coupe-feu dynamique (laquostateful firewallraquo)(laquostateful firewallraquo)
Nous avons vu que les coupe-feu statiques agrave filtrage de paquets interviennent en fonction de paquets individuels
Un serveur FTP va ouvrir des connexions sur des ports de hautes valeurs Le filtrage de paquets ne peut pas savoir qursquoune connexion sur le port 6783 appartient agrave une connexion FTP leacutegitime Ces paquets seront eacutelimineacutes
Le coupe-feu dynamique reacutesout ce problegraveme en meacutemorisant les connexions ouvertes par des connexions leacutegitimes
Il est aussi possible de transformer lrsquoadresse IP drsquoune machine locale par quelque chose de diffeacuterent Le coupe-feu agrave mascarade permet drsquoeacuteviter les attaques qui consistent agrave essayer des adresses IP dans le but drsquoobtenir une reacuteponse
Le coupe-feu peut ecirctre configureacute pour eacuteliminer les connexions qui font des trucs bizarres comme la transmission drsquoune chaicircne trop longue
Toujours la pile TCPIPToujours la pile TCPIP
Champs du protocole Champs du protocole IPIP
Champs utiles pour le protocole IP
Le protocole IP fonctionne agrave partir de segments
Protocole UDPProtocole UDP(ses champs utiles)(ses champs utiles)
Champs utiles pour le protocole UDP
Protocole TCPProtocole TCP(ses champs utiles)(ses champs utiles)
Champs utiles pour le protocole TCP
Port de lrsquoapplication Port de lrsquoapplication en cours sur la en cours sur la machine sourcemachine source
Port de lrsquoapplication Port de lrsquoapplication sur la machine sur la machine
destinationdestination
Le numeacutero drsquoordre du Le numeacutero drsquoordre du prochain segment (IP) prochain segment (IP)
attenduattendu
URG paquet agrave traiter de faccedilon urgenteACK paquet est un accuseacute de reacuteceptionPSH paquet fonctionne selon la meacutethode push
RST connexion reacuteinitialiseacuteeSYN indique une demande drsquoeacutetablissement de connexionFIN indique une interruption de connexion
Le numeacutero drsquoordre du segment (IP) Le numeacutero drsquoordre du segment (IP) courant si SYN=0 et le numeacutero drsquoordre courant si SYN=0 et le numeacutero drsquoordre
initial pour synchroniser les nos de initial pour synchroniser les nos de seacutequence (ISN)seacutequence (ISN)
DrapeauxDrapeaux
Filtrage extrecircmeFiltrage extrecircmeTCP est orienteacute connexion Pour en eacutetablir une de A vers B on doit transmettre SYN=1 dans le premier paquet de lrsquoeacutetablissement de connexion agrave trois eacutetapes (laquothree-way handshakeraquo)
Un filtrage simple consiste agrave laisser tomber tous les paquets qui ne contiennent que le drapeau SYN=1
Il devient impossible drsquoeacutetablir une connexion TCP de lrsquoexteacuterieur du mur
Si en plus les paquets UDP sont eacutelimineacutes alors la situation devrait ecirctre tregraves sucircre
Cette politique ne permet pas de se connecter au serveur Web cependant
Activer le serveur Web Activer le serveur Web et accegraves agrave un DNSet accegraves agrave un DNS
Pour donner accegraves au serveur Web nous pourrions faire la chose suivante
Nous autorisons une exception agrave la regravegle preacuteceacutedente
Nous autorisons les paquets SYN=1 pour le serveur Web sur le port 80 (port http)
Nous voudrions aussi permettre lrsquoaccegraves agrave un serveur DNS pour la conversion drsquoadresse comme httpwwwiroumontrealca en 13220424179
Il suffit de laisser les paquets UDP vers et depuis au moins un serveur DNS sur le port 53 (UDP)
Le reacutesultatLe reacutesultat
Si le pirate trouve une faille sur le serveur Web alors il pourrait attaquer le reacuteseau local
Pour eacuteviter ceci il faut seacuteparer le serveur Web des autresLe filtrage par paquets est insuffisant
Deux filtres valent mieux Deux filtres valent mieux qursquounqursquoun
ProxyProxyIl y a drsquoautres services sur lrsquoInternet qui utilisent le protocole UDP flux de donneacutees videacuteo jeux videacuteo
De plus excepteacute pour les paquets SYN=1 il est possible de transmettre des paquets TCP aux ordinateurs du reacuteseau local
Le proxy peut rendre les machines du reacuteseau local invisibles pas le filtrage simple de paquets
Approche proxyApproche proxy
Coupe-feu Coupe-feu dynamiquesdynamiques
Les proxys ne sont pas tregraves flexibles Les coupe-feu dynamiques permettent drsquoutiliser les logiciels drsquoune faccedilon plus transparente
Il srsquoagit drsquoun filtre avanceacute qui permet de veacuterifier que les paquets appartiennent agrave une connexion deacutejagrave eacutetablie Crsquoest seulement lorsque crsquoest le cas que le paquet peut passer
Parce qursquoil est conscient drsquoune connexion il peut appliquer NAT etou PAT
NAT Dynamique (laquoDynamic Network Address Translationraquo) Le coupe-feu traduit les adresses du reacuteseau Toutes les machines du reacuteseau possegravedent vu de lrsquoexteacuterieur la mecircme adresse IP
PAT (laquoPort Address Translationraquo) Le coupe-feu traduit les numeacuteros de port par lesquels les paquets arrivent sur les hocirctes locaux
Ces coupe-feu sont appeleacutes coupe-feu avec mascarade
NAT a eacuteteacute mis au point agrave NAT a eacuteteacute mis au point agrave lrsquoorigine pour reacutepondre agrave la lrsquoorigine pour reacutepondre agrave la
peacutenurie drsquoadresses IP avec le peacutenurie drsquoadresses IP avec le protocole IPv4protocole IPv4
NAT a eacuteteacute mis au point agrave NAT a eacuteteacute mis au point agrave lrsquoorigine pour reacutepondre agrave la lrsquoorigine pour reacutepondre agrave la
peacutenurie drsquoadresses IP avec le peacutenurie drsquoadresses IP avec le protocole IPv4protocole IPv4
Coupe-feu agrave Coupe-feu agrave mascarademascarade
Filtrage dynamique eacutetenduFiltrage dynamique eacutetenduLe filtrage des coupe-feu dynamiques nrsquoest pas limiteacute aux protocoles TCPIP
Pour des applications usuelles le filtrage peut srsquoappliquer au protocole
Le coupe-feu peut ainsi deacutetecter des comportements inhabituels
Peut aussi filtrer certaines parties des donneacutees transmises
Pour le protocole HTTP le filtre peut supprimer les applications Java
Pour le protocole SMTP le filtre peut supprimer les piegraveces jointes drsquoun certain type
Conclusion sur les coupe-Conclusion sur les coupe-feufeu
Les coupe-feu permettent de filtrer le trafic entre le reacuteseau local et lrsquoInternet en nrsquoadministrant qursquoune seule machine
Les coupe-feu ne sont cependant pas une solution magique pour reacutesoudre les problegravemes causeacutes par les attaques exteacuterieures agrave un reacuteseau local
Les coupe-feu pour un seul ordinateur personnel peuvent offrir une solution sans trop drsquoentretien
Les coupe-feu neacutecessitent des mises agrave jour freacutequentes lorsque le reacuteseau local est de bonne taille Lorsque le reacuteseau local change la configuration du coupe-feu doit aussi changer
Penser que lrsquoinstallation drsquoun coupe-feu rend votre reacuteseau sucircr est un peu de la penseacutee magique (neacutecessaire mais pas suffisant)
Logiciels malveillantsLogiciels malveillantsUn adversaire peut une fois passeacute le coupe-feu et les autres deacutefenses vouloir installer un programme malveillant sur la machine locale Ceux-ci sont de trois types
Chevaux de Troie Programme qui semble tout agrave fait utile mais qui cache une fonction malveillante Par exemple donne accegraves agrave des donneacutees priveacutees donne des droits drsquoaccegraves non autoriseacutes ou deacutetruit des donneacutees
Virus Programme qui infecte un autre programme sur votre ordinateur Agrave partir du programme infecteacute le virus se propage vers drsquoautres programmes Apregraves un certain temps ou eacuteveacutenement les virus peuvent entreprendre certaines actions Celles-ci peuvent ecirctre lrsquoeacutelimination de fichiers la deacuteteacuterioration de fonctions du systegraveme drsquoexploitation etc
Vers Programmes qui infectent un ordinateur sans avoir agrave ecirctre heacutebergeacutes par drsquoautres programmes Ils sont des programmes indeacutependants Ils se multiplient en exploitant diffeacuterentes ressources Les objectifs de ces programmes peuvent ecirctre lrsquoespionnage lrsquoouverture de portes deacuterobeacutees eacutemettre des requecirctes vers un site Internet jusqursquoagrave saturation
ExempleExempleI Love You Un ver lanceacute en 2000 et qui a atteint 31 millions de machines en 4 jours
Infection Le ver eacutetait dissimuleacute en piegravece jointe drsquoun courriel Cette piegravece jointe eacutetait preacutesenteacutee comme Love-Letter-for-youtxtvbs Lrsquoextension vbs indique que le fichier est un script Visual Basic Comme lrsquoextension nrsquoapparaicirct pas sur Windows les utilisateurs voyaient la piegravece jointe comme Love-Letter-for-youtxt Objectif Le script lisait la liste des contacts de lrsquoutilisateur pour envoyer ce mecircme message agrave ceux-ci La plate-forme Windows eacutetait viseacutee Des fichiers eacutetaient deacutetruits et remplaceacutes par ce script Il changeait la page drsquoaccueil drsquoInternet Explorer pour teacuteleacutecharger un cheval de Troie
ExempleExempleCode Red Un ver qui a infecteacute 359 000 ordinateurs en moins de 14 heures le 19 juillet 2001
Infections Le ver se multipliait en essayant des adresses IP aleacuteatoires pour ensuite infecter des serveurs qui faisaient tourner Microsoft IIS avec une faille de seacutecuriteacute
Objectif Monter une attaque par deacuteni de service (DOS) contre la Maison-Blanche
Lrsquoattaque a eacuteteacute facile agrave repousser car le ver veacuterifiait avant de lancer lrsquoattaque que le serveur agrave lrsquoadresse IP (au lieu du nom de domaine) de la Maison-Blanche eacutecoutait le port 80 (le port des serveurs Web) En changeant lrsquoadresse IP de la Maison-Blanche lrsquoattaque a eacuteteacute repousseacutee
ExempleExempleCabir Est un virusver (deacutemonstration de faisabiliteacute laquoproof of conceptraquo) qui srsquoattaque agrave la teacuteleacutephonie mobile Crsquoest un fichier de 15 ko nommeacute CARIBESIS
Infection Se propage par la teacuteleacutephonie mobile gracircce agrave la technologie Bluetooth et le systegraveme drsquoexploitation Symbian OS
Action Agrave chaque fois que le teacuteleacutephone infecteacute est ouvert le mot laquoCariberaquo srsquoaffiche Il tente de se propager aux peacuteripheacuteriques BlueTooth de la zone du teacuteleacutephone infecteacute Il nrsquoest pas meacutechant nrsquoavait pour but que de deacutemontrer la faisabiliteacute
AntivirusAntivirusLes antivirus sont des programmes qui deacutetectent les virus les vers et les chevaux de Troie sur votre ordinateur Ils les eacuteliminent
Ils visitent les fichiers sur votre disque dans le but de trouver des bouts de programmes reconnus comme dangereux
Ceci est possible eacutetant donneacute une base de donneacutees agrave jour contenant les virus connus sous la forme de signatures de virus Une signature est un motif (laquopatternraquo) qui caracteacuterise un virus donneacute
Un antivirus nrsquoest efficace que si sa base de donneacutees est mise agrave jour constamment Les compagnies drsquoantivirus vont vite pour mettre agrave jour leur base de donneacutees lorsqursquoun nouveau virus est identifieacute
Malheureusement les utilisateurs tardent agrave mettre leur copie agrave jour causant bien des infections
Tromper les antivirusTromper les antivirusDe nouveaux virus utilisent les meacutethodes de la cryptographie pour deacutejouer les antivirus
Des virus sont chiffreacutes pour les rendre non reconnaissables par les antivirus car ils ont toujours un aspect diffeacuterent
Ces virus ont un petit code en clair qui permet de les deacutecoder et de les charger en meacutemoire pour ecirctre exeacutecuteacutes Ce code est ce que les antivirus doivent deacutetecter
Ces virus sont de trois types
Oligomorphique Le virus est chiffreacute agrave chaque reacuteplication
Polymorphique Le virus est chiffreacute et la routine de deacutechiffrement est capable de changer certaines de ses instructions au fil des reacuteplications
Meacutetamorphique Le virus change de forme au fil des reacuteplications
IntrusionsIntrusionsPour qursquoun virus ver ou cheval de Troie soit deacuteleacutetegravere encore faut-il qursquoil srsquoinstalle sur votre machine
Mecircme si un adversaire peut parler agrave votre machine ceci nrsquoimplique pas qursquoil peut installer un logiciel sur celle-ci encore moins srsquoil nrsquoen est pas un utilisateur
Pour ce faire les adversaires peuvent essayer diverses strateacutegies
Faiblesses du systegraveme drsquoexploitation ou du logiciel du serveur Nous allons voir un exemple de ce type drsquoattaque attaques par deacutebordement Une page Web nrsquoest pas un objet passif Elle peut contenir du code (JavaScript Perl etc) malveillant
Tromper lrsquoutilisateur Crsquoest peut-ecirctre plus simple Cas speacutecial du piratage psychologique Cliquer ici pour installer un joli logiciel il faut espeacuterer que lrsquoantivirus deacutetecte ceci avant qursquoil ne soit trop tard
Deacutetecter les intrusionsDeacutetecter les intrusionsUne faccedilon diffeacuterente de deacutetecter les logiciels ou utilisateurs malveillants consiste agrave deacutetecter les comportements malveillants
Un systegraveme peut surveiller les processus pour deacutetecter les comportements malveillants
Une telle approche a lrsquoavantage de ne pas deacutependre drsquoinformation sur les virus et les attaques
Un coupe-feu dynamique est un exemple de cette approche
Il surveille les connexions et tente de deacuteterminer si un client transmet des donneacutees agrave contenu suspect (comme la taille)
Requecirctes Requecirctes malveillantesmalveillantes
dlkjfdsflkjsd dlkjfdsflkjsd fjdskl gfjdlskewqewewewewhdfbfbfbww fjdskl gfjdlskewqewewewewhdfbfbfbww jaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfjaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfwewqewqewqewqewqewqeweekjwweeqqqsxcswdswewqewqewqewqewqewqeweekjwweeqqqsxcswdsdddds dddds ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqqwwq qwwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewqeweekwqwqwefdscxcccj qeweekwqwqwefdscxcccj ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxzcwq zcwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfssaDSADSADSsfghdskjgfhdsgfihoiehjrfssaDSADSADSADDSDSDSSDSDSADDSDSDSSDSDSIl arrive que de longues requecirctes puissent faire planter un systegraveme
mal programmeacute Un adversaire peut donc soumettre des chaicircnes tregraves longues dans le but de rendre le systegraveme inopeacuterant (ou mecircme pire assujetti) comme nous le verrons plus loin
Et agrave peu pregraves nrsquoimporte qui Et agrave peu pregraves nrsquoimporte qui peut proposer un service peut proposer un service
comme celui-ci comme celui-ci
Un coupe-feu peut filtrer les requecirctes anormalement longues pour les ignorer Mecircme les systegravemes avec programmes erroneacutes seront agrave lrsquoabri de ce type drsquoattaque
SELECT SELECT FROM Passwords FROM Passwords WHERE user=rsquoWHERE user=rsquoJugheadJugheadrsquo AND password=rsquorsquo AND password=rsquoxrsquo xrsquo OR lsquo1rsquo=lsquo1OR lsquo1rsquo=lsquo1rsquorsquo
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Requecirctes Requecirctes malveillantesmalveillantes
HTTPSHTTPS
Password Password xrsquo OR xrsquo OR lsquo1rsquo=rsquo1lsquo1rsquo=rsquo1
Un coupe-feu dynamique peut filtrer des requecirctes bizarres comme xrsquo OR lsquo1rsquo=rsquo1xrsquo OR lsquo1rsquo=rsquo1
Ceci est beaucoup plus difficile agrave Ceci est beaucoup plus difficile agrave reacutealiser par un coupe-feu que reacutealiser par un coupe-feu que
lrsquoexemple preacuteceacutedentlrsquoexemple preacuteceacutedent
Approche Approche comportementalecomportementaleUne autre approche pour la deacutetection drsquointrusions consiste agrave
observer certains aspects du comportement des utilisateurs et programmes
activiteacutes de connexion et de session
activiteacutes relieacutees agrave lrsquoexeacutecution de programme et drsquoaccegraves aux fichiers
Il y a deux approches pour la deacutetection de comportements suspects
Par regravegles (rule-based) Un ensemble de regravegles deacutecrivant les comportements normaux est eacutetabli Les comportements anormaux (trop loin des normaux) sont rejeteacutes
Statistique Des statistiques sur les utilisateurs normaux sont creacuteeacutees Le comportement de lrsquoutilisateurprogramme observeacute est compareacute aux statistiques Un comportement montrant un trop grand eacutecart avec les statistiques est rejeteacute
Problegravemes avec les Problegravemes avec les systegravemes de deacutetection systegravemes de deacutetection
drsquointrusion (IDS)drsquointrusion (IDS)Le problegraveme majeur avec lrsquoapproche est le mecircme qursquoavec la biomeacutetrie Le systegraveme qui surveille doit ecirctre assez toleacuterant pour autoriser les comportements normaux mais suffisamment restrictif pour attraper les acteurs malveillants
Ce problegraveme nrsquoest pas tregraves bien compris et les solutions proposeacutees ne sont pas tout agrave fait satisfaisantes
La deacutetection drsquointrusion est bien inutile si le systegraveme ne reacuteagit pas de la bonne faccedilon lorsqursquoune intrusion est deacutetecteacutee La partie du systegraveme qui alerte lrsquoadministrateur qui interdit lrsquoaccegraves qui effectue quelque autre tacircche pour eacuteliminer la menace est tout aussi importante que celle qui deacutetecte
Le pot de mielLe pot de miel
Le pot de miel (laquohoney potraquo) est un truc pratique pour la deacutetection drsquointrusions
Une ressource bidon qui semble inteacuteressante pour un adversaire est creacuteeacutee
Puisque celle-ci est bidon on peut supposer que si quelqursquoun y accegravede crsquoest qursquoil srsquoadonne agrave une activiteacute malveillante
En consultant les traces il peut ecirctre possible de retrouver lrsquoutilisateur malveillant
Ceci peut se faire agrave lrsquoinsu de lrsquointrus
ExempleExemple
Un hocircpital ameacutericain soupccedilonnait que quelqursquoun consultait les dossiers de patients sans en avoir lrsquoautorisation
Ils ont creacuteeacute des fichiers pour des patients qui nrsquoexistent pas
Les accegraves agrave ces fichiers ont alors eacuteteacute retraceacutes jusqursquoagrave lrsquoutilisateur malveillant
Les attaques de lrsquointeacuterieurLes attaques de lrsquointeacuterieurPresque tout ce que nous avons vu a pour but la protection contre les attaques venues de lrsquoexteacuterieur
Les attaques peuvent tregraves bien eacutemaner de lrsquointeacuterieur et peuvent causer des problegravemes seacuterieux
Le premiegravere chose agrave comprendre est qursquoil nrsquoest pas possible de se preacutemunir contre ces attaques si les utilisateurs ont tous les droits sur le systegraveme cible
Il est donc neacutecessaire qursquoune partie du systegraveme soit garantie de fonctionner selon ses speacutecifications mecircme sous attaque
Sans cette hypothegravese le systegraveme est sous le controcircle complet de lrsquoadversaire
Base informatique Base informatique seacutecuriseacuteeseacutecuriseacutee
laquotrusted computing baseraquo (TCB)laquotrusted computing baseraquo (TCB)
Une base seacutecuriseacutee peut ecirctre eacutetablie en utilisant de la seacutecuriteacute mateacuterielle logicielle par mot de passe par exemple
Le rocircle de ce systegraveme de base est de controcircler lrsquoaccegraves aux ressources et le flux drsquoinformation sur celui-ci
Pour bien comprendre comment ces protections fonctionnent nous devons mettre de lrsquoordre dans nos ideacutees Nous devons voir agrave quoi ressemble une politique de seacutecuriteacute dans ce sceacutenario
Crsquoest notre prochain sujet
Exemple de Proxy TorExemple de Proxy Tor
Coupe-feu dynamique Coupe-feu dynamique (laquostateful firewallraquo)(laquostateful firewallraquo)
Nous avons vu que les coupe-feu statiques agrave filtrage de paquets interviennent en fonction de paquets individuels
Un serveur FTP va ouvrir des connexions sur des ports de hautes valeurs Le filtrage de paquets ne peut pas savoir qursquoune connexion sur le port 6783 appartient agrave une connexion FTP leacutegitime Ces paquets seront eacutelimineacutes
Le coupe-feu dynamique reacutesout ce problegraveme en meacutemorisant les connexions ouvertes par des connexions leacutegitimes
Il est aussi possible de transformer lrsquoadresse IP drsquoune machine locale par quelque chose de diffeacuterent Le coupe-feu agrave mascarade permet drsquoeacuteviter les attaques qui consistent agrave essayer des adresses IP dans le but drsquoobtenir une reacuteponse
Le coupe-feu peut ecirctre configureacute pour eacuteliminer les connexions qui font des trucs bizarres comme la transmission drsquoune chaicircne trop longue
Toujours la pile TCPIPToujours la pile TCPIP
Champs du protocole Champs du protocole IPIP
Champs utiles pour le protocole IP
Le protocole IP fonctionne agrave partir de segments
Protocole UDPProtocole UDP(ses champs utiles)(ses champs utiles)
Champs utiles pour le protocole UDP
Protocole TCPProtocole TCP(ses champs utiles)(ses champs utiles)
Champs utiles pour le protocole TCP
Port de lrsquoapplication Port de lrsquoapplication en cours sur la en cours sur la machine sourcemachine source
Port de lrsquoapplication Port de lrsquoapplication sur la machine sur la machine
destinationdestination
Le numeacutero drsquoordre du Le numeacutero drsquoordre du prochain segment (IP) prochain segment (IP)
attenduattendu
URG paquet agrave traiter de faccedilon urgenteACK paquet est un accuseacute de reacuteceptionPSH paquet fonctionne selon la meacutethode push
RST connexion reacuteinitialiseacuteeSYN indique une demande drsquoeacutetablissement de connexionFIN indique une interruption de connexion
Le numeacutero drsquoordre du segment (IP) Le numeacutero drsquoordre du segment (IP) courant si SYN=0 et le numeacutero drsquoordre courant si SYN=0 et le numeacutero drsquoordre
initial pour synchroniser les nos de initial pour synchroniser les nos de seacutequence (ISN)seacutequence (ISN)
DrapeauxDrapeaux
Filtrage extrecircmeFiltrage extrecircmeTCP est orienteacute connexion Pour en eacutetablir une de A vers B on doit transmettre SYN=1 dans le premier paquet de lrsquoeacutetablissement de connexion agrave trois eacutetapes (laquothree-way handshakeraquo)
Un filtrage simple consiste agrave laisser tomber tous les paquets qui ne contiennent que le drapeau SYN=1
Il devient impossible drsquoeacutetablir une connexion TCP de lrsquoexteacuterieur du mur
Si en plus les paquets UDP sont eacutelimineacutes alors la situation devrait ecirctre tregraves sucircre
Cette politique ne permet pas de se connecter au serveur Web cependant
Activer le serveur Web Activer le serveur Web et accegraves agrave un DNSet accegraves agrave un DNS
Pour donner accegraves au serveur Web nous pourrions faire la chose suivante
Nous autorisons une exception agrave la regravegle preacuteceacutedente
Nous autorisons les paquets SYN=1 pour le serveur Web sur le port 80 (port http)
Nous voudrions aussi permettre lrsquoaccegraves agrave un serveur DNS pour la conversion drsquoadresse comme httpwwwiroumontrealca en 13220424179
Il suffit de laisser les paquets UDP vers et depuis au moins un serveur DNS sur le port 53 (UDP)
Le reacutesultatLe reacutesultat
Si le pirate trouve une faille sur le serveur Web alors il pourrait attaquer le reacuteseau local
Pour eacuteviter ceci il faut seacuteparer le serveur Web des autresLe filtrage par paquets est insuffisant
Deux filtres valent mieux Deux filtres valent mieux qursquounqursquoun
ProxyProxyIl y a drsquoautres services sur lrsquoInternet qui utilisent le protocole UDP flux de donneacutees videacuteo jeux videacuteo
De plus excepteacute pour les paquets SYN=1 il est possible de transmettre des paquets TCP aux ordinateurs du reacuteseau local
Le proxy peut rendre les machines du reacuteseau local invisibles pas le filtrage simple de paquets
Approche proxyApproche proxy
Coupe-feu Coupe-feu dynamiquesdynamiques
Les proxys ne sont pas tregraves flexibles Les coupe-feu dynamiques permettent drsquoutiliser les logiciels drsquoune faccedilon plus transparente
Il srsquoagit drsquoun filtre avanceacute qui permet de veacuterifier que les paquets appartiennent agrave une connexion deacutejagrave eacutetablie Crsquoest seulement lorsque crsquoest le cas que le paquet peut passer
Parce qursquoil est conscient drsquoune connexion il peut appliquer NAT etou PAT
NAT Dynamique (laquoDynamic Network Address Translationraquo) Le coupe-feu traduit les adresses du reacuteseau Toutes les machines du reacuteseau possegravedent vu de lrsquoexteacuterieur la mecircme adresse IP
PAT (laquoPort Address Translationraquo) Le coupe-feu traduit les numeacuteros de port par lesquels les paquets arrivent sur les hocirctes locaux
Ces coupe-feu sont appeleacutes coupe-feu avec mascarade
NAT a eacuteteacute mis au point agrave NAT a eacuteteacute mis au point agrave lrsquoorigine pour reacutepondre agrave la lrsquoorigine pour reacutepondre agrave la
peacutenurie drsquoadresses IP avec le peacutenurie drsquoadresses IP avec le protocole IPv4protocole IPv4
NAT a eacuteteacute mis au point agrave NAT a eacuteteacute mis au point agrave lrsquoorigine pour reacutepondre agrave la lrsquoorigine pour reacutepondre agrave la
peacutenurie drsquoadresses IP avec le peacutenurie drsquoadresses IP avec le protocole IPv4protocole IPv4
Coupe-feu agrave Coupe-feu agrave mascarademascarade
Filtrage dynamique eacutetenduFiltrage dynamique eacutetenduLe filtrage des coupe-feu dynamiques nrsquoest pas limiteacute aux protocoles TCPIP
Pour des applications usuelles le filtrage peut srsquoappliquer au protocole
Le coupe-feu peut ainsi deacutetecter des comportements inhabituels
Peut aussi filtrer certaines parties des donneacutees transmises
Pour le protocole HTTP le filtre peut supprimer les applications Java
Pour le protocole SMTP le filtre peut supprimer les piegraveces jointes drsquoun certain type
Conclusion sur les coupe-Conclusion sur les coupe-feufeu
Les coupe-feu permettent de filtrer le trafic entre le reacuteseau local et lrsquoInternet en nrsquoadministrant qursquoune seule machine
Les coupe-feu ne sont cependant pas une solution magique pour reacutesoudre les problegravemes causeacutes par les attaques exteacuterieures agrave un reacuteseau local
Les coupe-feu pour un seul ordinateur personnel peuvent offrir une solution sans trop drsquoentretien
Les coupe-feu neacutecessitent des mises agrave jour freacutequentes lorsque le reacuteseau local est de bonne taille Lorsque le reacuteseau local change la configuration du coupe-feu doit aussi changer
Penser que lrsquoinstallation drsquoun coupe-feu rend votre reacuteseau sucircr est un peu de la penseacutee magique (neacutecessaire mais pas suffisant)
Logiciels malveillantsLogiciels malveillantsUn adversaire peut une fois passeacute le coupe-feu et les autres deacutefenses vouloir installer un programme malveillant sur la machine locale Ceux-ci sont de trois types
Chevaux de Troie Programme qui semble tout agrave fait utile mais qui cache une fonction malveillante Par exemple donne accegraves agrave des donneacutees priveacutees donne des droits drsquoaccegraves non autoriseacutes ou deacutetruit des donneacutees
Virus Programme qui infecte un autre programme sur votre ordinateur Agrave partir du programme infecteacute le virus se propage vers drsquoautres programmes Apregraves un certain temps ou eacuteveacutenement les virus peuvent entreprendre certaines actions Celles-ci peuvent ecirctre lrsquoeacutelimination de fichiers la deacuteteacuterioration de fonctions du systegraveme drsquoexploitation etc
Vers Programmes qui infectent un ordinateur sans avoir agrave ecirctre heacutebergeacutes par drsquoautres programmes Ils sont des programmes indeacutependants Ils se multiplient en exploitant diffeacuterentes ressources Les objectifs de ces programmes peuvent ecirctre lrsquoespionnage lrsquoouverture de portes deacuterobeacutees eacutemettre des requecirctes vers un site Internet jusqursquoagrave saturation
ExempleExempleI Love You Un ver lanceacute en 2000 et qui a atteint 31 millions de machines en 4 jours
Infection Le ver eacutetait dissimuleacute en piegravece jointe drsquoun courriel Cette piegravece jointe eacutetait preacutesenteacutee comme Love-Letter-for-youtxtvbs Lrsquoextension vbs indique que le fichier est un script Visual Basic Comme lrsquoextension nrsquoapparaicirct pas sur Windows les utilisateurs voyaient la piegravece jointe comme Love-Letter-for-youtxt Objectif Le script lisait la liste des contacts de lrsquoutilisateur pour envoyer ce mecircme message agrave ceux-ci La plate-forme Windows eacutetait viseacutee Des fichiers eacutetaient deacutetruits et remplaceacutes par ce script Il changeait la page drsquoaccueil drsquoInternet Explorer pour teacuteleacutecharger un cheval de Troie
ExempleExempleCode Red Un ver qui a infecteacute 359 000 ordinateurs en moins de 14 heures le 19 juillet 2001
Infections Le ver se multipliait en essayant des adresses IP aleacuteatoires pour ensuite infecter des serveurs qui faisaient tourner Microsoft IIS avec une faille de seacutecuriteacute
Objectif Monter une attaque par deacuteni de service (DOS) contre la Maison-Blanche
Lrsquoattaque a eacuteteacute facile agrave repousser car le ver veacuterifiait avant de lancer lrsquoattaque que le serveur agrave lrsquoadresse IP (au lieu du nom de domaine) de la Maison-Blanche eacutecoutait le port 80 (le port des serveurs Web) En changeant lrsquoadresse IP de la Maison-Blanche lrsquoattaque a eacuteteacute repousseacutee
ExempleExempleCabir Est un virusver (deacutemonstration de faisabiliteacute laquoproof of conceptraquo) qui srsquoattaque agrave la teacuteleacutephonie mobile Crsquoest un fichier de 15 ko nommeacute CARIBESIS
Infection Se propage par la teacuteleacutephonie mobile gracircce agrave la technologie Bluetooth et le systegraveme drsquoexploitation Symbian OS
Action Agrave chaque fois que le teacuteleacutephone infecteacute est ouvert le mot laquoCariberaquo srsquoaffiche Il tente de se propager aux peacuteripheacuteriques BlueTooth de la zone du teacuteleacutephone infecteacute Il nrsquoest pas meacutechant nrsquoavait pour but que de deacutemontrer la faisabiliteacute
AntivirusAntivirusLes antivirus sont des programmes qui deacutetectent les virus les vers et les chevaux de Troie sur votre ordinateur Ils les eacuteliminent
Ils visitent les fichiers sur votre disque dans le but de trouver des bouts de programmes reconnus comme dangereux
Ceci est possible eacutetant donneacute une base de donneacutees agrave jour contenant les virus connus sous la forme de signatures de virus Une signature est un motif (laquopatternraquo) qui caracteacuterise un virus donneacute
Un antivirus nrsquoest efficace que si sa base de donneacutees est mise agrave jour constamment Les compagnies drsquoantivirus vont vite pour mettre agrave jour leur base de donneacutees lorsqursquoun nouveau virus est identifieacute
Malheureusement les utilisateurs tardent agrave mettre leur copie agrave jour causant bien des infections
Tromper les antivirusTromper les antivirusDe nouveaux virus utilisent les meacutethodes de la cryptographie pour deacutejouer les antivirus
Des virus sont chiffreacutes pour les rendre non reconnaissables par les antivirus car ils ont toujours un aspect diffeacuterent
Ces virus ont un petit code en clair qui permet de les deacutecoder et de les charger en meacutemoire pour ecirctre exeacutecuteacutes Ce code est ce que les antivirus doivent deacutetecter
Ces virus sont de trois types
Oligomorphique Le virus est chiffreacute agrave chaque reacuteplication
Polymorphique Le virus est chiffreacute et la routine de deacutechiffrement est capable de changer certaines de ses instructions au fil des reacuteplications
Meacutetamorphique Le virus change de forme au fil des reacuteplications
IntrusionsIntrusionsPour qursquoun virus ver ou cheval de Troie soit deacuteleacutetegravere encore faut-il qursquoil srsquoinstalle sur votre machine
Mecircme si un adversaire peut parler agrave votre machine ceci nrsquoimplique pas qursquoil peut installer un logiciel sur celle-ci encore moins srsquoil nrsquoen est pas un utilisateur
Pour ce faire les adversaires peuvent essayer diverses strateacutegies
Faiblesses du systegraveme drsquoexploitation ou du logiciel du serveur Nous allons voir un exemple de ce type drsquoattaque attaques par deacutebordement Une page Web nrsquoest pas un objet passif Elle peut contenir du code (JavaScript Perl etc) malveillant
Tromper lrsquoutilisateur Crsquoest peut-ecirctre plus simple Cas speacutecial du piratage psychologique Cliquer ici pour installer un joli logiciel il faut espeacuterer que lrsquoantivirus deacutetecte ceci avant qursquoil ne soit trop tard
Deacutetecter les intrusionsDeacutetecter les intrusionsUne faccedilon diffeacuterente de deacutetecter les logiciels ou utilisateurs malveillants consiste agrave deacutetecter les comportements malveillants
Un systegraveme peut surveiller les processus pour deacutetecter les comportements malveillants
Une telle approche a lrsquoavantage de ne pas deacutependre drsquoinformation sur les virus et les attaques
Un coupe-feu dynamique est un exemple de cette approche
Il surveille les connexions et tente de deacuteterminer si un client transmet des donneacutees agrave contenu suspect (comme la taille)
Requecirctes Requecirctes malveillantesmalveillantes
dlkjfdsflkjsd dlkjfdsflkjsd fjdskl gfjdlskewqewewewewhdfbfbfbww fjdskl gfjdlskewqewewewewhdfbfbfbww jaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfjaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfwewqewqewqewqewqewqeweekjwweeqqqsxcswdswewqewqewqewqewqewqeweekjwweeqqqsxcswdsdddds dddds ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqqwwq qwwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewqeweekwqwqwefdscxcccj qeweekwqwqwefdscxcccj ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxzcwq zcwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfssaDSADSADSsfghdskjgfhdsgfihoiehjrfssaDSADSADSADDSDSDSSDSDSADDSDSDSSDSDSIl arrive que de longues requecirctes puissent faire planter un systegraveme
mal programmeacute Un adversaire peut donc soumettre des chaicircnes tregraves longues dans le but de rendre le systegraveme inopeacuterant (ou mecircme pire assujetti) comme nous le verrons plus loin
Et agrave peu pregraves nrsquoimporte qui Et agrave peu pregraves nrsquoimporte qui peut proposer un service peut proposer un service
comme celui-ci comme celui-ci
Un coupe-feu peut filtrer les requecirctes anormalement longues pour les ignorer Mecircme les systegravemes avec programmes erroneacutes seront agrave lrsquoabri de ce type drsquoattaque
SELECT SELECT FROM Passwords FROM Passwords WHERE user=rsquoWHERE user=rsquoJugheadJugheadrsquo AND password=rsquorsquo AND password=rsquoxrsquo xrsquo OR lsquo1rsquo=lsquo1OR lsquo1rsquo=lsquo1rsquorsquo
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Requecirctes Requecirctes malveillantesmalveillantes
HTTPSHTTPS
Password Password xrsquo OR xrsquo OR lsquo1rsquo=rsquo1lsquo1rsquo=rsquo1
Un coupe-feu dynamique peut filtrer des requecirctes bizarres comme xrsquo OR lsquo1rsquo=rsquo1xrsquo OR lsquo1rsquo=rsquo1
Ceci est beaucoup plus difficile agrave Ceci est beaucoup plus difficile agrave reacutealiser par un coupe-feu que reacutealiser par un coupe-feu que
lrsquoexemple preacuteceacutedentlrsquoexemple preacuteceacutedent
Approche Approche comportementalecomportementaleUne autre approche pour la deacutetection drsquointrusions consiste agrave
observer certains aspects du comportement des utilisateurs et programmes
activiteacutes de connexion et de session
activiteacutes relieacutees agrave lrsquoexeacutecution de programme et drsquoaccegraves aux fichiers
Il y a deux approches pour la deacutetection de comportements suspects
Par regravegles (rule-based) Un ensemble de regravegles deacutecrivant les comportements normaux est eacutetabli Les comportements anormaux (trop loin des normaux) sont rejeteacutes
Statistique Des statistiques sur les utilisateurs normaux sont creacuteeacutees Le comportement de lrsquoutilisateurprogramme observeacute est compareacute aux statistiques Un comportement montrant un trop grand eacutecart avec les statistiques est rejeteacute
Problegravemes avec les Problegravemes avec les systegravemes de deacutetection systegravemes de deacutetection
drsquointrusion (IDS)drsquointrusion (IDS)Le problegraveme majeur avec lrsquoapproche est le mecircme qursquoavec la biomeacutetrie Le systegraveme qui surveille doit ecirctre assez toleacuterant pour autoriser les comportements normaux mais suffisamment restrictif pour attraper les acteurs malveillants
Ce problegraveme nrsquoest pas tregraves bien compris et les solutions proposeacutees ne sont pas tout agrave fait satisfaisantes
La deacutetection drsquointrusion est bien inutile si le systegraveme ne reacuteagit pas de la bonne faccedilon lorsqursquoune intrusion est deacutetecteacutee La partie du systegraveme qui alerte lrsquoadministrateur qui interdit lrsquoaccegraves qui effectue quelque autre tacircche pour eacuteliminer la menace est tout aussi importante que celle qui deacutetecte
Le pot de mielLe pot de miel
Le pot de miel (laquohoney potraquo) est un truc pratique pour la deacutetection drsquointrusions
Une ressource bidon qui semble inteacuteressante pour un adversaire est creacuteeacutee
Puisque celle-ci est bidon on peut supposer que si quelqursquoun y accegravede crsquoest qursquoil srsquoadonne agrave une activiteacute malveillante
En consultant les traces il peut ecirctre possible de retrouver lrsquoutilisateur malveillant
Ceci peut se faire agrave lrsquoinsu de lrsquointrus
ExempleExemple
Un hocircpital ameacutericain soupccedilonnait que quelqursquoun consultait les dossiers de patients sans en avoir lrsquoautorisation
Ils ont creacuteeacute des fichiers pour des patients qui nrsquoexistent pas
Les accegraves agrave ces fichiers ont alors eacuteteacute retraceacutes jusqursquoagrave lrsquoutilisateur malveillant
Les attaques de lrsquointeacuterieurLes attaques de lrsquointeacuterieurPresque tout ce que nous avons vu a pour but la protection contre les attaques venues de lrsquoexteacuterieur
Les attaques peuvent tregraves bien eacutemaner de lrsquointeacuterieur et peuvent causer des problegravemes seacuterieux
Le premiegravere chose agrave comprendre est qursquoil nrsquoest pas possible de se preacutemunir contre ces attaques si les utilisateurs ont tous les droits sur le systegraveme cible
Il est donc neacutecessaire qursquoune partie du systegraveme soit garantie de fonctionner selon ses speacutecifications mecircme sous attaque
Sans cette hypothegravese le systegraveme est sous le controcircle complet de lrsquoadversaire
Base informatique Base informatique seacutecuriseacuteeseacutecuriseacutee
laquotrusted computing baseraquo (TCB)laquotrusted computing baseraquo (TCB)
Une base seacutecuriseacutee peut ecirctre eacutetablie en utilisant de la seacutecuriteacute mateacuterielle logicielle par mot de passe par exemple
Le rocircle de ce systegraveme de base est de controcircler lrsquoaccegraves aux ressources et le flux drsquoinformation sur celui-ci
Pour bien comprendre comment ces protections fonctionnent nous devons mettre de lrsquoordre dans nos ideacutees Nous devons voir agrave quoi ressemble une politique de seacutecuriteacute dans ce sceacutenario
Crsquoest notre prochain sujet
Coupe-feu dynamique Coupe-feu dynamique (laquostateful firewallraquo)(laquostateful firewallraquo)
Nous avons vu que les coupe-feu statiques agrave filtrage de paquets interviennent en fonction de paquets individuels
Un serveur FTP va ouvrir des connexions sur des ports de hautes valeurs Le filtrage de paquets ne peut pas savoir qursquoune connexion sur le port 6783 appartient agrave une connexion FTP leacutegitime Ces paquets seront eacutelimineacutes
Le coupe-feu dynamique reacutesout ce problegraveme en meacutemorisant les connexions ouvertes par des connexions leacutegitimes
Il est aussi possible de transformer lrsquoadresse IP drsquoune machine locale par quelque chose de diffeacuterent Le coupe-feu agrave mascarade permet drsquoeacuteviter les attaques qui consistent agrave essayer des adresses IP dans le but drsquoobtenir une reacuteponse
Le coupe-feu peut ecirctre configureacute pour eacuteliminer les connexions qui font des trucs bizarres comme la transmission drsquoune chaicircne trop longue
Toujours la pile TCPIPToujours la pile TCPIP
Champs du protocole Champs du protocole IPIP
Champs utiles pour le protocole IP
Le protocole IP fonctionne agrave partir de segments
Protocole UDPProtocole UDP(ses champs utiles)(ses champs utiles)
Champs utiles pour le protocole UDP
Protocole TCPProtocole TCP(ses champs utiles)(ses champs utiles)
Champs utiles pour le protocole TCP
Port de lrsquoapplication Port de lrsquoapplication en cours sur la en cours sur la machine sourcemachine source
Port de lrsquoapplication Port de lrsquoapplication sur la machine sur la machine
destinationdestination
Le numeacutero drsquoordre du Le numeacutero drsquoordre du prochain segment (IP) prochain segment (IP)
attenduattendu
URG paquet agrave traiter de faccedilon urgenteACK paquet est un accuseacute de reacuteceptionPSH paquet fonctionne selon la meacutethode push
RST connexion reacuteinitialiseacuteeSYN indique une demande drsquoeacutetablissement de connexionFIN indique une interruption de connexion
Le numeacutero drsquoordre du segment (IP) Le numeacutero drsquoordre du segment (IP) courant si SYN=0 et le numeacutero drsquoordre courant si SYN=0 et le numeacutero drsquoordre
initial pour synchroniser les nos de initial pour synchroniser les nos de seacutequence (ISN)seacutequence (ISN)
DrapeauxDrapeaux
Filtrage extrecircmeFiltrage extrecircmeTCP est orienteacute connexion Pour en eacutetablir une de A vers B on doit transmettre SYN=1 dans le premier paquet de lrsquoeacutetablissement de connexion agrave trois eacutetapes (laquothree-way handshakeraquo)
Un filtrage simple consiste agrave laisser tomber tous les paquets qui ne contiennent que le drapeau SYN=1
Il devient impossible drsquoeacutetablir une connexion TCP de lrsquoexteacuterieur du mur
Si en plus les paquets UDP sont eacutelimineacutes alors la situation devrait ecirctre tregraves sucircre
Cette politique ne permet pas de se connecter au serveur Web cependant
Activer le serveur Web Activer le serveur Web et accegraves agrave un DNSet accegraves agrave un DNS
Pour donner accegraves au serveur Web nous pourrions faire la chose suivante
Nous autorisons une exception agrave la regravegle preacuteceacutedente
Nous autorisons les paquets SYN=1 pour le serveur Web sur le port 80 (port http)
Nous voudrions aussi permettre lrsquoaccegraves agrave un serveur DNS pour la conversion drsquoadresse comme httpwwwiroumontrealca en 13220424179
Il suffit de laisser les paquets UDP vers et depuis au moins un serveur DNS sur le port 53 (UDP)
Le reacutesultatLe reacutesultat
Si le pirate trouve une faille sur le serveur Web alors il pourrait attaquer le reacuteseau local
Pour eacuteviter ceci il faut seacuteparer le serveur Web des autresLe filtrage par paquets est insuffisant
Deux filtres valent mieux Deux filtres valent mieux qursquounqursquoun
ProxyProxyIl y a drsquoautres services sur lrsquoInternet qui utilisent le protocole UDP flux de donneacutees videacuteo jeux videacuteo
De plus excepteacute pour les paquets SYN=1 il est possible de transmettre des paquets TCP aux ordinateurs du reacuteseau local
Le proxy peut rendre les machines du reacuteseau local invisibles pas le filtrage simple de paquets
Approche proxyApproche proxy
Coupe-feu Coupe-feu dynamiquesdynamiques
Les proxys ne sont pas tregraves flexibles Les coupe-feu dynamiques permettent drsquoutiliser les logiciels drsquoune faccedilon plus transparente
Il srsquoagit drsquoun filtre avanceacute qui permet de veacuterifier que les paquets appartiennent agrave une connexion deacutejagrave eacutetablie Crsquoest seulement lorsque crsquoest le cas que le paquet peut passer
Parce qursquoil est conscient drsquoune connexion il peut appliquer NAT etou PAT
NAT Dynamique (laquoDynamic Network Address Translationraquo) Le coupe-feu traduit les adresses du reacuteseau Toutes les machines du reacuteseau possegravedent vu de lrsquoexteacuterieur la mecircme adresse IP
PAT (laquoPort Address Translationraquo) Le coupe-feu traduit les numeacuteros de port par lesquels les paquets arrivent sur les hocirctes locaux
Ces coupe-feu sont appeleacutes coupe-feu avec mascarade
NAT a eacuteteacute mis au point agrave NAT a eacuteteacute mis au point agrave lrsquoorigine pour reacutepondre agrave la lrsquoorigine pour reacutepondre agrave la
peacutenurie drsquoadresses IP avec le peacutenurie drsquoadresses IP avec le protocole IPv4protocole IPv4
NAT a eacuteteacute mis au point agrave NAT a eacuteteacute mis au point agrave lrsquoorigine pour reacutepondre agrave la lrsquoorigine pour reacutepondre agrave la
peacutenurie drsquoadresses IP avec le peacutenurie drsquoadresses IP avec le protocole IPv4protocole IPv4
Coupe-feu agrave Coupe-feu agrave mascarademascarade
Filtrage dynamique eacutetenduFiltrage dynamique eacutetenduLe filtrage des coupe-feu dynamiques nrsquoest pas limiteacute aux protocoles TCPIP
Pour des applications usuelles le filtrage peut srsquoappliquer au protocole
Le coupe-feu peut ainsi deacutetecter des comportements inhabituels
Peut aussi filtrer certaines parties des donneacutees transmises
Pour le protocole HTTP le filtre peut supprimer les applications Java
Pour le protocole SMTP le filtre peut supprimer les piegraveces jointes drsquoun certain type
Conclusion sur les coupe-Conclusion sur les coupe-feufeu
Les coupe-feu permettent de filtrer le trafic entre le reacuteseau local et lrsquoInternet en nrsquoadministrant qursquoune seule machine
Les coupe-feu ne sont cependant pas une solution magique pour reacutesoudre les problegravemes causeacutes par les attaques exteacuterieures agrave un reacuteseau local
Les coupe-feu pour un seul ordinateur personnel peuvent offrir une solution sans trop drsquoentretien
Les coupe-feu neacutecessitent des mises agrave jour freacutequentes lorsque le reacuteseau local est de bonne taille Lorsque le reacuteseau local change la configuration du coupe-feu doit aussi changer
Penser que lrsquoinstallation drsquoun coupe-feu rend votre reacuteseau sucircr est un peu de la penseacutee magique (neacutecessaire mais pas suffisant)
Logiciels malveillantsLogiciels malveillantsUn adversaire peut une fois passeacute le coupe-feu et les autres deacutefenses vouloir installer un programme malveillant sur la machine locale Ceux-ci sont de trois types
Chevaux de Troie Programme qui semble tout agrave fait utile mais qui cache une fonction malveillante Par exemple donne accegraves agrave des donneacutees priveacutees donne des droits drsquoaccegraves non autoriseacutes ou deacutetruit des donneacutees
Virus Programme qui infecte un autre programme sur votre ordinateur Agrave partir du programme infecteacute le virus se propage vers drsquoautres programmes Apregraves un certain temps ou eacuteveacutenement les virus peuvent entreprendre certaines actions Celles-ci peuvent ecirctre lrsquoeacutelimination de fichiers la deacuteteacuterioration de fonctions du systegraveme drsquoexploitation etc
Vers Programmes qui infectent un ordinateur sans avoir agrave ecirctre heacutebergeacutes par drsquoautres programmes Ils sont des programmes indeacutependants Ils se multiplient en exploitant diffeacuterentes ressources Les objectifs de ces programmes peuvent ecirctre lrsquoespionnage lrsquoouverture de portes deacuterobeacutees eacutemettre des requecirctes vers un site Internet jusqursquoagrave saturation
ExempleExempleI Love You Un ver lanceacute en 2000 et qui a atteint 31 millions de machines en 4 jours
Infection Le ver eacutetait dissimuleacute en piegravece jointe drsquoun courriel Cette piegravece jointe eacutetait preacutesenteacutee comme Love-Letter-for-youtxtvbs Lrsquoextension vbs indique que le fichier est un script Visual Basic Comme lrsquoextension nrsquoapparaicirct pas sur Windows les utilisateurs voyaient la piegravece jointe comme Love-Letter-for-youtxt Objectif Le script lisait la liste des contacts de lrsquoutilisateur pour envoyer ce mecircme message agrave ceux-ci La plate-forme Windows eacutetait viseacutee Des fichiers eacutetaient deacutetruits et remplaceacutes par ce script Il changeait la page drsquoaccueil drsquoInternet Explorer pour teacuteleacutecharger un cheval de Troie
ExempleExempleCode Red Un ver qui a infecteacute 359 000 ordinateurs en moins de 14 heures le 19 juillet 2001
Infections Le ver se multipliait en essayant des adresses IP aleacuteatoires pour ensuite infecter des serveurs qui faisaient tourner Microsoft IIS avec une faille de seacutecuriteacute
Objectif Monter une attaque par deacuteni de service (DOS) contre la Maison-Blanche
Lrsquoattaque a eacuteteacute facile agrave repousser car le ver veacuterifiait avant de lancer lrsquoattaque que le serveur agrave lrsquoadresse IP (au lieu du nom de domaine) de la Maison-Blanche eacutecoutait le port 80 (le port des serveurs Web) En changeant lrsquoadresse IP de la Maison-Blanche lrsquoattaque a eacuteteacute repousseacutee
ExempleExempleCabir Est un virusver (deacutemonstration de faisabiliteacute laquoproof of conceptraquo) qui srsquoattaque agrave la teacuteleacutephonie mobile Crsquoest un fichier de 15 ko nommeacute CARIBESIS
Infection Se propage par la teacuteleacutephonie mobile gracircce agrave la technologie Bluetooth et le systegraveme drsquoexploitation Symbian OS
Action Agrave chaque fois que le teacuteleacutephone infecteacute est ouvert le mot laquoCariberaquo srsquoaffiche Il tente de se propager aux peacuteripheacuteriques BlueTooth de la zone du teacuteleacutephone infecteacute Il nrsquoest pas meacutechant nrsquoavait pour but que de deacutemontrer la faisabiliteacute
AntivirusAntivirusLes antivirus sont des programmes qui deacutetectent les virus les vers et les chevaux de Troie sur votre ordinateur Ils les eacuteliminent
Ils visitent les fichiers sur votre disque dans le but de trouver des bouts de programmes reconnus comme dangereux
Ceci est possible eacutetant donneacute une base de donneacutees agrave jour contenant les virus connus sous la forme de signatures de virus Une signature est un motif (laquopatternraquo) qui caracteacuterise un virus donneacute
Un antivirus nrsquoest efficace que si sa base de donneacutees est mise agrave jour constamment Les compagnies drsquoantivirus vont vite pour mettre agrave jour leur base de donneacutees lorsqursquoun nouveau virus est identifieacute
Malheureusement les utilisateurs tardent agrave mettre leur copie agrave jour causant bien des infections
Tromper les antivirusTromper les antivirusDe nouveaux virus utilisent les meacutethodes de la cryptographie pour deacutejouer les antivirus
Des virus sont chiffreacutes pour les rendre non reconnaissables par les antivirus car ils ont toujours un aspect diffeacuterent
Ces virus ont un petit code en clair qui permet de les deacutecoder et de les charger en meacutemoire pour ecirctre exeacutecuteacutes Ce code est ce que les antivirus doivent deacutetecter
Ces virus sont de trois types
Oligomorphique Le virus est chiffreacute agrave chaque reacuteplication
Polymorphique Le virus est chiffreacute et la routine de deacutechiffrement est capable de changer certaines de ses instructions au fil des reacuteplications
Meacutetamorphique Le virus change de forme au fil des reacuteplications
IntrusionsIntrusionsPour qursquoun virus ver ou cheval de Troie soit deacuteleacutetegravere encore faut-il qursquoil srsquoinstalle sur votre machine
Mecircme si un adversaire peut parler agrave votre machine ceci nrsquoimplique pas qursquoil peut installer un logiciel sur celle-ci encore moins srsquoil nrsquoen est pas un utilisateur
Pour ce faire les adversaires peuvent essayer diverses strateacutegies
Faiblesses du systegraveme drsquoexploitation ou du logiciel du serveur Nous allons voir un exemple de ce type drsquoattaque attaques par deacutebordement Une page Web nrsquoest pas un objet passif Elle peut contenir du code (JavaScript Perl etc) malveillant
Tromper lrsquoutilisateur Crsquoest peut-ecirctre plus simple Cas speacutecial du piratage psychologique Cliquer ici pour installer un joli logiciel il faut espeacuterer que lrsquoantivirus deacutetecte ceci avant qursquoil ne soit trop tard
Deacutetecter les intrusionsDeacutetecter les intrusionsUne faccedilon diffeacuterente de deacutetecter les logiciels ou utilisateurs malveillants consiste agrave deacutetecter les comportements malveillants
Un systegraveme peut surveiller les processus pour deacutetecter les comportements malveillants
Une telle approche a lrsquoavantage de ne pas deacutependre drsquoinformation sur les virus et les attaques
Un coupe-feu dynamique est un exemple de cette approche
Il surveille les connexions et tente de deacuteterminer si un client transmet des donneacutees agrave contenu suspect (comme la taille)
Requecirctes Requecirctes malveillantesmalveillantes
dlkjfdsflkjsd dlkjfdsflkjsd fjdskl gfjdlskewqewewewewhdfbfbfbww fjdskl gfjdlskewqewewewewhdfbfbfbww jaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfjaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfwewqewqewqewqewqewqeweekjwweeqqqsxcswdswewqewqewqewqewqewqeweekjwweeqqqsxcswdsdddds dddds ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqqwwq qwwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewqeweekwqwqwefdscxcccj qeweekwqwqwefdscxcccj ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxzcwq zcwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfssaDSADSADSsfghdskjgfhdsgfihoiehjrfssaDSADSADSADDSDSDSSDSDSADDSDSDSSDSDSIl arrive que de longues requecirctes puissent faire planter un systegraveme
mal programmeacute Un adversaire peut donc soumettre des chaicircnes tregraves longues dans le but de rendre le systegraveme inopeacuterant (ou mecircme pire assujetti) comme nous le verrons plus loin
Et agrave peu pregraves nrsquoimporte qui Et agrave peu pregraves nrsquoimporte qui peut proposer un service peut proposer un service
comme celui-ci comme celui-ci
Un coupe-feu peut filtrer les requecirctes anormalement longues pour les ignorer Mecircme les systegravemes avec programmes erroneacutes seront agrave lrsquoabri de ce type drsquoattaque
SELECT SELECT FROM Passwords FROM Passwords WHERE user=rsquoWHERE user=rsquoJugheadJugheadrsquo AND password=rsquorsquo AND password=rsquoxrsquo xrsquo OR lsquo1rsquo=lsquo1OR lsquo1rsquo=lsquo1rsquorsquo
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Requecirctes Requecirctes malveillantesmalveillantes
HTTPSHTTPS
Password Password xrsquo OR xrsquo OR lsquo1rsquo=rsquo1lsquo1rsquo=rsquo1
Un coupe-feu dynamique peut filtrer des requecirctes bizarres comme xrsquo OR lsquo1rsquo=rsquo1xrsquo OR lsquo1rsquo=rsquo1
Ceci est beaucoup plus difficile agrave Ceci est beaucoup plus difficile agrave reacutealiser par un coupe-feu que reacutealiser par un coupe-feu que
lrsquoexemple preacuteceacutedentlrsquoexemple preacuteceacutedent
Approche Approche comportementalecomportementaleUne autre approche pour la deacutetection drsquointrusions consiste agrave
observer certains aspects du comportement des utilisateurs et programmes
activiteacutes de connexion et de session
activiteacutes relieacutees agrave lrsquoexeacutecution de programme et drsquoaccegraves aux fichiers
Il y a deux approches pour la deacutetection de comportements suspects
Par regravegles (rule-based) Un ensemble de regravegles deacutecrivant les comportements normaux est eacutetabli Les comportements anormaux (trop loin des normaux) sont rejeteacutes
Statistique Des statistiques sur les utilisateurs normaux sont creacuteeacutees Le comportement de lrsquoutilisateurprogramme observeacute est compareacute aux statistiques Un comportement montrant un trop grand eacutecart avec les statistiques est rejeteacute
Problegravemes avec les Problegravemes avec les systegravemes de deacutetection systegravemes de deacutetection
drsquointrusion (IDS)drsquointrusion (IDS)Le problegraveme majeur avec lrsquoapproche est le mecircme qursquoavec la biomeacutetrie Le systegraveme qui surveille doit ecirctre assez toleacuterant pour autoriser les comportements normaux mais suffisamment restrictif pour attraper les acteurs malveillants
Ce problegraveme nrsquoest pas tregraves bien compris et les solutions proposeacutees ne sont pas tout agrave fait satisfaisantes
La deacutetection drsquointrusion est bien inutile si le systegraveme ne reacuteagit pas de la bonne faccedilon lorsqursquoune intrusion est deacutetecteacutee La partie du systegraveme qui alerte lrsquoadministrateur qui interdit lrsquoaccegraves qui effectue quelque autre tacircche pour eacuteliminer la menace est tout aussi importante que celle qui deacutetecte
Le pot de mielLe pot de miel
Le pot de miel (laquohoney potraquo) est un truc pratique pour la deacutetection drsquointrusions
Une ressource bidon qui semble inteacuteressante pour un adversaire est creacuteeacutee
Puisque celle-ci est bidon on peut supposer que si quelqursquoun y accegravede crsquoest qursquoil srsquoadonne agrave une activiteacute malveillante
En consultant les traces il peut ecirctre possible de retrouver lrsquoutilisateur malveillant
Ceci peut se faire agrave lrsquoinsu de lrsquointrus
ExempleExemple
Un hocircpital ameacutericain soupccedilonnait que quelqursquoun consultait les dossiers de patients sans en avoir lrsquoautorisation
Ils ont creacuteeacute des fichiers pour des patients qui nrsquoexistent pas
Les accegraves agrave ces fichiers ont alors eacuteteacute retraceacutes jusqursquoagrave lrsquoutilisateur malveillant
Les attaques de lrsquointeacuterieurLes attaques de lrsquointeacuterieurPresque tout ce que nous avons vu a pour but la protection contre les attaques venues de lrsquoexteacuterieur
Les attaques peuvent tregraves bien eacutemaner de lrsquointeacuterieur et peuvent causer des problegravemes seacuterieux
Le premiegravere chose agrave comprendre est qursquoil nrsquoest pas possible de se preacutemunir contre ces attaques si les utilisateurs ont tous les droits sur le systegraveme cible
Il est donc neacutecessaire qursquoune partie du systegraveme soit garantie de fonctionner selon ses speacutecifications mecircme sous attaque
Sans cette hypothegravese le systegraveme est sous le controcircle complet de lrsquoadversaire
Base informatique Base informatique seacutecuriseacuteeseacutecuriseacutee
laquotrusted computing baseraquo (TCB)laquotrusted computing baseraquo (TCB)
Une base seacutecuriseacutee peut ecirctre eacutetablie en utilisant de la seacutecuriteacute mateacuterielle logicielle par mot de passe par exemple
Le rocircle de ce systegraveme de base est de controcircler lrsquoaccegraves aux ressources et le flux drsquoinformation sur celui-ci
Pour bien comprendre comment ces protections fonctionnent nous devons mettre de lrsquoordre dans nos ideacutees Nous devons voir agrave quoi ressemble une politique de seacutecuriteacute dans ce sceacutenario
Crsquoest notre prochain sujet
Toujours la pile TCPIPToujours la pile TCPIP
Champs du protocole Champs du protocole IPIP
Champs utiles pour le protocole IP
Le protocole IP fonctionne agrave partir de segments
Protocole UDPProtocole UDP(ses champs utiles)(ses champs utiles)
Champs utiles pour le protocole UDP
Protocole TCPProtocole TCP(ses champs utiles)(ses champs utiles)
Champs utiles pour le protocole TCP
Port de lrsquoapplication Port de lrsquoapplication en cours sur la en cours sur la machine sourcemachine source
Port de lrsquoapplication Port de lrsquoapplication sur la machine sur la machine
destinationdestination
Le numeacutero drsquoordre du Le numeacutero drsquoordre du prochain segment (IP) prochain segment (IP)
attenduattendu
URG paquet agrave traiter de faccedilon urgenteACK paquet est un accuseacute de reacuteceptionPSH paquet fonctionne selon la meacutethode push
RST connexion reacuteinitialiseacuteeSYN indique une demande drsquoeacutetablissement de connexionFIN indique une interruption de connexion
Le numeacutero drsquoordre du segment (IP) Le numeacutero drsquoordre du segment (IP) courant si SYN=0 et le numeacutero drsquoordre courant si SYN=0 et le numeacutero drsquoordre
initial pour synchroniser les nos de initial pour synchroniser les nos de seacutequence (ISN)seacutequence (ISN)
DrapeauxDrapeaux
Filtrage extrecircmeFiltrage extrecircmeTCP est orienteacute connexion Pour en eacutetablir une de A vers B on doit transmettre SYN=1 dans le premier paquet de lrsquoeacutetablissement de connexion agrave trois eacutetapes (laquothree-way handshakeraquo)
Un filtrage simple consiste agrave laisser tomber tous les paquets qui ne contiennent que le drapeau SYN=1
Il devient impossible drsquoeacutetablir une connexion TCP de lrsquoexteacuterieur du mur
Si en plus les paquets UDP sont eacutelimineacutes alors la situation devrait ecirctre tregraves sucircre
Cette politique ne permet pas de se connecter au serveur Web cependant
Activer le serveur Web Activer le serveur Web et accegraves agrave un DNSet accegraves agrave un DNS
Pour donner accegraves au serveur Web nous pourrions faire la chose suivante
Nous autorisons une exception agrave la regravegle preacuteceacutedente
Nous autorisons les paquets SYN=1 pour le serveur Web sur le port 80 (port http)
Nous voudrions aussi permettre lrsquoaccegraves agrave un serveur DNS pour la conversion drsquoadresse comme httpwwwiroumontrealca en 13220424179
Il suffit de laisser les paquets UDP vers et depuis au moins un serveur DNS sur le port 53 (UDP)
Le reacutesultatLe reacutesultat
Si le pirate trouve une faille sur le serveur Web alors il pourrait attaquer le reacuteseau local
Pour eacuteviter ceci il faut seacuteparer le serveur Web des autresLe filtrage par paquets est insuffisant
Deux filtres valent mieux Deux filtres valent mieux qursquounqursquoun
ProxyProxyIl y a drsquoautres services sur lrsquoInternet qui utilisent le protocole UDP flux de donneacutees videacuteo jeux videacuteo
De plus excepteacute pour les paquets SYN=1 il est possible de transmettre des paquets TCP aux ordinateurs du reacuteseau local
Le proxy peut rendre les machines du reacuteseau local invisibles pas le filtrage simple de paquets
Approche proxyApproche proxy
Coupe-feu Coupe-feu dynamiquesdynamiques
Les proxys ne sont pas tregraves flexibles Les coupe-feu dynamiques permettent drsquoutiliser les logiciels drsquoune faccedilon plus transparente
Il srsquoagit drsquoun filtre avanceacute qui permet de veacuterifier que les paquets appartiennent agrave une connexion deacutejagrave eacutetablie Crsquoest seulement lorsque crsquoest le cas que le paquet peut passer
Parce qursquoil est conscient drsquoune connexion il peut appliquer NAT etou PAT
NAT Dynamique (laquoDynamic Network Address Translationraquo) Le coupe-feu traduit les adresses du reacuteseau Toutes les machines du reacuteseau possegravedent vu de lrsquoexteacuterieur la mecircme adresse IP
PAT (laquoPort Address Translationraquo) Le coupe-feu traduit les numeacuteros de port par lesquels les paquets arrivent sur les hocirctes locaux
Ces coupe-feu sont appeleacutes coupe-feu avec mascarade
NAT a eacuteteacute mis au point agrave NAT a eacuteteacute mis au point agrave lrsquoorigine pour reacutepondre agrave la lrsquoorigine pour reacutepondre agrave la
peacutenurie drsquoadresses IP avec le peacutenurie drsquoadresses IP avec le protocole IPv4protocole IPv4
NAT a eacuteteacute mis au point agrave NAT a eacuteteacute mis au point agrave lrsquoorigine pour reacutepondre agrave la lrsquoorigine pour reacutepondre agrave la
peacutenurie drsquoadresses IP avec le peacutenurie drsquoadresses IP avec le protocole IPv4protocole IPv4
Coupe-feu agrave Coupe-feu agrave mascarademascarade
Filtrage dynamique eacutetenduFiltrage dynamique eacutetenduLe filtrage des coupe-feu dynamiques nrsquoest pas limiteacute aux protocoles TCPIP
Pour des applications usuelles le filtrage peut srsquoappliquer au protocole
Le coupe-feu peut ainsi deacutetecter des comportements inhabituels
Peut aussi filtrer certaines parties des donneacutees transmises
Pour le protocole HTTP le filtre peut supprimer les applications Java
Pour le protocole SMTP le filtre peut supprimer les piegraveces jointes drsquoun certain type
Conclusion sur les coupe-Conclusion sur les coupe-feufeu
Les coupe-feu permettent de filtrer le trafic entre le reacuteseau local et lrsquoInternet en nrsquoadministrant qursquoune seule machine
Les coupe-feu ne sont cependant pas une solution magique pour reacutesoudre les problegravemes causeacutes par les attaques exteacuterieures agrave un reacuteseau local
Les coupe-feu pour un seul ordinateur personnel peuvent offrir une solution sans trop drsquoentretien
Les coupe-feu neacutecessitent des mises agrave jour freacutequentes lorsque le reacuteseau local est de bonne taille Lorsque le reacuteseau local change la configuration du coupe-feu doit aussi changer
Penser que lrsquoinstallation drsquoun coupe-feu rend votre reacuteseau sucircr est un peu de la penseacutee magique (neacutecessaire mais pas suffisant)
Logiciels malveillantsLogiciels malveillantsUn adversaire peut une fois passeacute le coupe-feu et les autres deacutefenses vouloir installer un programme malveillant sur la machine locale Ceux-ci sont de trois types
Chevaux de Troie Programme qui semble tout agrave fait utile mais qui cache une fonction malveillante Par exemple donne accegraves agrave des donneacutees priveacutees donne des droits drsquoaccegraves non autoriseacutes ou deacutetruit des donneacutees
Virus Programme qui infecte un autre programme sur votre ordinateur Agrave partir du programme infecteacute le virus se propage vers drsquoautres programmes Apregraves un certain temps ou eacuteveacutenement les virus peuvent entreprendre certaines actions Celles-ci peuvent ecirctre lrsquoeacutelimination de fichiers la deacuteteacuterioration de fonctions du systegraveme drsquoexploitation etc
Vers Programmes qui infectent un ordinateur sans avoir agrave ecirctre heacutebergeacutes par drsquoautres programmes Ils sont des programmes indeacutependants Ils se multiplient en exploitant diffeacuterentes ressources Les objectifs de ces programmes peuvent ecirctre lrsquoespionnage lrsquoouverture de portes deacuterobeacutees eacutemettre des requecirctes vers un site Internet jusqursquoagrave saturation
ExempleExempleI Love You Un ver lanceacute en 2000 et qui a atteint 31 millions de machines en 4 jours
Infection Le ver eacutetait dissimuleacute en piegravece jointe drsquoun courriel Cette piegravece jointe eacutetait preacutesenteacutee comme Love-Letter-for-youtxtvbs Lrsquoextension vbs indique que le fichier est un script Visual Basic Comme lrsquoextension nrsquoapparaicirct pas sur Windows les utilisateurs voyaient la piegravece jointe comme Love-Letter-for-youtxt Objectif Le script lisait la liste des contacts de lrsquoutilisateur pour envoyer ce mecircme message agrave ceux-ci La plate-forme Windows eacutetait viseacutee Des fichiers eacutetaient deacutetruits et remplaceacutes par ce script Il changeait la page drsquoaccueil drsquoInternet Explorer pour teacuteleacutecharger un cheval de Troie
ExempleExempleCode Red Un ver qui a infecteacute 359 000 ordinateurs en moins de 14 heures le 19 juillet 2001
Infections Le ver se multipliait en essayant des adresses IP aleacuteatoires pour ensuite infecter des serveurs qui faisaient tourner Microsoft IIS avec une faille de seacutecuriteacute
Objectif Monter une attaque par deacuteni de service (DOS) contre la Maison-Blanche
Lrsquoattaque a eacuteteacute facile agrave repousser car le ver veacuterifiait avant de lancer lrsquoattaque que le serveur agrave lrsquoadresse IP (au lieu du nom de domaine) de la Maison-Blanche eacutecoutait le port 80 (le port des serveurs Web) En changeant lrsquoadresse IP de la Maison-Blanche lrsquoattaque a eacuteteacute repousseacutee
ExempleExempleCabir Est un virusver (deacutemonstration de faisabiliteacute laquoproof of conceptraquo) qui srsquoattaque agrave la teacuteleacutephonie mobile Crsquoest un fichier de 15 ko nommeacute CARIBESIS
Infection Se propage par la teacuteleacutephonie mobile gracircce agrave la technologie Bluetooth et le systegraveme drsquoexploitation Symbian OS
Action Agrave chaque fois que le teacuteleacutephone infecteacute est ouvert le mot laquoCariberaquo srsquoaffiche Il tente de se propager aux peacuteripheacuteriques BlueTooth de la zone du teacuteleacutephone infecteacute Il nrsquoest pas meacutechant nrsquoavait pour but que de deacutemontrer la faisabiliteacute
AntivirusAntivirusLes antivirus sont des programmes qui deacutetectent les virus les vers et les chevaux de Troie sur votre ordinateur Ils les eacuteliminent
Ils visitent les fichiers sur votre disque dans le but de trouver des bouts de programmes reconnus comme dangereux
Ceci est possible eacutetant donneacute une base de donneacutees agrave jour contenant les virus connus sous la forme de signatures de virus Une signature est un motif (laquopatternraquo) qui caracteacuterise un virus donneacute
Un antivirus nrsquoest efficace que si sa base de donneacutees est mise agrave jour constamment Les compagnies drsquoantivirus vont vite pour mettre agrave jour leur base de donneacutees lorsqursquoun nouveau virus est identifieacute
Malheureusement les utilisateurs tardent agrave mettre leur copie agrave jour causant bien des infections
Tromper les antivirusTromper les antivirusDe nouveaux virus utilisent les meacutethodes de la cryptographie pour deacutejouer les antivirus
Des virus sont chiffreacutes pour les rendre non reconnaissables par les antivirus car ils ont toujours un aspect diffeacuterent
Ces virus ont un petit code en clair qui permet de les deacutecoder et de les charger en meacutemoire pour ecirctre exeacutecuteacutes Ce code est ce que les antivirus doivent deacutetecter
Ces virus sont de trois types
Oligomorphique Le virus est chiffreacute agrave chaque reacuteplication
Polymorphique Le virus est chiffreacute et la routine de deacutechiffrement est capable de changer certaines de ses instructions au fil des reacuteplications
Meacutetamorphique Le virus change de forme au fil des reacuteplications
IntrusionsIntrusionsPour qursquoun virus ver ou cheval de Troie soit deacuteleacutetegravere encore faut-il qursquoil srsquoinstalle sur votre machine
Mecircme si un adversaire peut parler agrave votre machine ceci nrsquoimplique pas qursquoil peut installer un logiciel sur celle-ci encore moins srsquoil nrsquoen est pas un utilisateur
Pour ce faire les adversaires peuvent essayer diverses strateacutegies
Faiblesses du systegraveme drsquoexploitation ou du logiciel du serveur Nous allons voir un exemple de ce type drsquoattaque attaques par deacutebordement Une page Web nrsquoest pas un objet passif Elle peut contenir du code (JavaScript Perl etc) malveillant
Tromper lrsquoutilisateur Crsquoest peut-ecirctre plus simple Cas speacutecial du piratage psychologique Cliquer ici pour installer un joli logiciel il faut espeacuterer que lrsquoantivirus deacutetecte ceci avant qursquoil ne soit trop tard
Deacutetecter les intrusionsDeacutetecter les intrusionsUne faccedilon diffeacuterente de deacutetecter les logiciels ou utilisateurs malveillants consiste agrave deacutetecter les comportements malveillants
Un systegraveme peut surveiller les processus pour deacutetecter les comportements malveillants
Une telle approche a lrsquoavantage de ne pas deacutependre drsquoinformation sur les virus et les attaques
Un coupe-feu dynamique est un exemple de cette approche
Il surveille les connexions et tente de deacuteterminer si un client transmet des donneacutees agrave contenu suspect (comme la taille)
Requecirctes Requecirctes malveillantesmalveillantes
dlkjfdsflkjsd dlkjfdsflkjsd fjdskl gfjdlskewqewewewewhdfbfbfbww fjdskl gfjdlskewqewewewewhdfbfbfbww jaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfjaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfwewqewqewqewqewqewqeweekjwweeqqqsxcswdswewqewqewqewqewqewqeweekjwweeqqqsxcswdsdddds dddds ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqqwwq qwwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewqeweekwqwqwefdscxcccj qeweekwqwqwefdscxcccj ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxzcwq zcwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfssaDSADSADSsfghdskjgfhdsgfihoiehjrfssaDSADSADSADDSDSDSSDSDSADDSDSDSSDSDSIl arrive que de longues requecirctes puissent faire planter un systegraveme
mal programmeacute Un adversaire peut donc soumettre des chaicircnes tregraves longues dans le but de rendre le systegraveme inopeacuterant (ou mecircme pire assujetti) comme nous le verrons plus loin
Et agrave peu pregraves nrsquoimporte qui Et agrave peu pregraves nrsquoimporte qui peut proposer un service peut proposer un service
comme celui-ci comme celui-ci
Un coupe-feu peut filtrer les requecirctes anormalement longues pour les ignorer Mecircme les systegravemes avec programmes erroneacutes seront agrave lrsquoabri de ce type drsquoattaque
SELECT SELECT FROM Passwords FROM Passwords WHERE user=rsquoWHERE user=rsquoJugheadJugheadrsquo AND password=rsquorsquo AND password=rsquoxrsquo xrsquo OR lsquo1rsquo=lsquo1OR lsquo1rsquo=lsquo1rsquorsquo
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Requecirctes Requecirctes malveillantesmalveillantes
HTTPSHTTPS
Password Password xrsquo OR xrsquo OR lsquo1rsquo=rsquo1lsquo1rsquo=rsquo1
Un coupe-feu dynamique peut filtrer des requecirctes bizarres comme xrsquo OR lsquo1rsquo=rsquo1xrsquo OR lsquo1rsquo=rsquo1
Ceci est beaucoup plus difficile agrave Ceci est beaucoup plus difficile agrave reacutealiser par un coupe-feu que reacutealiser par un coupe-feu que
lrsquoexemple preacuteceacutedentlrsquoexemple preacuteceacutedent
Approche Approche comportementalecomportementaleUne autre approche pour la deacutetection drsquointrusions consiste agrave
observer certains aspects du comportement des utilisateurs et programmes
activiteacutes de connexion et de session
activiteacutes relieacutees agrave lrsquoexeacutecution de programme et drsquoaccegraves aux fichiers
Il y a deux approches pour la deacutetection de comportements suspects
Par regravegles (rule-based) Un ensemble de regravegles deacutecrivant les comportements normaux est eacutetabli Les comportements anormaux (trop loin des normaux) sont rejeteacutes
Statistique Des statistiques sur les utilisateurs normaux sont creacuteeacutees Le comportement de lrsquoutilisateurprogramme observeacute est compareacute aux statistiques Un comportement montrant un trop grand eacutecart avec les statistiques est rejeteacute
Problegravemes avec les Problegravemes avec les systegravemes de deacutetection systegravemes de deacutetection
drsquointrusion (IDS)drsquointrusion (IDS)Le problegraveme majeur avec lrsquoapproche est le mecircme qursquoavec la biomeacutetrie Le systegraveme qui surveille doit ecirctre assez toleacuterant pour autoriser les comportements normaux mais suffisamment restrictif pour attraper les acteurs malveillants
Ce problegraveme nrsquoest pas tregraves bien compris et les solutions proposeacutees ne sont pas tout agrave fait satisfaisantes
La deacutetection drsquointrusion est bien inutile si le systegraveme ne reacuteagit pas de la bonne faccedilon lorsqursquoune intrusion est deacutetecteacutee La partie du systegraveme qui alerte lrsquoadministrateur qui interdit lrsquoaccegraves qui effectue quelque autre tacircche pour eacuteliminer la menace est tout aussi importante que celle qui deacutetecte
Le pot de mielLe pot de miel
Le pot de miel (laquohoney potraquo) est un truc pratique pour la deacutetection drsquointrusions
Une ressource bidon qui semble inteacuteressante pour un adversaire est creacuteeacutee
Puisque celle-ci est bidon on peut supposer que si quelqursquoun y accegravede crsquoest qursquoil srsquoadonne agrave une activiteacute malveillante
En consultant les traces il peut ecirctre possible de retrouver lrsquoutilisateur malveillant
Ceci peut se faire agrave lrsquoinsu de lrsquointrus
ExempleExemple
Un hocircpital ameacutericain soupccedilonnait que quelqursquoun consultait les dossiers de patients sans en avoir lrsquoautorisation
Ils ont creacuteeacute des fichiers pour des patients qui nrsquoexistent pas
Les accegraves agrave ces fichiers ont alors eacuteteacute retraceacutes jusqursquoagrave lrsquoutilisateur malveillant
Les attaques de lrsquointeacuterieurLes attaques de lrsquointeacuterieurPresque tout ce que nous avons vu a pour but la protection contre les attaques venues de lrsquoexteacuterieur
Les attaques peuvent tregraves bien eacutemaner de lrsquointeacuterieur et peuvent causer des problegravemes seacuterieux
Le premiegravere chose agrave comprendre est qursquoil nrsquoest pas possible de se preacutemunir contre ces attaques si les utilisateurs ont tous les droits sur le systegraveme cible
Il est donc neacutecessaire qursquoune partie du systegraveme soit garantie de fonctionner selon ses speacutecifications mecircme sous attaque
Sans cette hypothegravese le systegraveme est sous le controcircle complet de lrsquoadversaire
Base informatique Base informatique seacutecuriseacuteeseacutecuriseacutee
laquotrusted computing baseraquo (TCB)laquotrusted computing baseraquo (TCB)
Une base seacutecuriseacutee peut ecirctre eacutetablie en utilisant de la seacutecuriteacute mateacuterielle logicielle par mot de passe par exemple
Le rocircle de ce systegraveme de base est de controcircler lrsquoaccegraves aux ressources et le flux drsquoinformation sur celui-ci
Pour bien comprendre comment ces protections fonctionnent nous devons mettre de lrsquoordre dans nos ideacutees Nous devons voir agrave quoi ressemble une politique de seacutecuriteacute dans ce sceacutenario
Crsquoest notre prochain sujet
Champs du protocole Champs du protocole IPIP
Champs utiles pour le protocole IP
Le protocole IP fonctionne agrave partir de segments
Protocole UDPProtocole UDP(ses champs utiles)(ses champs utiles)
Champs utiles pour le protocole UDP
Protocole TCPProtocole TCP(ses champs utiles)(ses champs utiles)
Champs utiles pour le protocole TCP
Port de lrsquoapplication Port de lrsquoapplication en cours sur la en cours sur la machine sourcemachine source
Port de lrsquoapplication Port de lrsquoapplication sur la machine sur la machine
destinationdestination
Le numeacutero drsquoordre du Le numeacutero drsquoordre du prochain segment (IP) prochain segment (IP)
attenduattendu
URG paquet agrave traiter de faccedilon urgenteACK paquet est un accuseacute de reacuteceptionPSH paquet fonctionne selon la meacutethode push
RST connexion reacuteinitialiseacuteeSYN indique une demande drsquoeacutetablissement de connexionFIN indique une interruption de connexion
Le numeacutero drsquoordre du segment (IP) Le numeacutero drsquoordre du segment (IP) courant si SYN=0 et le numeacutero drsquoordre courant si SYN=0 et le numeacutero drsquoordre
initial pour synchroniser les nos de initial pour synchroniser les nos de seacutequence (ISN)seacutequence (ISN)
DrapeauxDrapeaux
Filtrage extrecircmeFiltrage extrecircmeTCP est orienteacute connexion Pour en eacutetablir une de A vers B on doit transmettre SYN=1 dans le premier paquet de lrsquoeacutetablissement de connexion agrave trois eacutetapes (laquothree-way handshakeraquo)
Un filtrage simple consiste agrave laisser tomber tous les paquets qui ne contiennent que le drapeau SYN=1
Il devient impossible drsquoeacutetablir une connexion TCP de lrsquoexteacuterieur du mur
Si en plus les paquets UDP sont eacutelimineacutes alors la situation devrait ecirctre tregraves sucircre
Cette politique ne permet pas de se connecter au serveur Web cependant
Activer le serveur Web Activer le serveur Web et accegraves agrave un DNSet accegraves agrave un DNS
Pour donner accegraves au serveur Web nous pourrions faire la chose suivante
Nous autorisons une exception agrave la regravegle preacuteceacutedente
Nous autorisons les paquets SYN=1 pour le serveur Web sur le port 80 (port http)
Nous voudrions aussi permettre lrsquoaccegraves agrave un serveur DNS pour la conversion drsquoadresse comme httpwwwiroumontrealca en 13220424179
Il suffit de laisser les paquets UDP vers et depuis au moins un serveur DNS sur le port 53 (UDP)
Le reacutesultatLe reacutesultat
Si le pirate trouve une faille sur le serveur Web alors il pourrait attaquer le reacuteseau local
Pour eacuteviter ceci il faut seacuteparer le serveur Web des autresLe filtrage par paquets est insuffisant
Deux filtres valent mieux Deux filtres valent mieux qursquounqursquoun
ProxyProxyIl y a drsquoautres services sur lrsquoInternet qui utilisent le protocole UDP flux de donneacutees videacuteo jeux videacuteo
De plus excepteacute pour les paquets SYN=1 il est possible de transmettre des paquets TCP aux ordinateurs du reacuteseau local
Le proxy peut rendre les machines du reacuteseau local invisibles pas le filtrage simple de paquets
Approche proxyApproche proxy
Coupe-feu Coupe-feu dynamiquesdynamiques
Les proxys ne sont pas tregraves flexibles Les coupe-feu dynamiques permettent drsquoutiliser les logiciels drsquoune faccedilon plus transparente
Il srsquoagit drsquoun filtre avanceacute qui permet de veacuterifier que les paquets appartiennent agrave une connexion deacutejagrave eacutetablie Crsquoest seulement lorsque crsquoest le cas que le paquet peut passer
Parce qursquoil est conscient drsquoune connexion il peut appliquer NAT etou PAT
NAT Dynamique (laquoDynamic Network Address Translationraquo) Le coupe-feu traduit les adresses du reacuteseau Toutes les machines du reacuteseau possegravedent vu de lrsquoexteacuterieur la mecircme adresse IP
PAT (laquoPort Address Translationraquo) Le coupe-feu traduit les numeacuteros de port par lesquels les paquets arrivent sur les hocirctes locaux
Ces coupe-feu sont appeleacutes coupe-feu avec mascarade
NAT a eacuteteacute mis au point agrave NAT a eacuteteacute mis au point agrave lrsquoorigine pour reacutepondre agrave la lrsquoorigine pour reacutepondre agrave la
peacutenurie drsquoadresses IP avec le peacutenurie drsquoadresses IP avec le protocole IPv4protocole IPv4
NAT a eacuteteacute mis au point agrave NAT a eacuteteacute mis au point agrave lrsquoorigine pour reacutepondre agrave la lrsquoorigine pour reacutepondre agrave la
peacutenurie drsquoadresses IP avec le peacutenurie drsquoadresses IP avec le protocole IPv4protocole IPv4
Coupe-feu agrave Coupe-feu agrave mascarademascarade
Filtrage dynamique eacutetenduFiltrage dynamique eacutetenduLe filtrage des coupe-feu dynamiques nrsquoest pas limiteacute aux protocoles TCPIP
Pour des applications usuelles le filtrage peut srsquoappliquer au protocole
Le coupe-feu peut ainsi deacutetecter des comportements inhabituels
Peut aussi filtrer certaines parties des donneacutees transmises
Pour le protocole HTTP le filtre peut supprimer les applications Java
Pour le protocole SMTP le filtre peut supprimer les piegraveces jointes drsquoun certain type
Conclusion sur les coupe-Conclusion sur les coupe-feufeu
Les coupe-feu permettent de filtrer le trafic entre le reacuteseau local et lrsquoInternet en nrsquoadministrant qursquoune seule machine
Les coupe-feu ne sont cependant pas une solution magique pour reacutesoudre les problegravemes causeacutes par les attaques exteacuterieures agrave un reacuteseau local
Les coupe-feu pour un seul ordinateur personnel peuvent offrir une solution sans trop drsquoentretien
Les coupe-feu neacutecessitent des mises agrave jour freacutequentes lorsque le reacuteseau local est de bonne taille Lorsque le reacuteseau local change la configuration du coupe-feu doit aussi changer
Penser que lrsquoinstallation drsquoun coupe-feu rend votre reacuteseau sucircr est un peu de la penseacutee magique (neacutecessaire mais pas suffisant)
Logiciels malveillantsLogiciels malveillantsUn adversaire peut une fois passeacute le coupe-feu et les autres deacutefenses vouloir installer un programme malveillant sur la machine locale Ceux-ci sont de trois types
Chevaux de Troie Programme qui semble tout agrave fait utile mais qui cache une fonction malveillante Par exemple donne accegraves agrave des donneacutees priveacutees donne des droits drsquoaccegraves non autoriseacutes ou deacutetruit des donneacutees
Virus Programme qui infecte un autre programme sur votre ordinateur Agrave partir du programme infecteacute le virus se propage vers drsquoautres programmes Apregraves un certain temps ou eacuteveacutenement les virus peuvent entreprendre certaines actions Celles-ci peuvent ecirctre lrsquoeacutelimination de fichiers la deacuteteacuterioration de fonctions du systegraveme drsquoexploitation etc
Vers Programmes qui infectent un ordinateur sans avoir agrave ecirctre heacutebergeacutes par drsquoautres programmes Ils sont des programmes indeacutependants Ils se multiplient en exploitant diffeacuterentes ressources Les objectifs de ces programmes peuvent ecirctre lrsquoespionnage lrsquoouverture de portes deacuterobeacutees eacutemettre des requecirctes vers un site Internet jusqursquoagrave saturation
ExempleExempleI Love You Un ver lanceacute en 2000 et qui a atteint 31 millions de machines en 4 jours
Infection Le ver eacutetait dissimuleacute en piegravece jointe drsquoun courriel Cette piegravece jointe eacutetait preacutesenteacutee comme Love-Letter-for-youtxtvbs Lrsquoextension vbs indique que le fichier est un script Visual Basic Comme lrsquoextension nrsquoapparaicirct pas sur Windows les utilisateurs voyaient la piegravece jointe comme Love-Letter-for-youtxt Objectif Le script lisait la liste des contacts de lrsquoutilisateur pour envoyer ce mecircme message agrave ceux-ci La plate-forme Windows eacutetait viseacutee Des fichiers eacutetaient deacutetruits et remplaceacutes par ce script Il changeait la page drsquoaccueil drsquoInternet Explorer pour teacuteleacutecharger un cheval de Troie
ExempleExempleCode Red Un ver qui a infecteacute 359 000 ordinateurs en moins de 14 heures le 19 juillet 2001
Infections Le ver se multipliait en essayant des adresses IP aleacuteatoires pour ensuite infecter des serveurs qui faisaient tourner Microsoft IIS avec une faille de seacutecuriteacute
Objectif Monter une attaque par deacuteni de service (DOS) contre la Maison-Blanche
Lrsquoattaque a eacuteteacute facile agrave repousser car le ver veacuterifiait avant de lancer lrsquoattaque que le serveur agrave lrsquoadresse IP (au lieu du nom de domaine) de la Maison-Blanche eacutecoutait le port 80 (le port des serveurs Web) En changeant lrsquoadresse IP de la Maison-Blanche lrsquoattaque a eacuteteacute repousseacutee
ExempleExempleCabir Est un virusver (deacutemonstration de faisabiliteacute laquoproof of conceptraquo) qui srsquoattaque agrave la teacuteleacutephonie mobile Crsquoest un fichier de 15 ko nommeacute CARIBESIS
Infection Se propage par la teacuteleacutephonie mobile gracircce agrave la technologie Bluetooth et le systegraveme drsquoexploitation Symbian OS
Action Agrave chaque fois que le teacuteleacutephone infecteacute est ouvert le mot laquoCariberaquo srsquoaffiche Il tente de se propager aux peacuteripheacuteriques BlueTooth de la zone du teacuteleacutephone infecteacute Il nrsquoest pas meacutechant nrsquoavait pour but que de deacutemontrer la faisabiliteacute
AntivirusAntivirusLes antivirus sont des programmes qui deacutetectent les virus les vers et les chevaux de Troie sur votre ordinateur Ils les eacuteliminent
Ils visitent les fichiers sur votre disque dans le but de trouver des bouts de programmes reconnus comme dangereux
Ceci est possible eacutetant donneacute une base de donneacutees agrave jour contenant les virus connus sous la forme de signatures de virus Une signature est un motif (laquopatternraquo) qui caracteacuterise un virus donneacute
Un antivirus nrsquoest efficace que si sa base de donneacutees est mise agrave jour constamment Les compagnies drsquoantivirus vont vite pour mettre agrave jour leur base de donneacutees lorsqursquoun nouveau virus est identifieacute
Malheureusement les utilisateurs tardent agrave mettre leur copie agrave jour causant bien des infections
Tromper les antivirusTromper les antivirusDe nouveaux virus utilisent les meacutethodes de la cryptographie pour deacutejouer les antivirus
Des virus sont chiffreacutes pour les rendre non reconnaissables par les antivirus car ils ont toujours un aspect diffeacuterent
Ces virus ont un petit code en clair qui permet de les deacutecoder et de les charger en meacutemoire pour ecirctre exeacutecuteacutes Ce code est ce que les antivirus doivent deacutetecter
Ces virus sont de trois types
Oligomorphique Le virus est chiffreacute agrave chaque reacuteplication
Polymorphique Le virus est chiffreacute et la routine de deacutechiffrement est capable de changer certaines de ses instructions au fil des reacuteplications
Meacutetamorphique Le virus change de forme au fil des reacuteplications
IntrusionsIntrusionsPour qursquoun virus ver ou cheval de Troie soit deacuteleacutetegravere encore faut-il qursquoil srsquoinstalle sur votre machine
Mecircme si un adversaire peut parler agrave votre machine ceci nrsquoimplique pas qursquoil peut installer un logiciel sur celle-ci encore moins srsquoil nrsquoen est pas un utilisateur
Pour ce faire les adversaires peuvent essayer diverses strateacutegies
Faiblesses du systegraveme drsquoexploitation ou du logiciel du serveur Nous allons voir un exemple de ce type drsquoattaque attaques par deacutebordement Une page Web nrsquoest pas un objet passif Elle peut contenir du code (JavaScript Perl etc) malveillant
Tromper lrsquoutilisateur Crsquoest peut-ecirctre plus simple Cas speacutecial du piratage psychologique Cliquer ici pour installer un joli logiciel il faut espeacuterer que lrsquoantivirus deacutetecte ceci avant qursquoil ne soit trop tard
Deacutetecter les intrusionsDeacutetecter les intrusionsUne faccedilon diffeacuterente de deacutetecter les logiciels ou utilisateurs malveillants consiste agrave deacutetecter les comportements malveillants
Un systegraveme peut surveiller les processus pour deacutetecter les comportements malveillants
Une telle approche a lrsquoavantage de ne pas deacutependre drsquoinformation sur les virus et les attaques
Un coupe-feu dynamique est un exemple de cette approche
Il surveille les connexions et tente de deacuteterminer si un client transmet des donneacutees agrave contenu suspect (comme la taille)
Requecirctes Requecirctes malveillantesmalveillantes
dlkjfdsflkjsd dlkjfdsflkjsd fjdskl gfjdlskewqewewewewhdfbfbfbww fjdskl gfjdlskewqewewewewhdfbfbfbww jaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfjaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfwewqewqewqewqewqewqeweekjwweeqqqsxcswdswewqewqewqewqewqewqeweekjwweeqqqsxcswdsdddds dddds ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqqwwq qwwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewqeweekwqwqwefdscxcccj qeweekwqwqwefdscxcccj ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxzcwq zcwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfssaDSADSADSsfghdskjgfhdsgfihoiehjrfssaDSADSADSADDSDSDSSDSDSADDSDSDSSDSDSIl arrive que de longues requecirctes puissent faire planter un systegraveme
mal programmeacute Un adversaire peut donc soumettre des chaicircnes tregraves longues dans le but de rendre le systegraveme inopeacuterant (ou mecircme pire assujetti) comme nous le verrons plus loin
Et agrave peu pregraves nrsquoimporte qui Et agrave peu pregraves nrsquoimporte qui peut proposer un service peut proposer un service
comme celui-ci comme celui-ci
Un coupe-feu peut filtrer les requecirctes anormalement longues pour les ignorer Mecircme les systegravemes avec programmes erroneacutes seront agrave lrsquoabri de ce type drsquoattaque
SELECT SELECT FROM Passwords FROM Passwords WHERE user=rsquoWHERE user=rsquoJugheadJugheadrsquo AND password=rsquorsquo AND password=rsquoxrsquo xrsquo OR lsquo1rsquo=lsquo1OR lsquo1rsquo=lsquo1rsquorsquo
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Requecirctes Requecirctes malveillantesmalveillantes
HTTPSHTTPS
Password Password xrsquo OR xrsquo OR lsquo1rsquo=rsquo1lsquo1rsquo=rsquo1
Un coupe-feu dynamique peut filtrer des requecirctes bizarres comme xrsquo OR lsquo1rsquo=rsquo1xrsquo OR lsquo1rsquo=rsquo1
Ceci est beaucoup plus difficile agrave Ceci est beaucoup plus difficile agrave reacutealiser par un coupe-feu que reacutealiser par un coupe-feu que
lrsquoexemple preacuteceacutedentlrsquoexemple preacuteceacutedent
Approche Approche comportementalecomportementaleUne autre approche pour la deacutetection drsquointrusions consiste agrave
observer certains aspects du comportement des utilisateurs et programmes
activiteacutes de connexion et de session
activiteacutes relieacutees agrave lrsquoexeacutecution de programme et drsquoaccegraves aux fichiers
Il y a deux approches pour la deacutetection de comportements suspects
Par regravegles (rule-based) Un ensemble de regravegles deacutecrivant les comportements normaux est eacutetabli Les comportements anormaux (trop loin des normaux) sont rejeteacutes
Statistique Des statistiques sur les utilisateurs normaux sont creacuteeacutees Le comportement de lrsquoutilisateurprogramme observeacute est compareacute aux statistiques Un comportement montrant un trop grand eacutecart avec les statistiques est rejeteacute
Problegravemes avec les Problegravemes avec les systegravemes de deacutetection systegravemes de deacutetection
drsquointrusion (IDS)drsquointrusion (IDS)Le problegraveme majeur avec lrsquoapproche est le mecircme qursquoavec la biomeacutetrie Le systegraveme qui surveille doit ecirctre assez toleacuterant pour autoriser les comportements normaux mais suffisamment restrictif pour attraper les acteurs malveillants
Ce problegraveme nrsquoest pas tregraves bien compris et les solutions proposeacutees ne sont pas tout agrave fait satisfaisantes
La deacutetection drsquointrusion est bien inutile si le systegraveme ne reacuteagit pas de la bonne faccedilon lorsqursquoune intrusion est deacutetecteacutee La partie du systegraveme qui alerte lrsquoadministrateur qui interdit lrsquoaccegraves qui effectue quelque autre tacircche pour eacuteliminer la menace est tout aussi importante que celle qui deacutetecte
Le pot de mielLe pot de miel
Le pot de miel (laquohoney potraquo) est un truc pratique pour la deacutetection drsquointrusions
Une ressource bidon qui semble inteacuteressante pour un adversaire est creacuteeacutee
Puisque celle-ci est bidon on peut supposer que si quelqursquoun y accegravede crsquoest qursquoil srsquoadonne agrave une activiteacute malveillante
En consultant les traces il peut ecirctre possible de retrouver lrsquoutilisateur malveillant
Ceci peut se faire agrave lrsquoinsu de lrsquointrus
ExempleExemple
Un hocircpital ameacutericain soupccedilonnait que quelqursquoun consultait les dossiers de patients sans en avoir lrsquoautorisation
Ils ont creacuteeacute des fichiers pour des patients qui nrsquoexistent pas
Les accegraves agrave ces fichiers ont alors eacuteteacute retraceacutes jusqursquoagrave lrsquoutilisateur malveillant
Les attaques de lrsquointeacuterieurLes attaques de lrsquointeacuterieurPresque tout ce que nous avons vu a pour but la protection contre les attaques venues de lrsquoexteacuterieur
Les attaques peuvent tregraves bien eacutemaner de lrsquointeacuterieur et peuvent causer des problegravemes seacuterieux
Le premiegravere chose agrave comprendre est qursquoil nrsquoest pas possible de se preacutemunir contre ces attaques si les utilisateurs ont tous les droits sur le systegraveme cible
Il est donc neacutecessaire qursquoune partie du systegraveme soit garantie de fonctionner selon ses speacutecifications mecircme sous attaque
Sans cette hypothegravese le systegraveme est sous le controcircle complet de lrsquoadversaire
Base informatique Base informatique seacutecuriseacuteeseacutecuriseacutee
laquotrusted computing baseraquo (TCB)laquotrusted computing baseraquo (TCB)
Une base seacutecuriseacutee peut ecirctre eacutetablie en utilisant de la seacutecuriteacute mateacuterielle logicielle par mot de passe par exemple
Le rocircle de ce systegraveme de base est de controcircler lrsquoaccegraves aux ressources et le flux drsquoinformation sur celui-ci
Pour bien comprendre comment ces protections fonctionnent nous devons mettre de lrsquoordre dans nos ideacutees Nous devons voir agrave quoi ressemble une politique de seacutecuriteacute dans ce sceacutenario
Crsquoest notre prochain sujet
Protocole UDPProtocole UDP(ses champs utiles)(ses champs utiles)
Champs utiles pour le protocole UDP
Protocole TCPProtocole TCP(ses champs utiles)(ses champs utiles)
Champs utiles pour le protocole TCP
Port de lrsquoapplication Port de lrsquoapplication en cours sur la en cours sur la machine sourcemachine source
Port de lrsquoapplication Port de lrsquoapplication sur la machine sur la machine
destinationdestination
Le numeacutero drsquoordre du Le numeacutero drsquoordre du prochain segment (IP) prochain segment (IP)
attenduattendu
URG paquet agrave traiter de faccedilon urgenteACK paquet est un accuseacute de reacuteceptionPSH paquet fonctionne selon la meacutethode push
RST connexion reacuteinitialiseacuteeSYN indique une demande drsquoeacutetablissement de connexionFIN indique une interruption de connexion
Le numeacutero drsquoordre du segment (IP) Le numeacutero drsquoordre du segment (IP) courant si SYN=0 et le numeacutero drsquoordre courant si SYN=0 et le numeacutero drsquoordre
initial pour synchroniser les nos de initial pour synchroniser les nos de seacutequence (ISN)seacutequence (ISN)
DrapeauxDrapeaux
Filtrage extrecircmeFiltrage extrecircmeTCP est orienteacute connexion Pour en eacutetablir une de A vers B on doit transmettre SYN=1 dans le premier paquet de lrsquoeacutetablissement de connexion agrave trois eacutetapes (laquothree-way handshakeraquo)
Un filtrage simple consiste agrave laisser tomber tous les paquets qui ne contiennent que le drapeau SYN=1
Il devient impossible drsquoeacutetablir une connexion TCP de lrsquoexteacuterieur du mur
Si en plus les paquets UDP sont eacutelimineacutes alors la situation devrait ecirctre tregraves sucircre
Cette politique ne permet pas de se connecter au serveur Web cependant
Activer le serveur Web Activer le serveur Web et accegraves agrave un DNSet accegraves agrave un DNS
Pour donner accegraves au serveur Web nous pourrions faire la chose suivante
Nous autorisons une exception agrave la regravegle preacuteceacutedente
Nous autorisons les paquets SYN=1 pour le serveur Web sur le port 80 (port http)
Nous voudrions aussi permettre lrsquoaccegraves agrave un serveur DNS pour la conversion drsquoadresse comme httpwwwiroumontrealca en 13220424179
Il suffit de laisser les paquets UDP vers et depuis au moins un serveur DNS sur le port 53 (UDP)
Le reacutesultatLe reacutesultat
Si le pirate trouve une faille sur le serveur Web alors il pourrait attaquer le reacuteseau local
Pour eacuteviter ceci il faut seacuteparer le serveur Web des autresLe filtrage par paquets est insuffisant
Deux filtres valent mieux Deux filtres valent mieux qursquounqursquoun
ProxyProxyIl y a drsquoautres services sur lrsquoInternet qui utilisent le protocole UDP flux de donneacutees videacuteo jeux videacuteo
De plus excepteacute pour les paquets SYN=1 il est possible de transmettre des paquets TCP aux ordinateurs du reacuteseau local
Le proxy peut rendre les machines du reacuteseau local invisibles pas le filtrage simple de paquets
Approche proxyApproche proxy
Coupe-feu Coupe-feu dynamiquesdynamiques
Les proxys ne sont pas tregraves flexibles Les coupe-feu dynamiques permettent drsquoutiliser les logiciels drsquoune faccedilon plus transparente
Il srsquoagit drsquoun filtre avanceacute qui permet de veacuterifier que les paquets appartiennent agrave une connexion deacutejagrave eacutetablie Crsquoest seulement lorsque crsquoest le cas que le paquet peut passer
Parce qursquoil est conscient drsquoune connexion il peut appliquer NAT etou PAT
NAT Dynamique (laquoDynamic Network Address Translationraquo) Le coupe-feu traduit les adresses du reacuteseau Toutes les machines du reacuteseau possegravedent vu de lrsquoexteacuterieur la mecircme adresse IP
PAT (laquoPort Address Translationraquo) Le coupe-feu traduit les numeacuteros de port par lesquels les paquets arrivent sur les hocirctes locaux
Ces coupe-feu sont appeleacutes coupe-feu avec mascarade
NAT a eacuteteacute mis au point agrave NAT a eacuteteacute mis au point agrave lrsquoorigine pour reacutepondre agrave la lrsquoorigine pour reacutepondre agrave la
peacutenurie drsquoadresses IP avec le peacutenurie drsquoadresses IP avec le protocole IPv4protocole IPv4
NAT a eacuteteacute mis au point agrave NAT a eacuteteacute mis au point agrave lrsquoorigine pour reacutepondre agrave la lrsquoorigine pour reacutepondre agrave la
peacutenurie drsquoadresses IP avec le peacutenurie drsquoadresses IP avec le protocole IPv4protocole IPv4
Coupe-feu agrave Coupe-feu agrave mascarademascarade
Filtrage dynamique eacutetenduFiltrage dynamique eacutetenduLe filtrage des coupe-feu dynamiques nrsquoest pas limiteacute aux protocoles TCPIP
Pour des applications usuelles le filtrage peut srsquoappliquer au protocole
Le coupe-feu peut ainsi deacutetecter des comportements inhabituels
Peut aussi filtrer certaines parties des donneacutees transmises
Pour le protocole HTTP le filtre peut supprimer les applications Java
Pour le protocole SMTP le filtre peut supprimer les piegraveces jointes drsquoun certain type
Conclusion sur les coupe-Conclusion sur les coupe-feufeu
Les coupe-feu permettent de filtrer le trafic entre le reacuteseau local et lrsquoInternet en nrsquoadministrant qursquoune seule machine
Les coupe-feu ne sont cependant pas une solution magique pour reacutesoudre les problegravemes causeacutes par les attaques exteacuterieures agrave un reacuteseau local
Les coupe-feu pour un seul ordinateur personnel peuvent offrir une solution sans trop drsquoentretien
Les coupe-feu neacutecessitent des mises agrave jour freacutequentes lorsque le reacuteseau local est de bonne taille Lorsque le reacuteseau local change la configuration du coupe-feu doit aussi changer
Penser que lrsquoinstallation drsquoun coupe-feu rend votre reacuteseau sucircr est un peu de la penseacutee magique (neacutecessaire mais pas suffisant)
Logiciels malveillantsLogiciels malveillantsUn adversaire peut une fois passeacute le coupe-feu et les autres deacutefenses vouloir installer un programme malveillant sur la machine locale Ceux-ci sont de trois types
Chevaux de Troie Programme qui semble tout agrave fait utile mais qui cache une fonction malveillante Par exemple donne accegraves agrave des donneacutees priveacutees donne des droits drsquoaccegraves non autoriseacutes ou deacutetruit des donneacutees
Virus Programme qui infecte un autre programme sur votre ordinateur Agrave partir du programme infecteacute le virus se propage vers drsquoautres programmes Apregraves un certain temps ou eacuteveacutenement les virus peuvent entreprendre certaines actions Celles-ci peuvent ecirctre lrsquoeacutelimination de fichiers la deacuteteacuterioration de fonctions du systegraveme drsquoexploitation etc
Vers Programmes qui infectent un ordinateur sans avoir agrave ecirctre heacutebergeacutes par drsquoautres programmes Ils sont des programmes indeacutependants Ils se multiplient en exploitant diffeacuterentes ressources Les objectifs de ces programmes peuvent ecirctre lrsquoespionnage lrsquoouverture de portes deacuterobeacutees eacutemettre des requecirctes vers un site Internet jusqursquoagrave saturation
ExempleExempleI Love You Un ver lanceacute en 2000 et qui a atteint 31 millions de machines en 4 jours
Infection Le ver eacutetait dissimuleacute en piegravece jointe drsquoun courriel Cette piegravece jointe eacutetait preacutesenteacutee comme Love-Letter-for-youtxtvbs Lrsquoextension vbs indique que le fichier est un script Visual Basic Comme lrsquoextension nrsquoapparaicirct pas sur Windows les utilisateurs voyaient la piegravece jointe comme Love-Letter-for-youtxt Objectif Le script lisait la liste des contacts de lrsquoutilisateur pour envoyer ce mecircme message agrave ceux-ci La plate-forme Windows eacutetait viseacutee Des fichiers eacutetaient deacutetruits et remplaceacutes par ce script Il changeait la page drsquoaccueil drsquoInternet Explorer pour teacuteleacutecharger un cheval de Troie
ExempleExempleCode Red Un ver qui a infecteacute 359 000 ordinateurs en moins de 14 heures le 19 juillet 2001
Infections Le ver se multipliait en essayant des adresses IP aleacuteatoires pour ensuite infecter des serveurs qui faisaient tourner Microsoft IIS avec une faille de seacutecuriteacute
Objectif Monter une attaque par deacuteni de service (DOS) contre la Maison-Blanche
Lrsquoattaque a eacuteteacute facile agrave repousser car le ver veacuterifiait avant de lancer lrsquoattaque que le serveur agrave lrsquoadresse IP (au lieu du nom de domaine) de la Maison-Blanche eacutecoutait le port 80 (le port des serveurs Web) En changeant lrsquoadresse IP de la Maison-Blanche lrsquoattaque a eacuteteacute repousseacutee
ExempleExempleCabir Est un virusver (deacutemonstration de faisabiliteacute laquoproof of conceptraquo) qui srsquoattaque agrave la teacuteleacutephonie mobile Crsquoest un fichier de 15 ko nommeacute CARIBESIS
Infection Se propage par la teacuteleacutephonie mobile gracircce agrave la technologie Bluetooth et le systegraveme drsquoexploitation Symbian OS
Action Agrave chaque fois que le teacuteleacutephone infecteacute est ouvert le mot laquoCariberaquo srsquoaffiche Il tente de se propager aux peacuteripheacuteriques BlueTooth de la zone du teacuteleacutephone infecteacute Il nrsquoest pas meacutechant nrsquoavait pour but que de deacutemontrer la faisabiliteacute
AntivirusAntivirusLes antivirus sont des programmes qui deacutetectent les virus les vers et les chevaux de Troie sur votre ordinateur Ils les eacuteliminent
Ils visitent les fichiers sur votre disque dans le but de trouver des bouts de programmes reconnus comme dangereux
Ceci est possible eacutetant donneacute une base de donneacutees agrave jour contenant les virus connus sous la forme de signatures de virus Une signature est un motif (laquopatternraquo) qui caracteacuterise un virus donneacute
Un antivirus nrsquoest efficace que si sa base de donneacutees est mise agrave jour constamment Les compagnies drsquoantivirus vont vite pour mettre agrave jour leur base de donneacutees lorsqursquoun nouveau virus est identifieacute
Malheureusement les utilisateurs tardent agrave mettre leur copie agrave jour causant bien des infections
Tromper les antivirusTromper les antivirusDe nouveaux virus utilisent les meacutethodes de la cryptographie pour deacutejouer les antivirus
Des virus sont chiffreacutes pour les rendre non reconnaissables par les antivirus car ils ont toujours un aspect diffeacuterent
Ces virus ont un petit code en clair qui permet de les deacutecoder et de les charger en meacutemoire pour ecirctre exeacutecuteacutes Ce code est ce que les antivirus doivent deacutetecter
Ces virus sont de trois types
Oligomorphique Le virus est chiffreacute agrave chaque reacuteplication
Polymorphique Le virus est chiffreacute et la routine de deacutechiffrement est capable de changer certaines de ses instructions au fil des reacuteplications
Meacutetamorphique Le virus change de forme au fil des reacuteplications
IntrusionsIntrusionsPour qursquoun virus ver ou cheval de Troie soit deacuteleacutetegravere encore faut-il qursquoil srsquoinstalle sur votre machine
Mecircme si un adversaire peut parler agrave votre machine ceci nrsquoimplique pas qursquoil peut installer un logiciel sur celle-ci encore moins srsquoil nrsquoen est pas un utilisateur
Pour ce faire les adversaires peuvent essayer diverses strateacutegies
Faiblesses du systegraveme drsquoexploitation ou du logiciel du serveur Nous allons voir un exemple de ce type drsquoattaque attaques par deacutebordement Une page Web nrsquoest pas un objet passif Elle peut contenir du code (JavaScript Perl etc) malveillant
Tromper lrsquoutilisateur Crsquoest peut-ecirctre plus simple Cas speacutecial du piratage psychologique Cliquer ici pour installer un joli logiciel il faut espeacuterer que lrsquoantivirus deacutetecte ceci avant qursquoil ne soit trop tard
Deacutetecter les intrusionsDeacutetecter les intrusionsUne faccedilon diffeacuterente de deacutetecter les logiciels ou utilisateurs malveillants consiste agrave deacutetecter les comportements malveillants
Un systegraveme peut surveiller les processus pour deacutetecter les comportements malveillants
Une telle approche a lrsquoavantage de ne pas deacutependre drsquoinformation sur les virus et les attaques
Un coupe-feu dynamique est un exemple de cette approche
Il surveille les connexions et tente de deacuteterminer si un client transmet des donneacutees agrave contenu suspect (comme la taille)
Requecirctes Requecirctes malveillantesmalveillantes
dlkjfdsflkjsd dlkjfdsflkjsd fjdskl gfjdlskewqewewewewhdfbfbfbww fjdskl gfjdlskewqewewewewhdfbfbfbww jaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfjaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfwewqewqewqewqewqewqeweekjwweeqqqsxcswdswewqewqewqewqewqewqeweekjwweeqqqsxcswdsdddds dddds ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqqwwq qwwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewqeweekwqwqwefdscxcccj qeweekwqwqwefdscxcccj ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxzcwq zcwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfssaDSADSADSsfghdskjgfhdsgfihoiehjrfssaDSADSADSADDSDSDSSDSDSADDSDSDSSDSDSIl arrive que de longues requecirctes puissent faire planter un systegraveme
mal programmeacute Un adversaire peut donc soumettre des chaicircnes tregraves longues dans le but de rendre le systegraveme inopeacuterant (ou mecircme pire assujetti) comme nous le verrons plus loin
Et agrave peu pregraves nrsquoimporte qui Et agrave peu pregraves nrsquoimporte qui peut proposer un service peut proposer un service
comme celui-ci comme celui-ci
Un coupe-feu peut filtrer les requecirctes anormalement longues pour les ignorer Mecircme les systegravemes avec programmes erroneacutes seront agrave lrsquoabri de ce type drsquoattaque
SELECT SELECT FROM Passwords FROM Passwords WHERE user=rsquoWHERE user=rsquoJugheadJugheadrsquo AND password=rsquorsquo AND password=rsquoxrsquo xrsquo OR lsquo1rsquo=lsquo1OR lsquo1rsquo=lsquo1rsquorsquo
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Requecirctes Requecirctes malveillantesmalveillantes
HTTPSHTTPS
Password Password xrsquo OR xrsquo OR lsquo1rsquo=rsquo1lsquo1rsquo=rsquo1
Un coupe-feu dynamique peut filtrer des requecirctes bizarres comme xrsquo OR lsquo1rsquo=rsquo1xrsquo OR lsquo1rsquo=rsquo1
Ceci est beaucoup plus difficile agrave Ceci est beaucoup plus difficile agrave reacutealiser par un coupe-feu que reacutealiser par un coupe-feu que
lrsquoexemple preacuteceacutedentlrsquoexemple preacuteceacutedent
Approche Approche comportementalecomportementaleUne autre approche pour la deacutetection drsquointrusions consiste agrave
observer certains aspects du comportement des utilisateurs et programmes
activiteacutes de connexion et de session
activiteacutes relieacutees agrave lrsquoexeacutecution de programme et drsquoaccegraves aux fichiers
Il y a deux approches pour la deacutetection de comportements suspects
Par regravegles (rule-based) Un ensemble de regravegles deacutecrivant les comportements normaux est eacutetabli Les comportements anormaux (trop loin des normaux) sont rejeteacutes
Statistique Des statistiques sur les utilisateurs normaux sont creacuteeacutees Le comportement de lrsquoutilisateurprogramme observeacute est compareacute aux statistiques Un comportement montrant un trop grand eacutecart avec les statistiques est rejeteacute
Problegravemes avec les Problegravemes avec les systegravemes de deacutetection systegravemes de deacutetection
drsquointrusion (IDS)drsquointrusion (IDS)Le problegraveme majeur avec lrsquoapproche est le mecircme qursquoavec la biomeacutetrie Le systegraveme qui surveille doit ecirctre assez toleacuterant pour autoriser les comportements normaux mais suffisamment restrictif pour attraper les acteurs malveillants
Ce problegraveme nrsquoest pas tregraves bien compris et les solutions proposeacutees ne sont pas tout agrave fait satisfaisantes
La deacutetection drsquointrusion est bien inutile si le systegraveme ne reacuteagit pas de la bonne faccedilon lorsqursquoune intrusion est deacutetecteacutee La partie du systegraveme qui alerte lrsquoadministrateur qui interdit lrsquoaccegraves qui effectue quelque autre tacircche pour eacuteliminer la menace est tout aussi importante que celle qui deacutetecte
Le pot de mielLe pot de miel
Le pot de miel (laquohoney potraquo) est un truc pratique pour la deacutetection drsquointrusions
Une ressource bidon qui semble inteacuteressante pour un adversaire est creacuteeacutee
Puisque celle-ci est bidon on peut supposer que si quelqursquoun y accegravede crsquoest qursquoil srsquoadonne agrave une activiteacute malveillante
En consultant les traces il peut ecirctre possible de retrouver lrsquoutilisateur malveillant
Ceci peut se faire agrave lrsquoinsu de lrsquointrus
ExempleExemple
Un hocircpital ameacutericain soupccedilonnait que quelqursquoun consultait les dossiers de patients sans en avoir lrsquoautorisation
Ils ont creacuteeacute des fichiers pour des patients qui nrsquoexistent pas
Les accegraves agrave ces fichiers ont alors eacuteteacute retraceacutes jusqursquoagrave lrsquoutilisateur malveillant
Les attaques de lrsquointeacuterieurLes attaques de lrsquointeacuterieurPresque tout ce que nous avons vu a pour but la protection contre les attaques venues de lrsquoexteacuterieur
Les attaques peuvent tregraves bien eacutemaner de lrsquointeacuterieur et peuvent causer des problegravemes seacuterieux
Le premiegravere chose agrave comprendre est qursquoil nrsquoest pas possible de se preacutemunir contre ces attaques si les utilisateurs ont tous les droits sur le systegraveme cible
Il est donc neacutecessaire qursquoune partie du systegraveme soit garantie de fonctionner selon ses speacutecifications mecircme sous attaque
Sans cette hypothegravese le systegraveme est sous le controcircle complet de lrsquoadversaire
Base informatique Base informatique seacutecuriseacuteeseacutecuriseacutee
laquotrusted computing baseraquo (TCB)laquotrusted computing baseraquo (TCB)
Une base seacutecuriseacutee peut ecirctre eacutetablie en utilisant de la seacutecuriteacute mateacuterielle logicielle par mot de passe par exemple
Le rocircle de ce systegraveme de base est de controcircler lrsquoaccegraves aux ressources et le flux drsquoinformation sur celui-ci
Pour bien comprendre comment ces protections fonctionnent nous devons mettre de lrsquoordre dans nos ideacutees Nous devons voir agrave quoi ressemble une politique de seacutecuriteacute dans ce sceacutenario
Crsquoest notre prochain sujet
Protocole TCPProtocole TCP(ses champs utiles)(ses champs utiles)
Champs utiles pour le protocole TCP
Port de lrsquoapplication Port de lrsquoapplication en cours sur la en cours sur la machine sourcemachine source
Port de lrsquoapplication Port de lrsquoapplication sur la machine sur la machine
destinationdestination
Le numeacutero drsquoordre du Le numeacutero drsquoordre du prochain segment (IP) prochain segment (IP)
attenduattendu
URG paquet agrave traiter de faccedilon urgenteACK paquet est un accuseacute de reacuteceptionPSH paquet fonctionne selon la meacutethode push
RST connexion reacuteinitialiseacuteeSYN indique une demande drsquoeacutetablissement de connexionFIN indique une interruption de connexion
Le numeacutero drsquoordre du segment (IP) Le numeacutero drsquoordre du segment (IP) courant si SYN=0 et le numeacutero drsquoordre courant si SYN=0 et le numeacutero drsquoordre
initial pour synchroniser les nos de initial pour synchroniser les nos de seacutequence (ISN)seacutequence (ISN)
DrapeauxDrapeaux
Filtrage extrecircmeFiltrage extrecircmeTCP est orienteacute connexion Pour en eacutetablir une de A vers B on doit transmettre SYN=1 dans le premier paquet de lrsquoeacutetablissement de connexion agrave trois eacutetapes (laquothree-way handshakeraquo)
Un filtrage simple consiste agrave laisser tomber tous les paquets qui ne contiennent que le drapeau SYN=1
Il devient impossible drsquoeacutetablir une connexion TCP de lrsquoexteacuterieur du mur
Si en plus les paquets UDP sont eacutelimineacutes alors la situation devrait ecirctre tregraves sucircre
Cette politique ne permet pas de se connecter au serveur Web cependant
Activer le serveur Web Activer le serveur Web et accegraves agrave un DNSet accegraves agrave un DNS
Pour donner accegraves au serveur Web nous pourrions faire la chose suivante
Nous autorisons une exception agrave la regravegle preacuteceacutedente
Nous autorisons les paquets SYN=1 pour le serveur Web sur le port 80 (port http)
Nous voudrions aussi permettre lrsquoaccegraves agrave un serveur DNS pour la conversion drsquoadresse comme httpwwwiroumontrealca en 13220424179
Il suffit de laisser les paquets UDP vers et depuis au moins un serveur DNS sur le port 53 (UDP)
Le reacutesultatLe reacutesultat
Si le pirate trouve une faille sur le serveur Web alors il pourrait attaquer le reacuteseau local
Pour eacuteviter ceci il faut seacuteparer le serveur Web des autresLe filtrage par paquets est insuffisant
Deux filtres valent mieux Deux filtres valent mieux qursquounqursquoun
ProxyProxyIl y a drsquoautres services sur lrsquoInternet qui utilisent le protocole UDP flux de donneacutees videacuteo jeux videacuteo
De plus excepteacute pour les paquets SYN=1 il est possible de transmettre des paquets TCP aux ordinateurs du reacuteseau local
Le proxy peut rendre les machines du reacuteseau local invisibles pas le filtrage simple de paquets
Approche proxyApproche proxy
Coupe-feu Coupe-feu dynamiquesdynamiques
Les proxys ne sont pas tregraves flexibles Les coupe-feu dynamiques permettent drsquoutiliser les logiciels drsquoune faccedilon plus transparente
Il srsquoagit drsquoun filtre avanceacute qui permet de veacuterifier que les paquets appartiennent agrave une connexion deacutejagrave eacutetablie Crsquoest seulement lorsque crsquoest le cas que le paquet peut passer
Parce qursquoil est conscient drsquoune connexion il peut appliquer NAT etou PAT
NAT Dynamique (laquoDynamic Network Address Translationraquo) Le coupe-feu traduit les adresses du reacuteseau Toutes les machines du reacuteseau possegravedent vu de lrsquoexteacuterieur la mecircme adresse IP
PAT (laquoPort Address Translationraquo) Le coupe-feu traduit les numeacuteros de port par lesquels les paquets arrivent sur les hocirctes locaux
Ces coupe-feu sont appeleacutes coupe-feu avec mascarade
NAT a eacuteteacute mis au point agrave NAT a eacuteteacute mis au point agrave lrsquoorigine pour reacutepondre agrave la lrsquoorigine pour reacutepondre agrave la
peacutenurie drsquoadresses IP avec le peacutenurie drsquoadresses IP avec le protocole IPv4protocole IPv4
NAT a eacuteteacute mis au point agrave NAT a eacuteteacute mis au point agrave lrsquoorigine pour reacutepondre agrave la lrsquoorigine pour reacutepondre agrave la
peacutenurie drsquoadresses IP avec le peacutenurie drsquoadresses IP avec le protocole IPv4protocole IPv4
Coupe-feu agrave Coupe-feu agrave mascarademascarade
Filtrage dynamique eacutetenduFiltrage dynamique eacutetenduLe filtrage des coupe-feu dynamiques nrsquoest pas limiteacute aux protocoles TCPIP
Pour des applications usuelles le filtrage peut srsquoappliquer au protocole
Le coupe-feu peut ainsi deacutetecter des comportements inhabituels
Peut aussi filtrer certaines parties des donneacutees transmises
Pour le protocole HTTP le filtre peut supprimer les applications Java
Pour le protocole SMTP le filtre peut supprimer les piegraveces jointes drsquoun certain type
Conclusion sur les coupe-Conclusion sur les coupe-feufeu
Les coupe-feu permettent de filtrer le trafic entre le reacuteseau local et lrsquoInternet en nrsquoadministrant qursquoune seule machine
Les coupe-feu ne sont cependant pas une solution magique pour reacutesoudre les problegravemes causeacutes par les attaques exteacuterieures agrave un reacuteseau local
Les coupe-feu pour un seul ordinateur personnel peuvent offrir une solution sans trop drsquoentretien
Les coupe-feu neacutecessitent des mises agrave jour freacutequentes lorsque le reacuteseau local est de bonne taille Lorsque le reacuteseau local change la configuration du coupe-feu doit aussi changer
Penser que lrsquoinstallation drsquoun coupe-feu rend votre reacuteseau sucircr est un peu de la penseacutee magique (neacutecessaire mais pas suffisant)
Logiciels malveillantsLogiciels malveillantsUn adversaire peut une fois passeacute le coupe-feu et les autres deacutefenses vouloir installer un programme malveillant sur la machine locale Ceux-ci sont de trois types
Chevaux de Troie Programme qui semble tout agrave fait utile mais qui cache une fonction malveillante Par exemple donne accegraves agrave des donneacutees priveacutees donne des droits drsquoaccegraves non autoriseacutes ou deacutetruit des donneacutees
Virus Programme qui infecte un autre programme sur votre ordinateur Agrave partir du programme infecteacute le virus se propage vers drsquoautres programmes Apregraves un certain temps ou eacuteveacutenement les virus peuvent entreprendre certaines actions Celles-ci peuvent ecirctre lrsquoeacutelimination de fichiers la deacuteteacuterioration de fonctions du systegraveme drsquoexploitation etc
Vers Programmes qui infectent un ordinateur sans avoir agrave ecirctre heacutebergeacutes par drsquoautres programmes Ils sont des programmes indeacutependants Ils se multiplient en exploitant diffeacuterentes ressources Les objectifs de ces programmes peuvent ecirctre lrsquoespionnage lrsquoouverture de portes deacuterobeacutees eacutemettre des requecirctes vers un site Internet jusqursquoagrave saturation
ExempleExempleI Love You Un ver lanceacute en 2000 et qui a atteint 31 millions de machines en 4 jours
Infection Le ver eacutetait dissimuleacute en piegravece jointe drsquoun courriel Cette piegravece jointe eacutetait preacutesenteacutee comme Love-Letter-for-youtxtvbs Lrsquoextension vbs indique que le fichier est un script Visual Basic Comme lrsquoextension nrsquoapparaicirct pas sur Windows les utilisateurs voyaient la piegravece jointe comme Love-Letter-for-youtxt Objectif Le script lisait la liste des contacts de lrsquoutilisateur pour envoyer ce mecircme message agrave ceux-ci La plate-forme Windows eacutetait viseacutee Des fichiers eacutetaient deacutetruits et remplaceacutes par ce script Il changeait la page drsquoaccueil drsquoInternet Explorer pour teacuteleacutecharger un cheval de Troie
ExempleExempleCode Red Un ver qui a infecteacute 359 000 ordinateurs en moins de 14 heures le 19 juillet 2001
Infections Le ver se multipliait en essayant des adresses IP aleacuteatoires pour ensuite infecter des serveurs qui faisaient tourner Microsoft IIS avec une faille de seacutecuriteacute
Objectif Monter une attaque par deacuteni de service (DOS) contre la Maison-Blanche
Lrsquoattaque a eacuteteacute facile agrave repousser car le ver veacuterifiait avant de lancer lrsquoattaque que le serveur agrave lrsquoadresse IP (au lieu du nom de domaine) de la Maison-Blanche eacutecoutait le port 80 (le port des serveurs Web) En changeant lrsquoadresse IP de la Maison-Blanche lrsquoattaque a eacuteteacute repousseacutee
ExempleExempleCabir Est un virusver (deacutemonstration de faisabiliteacute laquoproof of conceptraquo) qui srsquoattaque agrave la teacuteleacutephonie mobile Crsquoest un fichier de 15 ko nommeacute CARIBESIS
Infection Se propage par la teacuteleacutephonie mobile gracircce agrave la technologie Bluetooth et le systegraveme drsquoexploitation Symbian OS
Action Agrave chaque fois que le teacuteleacutephone infecteacute est ouvert le mot laquoCariberaquo srsquoaffiche Il tente de se propager aux peacuteripheacuteriques BlueTooth de la zone du teacuteleacutephone infecteacute Il nrsquoest pas meacutechant nrsquoavait pour but que de deacutemontrer la faisabiliteacute
AntivirusAntivirusLes antivirus sont des programmes qui deacutetectent les virus les vers et les chevaux de Troie sur votre ordinateur Ils les eacuteliminent
Ils visitent les fichiers sur votre disque dans le but de trouver des bouts de programmes reconnus comme dangereux
Ceci est possible eacutetant donneacute une base de donneacutees agrave jour contenant les virus connus sous la forme de signatures de virus Une signature est un motif (laquopatternraquo) qui caracteacuterise un virus donneacute
Un antivirus nrsquoest efficace que si sa base de donneacutees est mise agrave jour constamment Les compagnies drsquoantivirus vont vite pour mettre agrave jour leur base de donneacutees lorsqursquoun nouveau virus est identifieacute
Malheureusement les utilisateurs tardent agrave mettre leur copie agrave jour causant bien des infections
Tromper les antivirusTromper les antivirusDe nouveaux virus utilisent les meacutethodes de la cryptographie pour deacutejouer les antivirus
Des virus sont chiffreacutes pour les rendre non reconnaissables par les antivirus car ils ont toujours un aspect diffeacuterent
Ces virus ont un petit code en clair qui permet de les deacutecoder et de les charger en meacutemoire pour ecirctre exeacutecuteacutes Ce code est ce que les antivirus doivent deacutetecter
Ces virus sont de trois types
Oligomorphique Le virus est chiffreacute agrave chaque reacuteplication
Polymorphique Le virus est chiffreacute et la routine de deacutechiffrement est capable de changer certaines de ses instructions au fil des reacuteplications
Meacutetamorphique Le virus change de forme au fil des reacuteplications
IntrusionsIntrusionsPour qursquoun virus ver ou cheval de Troie soit deacuteleacutetegravere encore faut-il qursquoil srsquoinstalle sur votre machine
Mecircme si un adversaire peut parler agrave votre machine ceci nrsquoimplique pas qursquoil peut installer un logiciel sur celle-ci encore moins srsquoil nrsquoen est pas un utilisateur
Pour ce faire les adversaires peuvent essayer diverses strateacutegies
Faiblesses du systegraveme drsquoexploitation ou du logiciel du serveur Nous allons voir un exemple de ce type drsquoattaque attaques par deacutebordement Une page Web nrsquoest pas un objet passif Elle peut contenir du code (JavaScript Perl etc) malveillant
Tromper lrsquoutilisateur Crsquoest peut-ecirctre plus simple Cas speacutecial du piratage psychologique Cliquer ici pour installer un joli logiciel il faut espeacuterer que lrsquoantivirus deacutetecte ceci avant qursquoil ne soit trop tard
Deacutetecter les intrusionsDeacutetecter les intrusionsUne faccedilon diffeacuterente de deacutetecter les logiciels ou utilisateurs malveillants consiste agrave deacutetecter les comportements malveillants
Un systegraveme peut surveiller les processus pour deacutetecter les comportements malveillants
Une telle approche a lrsquoavantage de ne pas deacutependre drsquoinformation sur les virus et les attaques
Un coupe-feu dynamique est un exemple de cette approche
Il surveille les connexions et tente de deacuteterminer si un client transmet des donneacutees agrave contenu suspect (comme la taille)
Requecirctes Requecirctes malveillantesmalveillantes
dlkjfdsflkjsd dlkjfdsflkjsd fjdskl gfjdlskewqewewewewhdfbfbfbww fjdskl gfjdlskewqewewewewhdfbfbfbww jaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfjaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfwewqewqewqewqewqewqeweekjwweeqqqsxcswdswewqewqewqewqewqewqeweekjwweeqqqsxcswdsdddds dddds ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqqwwq qwwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewqeweekwqwqwefdscxcccj qeweekwqwqwefdscxcccj ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxzcwq zcwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfssaDSADSADSsfghdskjgfhdsgfihoiehjrfssaDSADSADSADDSDSDSSDSDSADDSDSDSSDSDSIl arrive que de longues requecirctes puissent faire planter un systegraveme
mal programmeacute Un adversaire peut donc soumettre des chaicircnes tregraves longues dans le but de rendre le systegraveme inopeacuterant (ou mecircme pire assujetti) comme nous le verrons plus loin
Et agrave peu pregraves nrsquoimporte qui Et agrave peu pregraves nrsquoimporte qui peut proposer un service peut proposer un service
comme celui-ci comme celui-ci
Un coupe-feu peut filtrer les requecirctes anormalement longues pour les ignorer Mecircme les systegravemes avec programmes erroneacutes seront agrave lrsquoabri de ce type drsquoattaque
SELECT SELECT FROM Passwords FROM Passwords WHERE user=rsquoWHERE user=rsquoJugheadJugheadrsquo AND password=rsquorsquo AND password=rsquoxrsquo xrsquo OR lsquo1rsquo=lsquo1OR lsquo1rsquo=lsquo1rsquorsquo
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Requecirctes Requecirctes malveillantesmalveillantes
HTTPSHTTPS
Password Password xrsquo OR xrsquo OR lsquo1rsquo=rsquo1lsquo1rsquo=rsquo1
Un coupe-feu dynamique peut filtrer des requecirctes bizarres comme xrsquo OR lsquo1rsquo=rsquo1xrsquo OR lsquo1rsquo=rsquo1
Ceci est beaucoup plus difficile agrave Ceci est beaucoup plus difficile agrave reacutealiser par un coupe-feu que reacutealiser par un coupe-feu que
lrsquoexemple preacuteceacutedentlrsquoexemple preacuteceacutedent
Approche Approche comportementalecomportementaleUne autre approche pour la deacutetection drsquointrusions consiste agrave
observer certains aspects du comportement des utilisateurs et programmes
activiteacutes de connexion et de session
activiteacutes relieacutees agrave lrsquoexeacutecution de programme et drsquoaccegraves aux fichiers
Il y a deux approches pour la deacutetection de comportements suspects
Par regravegles (rule-based) Un ensemble de regravegles deacutecrivant les comportements normaux est eacutetabli Les comportements anormaux (trop loin des normaux) sont rejeteacutes
Statistique Des statistiques sur les utilisateurs normaux sont creacuteeacutees Le comportement de lrsquoutilisateurprogramme observeacute est compareacute aux statistiques Un comportement montrant un trop grand eacutecart avec les statistiques est rejeteacute
Problegravemes avec les Problegravemes avec les systegravemes de deacutetection systegravemes de deacutetection
drsquointrusion (IDS)drsquointrusion (IDS)Le problegraveme majeur avec lrsquoapproche est le mecircme qursquoavec la biomeacutetrie Le systegraveme qui surveille doit ecirctre assez toleacuterant pour autoriser les comportements normaux mais suffisamment restrictif pour attraper les acteurs malveillants
Ce problegraveme nrsquoest pas tregraves bien compris et les solutions proposeacutees ne sont pas tout agrave fait satisfaisantes
La deacutetection drsquointrusion est bien inutile si le systegraveme ne reacuteagit pas de la bonne faccedilon lorsqursquoune intrusion est deacutetecteacutee La partie du systegraveme qui alerte lrsquoadministrateur qui interdit lrsquoaccegraves qui effectue quelque autre tacircche pour eacuteliminer la menace est tout aussi importante que celle qui deacutetecte
Le pot de mielLe pot de miel
Le pot de miel (laquohoney potraquo) est un truc pratique pour la deacutetection drsquointrusions
Une ressource bidon qui semble inteacuteressante pour un adversaire est creacuteeacutee
Puisque celle-ci est bidon on peut supposer que si quelqursquoun y accegravede crsquoest qursquoil srsquoadonne agrave une activiteacute malveillante
En consultant les traces il peut ecirctre possible de retrouver lrsquoutilisateur malveillant
Ceci peut se faire agrave lrsquoinsu de lrsquointrus
ExempleExemple
Un hocircpital ameacutericain soupccedilonnait que quelqursquoun consultait les dossiers de patients sans en avoir lrsquoautorisation
Ils ont creacuteeacute des fichiers pour des patients qui nrsquoexistent pas
Les accegraves agrave ces fichiers ont alors eacuteteacute retraceacutes jusqursquoagrave lrsquoutilisateur malveillant
Les attaques de lrsquointeacuterieurLes attaques de lrsquointeacuterieurPresque tout ce que nous avons vu a pour but la protection contre les attaques venues de lrsquoexteacuterieur
Les attaques peuvent tregraves bien eacutemaner de lrsquointeacuterieur et peuvent causer des problegravemes seacuterieux
Le premiegravere chose agrave comprendre est qursquoil nrsquoest pas possible de se preacutemunir contre ces attaques si les utilisateurs ont tous les droits sur le systegraveme cible
Il est donc neacutecessaire qursquoune partie du systegraveme soit garantie de fonctionner selon ses speacutecifications mecircme sous attaque
Sans cette hypothegravese le systegraveme est sous le controcircle complet de lrsquoadversaire
Base informatique Base informatique seacutecuriseacuteeseacutecuriseacutee
laquotrusted computing baseraquo (TCB)laquotrusted computing baseraquo (TCB)
Une base seacutecuriseacutee peut ecirctre eacutetablie en utilisant de la seacutecuriteacute mateacuterielle logicielle par mot de passe par exemple
Le rocircle de ce systegraveme de base est de controcircler lrsquoaccegraves aux ressources et le flux drsquoinformation sur celui-ci
Pour bien comprendre comment ces protections fonctionnent nous devons mettre de lrsquoordre dans nos ideacutees Nous devons voir agrave quoi ressemble une politique de seacutecuriteacute dans ce sceacutenario
Crsquoest notre prochain sujet
Filtrage extrecircmeFiltrage extrecircmeTCP est orienteacute connexion Pour en eacutetablir une de A vers B on doit transmettre SYN=1 dans le premier paquet de lrsquoeacutetablissement de connexion agrave trois eacutetapes (laquothree-way handshakeraquo)
Un filtrage simple consiste agrave laisser tomber tous les paquets qui ne contiennent que le drapeau SYN=1
Il devient impossible drsquoeacutetablir une connexion TCP de lrsquoexteacuterieur du mur
Si en plus les paquets UDP sont eacutelimineacutes alors la situation devrait ecirctre tregraves sucircre
Cette politique ne permet pas de se connecter au serveur Web cependant
Activer le serveur Web Activer le serveur Web et accegraves agrave un DNSet accegraves agrave un DNS
Pour donner accegraves au serveur Web nous pourrions faire la chose suivante
Nous autorisons une exception agrave la regravegle preacuteceacutedente
Nous autorisons les paquets SYN=1 pour le serveur Web sur le port 80 (port http)
Nous voudrions aussi permettre lrsquoaccegraves agrave un serveur DNS pour la conversion drsquoadresse comme httpwwwiroumontrealca en 13220424179
Il suffit de laisser les paquets UDP vers et depuis au moins un serveur DNS sur le port 53 (UDP)
Le reacutesultatLe reacutesultat
Si le pirate trouve une faille sur le serveur Web alors il pourrait attaquer le reacuteseau local
Pour eacuteviter ceci il faut seacuteparer le serveur Web des autresLe filtrage par paquets est insuffisant
Deux filtres valent mieux Deux filtres valent mieux qursquounqursquoun
ProxyProxyIl y a drsquoautres services sur lrsquoInternet qui utilisent le protocole UDP flux de donneacutees videacuteo jeux videacuteo
De plus excepteacute pour les paquets SYN=1 il est possible de transmettre des paquets TCP aux ordinateurs du reacuteseau local
Le proxy peut rendre les machines du reacuteseau local invisibles pas le filtrage simple de paquets
Approche proxyApproche proxy
Coupe-feu Coupe-feu dynamiquesdynamiques
Les proxys ne sont pas tregraves flexibles Les coupe-feu dynamiques permettent drsquoutiliser les logiciels drsquoune faccedilon plus transparente
Il srsquoagit drsquoun filtre avanceacute qui permet de veacuterifier que les paquets appartiennent agrave une connexion deacutejagrave eacutetablie Crsquoest seulement lorsque crsquoest le cas que le paquet peut passer
Parce qursquoil est conscient drsquoune connexion il peut appliquer NAT etou PAT
NAT Dynamique (laquoDynamic Network Address Translationraquo) Le coupe-feu traduit les adresses du reacuteseau Toutes les machines du reacuteseau possegravedent vu de lrsquoexteacuterieur la mecircme adresse IP
PAT (laquoPort Address Translationraquo) Le coupe-feu traduit les numeacuteros de port par lesquels les paquets arrivent sur les hocirctes locaux
Ces coupe-feu sont appeleacutes coupe-feu avec mascarade
NAT a eacuteteacute mis au point agrave NAT a eacuteteacute mis au point agrave lrsquoorigine pour reacutepondre agrave la lrsquoorigine pour reacutepondre agrave la
peacutenurie drsquoadresses IP avec le peacutenurie drsquoadresses IP avec le protocole IPv4protocole IPv4
NAT a eacuteteacute mis au point agrave NAT a eacuteteacute mis au point agrave lrsquoorigine pour reacutepondre agrave la lrsquoorigine pour reacutepondre agrave la
peacutenurie drsquoadresses IP avec le peacutenurie drsquoadresses IP avec le protocole IPv4protocole IPv4
Coupe-feu agrave Coupe-feu agrave mascarademascarade
Filtrage dynamique eacutetenduFiltrage dynamique eacutetenduLe filtrage des coupe-feu dynamiques nrsquoest pas limiteacute aux protocoles TCPIP
Pour des applications usuelles le filtrage peut srsquoappliquer au protocole
Le coupe-feu peut ainsi deacutetecter des comportements inhabituels
Peut aussi filtrer certaines parties des donneacutees transmises
Pour le protocole HTTP le filtre peut supprimer les applications Java
Pour le protocole SMTP le filtre peut supprimer les piegraveces jointes drsquoun certain type
Conclusion sur les coupe-Conclusion sur les coupe-feufeu
Les coupe-feu permettent de filtrer le trafic entre le reacuteseau local et lrsquoInternet en nrsquoadministrant qursquoune seule machine
Les coupe-feu ne sont cependant pas une solution magique pour reacutesoudre les problegravemes causeacutes par les attaques exteacuterieures agrave un reacuteseau local
Les coupe-feu pour un seul ordinateur personnel peuvent offrir une solution sans trop drsquoentretien
Les coupe-feu neacutecessitent des mises agrave jour freacutequentes lorsque le reacuteseau local est de bonne taille Lorsque le reacuteseau local change la configuration du coupe-feu doit aussi changer
Penser que lrsquoinstallation drsquoun coupe-feu rend votre reacuteseau sucircr est un peu de la penseacutee magique (neacutecessaire mais pas suffisant)
Logiciels malveillantsLogiciels malveillantsUn adversaire peut une fois passeacute le coupe-feu et les autres deacutefenses vouloir installer un programme malveillant sur la machine locale Ceux-ci sont de trois types
Chevaux de Troie Programme qui semble tout agrave fait utile mais qui cache une fonction malveillante Par exemple donne accegraves agrave des donneacutees priveacutees donne des droits drsquoaccegraves non autoriseacutes ou deacutetruit des donneacutees
Virus Programme qui infecte un autre programme sur votre ordinateur Agrave partir du programme infecteacute le virus se propage vers drsquoautres programmes Apregraves un certain temps ou eacuteveacutenement les virus peuvent entreprendre certaines actions Celles-ci peuvent ecirctre lrsquoeacutelimination de fichiers la deacuteteacuterioration de fonctions du systegraveme drsquoexploitation etc
Vers Programmes qui infectent un ordinateur sans avoir agrave ecirctre heacutebergeacutes par drsquoautres programmes Ils sont des programmes indeacutependants Ils se multiplient en exploitant diffeacuterentes ressources Les objectifs de ces programmes peuvent ecirctre lrsquoespionnage lrsquoouverture de portes deacuterobeacutees eacutemettre des requecirctes vers un site Internet jusqursquoagrave saturation
ExempleExempleI Love You Un ver lanceacute en 2000 et qui a atteint 31 millions de machines en 4 jours
Infection Le ver eacutetait dissimuleacute en piegravece jointe drsquoun courriel Cette piegravece jointe eacutetait preacutesenteacutee comme Love-Letter-for-youtxtvbs Lrsquoextension vbs indique que le fichier est un script Visual Basic Comme lrsquoextension nrsquoapparaicirct pas sur Windows les utilisateurs voyaient la piegravece jointe comme Love-Letter-for-youtxt Objectif Le script lisait la liste des contacts de lrsquoutilisateur pour envoyer ce mecircme message agrave ceux-ci La plate-forme Windows eacutetait viseacutee Des fichiers eacutetaient deacutetruits et remplaceacutes par ce script Il changeait la page drsquoaccueil drsquoInternet Explorer pour teacuteleacutecharger un cheval de Troie
ExempleExempleCode Red Un ver qui a infecteacute 359 000 ordinateurs en moins de 14 heures le 19 juillet 2001
Infections Le ver se multipliait en essayant des adresses IP aleacuteatoires pour ensuite infecter des serveurs qui faisaient tourner Microsoft IIS avec une faille de seacutecuriteacute
Objectif Monter une attaque par deacuteni de service (DOS) contre la Maison-Blanche
Lrsquoattaque a eacuteteacute facile agrave repousser car le ver veacuterifiait avant de lancer lrsquoattaque que le serveur agrave lrsquoadresse IP (au lieu du nom de domaine) de la Maison-Blanche eacutecoutait le port 80 (le port des serveurs Web) En changeant lrsquoadresse IP de la Maison-Blanche lrsquoattaque a eacuteteacute repousseacutee
ExempleExempleCabir Est un virusver (deacutemonstration de faisabiliteacute laquoproof of conceptraquo) qui srsquoattaque agrave la teacuteleacutephonie mobile Crsquoest un fichier de 15 ko nommeacute CARIBESIS
Infection Se propage par la teacuteleacutephonie mobile gracircce agrave la technologie Bluetooth et le systegraveme drsquoexploitation Symbian OS
Action Agrave chaque fois que le teacuteleacutephone infecteacute est ouvert le mot laquoCariberaquo srsquoaffiche Il tente de se propager aux peacuteripheacuteriques BlueTooth de la zone du teacuteleacutephone infecteacute Il nrsquoest pas meacutechant nrsquoavait pour but que de deacutemontrer la faisabiliteacute
AntivirusAntivirusLes antivirus sont des programmes qui deacutetectent les virus les vers et les chevaux de Troie sur votre ordinateur Ils les eacuteliminent
Ils visitent les fichiers sur votre disque dans le but de trouver des bouts de programmes reconnus comme dangereux
Ceci est possible eacutetant donneacute une base de donneacutees agrave jour contenant les virus connus sous la forme de signatures de virus Une signature est un motif (laquopatternraquo) qui caracteacuterise un virus donneacute
Un antivirus nrsquoest efficace que si sa base de donneacutees est mise agrave jour constamment Les compagnies drsquoantivirus vont vite pour mettre agrave jour leur base de donneacutees lorsqursquoun nouveau virus est identifieacute
Malheureusement les utilisateurs tardent agrave mettre leur copie agrave jour causant bien des infections
Tromper les antivirusTromper les antivirusDe nouveaux virus utilisent les meacutethodes de la cryptographie pour deacutejouer les antivirus
Des virus sont chiffreacutes pour les rendre non reconnaissables par les antivirus car ils ont toujours un aspect diffeacuterent
Ces virus ont un petit code en clair qui permet de les deacutecoder et de les charger en meacutemoire pour ecirctre exeacutecuteacutes Ce code est ce que les antivirus doivent deacutetecter
Ces virus sont de trois types
Oligomorphique Le virus est chiffreacute agrave chaque reacuteplication
Polymorphique Le virus est chiffreacute et la routine de deacutechiffrement est capable de changer certaines de ses instructions au fil des reacuteplications
Meacutetamorphique Le virus change de forme au fil des reacuteplications
IntrusionsIntrusionsPour qursquoun virus ver ou cheval de Troie soit deacuteleacutetegravere encore faut-il qursquoil srsquoinstalle sur votre machine
Mecircme si un adversaire peut parler agrave votre machine ceci nrsquoimplique pas qursquoil peut installer un logiciel sur celle-ci encore moins srsquoil nrsquoen est pas un utilisateur
Pour ce faire les adversaires peuvent essayer diverses strateacutegies
Faiblesses du systegraveme drsquoexploitation ou du logiciel du serveur Nous allons voir un exemple de ce type drsquoattaque attaques par deacutebordement Une page Web nrsquoest pas un objet passif Elle peut contenir du code (JavaScript Perl etc) malveillant
Tromper lrsquoutilisateur Crsquoest peut-ecirctre plus simple Cas speacutecial du piratage psychologique Cliquer ici pour installer un joli logiciel il faut espeacuterer que lrsquoantivirus deacutetecte ceci avant qursquoil ne soit trop tard
Deacutetecter les intrusionsDeacutetecter les intrusionsUne faccedilon diffeacuterente de deacutetecter les logiciels ou utilisateurs malveillants consiste agrave deacutetecter les comportements malveillants
Un systegraveme peut surveiller les processus pour deacutetecter les comportements malveillants
Une telle approche a lrsquoavantage de ne pas deacutependre drsquoinformation sur les virus et les attaques
Un coupe-feu dynamique est un exemple de cette approche
Il surveille les connexions et tente de deacuteterminer si un client transmet des donneacutees agrave contenu suspect (comme la taille)
Requecirctes Requecirctes malveillantesmalveillantes
dlkjfdsflkjsd dlkjfdsflkjsd fjdskl gfjdlskewqewewewewhdfbfbfbww fjdskl gfjdlskewqewewewewhdfbfbfbww jaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfjaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfwewqewqewqewqewqewqeweekjwweeqqqsxcswdswewqewqewqewqewqewqeweekjwweeqqqsxcswdsdddds dddds ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqqwwq qwwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewqeweekwqwqwefdscxcccj qeweekwqwqwefdscxcccj ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxzcwq zcwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfssaDSADSADSsfghdskjgfhdsgfihoiehjrfssaDSADSADSADDSDSDSSDSDSADDSDSDSSDSDSIl arrive que de longues requecirctes puissent faire planter un systegraveme
mal programmeacute Un adversaire peut donc soumettre des chaicircnes tregraves longues dans le but de rendre le systegraveme inopeacuterant (ou mecircme pire assujetti) comme nous le verrons plus loin
Et agrave peu pregraves nrsquoimporte qui Et agrave peu pregraves nrsquoimporte qui peut proposer un service peut proposer un service
comme celui-ci comme celui-ci
Un coupe-feu peut filtrer les requecirctes anormalement longues pour les ignorer Mecircme les systegravemes avec programmes erroneacutes seront agrave lrsquoabri de ce type drsquoattaque
SELECT SELECT FROM Passwords FROM Passwords WHERE user=rsquoWHERE user=rsquoJugheadJugheadrsquo AND password=rsquorsquo AND password=rsquoxrsquo xrsquo OR lsquo1rsquo=lsquo1OR lsquo1rsquo=lsquo1rsquorsquo
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Requecirctes Requecirctes malveillantesmalveillantes
HTTPSHTTPS
Password Password xrsquo OR xrsquo OR lsquo1rsquo=rsquo1lsquo1rsquo=rsquo1
Un coupe-feu dynamique peut filtrer des requecirctes bizarres comme xrsquo OR lsquo1rsquo=rsquo1xrsquo OR lsquo1rsquo=rsquo1
Ceci est beaucoup plus difficile agrave Ceci est beaucoup plus difficile agrave reacutealiser par un coupe-feu que reacutealiser par un coupe-feu que
lrsquoexemple preacuteceacutedentlrsquoexemple preacuteceacutedent
Approche Approche comportementalecomportementaleUne autre approche pour la deacutetection drsquointrusions consiste agrave
observer certains aspects du comportement des utilisateurs et programmes
activiteacutes de connexion et de session
activiteacutes relieacutees agrave lrsquoexeacutecution de programme et drsquoaccegraves aux fichiers
Il y a deux approches pour la deacutetection de comportements suspects
Par regravegles (rule-based) Un ensemble de regravegles deacutecrivant les comportements normaux est eacutetabli Les comportements anormaux (trop loin des normaux) sont rejeteacutes
Statistique Des statistiques sur les utilisateurs normaux sont creacuteeacutees Le comportement de lrsquoutilisateurprogramme observeacute est compareacute aux statistiques Un comportement montrant un trop grand eacutecart avec les statistiques est rejeteacute
Problegravemes avec les Problegravemes avec les systegravemes de deacutetection systegravemes de deacutetection
drsquointrusion (IDS)drsquointrusion (IDS)Le problegraveme majeur avec lrsquoapproche est le mecircme qursquoavec la biomeacutetrie Le systegraveme qui surveille doit ecirctre assez toleacuterant pour autoriser les comportements normaux mais suffisamment restrictif pour attraper les acteurs malveillants
Ce problegraveme nrsquoest pas tregraves bien compris et les solutions proposeacutees ne sont pas tout agrave fait satisfaisantes
La deacutetection drsquointrusion est bien inutile si le systegraveme ne reacuteagit pas de la bonne faccedilon lorsqursquoune intrusion est deacutetecteacutee La partie du systegraveme qui alerte lrsquoadministrateur qui interdit lrsquoaccegraves qui effectue quelque autre tacircche pour eacuteliminer la menace est tout aussi importante que celle qui deacutetecte
Le pot de mielLe pot de miel
Le pot de miel (laquohoney potraquo) est un truc pratique pour la deacutetection drsquointrusions
Une ressource bidon qui semble inteacuteressante pour un adversaire est creacuteeacutee
Puisque celle-ci est bidon on peut supposer que si quelqursquoun y accegravede crsquoest qursquoil srsquoadonne agrave une activiteacute malveillante
En consultant les traces il peut ecirctre possible de retrouver lrsquoutilisateur malveillant
Ceci peut se faire agrave lrsquoinsu de lrsquointrus
ExempleExemple
Un hocircpital ameacutericain soupccedilonnait que quelqursquoun consultait les dossiers de patients sans en avoir lrsquoautorisation
Ils ont creacuteeacute des fichiers pour des patients qui nrsquoexistent pas
Les accegraves agrave ces fichiers ont alors eacuteteacute retraceacutes jusqursquoagrave lrsquoutilisateur malveillant
Les attaques de lrsquointeacuterieurLes attaques de lrsquointeacuterieurPresque tout ce que nous avons vu a pour but la protection contre les attaques venues de lrsquoexteacuterieur
Les attaques peuvent tregraves bien eacutemaner de lrsquointeacuterieur et peuvent causer des problegravemes seacuterieux
Le premiegravere chose agrave comprendre est qursquoil nrsquoest pas possible de se preacutemunir contre ces attaques si les utilisateurs ont tous les droits sur le systegraveme cible
Il est donc neacutecessaire qursquoune partie du systegraveme soit garantie de fonctionner selon ses speacutecifications mecircme sous attaque
Sans cette hypothegravese le systegraveme est sous le controcircle complet de lrsquoadversaire
Base informatique Base informatique seacutecuriseacuteeseacutecuriseacutee
laquotrusted computing baseraquo (TCB)laquotrusted computing baseraquo (TCB)
Une base seacutecuriseacutee peut ecirctre eacutetablie en utilisant de la seacutecuriteacute mateacuterielle logicielle par mot de passe par exemple
Le rocircle de ce systegraveme de base est de controcircler lrsquoaccegraves aux ressources et le flux drsquoinformation sur celui-ci
Pour bien comprendre comment ces protections fonctionnent nous devons mettre de lrsquoordre dans nos ideacutees Nous devons voir agrave quoi ressemble une politique de seacutecuriteacute dans ce sceacutenario
Crsquoest notre prochain sujet
Activer le serveur Web Activer le serveur Web et accegraves agrave un DNSet accegraves agrave un DNS
Pour donner accegraves au serveur Web nous pourrions faire la chose suivante
Nous autorisons une exception agrave la regravegle preacuteceacutedente
Nous autorisons les paquets SYN=1 pour le serveur Web sur le port 80 (port http)
Nous voudrions aussi permettre lrsquoaccegraves agrave un serveur DNS pour la conversion drsquoadresse comme httpwwwiroumontrealca en 13220424179
Il suffit de laisser les paquets UDP vers et depuis au moins un serveur DNS sur le port 53 (UDP)
Le reacutesultatLe reacutesultat
Si le pirate trouve une faille sur le serveur Web alors il pourrait attaquer le reacuteseau local
Pour eacuteviter ceci il faut seacuteparer le serveur Web des autresLe filtrage par paquets est insuffisant
Deux filtres valent mieux Deux filtres valent mieux qursquounqursquoun
ProxyProxyIl y a drsquoautres services sur lrsquoInternet qui utilisent le protocole UDP flux de donneacutees videacuteo jeux videacuteo
De plus excepteacute pour les paquets SYN=1 il est possible de transmettre des paquets TCP aux ordinateurs du reacuteseau local
Le proxy peut rendre les machines du reacuteseau local invisibles pas le filtrage simple de paquets
Approche proxyApproche proxy
Coupe-feu Coupe-feu dynamiquesdynamiques
Les proxys ne sont pas tregraves flexibles Les coupe-feu dynamiques permettent drsquoutiliser les logiciels drsquoune faccedilon plus transparente
Il srsquoagit drsquoun filtre avanceacute qui permet de veacuterifier que les paquets appartiennent agrave une connexion deacutejagrave eacutetablie Crsquoest seulement lorsque crsquoest le cas que le paquet peut passer
Parce qursquoil est conscient drsquoune connexion il peut appliquer NAT etou PAT
NAT Dynamique (laquoDynamic Network Address Translationraquo) Le coupe-feu traduit les adresses du reacuteseau Toutes les machines du reacuteseau possegravedent vu de lrsquoexteacuterieur la mecircme adresse IP
PAT (laquoPort Address Translationraquo) Le coupe-feu traduit les numeacuteros de port par lesquels les paquets arrivent sur les hocirctes locaux
Ces coupe-feu sont appeleacutes coupe-feu avec mascarade
NAT a eacuteteacute mis au point agrave NAT a eacuteteacute mis au point agrave lrsquoorigine pour reacutepondre agrave la lrsquoorigine pour reacutepondre agrave la
peacutenurie drsquoadresses IP avec le peacutenurie drsquoadresses IP avec le protocole IPv4protocole IPv4
NAT a eacuteteacute mis au point agrave NAT a eacuteteacute mis au point agrave lrsquoorigine pour reacutepondre agrave la lrsquoorigine pour reacutepondre agrave la
peacutenurie drsquoadresses IP avec le peacutenurie drsquoadresses IP avec le protocole IPv4protocole IPv4
Coupe-feu agrave Coupe-feu agrave mascarademascarade
Filtrage dynamique eacutetenduFiltrage dynamique eacutetenduLe filtrage des coupe-feu dynamiques nrsquoest pas limiteacute aux protocoles TCPIP
Pour des applications usuelles le filtrage peut srsquoappliquer au protocole
Le coupe-feu peut ainsi deacutetecter des comportements inhabituels
Peut aussi filtrer certaines parties des donneacutees transmises
Pour le protocole HTTP le filtre peut supprimer les applications Java
Pour le protocole SMTP le filtre peut supprimer les piegraveces jointes drsquoun certain type
Conclusion sur les coupe-Conclusion sur les coupe-feufeu
Les coupe-feu permettent de filtrer le trafic entre le reacuteseau local et lrsquoInternet en nrsquoadministrant qursquoune seule machine
Les coupe-feu ne sont cependant pas une solution magique pour reacutesoudre les problegravemes causeacutes par les attaques exteacuterieures agrave un reacuteseau local
Les coupe-feu pour un seul ordinateur personnel peuvent offrir une solution sans trop drsquoentretien
Les coupe-feu neacutecessitent des mises agrave jour freacutequentes lorsque le reacuteseau local est de bonne taille Lorsque le reacuteseau local change la configuration du coupe-feu doit aussi changer
Penser que lrsquoinstallation drsquoun coupe-feu rend votre reacuteseau sucircr est un peu de la penseacutee magique (neacutecessaire mais pas suffisant)
Logiciels malveillantsLogiciels malveillantsUn adversaire peut une fois passeacute le coupe-feu et les autres deacutefenses vouloir installer un programme malveillant sur la machine locale Ceux-ci sont de trois types
Chevaux de Troie Programme qui semble tout agrave fait utile mais qui cache une fonction malveillante Par exemple donne accegraves agrave des donneacutees priveacutees donne des droits drsquoaccegraves non autoriseacutes ou deacutetruit des donneacutees
Virus Programme qui infecte un autre programme sur votre ordinateur Agrave partir du programme infecteacute le virus se propage vers drsquoautres programmes Apregraves un certain temps ou eacuteveacutenement les virus peuvent entreprendre certaines actions Celles-ci peuvent ecirctre lrsquoeacutelimination de fichiers la deacuteteacuterioration de fonctions du systegraveme drsquoexploitation etc
Vers Programmes qui infectent un ordinateur sans avoir agrave ecirctre heacutebergeacutes par drsquoautres programmes Ils sont des programmes indeacutependants Ils se multiplient en exploitant diffeacuterentes ressources Les objectifs de ces programmes peuvent ecirctre lrsquoespionnage lrsquoouverture de portes deacuterobeacutees eacutemettre des requecirctes vers un site Internet jusqursquoagrave saturation
ExempleExempleI Love You Un ver lanceacute en 2000 et qui a atteint 31 millions de machines en 4 jours
Infection Le ver eacutetait dissimuleacute en piegravece jointe drsquoun courriel Cette piegravece jointe eacutetait preacutesenteacutee comme Love-Letter-for-youtxtvbs Lrsquoextension vbs indique que le fichier est un script Visual Basic Comme lrsquoextension nrsquoapparaicirct pas sur Windows les utilisateurs voyaient la piegravece jointe comme Love-Letter-for-youtxt Objectif Le script lisait la liste des contacts de lrsquoutilisateur pour envoyer ce mecircme message agrave ceux-ci La plate-forme Windows eacutetait viseacutee Des fichiers eacutetaient deacutetruits et remplaceacutes par ce script Il changeait la page drsquoaccueil drsquoInternet Explorer pour teacuteleacutecharger un cheval de Troie
ExempleExempleCode Red Un ver qui a infecteacute 359 000 ordinateurs en moins de 14 heures le 19 juillet 2001
Infections Le ver se multipliait en essayant des adresses IP aleacuteatoires pour ensuite infecter des serveurs qui faisaient tourner Microsoft IIS avec une faille de seacutecuriteacute
Objectif Monter une attaque par deacuteni de service (DOS) contre la Maison-Blanche
Lrsquoattaque a eacuteteacute facile agrave repousser car le ver veacuterifiait avant de lancer lrsquoattaque que le serveur agrave lrsquoadresse IP (au lieu du nom de domaine) de la Maison-Blanche eacutecoutait le port 80 (le port des serveurs Web) En changeant lrsquoadresse IP de la Maison-Blanche lrsquoattaque a eacuteteacute repousseacutee
ExempleExempleCabir Est un virusver (deacutemonstration de faisabiliteacute laquoproof of conceptraquo) qui srsquoattaque agrave la teacuteleacutephonie mobile Crsquoest un fichier de 15 ko nommeacute CARIBESIS
Infection Se propage par la teacuteleacutephonie mobile gracircce agrave la technologie Bluetooth et le systegraveme drsquoexploitation Symbian OS
Action Agrave chaque fois que le teacuteleacutephone infecteacute est ouvert le mot laquoCariberaquo srsquoaffiche Il tente de se propager aux peacuteripheacuteriques BlueTooth de la zone du teacuteleacutephone infecteacute Il nrsquoest pas meacutechant nrsquoavait pour but que de deacutemontrer la faisabiliteacute
AntivirusAntivirusLes antivirus sont des programmes qui deacutetectent les virus les vers et les chevaux de Troie sur votre ordinateur Ils les eacuteliminent
Ils visitent les fichiers sur votre disque dans le but de trouver des bouts de programmes reconnus comme dangereux
Ceci est possible eacutetant donneacute une base de donneacutees agrave jour contenant les virus connus sous la forme de signatures de virus Une signature est un motif (laquopatternraquo) qui caracteacuterise un virus donneacute
Un antivirus nrsquoest efficace que si sa base de donneacutees est mise agrave jour constamment Les compagnies drsquoantivirus vont vite pour mettre agrave jour leur base de donneacutees lorsqursquoun nouveau virus est identifieacute
Malheureusement les utilisateurs tardent agrave mettre leur copie agrave jour causant bien des infections
Tromper les antivirusTromper les antivirusDe nouveaux virus utilisent les meacutethodes de la cryptographie pour deacutejouer les antivirus
Des virus sont chiffreacutes pour les rendre non reconnaissables par les antivirus car ils ont toujours un aspect diffeacuterent
Ces virus ont un petit code en clair qui permet de les deacutecoder et de les charger en meacutemoire pour ecirctre exeacutecuteacutes Ce code est ce que les antivirus doivent deacutetecter
Ces virus sont de trois types
Oligomorphique Le virus est chiffreacute agrave chaque reacuteplication
Polymorphique Le virus est chiffreacute et la routine de deacutechiffrement est capable de changer certaines de ses instructions au fil des reacuteplications
Meacutetamorphique Le virus change de forme au fil des reacuteplications
IntrusionsIntrusionsPour qursquoun virus ver ou cheval de Troie soit deacuteleacutetegravere encore faut-il qursquoil srsquoinstalle sur votre machine
Mecircme si un adversaire peut parler agrave votre machine ceci nrsquoimplique pas qursquoil peut installer un logiciel sur celle-ci encore moins srsquoil nrsquoen est pas un utilisateur
Pour ce faire les adversaires peuvent essayer diverses strateacutegies
Faiblesses du systegraveme drsquoexploitation ou du logiciel du serveur Nous allons voir un exemple de ce type drsquoattaque attaques par deacutebordement Une page Web nrsquoest pas un objet passif Elle peut contenir du code (JavaScript Perl etc) malveillant
Tromper lrsquoutilisateur Crsquoest peut-ecirctre plus simple Cas speacutecial du piratage psychologique Cliquer ici pour installer un joli logiciel il faut espeacuterer que lrsquoantivirus deacutetecte ceci avant qursquoil ne soit trop tard
Deacutetecter les intrusionsDeacutetecter les intrusionsUne faccedilon diffeacuterente de deacutetecter les logiciels ou utilisateurs malveillants consiste agrave deacutetecter les comportements malveillants
Un systegraveme peut surveiller les processus pour deacutetecter les comportements malveillants
Une telle approche a lrsquoavantage de ne pas deacutependre drsquoinformation sur les virus et les attaques
Un coupe-feu dynamique est un exemple de cette approche
Il surveille les connexions et tente de deacuteterminer si un client transmet des donneacutees agrave contenu suspect (comme la taille)
Requecirctes Requecirctes malveillantesmalveillantes
dlkjfdsflkjsd dlkjfdsflkjsd fjdskl gfjdlskewqewewewewhdfbfbfbww fjdskl gfjdlskewqewewewewhdfbfbfbww jaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfjaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfwewqewqewqewqewqewqeweekjwweeqqqsxcswdswewqewqewqewqewqewqeweekjwweeqqqsxcswdsdddds dddds ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqqwwq qwwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewqeweekwqwqwefdscxcccj qeweekwqwqwefdscxcccj ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxzcwq zcwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfssaDSADSADSsfghdskjgfhdsgfihoiehjrfssaDSADSADSADDSDSDSSDSDSADDSDSDSSDSDSIl arrive que de longues requecirctes puissent faire planter un systegraveme
mal programmeacute Un adversaire peut donc soumettre des chaicircnes tregraves longues dans le but de rendre le systegraveme inopeacuterant (ou mecircme pire assujetti) comme nous le verrons plus loin
Et agrave peu pregraves nrsquoimporte qui Et agrave peu pregraves nrsquoimporte qui peut proposer un service peut proposer un service
comme celui-ci comme celui-ci
Un coupe-feu peut filtrer les requecirctes anormalement longues pour les ignorer Mecircme les systegravemes avec programmes erroneacutes seront agrave lrsquoabri de ce type drsquoattaque
SELECT SELECT FROM Passwords FROM Passwords WHERE user=rsquoWHERE user=rsquoJugheadJugheadrsquo AND password=rsquorsquo AND password=rsquoxrsquo xrsquo OR lsquo1rsquo=lsquo1OR lsquo1rsquo=lsquo1rsquorsquo
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Requecirctes Requecirctes malveillantesmalveillantes
HTTPSHTTPS
Password Password xrsquo OR xrsquo OR lsquo1rsquo=rsquo1lsquo1rsquo=rsquo1
Un coupe-feu dynamique peut filtrer des requecirctes bizarres comme xrsquo OR lsquo1rsquo=rsquo1xrsquo OR lsquo1rsquo=rsquo1
Ceci est beaucoup plus difficile agrave Ceci est beaucoup plus difficile agrave reacutealiser par un coupe-feu que reacutealiser par un coupe-feu que
lrsquoexemple preacuteceacutedentlrsquoexemple preacuteceacutedent
Approche Approche comportementalecomportementaleUne autre approche pour la deacutetection drsquointrusions consiste agrave
observer certains aspects du comportement des utilisateurs et programmes
activiteacutes de connexion et de session
activiteacutes relieacutees agrave lrsquoexeacutecution de programme et drsquoaccegraves aux fichiers
Il y a deux approches pour la deacutetection de comportements suspects
Par regravegles (rule-based) Un ensemble de regravegles deacutecrivant les comportements normaux est eacutetabli Les comportements anormaux (trop loin des normaux) sont rejeteacutes
Statistique Des statistiques sur les utilisateurs normaux sont creacuteeacutees Le comportement de lrsquoutilisateurprogramme observeacute est compareacute aux statistiques Un comportement montrant un trop grand eacutecart avec les statistiques est rejeteacute
Problegravemes avec les Problegravemes avec les systegravemes de deacutetection systegravemes de deacutetection
drsquointrusion (IDS)drsquointrusion (IDS)Le problegraveme majeur avec lrsquoapproche est le mecircme qursquoavec la biomeacutetrie Le systegraveme qui surveille doit ecirctre assez toleacuterant pour autoriser les comportements normaux mais suffisamment restrictif pour attraper les acteurs malveillants
Ce problegraveme nrsquoest pas tregraves bien compris et les solutions proposeacutees ne sont pas tout agrave fait satisfaisantes
La deacutetection drsquointrusion est bien inutile si le systegraveme ne reacuteagit pas de la bonne faccedilon lorsqursquoune intrusion est deacutetecteacutee La partie du systegraveme qui alerte lrsquoadministrateur qui interdit lrsquoaccegraves qui effectue quelque autre tacircche pour eacuteliminer la menace est tout aussi importante que celle qui deacutetecte
Le pot de mielLe pot de miel
Le pot de miel (laquohoney potraquo) est un truc pratique pour la deacutetection drsquointrusions
Une ressource bidon qui semble inteacuteressante pour un adversaire est creacuteeacutee
Puisque celle-ci est bidon on peut supposer que si quelqursquoun y accegravede crsquoest qursquoil srsquoadonne agrave une activiteacute malveillante
En consultant les traces il peut ecirctre possible de retrouver lrsquoutilisateur malveillant
Ceci peut se faire agrave lrsquoinsu de lrsquointrus
ExempleExemple
Un hocircpital ameacutericain soupccedilonnait que quelqursquoun consultait les dossiers de patients sans en avoir lrsquoautorisation
Ils ont creacuteeacute des fichiers pour des patients qui nrsquoexistent pas
Les accegraves agrave ces fichiers ont alors eacuteteacute retraceacutes jusqursquoagrave lrsquoutilisateur malveillant
Les attaques de lrsquointeacuterieurLes attaques de lrsquointeacuterieurPresque tout ce que nous avons vu a pour but la protection contre les attaques venues de lrsquoexteacuterieur
Les attaques peuvent tregraves bien eacutemaner de lrsquointeacuterieur et peuvent causer des problegravemes seacuterieux
Le premiegravere chose agrave comprendre est qursquoil nrsquoest pas possible de se preacutemunir contre ces attaques si les utilisateurs ont tous les droits sur le systegraveme cible
Il est donc neacutecessaire qursquoune partie du systegraveme soit garantie de fonctionner selon ses speacutecifications mecircme sous attaque
Sans cette hypothegravese le systegraveme est sous le controcircle complet de lrsquoadversaire
Base informatique Base informatique seacutecuriseacuteeseacutecuriseacutee
laquotrusted computing baseraquo (TCB)laquotrusted computing baseraquo (TCB)
Une base seacutecuriseacutee peut ecirctre eacutetablie en utilisant de la seacutecuriteacute mateacuterielle logicielle par mot de passe par exemple
Le rocircle de ce systegraveme de base est de controcircler lrsquoaccegraves aux ressources et le flux drsquoinformation sur celui-ci
Pour bien comprendre comment ces protections fonctionnent nous devons mettre de lrsquoordre dans nos ideacutees Nous devons voir agrave quoi ressemble une politique de seacutecuriteacute dans ce sceacutenario
Crsquoest notre prochain sujet
Le reacutesultatLe reacutesultat
Si le pirate trouve une faille sur le serveur Web alors il pourrait attaquer le reacuteseau local
Pour eacuteviter ceci il faut seacuteparer le serveur Web des autresLe filtrage par paquets est insuffisant
Deux filtres valent mieux Deux filtres valent mieux qursquounqursquoun
ProxyProxyIl y a drsquoautres services sur lrsquoInternet qui utilisent le protocole UDP flux de donneacutees videacuteo jeux videacuteo
De plus excepteacute pour les paquets SYN=1 il est possible de transmettre des paquets TCP aux ordinateurs du reacuteseau local
Le proxy peut rendre les machines du reacuteseau local invisibles pas le filtrage simple de paquets
Approche proxyApproche proxy
Coupe-feu Coupe-feu dynamiquesdynamiques
Les proxys ne sont pas tregraves flexibles Les coupe-feu dynamiques permettent drsquoutiliser les logiciels drsquoune faccedilon plus transparente
Il srsquoagit drsquoun filtre avanceacute qui permet de veacuterifier que les paquets appartiennent agrave une connexion deacutejagrave eacutetablie Crsquoest seulement lorsque crsquoest le cas que le paquet peut passer
Parce qursquoil est conscient drsquoune connexion il peut appliquer NAT etou PAT
NAT Dynamique (laquoDynamic Network Address Translationraquo) Le coupe-feu traduit les adresses du reacuteseau Toutes les machines du reacuteseau possegravedent vu de lrsquoexteacuterieur la mecircme adresse IP
PAT (laquoPort Address Translationraquo) Le coupe-feu traduit les numeacuteros de port par lesquels les paquets arrivent sur les hocirctes locaux
Ces coupe-feu sont appeleacutes coupe-feu avec mascarade
NAT a eacuteteacute mis au point agrave NAT a eacuteteacute mis au point agrave lrsquoorigine pour reacutepondre agrave la lrsquoorigine pour reacutepondre agrave la
peacutenurie drsquoadresses IP avec le peacutenurie drsquoadresses IP avec le protocole IPv4protocole IPv4
NAT a eacuteteacute mis au point agrave NAT a eacuteteacute mis au point agrave lrsquoorigine pour reacutepondre agrave la lrsquoorigine pour reacutepondre agrave la
peacutenurie drsquoadresses IP avec le peacutenurie drsquoadresses IP avec le protocole IPv4protocole IPv4
Coupe-feu agrave Coupe-feu agrave mascarademascarade
Filtrage dynamique eacutetenduFiltrage dynamique eacutetenduLe filtrage des coupe-feu dynamiques nrsquoest pas limiteacute aux protocoles TCPIP
Pour des applications usuelles le filtrage peut srsquoappliquer au protocole
Le coupe-feu peut ainsi deacutetecter des comportements inhabituels
Peut aussi filtrer certaines parties des donneacutees transmises
Pour le protocole HTTP le filtre peut supprimer les applications Java
Pour le protocole SMTP le filtre peut supprimer les piegraveces jointes drsquoun certain type
Conclusion sur les coupe-Conclusion sur les coupe-feufeu
Les coupe-feu permettent de filtrer le trafic entre le reacuteseau local et lrsquoInternet en nrsquoadministrant qursquoune seule machine
Les coupe-feu ne sont cependant pas une solution magique pour reacutesoudre les problegravemes causeacutes par les attaques exteacuterieures agrave un reacuteseau local
Les coupe-feu pour un seul ordinateur personnel peuvent offrir une solution sans trop drsquoentretien
Les coupe-feu neacutecessitent des mises agrave jour freacutequentes lorsque le reacuteseau local est de bonne taille Lorsque le reacuteseau local change la configuration du coupe-feu doit aussi changer
Penser que lrsquoinstallation drsquoun coupe-feu rend votre reacuteseau sucircr est un peu de la penseacutee magique (neacutecessaire mais pas suffisant)
Logiciels malveillantsLogiciels malveillantsUn adversaire peut une fois passeacute le coupe-feu et les autres deacutefenses vouloir installer un programme malveillant sur la machine locale Ceux-ci sont de trois types
Chevaux de Troie Programme qui semble tout agrave fait utile mais qui cache une fonction malveillante Par exemple donne accegraves agrave des donneacutees priveacutees donne des droits drsquoaccegraves non autoriseacutes ou deacutetruit des donneacutees
Virus Programme qui infecte un autre programme sur votre ordinateur Agrave partir du programme infecteacute le virus se propage vers drsquoautres programmes Apregraves un certain temps ou eacuteveacutenement les virus peuvent entreprendre certaines actions Celles-ci peuvent ecirctre lrsquoeacutelimination de fichiers la deacuteteacuterioration de fonctions du systegraveme drsquoexploitation etc
Vers Programmes qui infectent un ordinateur sans avoir agrave ecirctre heacutebergeacutes par drsquoautres programmes Ils sont des programmes indeacutependants Ils se multiplient en exploitant diffeacuterentes ressources Les objectifs de ces programmes peuvent ecirctre lrsquoespionnage lrsquoouverture de portes deacuterobeacutees eacutemettre des requecirctes vers un site Internet jusqursquoagrave saturation
ExempleExempleI Love You Un ver lanceacute en 2000 et qui a atteint 31 millions de machines en 4 jours
Infection Le ver eacutetait dissimuleacute en piegravece jointe drsquoun courriel Cette piegravece jointe eacutetait preacutesenteacutee comme Love-Letter-for-youtxtvbs Lrsquoextension vbs indique que le fichier est un script Visual Basic Comme lrsquoextension nrsquoapparaicirct pas sur Windows les utilisateurs voyaient la piegravece jointe comme Love-Letter-for-youtxt Objectif Le script lisait la liste des contacts de lrsquoutilisateur pour envoyer ce mecircme message agrave ceux-ci La plate-forme Windows eacutetait viseacutee Des fichiers eacutetaient deacutetruits et remplaceacutes par ce script Il changeait la page drsquoaccueil drsquoInternet Explorer pour teacuteleacutecharger un cheval de Troie
ExempleExempleCode Red Un ver qui a infecteacute 359 000 ordinateurs en moins de 14 heures le 19 juillet 2001
Infections Le ver se multipliait en essayant des adresses IP aleacuteatoires pour ensuite infecter des serveurs qui faisaient tourner Microsoft IIS avec une faille de seacutecuriteacute
Objectif Monter une attaque par deacuteni de service (DOS) contre la Maison-Blanche
Lrsquoattaque a eacuteteacute facile agrave repousser car le ver veacuterifiait avant de lancer lrsquoattaque que le serveur agrave lrsquoadresse IP (au lieu du nom de domaine) de la Maison-Blanche eacutecoutait le port 80 (le port des serveurs Web) En changeant lrsquoadresse IP de la Maison-Blanche lrsquoattaque a eacuteteacute repousseacutee
ExempleExempleCabir Est un virusver (deacutemonstration de faisabiliteacute laquoproof of conceptraquo) qui srsquoattaque agrave la teacuteleacutephonie mobile Crsquoest un fichier de 15 ko nommeacute CARIBESIS
Infection Se propage par la teacuteleacutephonie mobile gracircce agrave la technologie Bluetooth et le systegraveme drsquoexploitation Symbian OS
Action Agrave chaque fois que le teacuteleacutephone infecteacute est ouvert le mot laquoCariberaquo srsquoaffiche Il tente de se propager aux peacuteripheacuteriques BlueTooth de la zone du teacuteleacutephone infecteacute Il nrsquoest pas meacutechant nrsquoavait pour but que de deacutemontrer la faisabiliteacute
AntivirusAntivirusLes antivirus sont des programmes qui deacutetectent les virus les vers et les chevaux de Troie sur votre ordinateur Ils les eacuteliminent
Ils visitent les fichiers sur votre disque dans le but de trouver des bouts de programmes reconnus comme dangereux
Ceci est possible eacutetant donneacute une base de donneacutees agrave jour contenant les virus connus sous la forme de signatures de virus Une signature est un motif (laquopatternraquo) qui caracteacuterise un virus donneacute
Un antivirus nrsquoest efficace que si sa base de donneacutees est mise agrave jour constamment Les compagnies drsquoantivirus vont vite pour mettre agrave jour leur base de donneacutees lorsqursquoun nouveau virus est identifieacute
Malheureusement les utilisateurs tardent agrave mettre leur copie agrave jour causant bien des infections
Tromper les antivirusTromper les antivirusDe nouveaux virus utilisent les meacutethodes de la cryptographie pour deacutejouer les antivirus
Des virus sont chiffreacutes pour les rendre non reconnaissables par les antivirus car ils ont toujours un aspect diffeacuterent
Ces virus ont un petit code en clair qui permet de les deacutecoder et de les charger en meacutemoire pour ecirctre exeacutecuteacutes Ce code est ce que les antivirus doivent deacutetecter
Ces virus sont de trois types
Oligomorphique Le virus est chiffreacute agrave chaque reacuteplication
Polymorphique Le virus est chiffreacute et la routine de deacutechiffrement est capable de changer certaines de ses instructions au fil des reacuteplications
Meacutetamorphique Le virus change de forme au fil des reacuteplications
IntrusionsIntrusionsPour qursquoun virus ver ou cheval de Troie soit deacuteleacutetegravere encore faut-il qursquoil srsquoinstalle sur votre machine
Mecircme si un adversaire peut parler agrave votre machine ceci nrsquoimplique pas qursquoil peut installer un logiciel sur celle-ci encore moins srsquoil nrsquoen est pas un utilisateur
Pour ce faire les adversaires peuvent essayer diverses strateacutegies
Faiblesses du systegraveme drsquoexploitation ou du logiciel du serveur Nous allons voir un exemple de ce type drsquoattaque attaques par deacutebordement Une page Web nrsquoest pas un objet passif Elle peut contenir du code (JavaScript Perl etc) malveillant
Tromper lrsquoutilisateur Crsquoest peut-ecirctre plus simple Cas speacutecial du piratage psychologique Cliquer ici pour installer un joli logiciel il faut espeacuterer que lrsquoantivirus deacutetecte ceci avant qursquoil ne soit trop tard
Deacutetecter les intrusionsDeacutetecter les intrusionsUne faccedilon diffeacuterente de deacutetecter les logiciels ou utilisateurs malveillants consiste agrave deacutetecter les comportements malveillants
Un systegraveme peut surveiller les processus pour deacutetecter les comportements malveillants
Une telle approche a lrsquoavantage de ne pas deacutependre drsquoinformation sur les virus et les attaques
Un coupe-feu dynamique est un exemple de cette approche
Il surveille les connexions et tente de deacuteterminer si un client transmet des donneacutees agrave contenu suspect (comme la taille)
Requecirctes Requecirctes malveillantesmalveillantes
dlkjfdsflkjsd dlkjfdsflkjsd fjdskl gfjdlskewqewewewewhdfbfbfbww fjdskl gfjdlskewqewewewewhdfbfbfbww jaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfjaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfwewqewqewqewqewqewqeweekjwweeqqqsxcswdswewqewqewqewqewqewqeweekjwweeqqqsxcswdsdddds dddds ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqqwwq qwwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewqeweekwqwqwefdscxcccj qeweekwqwqwefdscxcccj ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxzcwq zcwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfssaDSADSADSsfghdskjgfhdsgfihoiehjrfssaDSADSADSADDSDSDSSDSDSADDSDSDSSDSDSIl arrive que de longues requecirctes puissent faire planter un systegraveme
mal programmeacute Un adversaire peut donc soumettre des chaicircnes tregraves longues dans le but de rendre le systegraveme inopeacuterant (ou mecircme pire assujetti) comme nous le verrons plus loin
Et agrave peu pregraves nrsquoimporte qui Et agrave peu pregraves nrsquoimporte qui peut proposer un service peut proposer un service
comme celui-ci comme celui-ci
Un coupe-feu peut filtrer les requecirctes anormalement longues pour les ignorer Mecircme les systegravemes avec programmes erroneacutes seront agrave lrsquoabri de ce type drsquoattaque
SELECT SELECT FROM Passwords FROM Passwords WHERE user=rsquoWHERE user=rsquoJugheadJugheadrsquo AND password=rsquorsquo AND password=rsquoxrsquo xrsquo OR lsquo1rsquo=lsquo1OR lsquo1rsquo=lsquo1rsquorsquo
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Requecirctes Requecirctes malveillantesmalveillantes
HTTPSHTTPS
Password Password xrsquo OR xrsquo OR lsquo1rsquo=rsquo1lsquo1rsquo=rsquo1
Un coupe-feu dynamique peut filtrer des requecirctes bizarres comme xrsquo OR lsquo1rsquo=rsquo1xrsquo OR lsquo1rsquo=rsquo1
Ceci est beaucoup plus difficile agrave Ceci est beaucoup plus difficile agrave reacutealiser par un coupe-feu que reacutealiser par un coupe-feu que
lrsquoexemple preacuteceacutedentlrsquoexemple preacuteceacutedent
Approche Approche comportementalecomportementaleUne autre approche pour la deacutetection drsquointrusions consiste agrave
observer certains aspects du comportement des utilisateurs et programmes
activiteacutes de connexion et de session
activiteacutes relieacutees agrave lrsquoexeacutecution de programme et drsquoaccegraves aux fichiers
Il y a deux approches pour la deacutetection de comportements suspects
Par regravegles (rule-based) Un ensemble de regravegles deacutecrivant les comportements normaux est eacutetabli Les comportements anormaux (trop loin des normaux) sont rejeteacutes
Statistique Des statistiques sur les utilisateurs normaux sont creacuteeacutees Le comportement de lrsquoutilisateurprogramme observeacute est compareacute aux statistiques Un comportement montrant un trop grand eacutecart avec les statistiques est rejeteacute
Problegravemes avec les Problegravemes avec les systegravemes de deacutetection systegravemes de deacutetection
drsquointrusion (IDS)drsquointrusion (IDS)Le problegraveme majeur avec lrsquoapproche est le mecircme qursquoavec la biomeacutetrie Le systegraveme qui surveille doit ecirctre assez toleacuterant pour autoriser les comportements normaux mais suffisamment restrictif pour attraper les acteurs malveillants
Ce problegraveme nrsquoest pas tregraves bien compris et les solutions proposeacutees ne sont pas tout agrave fait satisfaisantes
La deacutetection drsquointrusion est bien inutile si le systegraveme ne reacuteagit pas de la bonne faccedilon lorsqursquoune intrusion est deacutetecteacutee La partie du systegraveme qui alerte lrsquoadministrateur qui interdit lrsquoaccegraves qui effectue quelque autre tacircche pour eacuteliminer la menace est tout aussi importante que celle qui deacutetecte
Le pot de mielLe pot de miel
Le pot de miel (laquohoney potraquo) est un truc pratique pour la deacutetection drsquointrusions
Une ressource bidon qui semble inteacuteressante pour un adversaire est creacuteeacutee
Puisque celle-ci est bidon on peut supposer que si quelqursquoun y accegravede crsquoest qursquoil srsquoadonne agrave une activiteacute malveillante
En consultant les traces il peut ecirctre possible de retrouver lrsquoutilisateur malveillant
Ceci peut se faire agrave lrsquoinsu de lrsquointrus
ExempleExemple
Un hocircpital ameacutericain soupccedilonnait que quelqursquoun consultait les dossiers de patients sans en avoir lrsquoautorisation
Ils ont creacuteeacute des fichiers pour des patients qui nrsquoexistent pas
Les accegraves agrave ces fichiers ont alors eacuteteacute retraceacutes jusqursquoagrave lrsquoutilisateur malveillant
Les attaques de lrsquointeacuterieurLes attaques de lrsquointeacuterieurPresque tout ce que nous avons vu a pour but la protection contre les attaques venues de lrsquoexteacuterieur
Les attaques peuvent tregraves bien eacutemaner de lrsquointeacuterieur et peuvent causer des problegravemes seacuterieux
Le premiegravere chose agrave comprendre est qursquoil nrsquoest pas possible de se preacutemunir contre ces attaques si les utilisateurs ont tous les droits sur le systegraveme cible
Il est donc neacutecessaire qursquoune partie du systegraveme soit garantie de fonctionner selon ses speacutecifications mecircme sous attaque
Sans cette hypothegravese le systegraveme est sous le controcircle complet de lrsquoadversaire
Base informatique Base informatique seacutecuriseacuteeseacutecuriseacutee
laquotrusted computing baseraquo (TCB)laquotrusted computing baseraquo (TCB)
Une base seacutecuriseacutee peut ecirctre eacutetablie en utilisant de la seacutecuriteacute mateacuterielle logicielle par mot de passe par exemple
Le rocircle de ce systegraveme de base est de controcircler lrsquoaccegraves aux ressources et le flux drsquoinformation sur celui-ci
Pour bien comprendre comment ces protections fonctionnent nous devons mettre de lrsquoordre dans nos ideacutees Nous devons voir agrave quoi ressemble une politique de seacutecuriteacute dans ce sceacutenario
Crsquoest notre prochain sujet
Deux filtres valent mieux Deux filtres valent mieux qursquounqursquoun
ProxyProxyIl y a drsquoautres services sur lrsquoInternet qui utilisent le protocole UDP flux de donneacutees videacuteo jeux videacuteo
De plus excepteacute pour les paquets SYN=1 il est possible de transmettre des paquets TCP aux ordinateurs du reacuteseau local
Le proxy peut rendre les machines du reacuteseau local invisibles pas le filtrage simple de paquets
Approche proxyApproche proxy
Coupe-feu Coupe-feu dynamiquesdynamiques
Les proxys ne sont pas tregraves flexibles Les coupe-feu dynamiques permettent drsquoutiliser les logiciels drsquoune faccedilon plus transparente
Il srsquoagit drsquoun filtre avanceacute qui permet de veacuterifier que les paquets appartiennent agrave une connexion deacutejagrave eacutetablie Crsquoest seulement lorsque crsquoest le cas que le paquet peut passer
Parce qursquoil est conscient drsquoune connexion il peut appliquer NAT etou PAT
NAT Dynamique (laquoDynamic Network Address Translationraquo) Le coupe-feu traduit les adresses du reacuteseau Toutes les machines du reacuteseau possegravedent vu de lrsquoexteacuterieur la mecircme adresse IP
PAT (laquoPort Address Translationraquo) Le coupe-feu traduit les numeacuteros de port par lesquels les paquets arrivent sur les hocirctes locaux
Ces coupe-feu sont appeleacutes coupe-feu avec mascarade
NAT a eacuteteacute mis au point agrave NAT a eacuteteacute mis au point agrave lrsquoorigine pour reacutepondre agrave la lrsquoorigine pour reacutepondre agrave la
peacutenurie drsquoadresses IP avec le peacutenurie drsquoadresses IP avec le protocole IPv4protocole IPv4
NAT a eacuteteacute mis au point agrave NAT a eacuteteacute mis au point agrave lrsquoorigine pour reacutepondre agrave la lrsquoorigine pour reacutepondre agrave la
peacutenurie drsquoadresses IP avec le peacutenurie drsquoadresses IP avec le protocole IPv4protocole IPv4
Coupe-feu agrave Coupe-feu agrave mascarademascarade
Filtrage dynamique eacutetenduFiltrage dynamique eacutetenduLe filtrage des coupe-feu dynamiques nrsquoest pas limiteacute aux protocoles TCPIP
Pour des applications usuelles le filtrage peut srsquoappliquer au protocole
Le coupe-feu peut ainsi deacutetecter des comportements inhabituels
Peut aussi filtrer certaines parties des donneacutees transmises
Pour le protocole HTTP le filtre peut supprimer les applications Java
Pour le protocole SMTP le filtre peut supprimer les piegraveces jointes drsquoun certain type
Conclusion sur les coupe-Conclusion sur les coupe-feufeu
Les coupe-feu permettent de filtrer le trafic entre le reacuteseau local et lrsquoInternet en nrsquoadministrant qursquoune seule machine
Les coupe-feu ne sont cependant pas une solution magique pour reacutesoudre les problegravemes causeacutes par les attaques exteacuterieures agrave un reacuteseau local
Les coupe-feu pour un seul ordinateur personnel peuvent offrir une solution sans trop drsquoentretien
Les coupe-feu neacutecessitent des mises agrave jour freacutequentes lorsque le reacuteseau local est de bonne taille Lorsque le reacuteseau local change la configuration du coupe-feu doit aussi changer
Penser que lrsquoinstallation drsquoun coupe-feu rend votre reacuteseau sucircr est un peu de la penseacutee magique (neacutecessaire mais pas suffisant)
Logiciels malveillantsLogiciels malveillantsUn adversaire peut une fois passeacute le coupe-feu et les autres deacutefenses vouloir installer un programme malveillant sur la machine locale Ceux-ci sont de trois types
Chevaux de Troie Programme qui semble tout agrave fait utile mais qui cache une fonction malveillante Par exemple donne accegraves agrave des donneacutees priveacutees donne des droits drsquoaccegraves non autoriseacutes ou deacutetruit des donneacutees
Virus Programme qui infecte un autre programme sur votre ordinateur Agrave partir du programme infecteacute le virus se propage vers drsquoautres programmes Apregraves un certain temps ou eacuteveacutenement les virus peuvent entreprendre certaines actions Celles-ci peuvent ecirctre lrsquoeacutelimination de fichiers la deacuteteacuterioration de fonctions du systegraveme drsquoexploitation etc
Vers Programmes qui infectent un ordinateur sans avoir agrave ecirctre heacutebergeacutes par drsquoautres programmes Ils sont des programmes indeacutependants Ils se multiplient en exploitant diffeacuterentes ressources Les objectifs de ces programmes peuvent ecirctre lrsquoespionnage lrsquoouverture de portes deacuterobeacutees eacutemettre des requecirctes vers un site Internet jusqursquoagrave saturation
ExempleExempleI Love You Un ver lanceacute en 2000 et qui a atteint 31 millions de machines en 4 jours
Infection Le ver eacutetait dissimuleacute en piegravece jointe drsquoun courriel Cette piegravece jointe eacutetait preacutesenteacutee comme Love-Letter-for-youtxtvbs Lrsquoextension vbs indique que le fichier est un script Visual Basic Comme lrsquoextension nrsquoapparaicirct pas sur Windows les utilisateurs voyaient la piegravece jointe comme Love-Letter-for-youtxt Objectif Le script lisait la liste des contacts de lrsquoutilisateur pour envoyer ce mecircme message agrave ceux-ci La plate-forme Windows eacutetait viseacutee Des fichiers eacutetaient deacutetruits et remplaceacutes par ce script Il changeait la page drsquoaccueil drsquoInternet Explorer pour teacuteleacutecharger un cheval de Troie
ExempleExempleCode Red Un ver qui a infecteacute 359 000 ordinateurs en moins de 14 heures le 19 juillet 2001
Infections Le ver se multipliait en essayant des adresses IP aleacuteatoires pour ensuite infecter des serveurs qui faisaient tourner Microsoft IIS avec une faille de seacutecuriteacute
Objectif Monter une attaque par deacuteni de service (DOS) contre la Maison-Blanche
Lrsquoattaque a eacuteteacute facile agrave repousser car le ver veacuterifiait avant de lancer lrsquoattaque que le serveur agrave lrsquoadresse IP (au lieu du nom de domaine) de la Maison-Blanche eacutecoutait le port 80 (le port des serveurs Web) En changeant lrsquoadresse IP de la Maison-Blanche lrsquoattaque a eacuteteacute repousseacutee
ExempleExempleCabir Est un virusver (deacutemonstration de faisabiliteacute laquoproof of conceptraquo) qui srsquoattaque agrave la teacuteleacutephonie mobile Crsquoest un fichier de 15 ko nommeacute CARIBESIS
Infection Se propage par la teacuteleacutephonie mobile gracircce agrave la technologie Bluetooth et le systegraveme drsquoexploitation Symbian OS
Action Agrave chaque fois que le teacuteleacutephone infecteacute est ouvert le mot laquoCariberaquo srsquoaffiche Il tente de se propager aux peacuteripheacuteriques BlueTooth de la zone du teacuteleacutephone infecteacute Il nrsquoest pas meacutechant nrsquoavait pour but que de deacutemontrer la faisabiliteacute
AntivirusAntivirusLes antivirus sont des programmes qui deacutetectent les virus les vers et les chevaux de Troie sur votre ordinateur Ils les eacuteliminent
Ils visitent les fichiers sur votre disque dans le but de trouver des bouts de programmes reconnus comme dangereux
Ceci est possible eacutetant donneacute une base de donneacutees agrave jour contenant les virus connus sous la forme de signatures de virus Une signature est un motif (laquopatternraquo) qui caracteacuterise un virus donneacute
Un antivirus nrsquoest efficace que si sa base de donneacutees est mise agrave jour constamment Les compagnies drsquoantivirus vont vite pour mettre agrave jour leur base de donneacutees lorsqursquoun nouveau virus est identifieacute
Malheureusement les utilisateurs tardent agrave mettre leur copie agrave jour causant bien des infections
Tromper les antivirusTromper les antivirusDe nouveaux virus utilisent les meacutethodes de la cryptographie pour deacutejouer les antivirus
Des virus sont chiffreacutes pour les rendre non reconnaissables par les antivirus car ils ont toujours un aspect diffeacuterent
Ces virus ont un petit code en clair qui permet de les deacutecoder et de les charger en meacutemoire pour ecirctre exeacutecuteacutes Ce code est ce que les antivirus doivent deacutetecter
Ces virus sont de trois types
Oligomorphique Le virus est chiffreacute agrave chaque reacuteplication
Polymorphique Le virus est chiffreacute et la routine de deacutechiffrement est capable de changer certaines de ses instructions au fil des reacuteplications
Meacutetamorphique Le virus change de forme au fil des reacuteplications
IntrusionsIntrusionsPour qursquoun virus ver ou cheval de Troie soit deacuteleacutetegravere encore faut-il qursquoil srsquoinstalle sur votre machine
Mecircme si un adversaire peut parler agrave votre machine ceci nrsquoimplique pas qursquoil peut installer un logiciel sur celle-ci encore moins srsquoil nrsquoen est pas un utilisateur
Pour ce faire les adversaires peuvent essayer diverses strateacutegies
Faiblesses du systegraveme drsquoexploitation ou du logiciel du serveur Nous allons voir un exemple de ce type drsquoattaque attaques par deacutebordement Une page Web nrsquoest pas un objet passif Elle peut contenir du code (JavaScript Perl etc) malveillant
Tromper lrsquoutilisateur Crsquoest peut-ecirctre plus simple Cas speacutecial du piratage psychologique Cliquer ici pour installer un joli logiciel il faut espeacuterer que lrsquoantivirus deacutetecte ceci avant qursquoil ne soit trop tard
Deacutetecter les intrusionsDeacutetecter les intrusionsUne faccedilon diffeacuterente de deacutetecter les logiciels ou utilisateurs malveillants consiste agrave deacutetecter les comportements malveillants
Un systegraveme peut surveiller les processus pour deacutetecter les comportements malveillants
Une telle approche a lrsquoavantage de ne pas deacutependre drsquoinformation sur les virus et les attaques
Un coupe-feu dynamique est un exemple de cette approche
Il surveille les connexions et tente de deacuteterminer si un client transmet des donneacutees agrave contenu suspect (comme la taille)
Requecirctes Requecirctes malveillantesmalveillantes
dlkjfdsflkjsd dlkjfdsflkjsd fjdskl gfjdlskewqewewewewhdfbfbfbww fjdskl gfjdlskewqewewewewhdfbfbfbww jaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfjaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfwewqewqewqewqewqewqeweekjwweeqqqsxcswdswewqewqewqewqewqewqeweekjwweeqqqsxcswdsdddds dddds ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqqwwq qwwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewqeweekwqwqwefdscxcccj qeweekwqwqwefdscxcccj ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxzcwq zcwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfssaDSADSADSsfghdskjgfhdsgfihoiehjrfssaDSADSADSADDSDSDSSDSDSADDSDSDSSDSDSIl arrive que de longues requecirctes puissent faire planter un systegraveme
mal programmeacute Un adversaire peut donc soumettre des chaicircnes tregraves longues dans le but de rendre le systegraveme inopeacuterant (ou mecircme pire assujetti) comme nous le verrons plus loin
Et agrave peu pregraves nrsquoimporte qui Et agrave peu pregraves nrsquoimporte qui peut proposer un service peut proposer un service
comme celui-ci comme celui-ci
Un coupe-feu peut filtrer les requecirctes anormalement longues pour les ignorer Mecircme les systegravemes avec programmes erroneacutes seront agrave lrsquoabri de ce type drsquoattaque
SELECT SELECT FROM Passwords FROM Passwords WHERE user=rsquoWHERE user=rsquoJugheadJugheadrsquo AND password=rsquorsquo AND password=rsquoxrsquo xrsquo OR lsquo1rsquo=lsquo1OR lsquo1rsquo=lsquo1rsquorsquo
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Requecirctes Requecirctes malveillantesmalveillantes
HTTPSHTTPS
Password Password xrsquo OR xrsquo OR lsquo1rsquo=rsquo1lsquo1rsquo=rsquo1
Un coupe-feu dynamique peut filtrer des requecirctes bizarres comme xrsquo OR lsquo1rsquo=rsquo1xrsquo OR lsquo1rsquo=rsquo1
Ceci est beaucoup plus difficile agrave Ceci est beaucoup plus difficile agrave reacutealiser par un coupe-feu que reacutealiser par un coupe-feu que
lrsquoexemple preacuteceacutedentlrsquoexemple preacuteceacutedent
Approche Approche comportementalecomportementaleUne autre approche pour la deacutetection drsquointrusions consiste agrave
observer certains aspects du comportement des utilisateurs et programmes
activiteacutes de connexion et de session
activiteacutes relieacutees agrave lrsquoexeacutecution de programme et drsquoaccegraves aux fichiers
Il y a deux approches pour la deacutetection de comportements suspects
Par regravegles (rule-based) Un ensemble de regravegles deacutecrivant les comportements normaux est eacutetabli Les comportements anormaux (trop loin des normaux) sont rejeteacutes
Statistique Des statistiques sur les utilisateurs normaux sont creacuteeacutees Le comportement de lrsquoutilisateurprogramme observeacute est compareacute aux statistiques Un comportement montrant un trop grand eacutecart avec les statistiques est rejeteacute
Problegravemes avec les Problegravemes avec les systegravemes de deacutetection systegravemes de deacutetection
drsquointrusion (IDS)drsquointrusion (IDS)Le problegraveme majeur avec lrsquoapproche est le mecircme qursquoavec la biomeacutetrie Le systegraveme qui surveille doit ecirctre assez toleacuterant pour autoriser les comportements normaux mais suffisamment restrictif pour attraper les acteurs malveillants
Ce problegraveme nrsquoest pas tregraves bien compris et les solutions proposeacutees ne sont pas tout agrave fait satisfaisantes
La deacutetection drsquointrusion est bien inutile si le systegraveme ne reacuteagit pas de la bonne faccedilon lorsqursquoune intrusion est deacutetecteacutee La partie du systegraveme qui alerte lrsquoadministrateur qui interdit lrsquoaccegraves qui effectue quelque autre tacircche pour eacuteliminer la menace est tout aussi importante que celle qui deacutetecte
Le pot de mielLe pot de miel
Le pot de miel (laquohoney potraquo) est un truc pratique pour la deacutetection drsquointrusions
Une ressource bidon qui semble inteacuteressante pour un adversaire est creacuteeacutee
Puisque celle-ci est bidon on peut supposer que si quelqursquoun y accegravede crsquoest qursquoil srsquoadonne agrave une activiteacute malveillante
En consultant les traces il peut ecirctre possible de retrouver lrsquoutilisateur malveillant
Ceci peut se faire agrave lrsquoinsu de lrsquointrus
ExempleExemple
Un hocircpital ameacutericain soupccedilonnait que quelqursquoun consultait les dossiers de patients sans en avoir lrsquoautorisation
Ils ont creacuteeacute des fichiers pour des patients qui nrsquoexistent pas
Les accegraves agrave ces fichiers ont alors eacuteteacute retraceacutes jusqursquoagrave lrsquoutilisateur malveillant
Les attaques de lrsquointeacuterieurLes attaques de lrsquointeacuterieurPresque tout ce que nous avons vu a pour but la protection contre les attaques venues de lrsquoexteacuterieur
Les attaques peuvent tregraves bien eacutemaner de lrsquointeacuterieur et peuvent causer des problegravemes seacuterieux
Le premiegravere chose agrave comprendre est qursquoil nrsquoest pas possible de se preacutemunir contre ces attaques si les utilisateurs ont tous les droits sur le systegraveme cible
Il est donc neacutecessaire qursquoune partie du systegraveme soit garantie de fonctionner selon ses speacutecifications mecircme sous attaque
Sans cette hypothegravese le systegraveme est sous le controcircle complet de lrsquoadversaire
Base informatique Base informatique seacutecuriseacuteeseacutecuriseacutee
laquotrusted computing baseraquo (TCB)laquotrusted computing baseraquo (TCB)
Une base seacutecuriseacutee peut ecirctre eacutetablie en utilisant de la seacutecuriteacute mateacuterielle logicielle par mot de passe par exemple
Le rocircle de ce systegraveme de base est de controcircler lrsquoaccegraves aux ressources et le flux drsquoinformation sur celui-ci
Pour bien comprendre comment ces protections fonctionnent nous devons mettre de lrsquoordre dans nos ideacutees Nous devons voir agrave quoi ressemble une politique de seacutecuriteacute dans ce sceacutenario
Crsquoest notre prochain sujet
ProxyProxyIl y a drsquoautres services sur lrsquoInternet qui utilisent le protocole UDP flux de donneacutees videacuteo jeux videacuteo
De plus excepteacute pour les paquets SYN=1 il est possible de transmettre des paquets TCP aux ordinateurs du reacuteseau local
Le proxy peut rendre les machines du reacuteseau local invisibles pas le filtrage simple de paquets
Approche proxyApproche proxy
Coupe-feu Coupe-feu dynamiquesdynamiques
Les proxys ne sont pas tregraves flexibles Les coupe-feu dynamiques permettent drsquoutiliser les logiciels drsquoune faccedilon plus transparente
Il srsquoagit drsquoun filtre avanceacute qui permet de veacuterifier que les paquets appartiennent agrave une connexion deacutejagrave eacutetablie Crsquoest seulement lorsque crsquoest le cas que le paquet peut passer
Parce qursquoil est conscient drsquoune connexion il peut appliquer NAT etou PAT
NAT Dynamique (laquoDynamic Network Address Translationraquo) Le coupe-feu traduit les adresses du reacuteseau Toutes les machines du reacuteseau possegravedent vu de lrsquoexteacuterieur la mecircme adresse IP
PAT (laquoPort Address Translationraquo) Le coupe-feu traduit les numeacuteros de port par lesquels les paquets arrivent sur les hocirctes locaux
Ces coupe-feu sont appeleacutes coupe-feu avec mascarade
NAT a eacuteteacute mis au point agrave NAT a eacuteteacute mis au point agrave lrsquoorigine pour reacutepondre agrave la lrsquoorigine pour reacutepondre agrave la
peacutenurie drsquoadresses IP avec le peacutenurie drsquoadresses IP avec le protocole IPv4protocole IPv4
NAT a eacuteteacute mis au point agrave NAT a eacuteteacute mis au point agrave lrsquoorigine pour reacutepondre agrave la lrsquoorigine pour reacutepondre agrave la
peacutenurie drsquoadresses IP avec le peacutenurie drsquoadresses IP avec le protocole IPv4protocole IPv4
Coupe-feu agrave Coupe-feu agrave mascarademascarade
Filtrage dynamique eacutetenduFiltrage dynamique eacutetenduLe filtrage des coupe-feu dynamiques nrsquoest pas limiteacute aux protocoles TCPIP
Pour des applications usuelles le filtrage peut srsquoappliquer au protocole
Le coupe-feu peut ainsi deacutetecter des comportements inhabituels
Peut aussi filtrer certaines parties des donneacutees transmises
Pour le protocole HTTP le filtre peut supprimer les applications Java
Pour le protocole SMTP le filtre peut supprimer les piegraveces jointes drsquoun certain type
Conclusion sur les coupe-Conclusion sur les coupe-feufeu
Les coupe-feu permettent de filtrer le trafic entre le reacuteseau local et lrsquoInternet en nrsquoadministrant qursquoune seule machine
Les coupe-feu ne sont cependant pas une solution magique pour reacutesoudre les problegravemes causeacutes par les attaques exteacuterieures agrave un reacuteseau local
Les coupe-feu pour un seul ordinateur personnel peuvent offrir une solution sans trop drsquoentretien
Les coupe-feu neacutecessitent des mises agrave jour freacutequentes lorsque le reacuteseau local est de bonne taille Lorsque le reacuteseau local change la configuration du coupe-feu doit aussi changer
Penser que lrsquoinstallation drsquoun coupe-feu rend votre reacuteseau sucircr est un peu de la penseacutee magique (neacutecessaire mais pas suffisant)
Logiciels malveillantsLogiciels malveillantsUn adversaire peut une fois passeacute le coupe-feu et les autres deacutefenses vouloir installer un programme malveillant sur la machine locale Ceux-ci sont de trois types
Chevaux de Troie Programme qui semble tout agrave fait utile mais qui cache une fonction malveillante Par exemple donne accegraves agrave des donneacutees priveacutees donne des droits drsquoaccegraves non autoriseacutes ou deacutetruit des donneacutees
Virus Programme qui infecte un autre programme sur votre ordinateur Agrave partir du programme infecteacute le virus se propage vers drsquoautres programmes Apregraves un certain temps ou eacuteveacutenement les virus peuvent entreprendre certaines actions Celles-ci peuvent ecirctre lrsquoeacutelimination de fichiers la deacuteteacuterioration de fonctions du systegraveme drsquoexploitation etc
Vers Programmes qui infectent un ordinateur sans avoir agrave ecirctre heacutebergeacutes par drsquoautres programmes Ils sont des programmes indeacutependants Ils se multiplient en exploitant diffeacuterentes ressources Les objectifs de ces programmes peuvent ecirctre lrsquoespionnage lrsquoouverture de portes deacuterobeacutees eacutemettre des requecirctes vers un site Internet jusqursquoagrave saturation
ExempleExempleI Love You Un ver lanceacute en 2000 et qui a atteint 31 millions de machines en 4 jours
Infection Le ver eacutetait dissimuleacute en piegravece jointe drsquoun courriel Cette piegravece jointe eacutetait preacutesenteacutee comme Love-Letter-for-youtxtvbs Lrsquoextension vbs indique que le fichier est un script Visual Basic Comme lrsquoextension nrsquoapparaicirct pas sur Windows les utilisateurs voyaient la piegravece jointe comme Love-Letter-for-youtxt Objectif Le script lisait la liste des contacts de lrsquoutilisateur pour envoyer ce mecircme message agrave ceux-ci La plate-forme Windows eacutetait viseacutee Des fichiers eacutetaient deacutetruits et remplaceacutes par ce script Il changeait la page drsquoaccueil drsquoInternet Explorer pour teacuteleacutecharger un cheval de Troie
ExempleExempleCode Red Un ver qui a infecteacute 359 000 ordinateurs en moins de 14 heures le 19 juillet 2001
Infections Le ver se multipliait en essayant des adresses IP aleacuteatoires pour ensuite infecter des serveurs qui faisaient tourner Microsoft IIS avec une faille de seacutecuriteacute
Objectif Monter une attaque par deacuteni de service (DOS) contre la Maison-Blanche
Lrsquoattaque a eacuteteacute facile agrave repousser car le ver veacuterifiait avant de lancer lrsquoattaque que le serveur agrave lrsquoadresse IP (au lieu du nom de domaine) de la Maison-Blanche eacutecoutait le port 80 (le port des serveurs Web) En changeant lrsquoadresse IP de la Maison-Blanche lrsquoattaque a eacuteteacute repousseacutee
ExempleExempleCabir Est un virusver (deacutemonstration de faisabiliteacute laquoproof of conceptraquo) qui srsquoattaque agrave la teacuteleacutephonie mobile Crsquoest un fichier de 15 ko nommeacute CARIBESIS
Infection Se propage par la teacuteleacutephonie mobile gracircce agrave la technologie Bluetooth et le systegraveme drsquoexploitation Symbian OS
Action Agrave chaque fois que le teacuteleacutephone infecteacute est ouvert le mot laquoCariberaquo srsquoaffiche Il tente de se propager aux peacuteripheacuteriques BlueTooth de la zone du teacuteleacutephone infecteacute Il nrsquoest pas meacutechant nrsquoavait pour but que de deacutemontrer la faisabiliteacute
AntivirusAntivirusLes antivirus sont des programmes qui deacutetectent les virus les vers et les chevaux de Troie sur votre ordinateur Ils les eacuteliminent
Ils visitent les fichiers sur votre disque dans le but de trouver des bouts de programmes reconnus comme dangereux
Ceci est possible eacutetant donneacute une base de donneacutees agrave jour contenant les virus connus sous la forme de signatures de virus Une signature est un motif (laquopatternraquo) qui caracteacuterise un virus donneacute
Un antivirus nrsquoest efficace que si sa base de donneacutees est mise agrave jour constamment Les compagnies drsquoantivirus vont vite pour mettre agrave jour leur base de donneacutees lorsqursquoun nouveau virus est identifieacute
Malheureusement les utilisateurs tardent agrave mettre leur copie agrave jour causant bien des infections
Tromper les antivirusTromper les antivirusDe nouveaux virus utilisent les meacutethodes de la cryptographie pour deacutejouer les antivirus
Des virus sont chiffreacutes pour les rendre non reconnaissables par les antivirus car ils ont toujours un aspect diffeacuterent
Ces virus ont un petit code en clair qui permet de les deacutecoder et de les charger en meacutemoire pour ecirctre exeacutecuteacutes Ce code est ce que les antivirus doivent deacutetecter
Ces virus sont de trois types
Oligomorphique Le virus est chiffreacute agrave chaque reacuteplication
Polymorphique Le virus est chiffreacute et la routine de deacutechiffrement est capable de changer certaines de ses instructions au fil des reacuteplications
Meacutetamorphique Le virus change de forme au fil des reacuteplications
IntrusionsIntrusionsPour qursquoun virus ver ou cheval de Troie soit deacuteleacutetegravere encore faut-il qursquoil srsquoinstalle sur votre machine
Mecircme si un adversaire peut parler agrave votre machine ceci nrsquoimplique pas qursquoil peut installer un logiciel sur celle-ci encore moins srsquoil nrsquoen est pas un utilisateur
Pour ce faire les adversaires peuvent essayer diverses strateacutegies
Faiblesses du systegraveme drsquoexploitation ou du logiciel du serveur Nous allons voir un exemple de ce type drsquoattaque attaques par deacutebordement Une page Web nrsquoest pas un objet passif Elle peut contenir du code (JavaScript Perl etc) malveillant
Tromper lrsquoutilisateur Crsquoest peut-ecirctre plus simple Cas speacutecial du piratage psychologique Cliquer ici pour installer un joli logiciel il faut espeacuterer que lrsquoantivirus deacutetecte ceci avant qursquoil ne soit trop tard
Deacutetecter les intrusionsDeacutetecter les intrusionsUne faccedilon diffeacuterente de deacutetecter les logiciels ou utilisateurs malveillants consiste agrave deacutetecter les comportements malveillants
Un systegraveme peut surveiller les processus pour deacutetecter les comportements malveillants
Une telle approche a lrsquoavantage de ne pas deacutependre drsquoinformation sur les virus et les attaques
Un coupe-feu dynamique est un exemple de cette approche
Il surveille les connexions et tente de deacuteterminer si un client transmet des donneacutees agrave contenu suspect (comme la taille)
Requecirctes Requecirctes malveillantesmalveillantes
dlkjfdsflkjsd dlkjfdsflkjsd fjdskl gfjdlskewqewewewewhdfbfbfbww fjdskl gfjdlskewqewewewewhdfbfbfbww jaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfjaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfwewqewqewqewqewqewqeweekjwweeqqqsxcswdswewqewqewqewqewqewqeweekjwweeqqqsxcswdsdddds dddds ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqqwwq qwwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewqeweekwqwqwefdscxcccj qeweekwqwqwefdscxcccj ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxzcwq zcwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfssaDSADSADSsfghdskjgfhdsgfihoiehjrfssaDSADSADSADDSDSDSSDSDSADDSDSDSSDSDSIl arrive que de longues requecirctes puissent faire planter un systegraveme
mal programmeacute Un adversaire peut donc soumettre des chaicircnes tregraves longues dans le but de rendre le systegraveme inopeacuterant (ou mecircme pire assujetti) comme nous le verrons plus loin
Et agrave peu pregraves nrsquoimporte qui Et agrave peu pregraves nrsquoimporte qui peut proposer un service peut proposer un service
comme celui-ci comme celui-ci
Un coupe-feu peut filtrer les requecirctes anormalement longues pour les ignorer Mecircme les systegravemes avec programmes erroneacutes seront agrave lrsquoabri de ce type drsquoattaque
SELECT SELECT FROM Passwords FROM Passwords WHERE user=rsquoWHERE user=rsquoJugheadJugheadrsquo AND password=rsquorsquo AND password=rsquoxrsquo xrsquo OR lsquo1rsquo=lsquo1OR lsquo1rsquo=lsquo1rsquorsquo
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Requecirctes Requecirctes malveillantesmalveillantes
HTTPSHTTPS
Password Password xrsquo OR xrsquo OR lsquo1rsquo=rsquo1lsquo1rsquo=rsquo1
Un coupe-feu dynamique peut filtrer des requecirctes bizarres comme xrsquo OR lsquo1rsquo=rsquo1xrsquo OR lsquo1rsquo=rsquo1
Ceci est beaucoup plus difficile agrave Ceci est beaucoup plus difficile agrave reacutealiser par un coupe-feu que reacutealiser par un coupe-feu que
lrsquoexemple preacuteceacutedentlrsquoexemple preacuteceacutedent
Approche Approche comportementalecomportementaleUne autre approche pour la deacutetection drsquointrusions consiste agrave
observer certains aspects du comportement des utilisateurs et programmes
activiteacutes de connexion et de session
activiteacutes relieacutees agrave lrsquoexeacutecution de programme et drsquoaccegraves aux fichiers
Il y a deux approches pour la deacutetection de comportements suspects
Par regravegles (rule-based) Un ensemble de regravegles deacutecrivant les comportements normaux est eacutetabli Les comportements anormaux (trop loin des normaux) sont rejeteacutes
Statistique Des statistiques sur les utilisateurs normaux sont creacuteeacutees Le comportement de lrsquoutilisateurprogramme observeacute est compareacute aux statistiques Un comportement montrant un trop grand eacutecart avec les statistiques est rejeteacute
Problegravemes avec les Problegravemes avec les systegravemes de deacutetection systegravemes de deacutetection
drsquointrusion (IDS)drsquointrusion (IDS)Le problegraveme majeur avec lrsquoapproche est le mecircme qursquoavec la biomeacutetrie Le systegraveme qui surveille doit ecirctre assez toleacuterant pour autoriser les comportements normaux mais suffisamment restrictif pour attraper les acteurs malveillants
Ce problegraveme nrsquoest pas tregraves bien compris et les solutions proposeacutees ne sont pas tout agrave fait satisfaisantes
La deacutetection drsquointrusion est bien inutile si le systegraveme ne reacuteagit pas de la bonne faccedilon lorsqursquoune intrusion est deacutetecteacutee La partie du systegraveme qui alerte lrsquoadministrateur qui interdit lrsquoaccegraves qui effectue quelque autre tacircche pour eacuteliminer la menace est tout aussi importante que celle qui deacutetecte
Le pot de mielLe pot de miel
Le pot de miel (laquohoney potraquo) est un truc pratique pour la deacutetection drsquointrusions
Une ressource bidon qui semble inteacuteressante pour un adversaire est creacuteeacutee
Puisque celle-ci est bidon on peut supposer que si quelqursquoun y accegravede crsquoest qursquoil srsquoadonne agrave une activiteacute malveillante
En consultant les traces il peut ecirctre possible de retrouver lrsquoutilisateur malveillant
Ceci peut se faire agrave lrsquoinsu de lrsquointrus
ExempleExemple
Un hocircpital ameacutericain soupccedilonnait que quelqursquoun consultait les dossiers de patients sans en avoir lrsquoautorisation
Ils ont creacuteeacute des fichiers pour des patients qui nrsquoexistent pas
Les accegraves agrave ces fichiers ont alors eacuteteacute retraceacutes jusqursquoagrave lrsquoutilisateur malveillant
Les attaques de lrsquointeacuterieurLes attaques de lrsquointeacuterieurPresque tout ce que nous avons vu a pour but la protection contre les attaques venues de lrsquoexteacuterieur
Les attaques peuvent tregraves bien eacutemaner de lrsquointeacuterieur et peuvent causer des problegravemes seacuterieux
Le premiegravere chose agrave comprendre est qursquoil nrsquoest pas possible de se preacutemunir contre ces attaques si les utilisateurs ont tous les droits sur le systegraveme cible
Il est donc neacutecessaire qursquoune partie du systegraveme soit garantie de fonctionner selon ses speacutecifications mecircme sous attaque
Sans cette hypothegravese le systegraveme est sous le controcircle complet de lrsquoadversaire
Base informatique Base informatique seacutecuriseacuteeseacutecuriseacutee
laquotrusted computing baseraquo (TCB)laquotrusted computing baseraquo (TCB)
Une base seacutecuriseacutee peut ecirctre eacutetablie en utilisant de la seacutecuriteacute mateacuterielle logicielle par mot de passe par exemple
Le rocircle de ce systegraveme de base est de controcircler lrsquoaccegraves aux ressources et le flux drsquoinformation sur celui-ci
Pour bien comprendre comment ces protections fonctionnent nous devons mettre de lrsquoordre dans nos ideacutees Nous devons voir agrave quoi ressemble une politique de seacutecuriteacute dans ce sceacutenario
Crsquoest notre prochain sujet
Approche proxyApproche proxy
Coupe-feu Coupe-feu dynamiquesdynamiques
Les proxys ne sont pas tregraves flexibles Les coupe-feu dynamiques permettent drsquoutiliser les logiciels drsquoune faccedilon plus transparente
Il srsquoagit drsquoun filtre avanceacute qui permet de veacuterifier que les paquets appartiennent agrave une connexion deacutejagrave eacutetablie Crsquoest seulement lorsque crsquoest le cas que le paquet peut passer
Parce qursquoil est conscient drsquoune connexion il peut appliquer NAT etou PAT
NAT Dynamique (laquoDynamic Network Address Translationraquo) Le coupe-feu traduit les adresses du reacuteseau Toutes les machines du reacuteseau possegravedent vu de lrsquoexteacuterieur la mecircme adresse IP
PAT (laquoPort Address Translationraquo) Le coupe-feu traduit les numeacuteros de port par lesquels les paquets arrivent sur les hocirctes locaux
Ces coupe-feu sont appeleacutes coupe-feu avec mascarade
NAT a eacuteteacute mis au point agrave NAT a eacuteteacute mis au point agrave lrsquoorigine pour reacutepondre agrave la lrsquoorigine pour reacutepondre agrave la
peacutenurie drsquoadresses IP avec le peacutenurie drsquoadresses IP avec le protocole IPv4protocole IPv4
NAT a eacuteteacute mis au point agrave NAT a eacuteteacute mis au point agrave lrsquoorigine pour reacutepondre agrave la lrsquoorigine pour reacutepondre agrave la
peacutenurie drsquoadresses IP avec le peacutenurie drsquoadresses IP avec le protocole IPv4protocole IPv4
Coupe-feu agrave Coupe-feu agrave mascarademascarade
Filtrage dynamique eacutetenduFiltrage dynamique eacutetenduLe filtrage des coupe-feu dynamiques nrsquoest pas limiteacute aux protocoles TCPIP
Pour des applications usuelles le filtrage peut srsquoappliquer au protocole
Le coupe-feu peut ainsi deacutetecter des comportements inhabituels
Peut aussi filtrer certaines parties des donneacutees transmises
Pour le protocole HTTP le filtre peut supprimer les applications Java
Pour le protocole SMTP le filtre peut supprimer les piegraveces jointes drsquoun certain type
Conclusion sur les coupe-Conclusion sur les coupe-feufeu
Les coupe-feu permettent de filtrer le trafic entre le reacuteseau local et lrsquoInternet en nrsquoadministrant qursquoune seule machine
Les coupe-feu ne sont cependant pas une solution magique pour reacutesoudre les problegravemes causeacutes par les attaques exteacuterieures agrave un reacuteseau local
Les coupe-feu pour un seul ordinateur personnel peuvent offrir une solution sans trop drsquoentretien
Les coupe-feu neacutecessitent des mises agrave jour freacutequentes lorsque le reacuteseau local est de bonne taille Lorsque le reacuteseau local change la configuration du coupe-feu doit aussi changer
Penser que lrsquoinstallation drsquoun coupe-feu rend votre reacuteseau sucircr est un peu de la penseacutee magique (neacutecessaire mais pas suffisant)
Logiciels malveillantsLogiciels malveillantsUn adversaire peut une fois passeacute le coupe-feu et les autres deacutefenses vouloir installer un programme malveillant sur la machine locale Ceux-ci sont de trois types
Chevaux de Troie Programme qui semble tout agrave fait utile mais qui cache une fonction malveillante Par exemple donne accegraves agrave des donneacutees priveacutees donne des droits drsquoaccegraves non autoriseacutes ou deacutetruit des donneacutees
Virus Programme qui infecte un autre programme sur votre ordinateur Agrave partir du programme infecteacute le virus se propage vers drsquoautres programmes Apregraves un certain temps ou eacuteveacutenement les virus peuvent entreprendre certaines actions Celles-ci peuvent ecirctre lrsquoeacutelimination de fichiers la deacuteteacuterioration de fonctions du systegraveme drsquoexploitation etc
Vers Programmes qui infectent un ordinateur sans avoir agrave ecirctre heacutebergeacutes par drsquoautres programmes Ils sont des programmes indeacutependants Ils se multiplient en exploitant diffeacuterentes ressources Les objectifs de ces programmes peuvent ecirctre lrsquoespionnage lrsquoouverture de portes deacuterobeacutees eacutemettre des requecirctes vers un site Internet jusqursquoagrave saturation
ExempleExempleI Love You Un ver lanceacute en 2000 et qui a atteint 31 millions de machines en 4 jours
Infection Le ver eacutetait dissimuleacute en piegravece jointe drsquoun courriel Cette piegravece jointe eacutetait preacutesenteacutee comme Love-Letter-for-youtxtvbs Lrsquoextension vbs indique que le fichier est un script Visual Basic Comme lrsquoextension nrsquoapparaicirct pas sur Windows les utilisateurs voyaient la piegravece jointe comme Love-Letter-for-youtxt Objectif Le script lisait la liste des contacts de lrsquoutilisateur pour envoyer ce mecircme message agrave ceux-ci La plate-forme Windows eacutetait viseacutee Des fichiers eacutetaient deacutetruits et remplaceacutes par ce script Il changeait la page drsquoaccueil drsquoInternet Explorer pour teacuteleacutecharger un cheval de Troie
ExempleExempleCode Red Un ver qui a infecteacute 359 000 ordinateurs en moins de 14 heures le 19 juillet 2001
Infections Le ver se multipliait en essayant des adresses IP aleacuteatoires pour ensuite infecter des serveurs qui faisaient tourner Microsoft IIS avec une faille de seacutecuriteacute
Objectif Monter une attaque par deacuteni de service (DOS) contre la Maison-Blanche
Lrsquoattaque a eacuteteacute facile agrave repousser car le ver veacuterifiait avant de lancer lrsquoattaque que le serveur agrave lrsquoadresse IP (au lieu du nom de domaine) de la Maison-Blanche eacutecoutait le port 80 (le port des serveurs Web) En changeant lrsquoadresse IP de la Maison-Blanche lrsquoattaque a eacuteteacute repousseacutee
ExempleExempleCabir Est un virusver (deacutemonstration de faisabiliteacute laquoproof of conceptraquo) qui srsquoattaque agrave la teacuteleacutephonie mobile Crsquoest un fichier de 15 ko nommeacute CARIBESIS
Infection Se propage par la teacuteleacutephonie mobile gracircce agrave la technologie Bluetooth et le systegraveme drsquoexploitation Symbian OS
Action Agrave chaque fois que le teacuteleacutephone infecteacute est ouvert le mot laquoCariberaquo srsquoaffiche Il tente de se propager aux peacuteripheacuteriques BlueTooth de la zone du teacuteleacutephone infecteacute Il nrsquoest pas meacutechant nrsquoavait pour but que de deacutemontrer la faisabiliteacute
AntivirusAntivirusLes antivirus sont des programmes qui deacutetectent les virus les vers et les chevaux de Troie sur votre ordinateur Ils les eacuteliminent
Ils visitent les fichiers sur votre disque dans le but de trouver des bouts de programmes reconnus comme dangereux
Ceci est possible eacutetant donneacute une base de donneacutees agrave jour contenant les virus connus sous la forme de signatures de virus Une signature est un motif (laquopatternraquo) qui caracteacuterise un virus donneacute
Un antivirus nrsquoest efficace que si sa base de donneacutees est mise agrave jour constamment Les compagnies drsquoantivirus vont vite pour mettre agrave jour leur base de donneacutees lorsqursquoun nouveau virus est identifieacute
Malheureusement les utilisateurs tardent agrave mettre leur copie agrave jour causant bien des infections
Tromper les antivirusTromper les antivirusDe nouveaux virus utilisent les meacutethodes de la cryptographie pour deacutejouer les antivirus
Des virus sont chiffreacutes pour les rendre non reconnaissables par les antivirus car ils ont toujours un aspect diffeacuterent
Ces virus ont un petit code en clair qui permet de les deacutecoder et de les charger en meacutemoire pour ecirctre exeacutecuteacutes Ce code est ce que les antivirus doivent deacutetecter
Ces virus sont de trois types
Oligomorphique Le virus est chiffreacute agrave chaque reacuteplication
Polymorphique Le virus est chiffreacute et la routine de deacutechiffrement est capable de changer certaines de ses instructions au fil des reacuteplications
Meacutetamorphique Le virus change de forme au fil des reacuteplications
IntrusionsIntrusionsPour qursquoun virus ver ou cheval de Troie soit deacuteleacutetegravere encore faut-il qursquoil srsquoinstalle sur votre machine
Mecircme si un adversaire peut parler agrave votre machine ceci nrsquoimplique pas qursquoil peut installer un logiciel sur celle-ci encore moins srsquoil nrsquoen est pas un utilisateur
Pour ce faire les adversaires peuvent essayer diverses strateacutegies
Faiblesses du systegraveme drsquoexploitation ou du logiciel du serveur Nous allons voir un exemple de ce type drsquoattaque attaques par deacutebordement Une page Web nrsquoest pas un objet passif Elle peut contenir du code (JavaScript Perl etc) malveillant
Tromper lrsquoutilisateur Crsquoest peut-ecirctre plus simple Cas speacutecial du piratage psychologique Cliquer ici pour installer un joli logiciel il faut espeacuterer que lrsquoantivirus deacutetecte ceci avant qursquoil ne soit trop tard
Deacutetecter les intrusionsDeacutetecter les intrusionsUne faccedilon diffeacuterente de deacutetecter les logiciels ou utilisateurs malveillants consiste agrave deacutetecter les comportements malveillants
Un systegraveme peut surveiller les processus pour deacutetecter les comportements malveillants
Une telle approche a lrsquoavantage de ne pas deacutependre drsquoinformation sur les virus et les attaques
Un coupe-feu dynamique est un exemple de cette approche
Il surveille les connexions et tente de deacuteterminer si un client transmet des donneacutees agrave contenu suspect (comme la taille)
Requecirctes Requecirctes malveillantesmalveillantes
dlkjfdsflkjsd dlkjfdsflkjsd fjdskl gfjdlskewqewewewewhdfbfbfbww fjdskl gfjdlskewqewewewewhdfbfbfbww jaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfjaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfwewqewqewqewqewqewqeweekjwweeqqqsxcswdswewqewqewqewqewqewqeweekjwweeqqqsxcswdsdddds dddds ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqqwwq qwwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewqeweekwqwqwefdscxcccj qeweekwqwqwefdscxcccj ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxzcwq zcwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfssaDSADSADSsfghdskjgfhdsgfihoiehjrfssaDSADSADSADDSDSDSSDSDSADDSDSDSSDSDSIl arrive que de longues requecirctes puissent faire planter un systegraveme
mal programmeacute Un adversaire peut donc soumettre des chaicircnes tregraves longues dans le but de rendre le systegraveme inopeacuterant (ou mecircme pire assujetti) comme nous le verrons plus loin
Et agrave peu pregraves nrsquoimporte qui Et agrave peu pregraves nrsquoimporte qui peut proposer un service peut proposer un service
comme celui-ci comme celui-ci
Un coupe-feu peut filtrer les requecirctes anormalement longues pour les ignorer Mecircme les systegravemes avec programmes erroneacutes seront agrave lrsquoabri de ce type drsquoattaque
SELECT SELECT FROM Passwords FROM Passwords WHERE user=rsquoWHERE user=rsquoJugheadJugheadrsquo AND password=rsquorsquo AND password=rsquoxrsquo xrsquo OR lsquo1rsquo=lsquo1OR lsquo1rsquo=lsquo1rsquorsquo
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Requecirctes Requecirctes malveillantesmalveillantes
HTTPSHTTPS
Password Password xrsquo OR xrsquo OR lsquo1rsquo=rsquo1lsquo1rsquo=rsquo1
Un coupe-feu dynamique peut filtrer des requecirctes bizarres comme xrsquo OR lsquo1rsquo=rsquo1xrsquo OR lsquo1rsquo=rsquo1
Ceci est beaucoup plus difficile agrave Ceci est beaucoup plus difficile agrave reacutealiser par un coupe-feu que reacutealiser par un coupe-feu que
lrsquoexemple preacuteceacutedentlrsquoexemple preacuteceacutedent
Approche Approche comportementalecomportementaleUne autre approche pour la deacutetection drsquointrusions consiste agrave
observer certains aspects du comportement des utilisateurs et programmes
activiteacutes de connexion et de session
activiteacutes relieacutees agrave lrsquoexeacutecution de programme et drsquoaccegraves aux fichiers
Il y a deux approches pour la deacutetection de comportements suspects
Par regravegles (rule-based) Un ensemble de regravegles deacutecrivant les comportements normaux est eacutetabli Les comportements anormaux (trop loin des normaux) sont rejeteacutes
Statistique Des statistiques sur les utilisateurs normaux sont creacuteeacutees Le comportement de lrsquoutilisateurprogramme observeacute est compareacute aux statistiques Un comportement montrant un trop grand eacutecart avec les statistiques est rejeteacute
Problegravemes avec les Problegravemes avec les systegravemes de deacutetection systegravemes de deacutetection
drsquointrusion (IDS)drsquointrusion (IDS)Le problegraveme majeur avec lrsquoapproche est le mecircme qursquoavec la biomeacutetrie Le systegraveme qui surveille doit ecirctre assez toleacuterant pour autoriser les comportements normaux mais suffisamment restrictif pour attraper les acteurs malveillants
Ce problegraveme nrsquoest pas tregraves bien compris et les solutions proposeacutees ne sont pas tout agrave fait satisfaisantes
La deacutetection drsquointrusion est bien inutile si le systegraveme ne reacuteagit pas de la bonne faccedilon lorsqursquoune intrusion est deacutetecteacutee La partie du systegraveme qui alerte lrsquoadministrateur qui interdit lrsquoaccegraves qui effectue quelque autre tacircche pour eacuteliminer la menace est tout aussi importante que celle qui deacutetecte
Le pot de mielLe pot de miel
Le pot de miel (laquohoney potraquo) est un truc pratique pour la deacutetection drsquointrusions
Une ressource bidon qui semble inteacuteressante pour un adversaire est creacuteeacutee
Puisque celle-ci est bidon on peut supposer que si quelqursquoun y accegravede crsquoest qursquoil srsquoadonne agrave une activiteacute malveillante
En consultant les traces il peut ecirctre possible de retrouver lrsquoutilisateur malveillant
Ceci peut se faire agrave lrsquoinsu de lrsquointrus
ExempleExemple
Un hocircpital ameacutericain soupccedilonnait que quelqursquoun consultait les dossiers de patients sans en avoir lrsquoautorisation
Ils ont creacuteeacute des fichiers pour des patients qui nrsquoexistent pas
Les accegraves agrave ces fichiers ont alors eacuteteacute retraceacutes jusqursquoagrave lrsquoutilisateur malveillant
Les attaques de lrsquointeacuterieurLes attaques de lrsquointeacuterieurPresque tout ce que nous avons vu a pour but la protection contre les attaques venues de lrsquoexteacuterieur
Les attaques peuvent tregraves bien eacutemaner de lrsquointeacuterieur et peuvent causer des problegravemes seacuterieux
Le premiegravere chose agrave comprendre est qursquoil nrsquoest pas possible de se preacutemunir contre ces attaques si les utilisateurs ont tous les droits sur le systegraveme cible
Il est donc neacutecessaire qursquoune partie du systegraveme soit garantie de fonctionner selon ses speacutecifications mecircme sous attaque
Sans cette hypothegravese le systegraveme est sous le controcircle complet de lrsquoadversaire
Base informatique Base informatique seacutecuriseacuteeseacutecuriseacutee
laquotrusted computing baseraquo (TCB)laquotrusted computing baseraquo (TCB)
Une base seacutecuriseacutee peut ecirctre eacutetablie en utilisant de la seacutecuriteacute mateacuterielle logicielle par mot de passe par exemple
Le rocircle de ce systegraveme de base est de controcircler lrsquoaccegraves aux ressources et le flux drsquoinformation sur celui-ci
Pour bien comprendre comment ces protections fonctionnent nous devons mettre de lrsquoordre dans nos ideacutees Nous devons voir agrave quoi ressemble une politique de seacutecuriteacute dans ce sceacutenario
Crsquoest notre prochain sujet
Coupe-feu Coupe-feu dynamiquesdynamiques
Les proxys ne sont pas tregraves flexibles Les coupe-feu dynamiques permettent drsquoutiliser les logiciels drsquoune faccedilon plus transparente
Il srsquoagit drsquoun filtre avanceacute qui permet de veacuterifier que les paquets appartiennent agrave une connexion deacutejagrave eacutetablie Crsquoest seulement lorsque crsquoest le cas que le paquet peut passer
Parce qursquoil est conscient drsquoune connexion il peut appliquer NAT etou PAT
NAT Dynamique (laquoDynamic Network Address Translationraquo) Le coupe-feu traduit les adresses du reacuteseau Toutes les machines du reacuteseau possegravedent vu de lrsquoexteacuterieur la mecircme adresse IP
PAT (laquoPort Address Translationraquo) Le coupe-feu traduit les numeacuteros de port par lesquels les paquets arrivent sur les hocirctes locaux
Ces coupe-feu sont appeleacutes coupe-feu avec mascarade
NAT a eacuteteacute mis au point agrave NAT a eacuteteacute mis au point agrave lrsquoorigine pour reacutepondre agrave la lrsquoorigine pour reacutepondre agrave la
peacutenurie drsquoadresses IP avec le peacutenurie drsquoadresses IP avec le protocole IPv4protocole IPv4
NAT a eacuteteacute mis au point agrave NAT a eacuteteacute mis au point agrave lrsquoorigine pour reacutepondre agrave la lrsquoorigine pour reacutepondre agrave la
peacutenurie drsquoadresses IP avec le peacutenurie drsquoadresses IP avec le protocole IPv4protocole IPv4
Coupe-feu agrave Coupe-feu agrave mascarademascarade
Filtrage dynamique eacutetenduFiltrage dynamique eacutetenduLe filtrage des coupe-feu dynamiques nrsquoest pas limiteacute aux protocoles TCPIP
Pour des applications usuelles le filtrage peut srsquoappliquer au protocole
Le coupe-feu peut ainsi deacutetecter des comportements inhabituels
Peut aussi filtrer certaines parties des donneacutees transmises
Pour le protocole HTTP le filtre peut supprimer les applications Java
Pour le protocole SMTP le filtre peut supprimer les piegraveces jointes drsquoun certain type
Conclusion sur les coupe-Conclusion sur les coupe-feufeu
Les coupe-feu permettent de filtrer le trafic entre le reacuteseau local et lrsquoInternet en nrsquoadministrant qursquoune seule machine
Les coupe-feu ne sont cependant pas une solution magique pour reacutesoudre les problegravemes causeacutes par les attaques exteacuterieures agrave un reacuteseau local
Les coupe-feu pour un seul ordinateur personnel peuvent offrir une solution sans trop drsquoentretien
Les coupe-feu neacutecessitent des mises agrave jour freacutequentes lorsque le reacuteseau local est de bonne taille Lorsque le reacuteseau local change la configuration du coupe-feu doit aussi changer
Penser que lrsquoinstallation drsquoun coupe-feu rend votre reacuteseau sucircr est un peu de la penseacutee magique (neacutecessaire mais pas suffisant)
Logiciels malveillantsLogiciels malveillantsUn adversaire peut une fois passeacute le coupe-feu et les autres deacutefenses vouloir installer un programme malveillant sur la machine locale Ceux-ci sont de trois types
Chevaux de Troie Programme qui semble tout agrave fait utile mais qui cache une fonction malveillante Par exemple donne accegraves agrave des donneacutees priveacutees donne des droits drsquoaccegraves non autoriseacutes ou deacutetruit des donneacutees
Virus Programme qui infecte un autre programme sur votre ordinateur Agrave partir du programme infecteacute le virus se propage vers drsquoautres programmes Apregraves un certain temps ou eacuteveacutenement les virus peuvent entreprendre certaines actions Celles-ci peuvent ecirctre lrsquoeacutelimination de fichiers la deacuteteacuterioration de fonctions du systegraveme drsquoexploitation etc
Vers Programmes qui infectent un ordinateur sans avoir agrave ecirctre heacutebergeacutes par drsquoautres programmes Ils sont des programmes indeacutependants Ils se multiplient en exploitant diffeacuterentes ressources Les objectifs de ces programmes peuvent ecirctre lrsquoespionnage lrsquoouverture de portes deacuterobeacutees eacutemettre des requecirctes vers un site Internet jusqursquoagrave saturation
ExempleExempleI Love You Un ver lanceacute en 2000 et qui a atteint 31 millions de machines en 4 jours
Infection Le ver eacutetait dissimuleacute en piegravece jointe drsquoun courriel Cette piegravece jointe eacutetait preacutesenteacutee comme Love-Letter-for-youtxtvbs Lrsquoextension vbs indique que le fichier est un script Visual Basic Comme lrsquoextension nrsquoapparaicirct pas sur Windows les utilisateurs voyaient la piegravece jointe comme Love-Letter-for-youtxt Objectif Le script lisait la liste des contacts de lrsquoutilisateur pour envoyer ce mecircme message agrave ceux-ci La plate-forme Windows eacutetait viseacutee Des fichiers eacutetaient deacutetruits et remplaceacutes par ce script Il changeait la page drsquoaccueil drsquoInternet Explorer pour teacuteleacutecharger un cheval de Troie
ExempleExempleCode Red Un ver qui a infecteacute 359 000 ordinateurs en moins de 14 heures le 19 juillet 2001
Infections Le ver se multipliait en essayant des adresses IP aleacuteatoires pour ensuite infecter des serveurs qui faisaient tourner Microsoft IIS avec une faille de seacutecuriteacute
Objectif Monter une attaque par deacuteni de service (DOS) contre la Maison-Blanche
Lrsquoattaque a eacuteteacute facile agrave repousser car le ver veacuterifiait avant de lancer lrsquoattaque que le serveur agrave lrsquoadresse IP (au lieu du nom de domaine) de la Maison-Blanche eacutecoutait le port 80 (le port des serveurs Web) En changeant lrsquoadresse IP de la Maison-Blanche lrsquoattaque a eacuteteacute repousseacutee
ExempleExempleCabir Est un virusver (deacutemonstration de faisabiliteacute laquoproof of conceptraquo) qui srsquoattaque agrave la teacuteleacutephonie mobile Crsquoest un fichier de 15 ko nommeacute CARIBESIS
Infection Se propage par la teacuteleacutephonie mobile gracircce agrave la technologie Bluetooth et le systegraveme drsquoexploitation Symbian OS
Action Agrave chaque fois que le teacuteleacutephone infecteacute est ouvert le mot laquoCariberaquo srsquoaffiche Il tente de se propager aux peacuteripheacuteriques BlueTooth de la zone du teacuteleacutephone infecteacute Il nrsquoest pas meacutechant nrsquoavait pour but que de deacutemontrer la faisabiliteacute
AntivirusAntivirusLes antivirus sont des programmes qui deacutetectent les virus les vers et les chevaux de Troie sur votre ordinateur Ils les eacuteliminent
Ils visitent les fichiers sur votre disque dans le but de trouver des bouts de programmes reconnus comme dangereux
Ceci est possible eacutetant donneacute une base de donneacutees agrave jour contenant les virus connus sous la forme de signatures de virus Une signature est un motif (laquopatternraquo) qui caracteacuterise un virus donneacute
Un antivirus nrsquoest efficace que si sa base de donneacutees est mise agrave jour constamment Les compagnies drsquoantivirus vont vite pour mettre agrave jour leur base de donneacutees lorsqursquoun nouveau virus est identifieacute
Malheureusement les utilisateurs tardent agrave mettre leur copie agrave jour causant bien des infections
Tromper les antivirusTromper les antivirusDe nouveaux virus utilisent les meacutethodes de la cryptographie pour deacutejouer les antivirus
Des virus sont chiffreacutes pour les rendre non reconnaissables par les antivirus car ils ont toujours un aspect diffeacuterent
Ces virus ont un petit code en clair qui permet de les deacutecoder et de les charger en meacutemoire pour ecirctre exeacutecuteacutes Ce code est ce que les antivirus doivent deacutetecter
Ces virus sont de trois types
Oligomorphique Le virus est chiffreacute agrave chaque reacuteplication
Polymorphique Le virus est chiffreacute et la routine de deacutechiffrement est capable de changer certaines de ses instructions au fil des reacuteplications
Meacutetamorphique Le virus change de forme au fil des reacuteplications
IntrusionsIntrusionsPour qursquoun virus ver ou cheval de Troie soit deacuteleacutetegravere encore faut-il qursquoil srsquoinstalle sur votre machine
Mecircme si un adversaire peut parler agrave votre machine ceci nrsquoimplique pas qursquoil peut installer un logiciel sur celle-ci encore moins srsquoil nrsquoen est pas un utilisateur
Pour ce faire les adversaires peuvent essayer diverses strateacutegies
Faiblesses du systegraveme drsquoexploitation ou du logiciel du serveur Nous allons voir un exemple de ce type drsquoattaque attaques par deacutebordement Une page Web nrsquoest pas un objet passif Elle peut contenir du code (JavaScript Perl etc) malveillant
Tromper lrsquoutilisateur Crsquoest peut-ecirctre plus simple Cas speacutecial du piratage psychologique Cliquer ici pour installer un joli logiciel il faut espeacuterer que lrsquoantivirus deacutetecte ceci avant qursquoil ne soit trop tard
Deacutetecter les intrusionsDeacutetecter les intrusionsUne faccedilon diffeacuterente de deacutetecter les logiciels ou utilisateurs malveillants consiste agrave deacutetecter les comportements malveillants
Un systegraveme peut surveiller les processus pour deacutetecter les comportements malveillants
Une telle approche a lrsquoavantage de ne pas deacutependre drsquoinformation sur les virus et les attaques
Un coupe-feu dynamique est un exemple de cette approche
Il surveille les connexions et tente de deacuteterminer si un client transmet des donneacutees agrave contenu suspect (comme la taille)
Requecirctes Requecirctes malveillantesmalveillantes
dlkjfdsflkjsd dlkjfdsflkjsd fjdskl gfjdlskewqewewewewhdfbfbfbww fjdskl gfjdlskewqewewewewhdfbfbfbww jaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfjaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfwewqewqewqewqewqewqeweekjwweeqqqsxcswdswewqewqewqewqewqewqeweekjwweeqqqsxcswdsdddds dddds ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqqwwq qwwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewqeweekwqwqwefdscxcccj qeweekwqwqwefdscxcccj ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxzcwq zcwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfssaDSADSADSsfghdskjgfhdsgfihoiehjrfssaDSADSADSADDSDSDSSDSDSADDSDSDSSDSDSIl arrive que de longues requecirctes puissent faire planter un systegraveme
mal programmeacute Un adversaire peut donc soumettre des chaicircnes tregraves longues dans le but de rendre le systegraveme inopeacuterant (ou mecircme pire assujetti) comme nous le verrons plus loin
Et agrave peu pregraves nrsquoimporte qui Et agrave peu pregraves nrsquoimporte qui peut proposer un service peut proposer un service
comme celui-ci comme celui-ci
Un coupe-feu peut filtrer les requecirctes anormalement longues pour les ignorer Mecircme les systegravemes avec programmes erroneacutes seront agrave lrsquoabri de ce type drsquoattaque
SELECT SELECT FROM Passwords FROM Passwords WHERE user=rsquoWHERE user=rsquoJugheadJugheadrsquo AND password=rsquorsquo AND password=rsquoxrsquo xrsquo OR lsquo1rsquo=lsquo1OR lsquo1rsquo=lsquo1rsquorsquo
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Requecirctes Requecirctes malveillantesmalveillantes
HTTPSHTTPS
Password Password xrsquo OR xrsquo OR lsquo1rsquo=rsquo1lsquo1rsquo=rsquo1
Un coupe-feu dynamique peut filtrer des requecirctes bizarres comme xrsquo OR lsquo1rsquo=rsquo1xrsquo OR lsquo1rsquo=rsquo1
Ceci est beaucoup plus difficile agrave Ceci est beaucoup plus difficile agrave reacutealiser par un coupe-feu que reacutealiser par un coupe-feu que
lrsquoexemple preacuteceacutedentlrsquoexemple preacuteceacutedent
Approche Approche comportementalecomportementaleUne autre approche pour la deacutetection drsquointrusions consiste agrave
observer certains aspects du comportement des utilisateurs et programmes
activiteacutes de connexion et de session
activiteacutes relieacutees agrave lrsquoexeacutecution de programme et drsquoaccegraves aux fichiers
Il y a deux approches pour la deacutetection de comportements suspects
Par regravegles (rule-based) Un ensemble de regravegles deacutecrivant les comportements normaux est eacutetabli Les comportements anormaux (trop loin des normaux) sont rejeteacutes
Statistique Des statistiques sur les utilisateurs normaux sont creacuteeacutees Le comportement de lrsquoutilisateurprogramme observeacute est compareacute aux statistiques Un comportement montrant un trop grand eacutecart avec les statistiques est rejeteacute
Problegravemes avec les Problegravemes avec les systegravemes de deacutetection systegravemes de deacutetection
drsquointrusion (IDS)drsquointrusion (IDS)Le problegraveme majeur avec lrsquoapproche est le mecircme qursquoavec la biomeacutetrie Le systegraveme qui surveille doit ecirctre assez toleacuterant pour autoriser les comportements normaux mais suffisamment restrictif pour attraper les acteurs malveillants
Ce problegraveme nrsquoest pas tregraves bien compris et les solutions proposeacutees ne sont pas tout agrave fait satisfaisantes
La deacutetection drsquointrusion est bien inutile si le systegraveme ne reacuteagit pas de la bonne faccedilon lorsqursquoune intrusion est deacutetecteacutee La partie du systegraveme qui alerte lrsquoadministrateur qui interdit lrsquoaccegraves qui effectue quelque autre tacircche pour eacuteliminer la menace est tout aussi importante que celle qui deacutetecte
Le pot de mielLe pot de miel
Le pot de miel (laquohoney potraquo) est un truc pratique pour la deacutetection drsquointrusions
Une ressource bidon qui semble inteacuteressante pour un adversaire est creacuteeacutee
Puisque celle-ci est bidon on peut supposer que si quelqursquoun y accegravede crsquoest qursquoil srsquoadonne agrave une activiteacute malveillante
En consultant les traces il peut ecirctre possible de retrouver lrsquoutilisateur malveillant
Ceci peut se faire agrave lrsquoinsu de lrsquointrus
ExempleExemple
Un hocircpital ameacutericain soupccedilonnait que quelqursquoun consultait les dossiers de patients sans en avoir lrsquoautorisation
Ils ont creacuteeacute des fichiers pour des patients qui nrsquoexistent pas
Les accegraves agrave ces fichiers ont alors eacuteteacute retraceacutes jusqursquoagrave lrsquoutilisateur malveillant
Les attaques de lrsquointeacuterieurLes attaques de lrsquointeacuterieurPresque tout ce que nous avons vu a pour but la protection contre les attaques venues de lrsquoexteacuterieur
Les attaques peuvent tregraves bien eacutemaner de lrsquointeacuterieur et peuvent causer des problegravemes seacuterieux
Le premiegravere chose agrave comprendre est qursquoil nrsquoest pas possible de se preacutemunir contre ces attaques si les utilisateurs ont tous les droits sur le systegraveme cible
Il est donc neacutecessaire qursquoune partie du systegraveme soit garantie de fonctionner selon ses speacutecifications mecircme sous attaque
Sans cette hypothegravese le systegraveme est sous le controcircle complet de lrsquoadversaire
Base informatique Base informatique seacutecuriseacuteeseacutecuriseacutee
laquotrusted computing baseraquo (TCB)laquotrusted computing baseraquo (TCB)
Une base seacutecuriseacutee peut ecirctre eacutetablie en utilisant de la seacutecuriteacute mateacuterielle logicielle par mot de passe par exemple
Le rocircle de ce systegraveme de base est de controcircler lrsquoaccegraves aux ressources et le flux drsquoinformation sur celui-ci
Pour bien comprendre comment ces protections fonctionnent nous devons mettre de lrsquoordre dans nos ideacutees Nous devons voir agrave quoi ressemble une politique de seacutecuriteacute dans ce sceacutenario
Crsquoest notre prochain sujet
Coupe-feu agrave Coupe-feu agrave mascarademascarade
Filtrage dynamique eacutetenduFiltrage dynamique eacutetenduLe filtrage des coupe-feu dynamiques nrsquoest pas limiteacute aux protocoles TCPIP
Pour des applications usuelles le filtrage peut srsquoappliquer au protocole
Le coupe-feu peut ainsi deacutetecter des comportements inhabituels
Peut aussi filtrer certaines parties des donneacutees transmises
Pour le protocole HTTP le filtre peut supprimer les applications Java
Pour le protocole SMTP le filtre peut supprimer les piegraveces jointes drsquoun certain type
Conclusion sur les coupe-Conclusion sur les coupe-feufeu
Les coupe-feu permettent de filtrer le trafic entre le reacuteseau local et lrsquoInternet en nrsquoadministrant qursquoune seule machine
Les coupe-feu ne sont cependant pas une solution magique pour reacutesoudre les problegravemes causeacutes par les attaques exteacuterieures agrave un reacuteseau local
Les coupe-feu pour un seul ordinateur personnel peuvent offrir une solution sans trop drsquoentretien
Les coupe-feu neacutecessitent des mises agrave jour freacutequentes lorsque le reacuteseau local est de bonne taille Lorsque le reacuteseau local change la configuration du coupe-feu doit aussi changer
Penser que lrsquoinstallation drsquoun coupe-feu rend votre reacuteseau sucircr est un peu de la penseacutee magique (neacutecessaire mais pas suffisant)
Logiciels malveillantsLogiciels malveillantsUn adversaire peut une fois passeacute le coupe-feu et les autres deacutefenses vouloir installer un programme malveillant sur la machine locale Ceux-ci sont de trois types
Chevaux de Troie Programme qui semble tout agrave fait utile mais qui cache une fonction malveillante Par exemple donne accegraves agrave des donneacutees priveacutees donne des droits drsquoaccegraves non autoriseacutes ou deacutetruit des donneacutees
Virus Programme qui infecte un autre programme sur votre ordinateur Agrave partir du programme infecteacute le virus se propage vers drsquoautres programmes Apregraves un certain temps ou eacuteveacutenement les virus peuvent entreprendre certaines actions Celles-ci peuvent ecirctre lrsquoeacutelimination de fichiers la deacuteteacuterioration de fonctions du systegraveme drsquoexploitation etc
Vers Programmes qui infectent un ordinateur sans avoir agrave ecirctre heacutebergeacutes par drsquoautres programmes Ils sont des programmes indeacutependants Ils se multiplient en exploitant diffeacuterentes ressources Les objectifs de ces programmes peuvent ecirctre lrsquoespionnage lrsquoouverture de portes deacuterobeacutees eacutemettre des requecirctes vers un site Internet jusqursquoagrave saturation
ExempleExempleI Love You Un ver lanceacute en 2000 et qui a atteint 31 millions de machines en 4 jours
Infection Le ver eacutetait dissimuleacute en piegravece jointe drsquoun courriel Cette piegravece jointe eacutetait preacutesenteacutee comme Love-Letter-for-youtxtvbs Lrsquoextension vbs indique que le fichier est un script Visual Basic Comme lrsquoextension nrsquoapparaicirct pas sur Windows les utilisateurs voyaient la piegravece jointe comme Love-Letter-for-youtxt Objectif Le script lisait la liste des contacts de lrsquoutilisateur pour envoyer ce mecircme message agrave ceux-ci La plate-forme Windows eacutetait viseacutee Des fichiers eacutetaient deacutetruits et remplaceacutes par ce script Il changeait la page drsquoaccueil drsquoInternet Explorer pour teacuteleacutecharger un cheval de Troie
ExempleExempleCode Red Un ver qui a infecteacute 359 000 ordinateurs en moins de 14 heures le 19 juillet 2001
Infections Le ver se multipliait en essayant des adresses IP aleacuteatoires pour ensuite infecter des serveurs qui faisaient tourner Microsoft IIS avec une faille de seacutecuriteacute
Objectif Monter une attaque par deacuteni de service (DOS) contre la Maison-Blanche
Lrsquoattaque a eacuteteacute facile agrave repousser car le ver veacuterifiait avant de lancer lrsquoattaque que le serveur agrave lrsquoadresse IP (au lieu du nom de domaine) de la Maison-Blanche eacutecoutait le port 80 (le port des serveurs Web) En changeant lrsquoadresse IP de la Maison-Blanche lrsquoattaque a eacuteteacute repousseacutee
ExempleExempleCabir Est un virusver (deacutemonstration de faisabiliteacute laquoproof of conceptraquo) qui srsquoattaque agrave la teacuteleacutephonie mobile Crsquoest un fichier de 15 ko nommeacute CARIBESIS
Infection Se propage par la teacuteleacutephonie mobile gracircce agrave la technologie Bluetooth et le systegraveme drsquoexploitation Symbian OS
Action Agrave chaque fois que le teacuteleacutephone infecteacute est ouvert le mot laquoCariberaquo srsquoaffiche Il tente de se propager aux peacuteripheacuteriques BlueTooth de la zone du teacuteleacutephone infecteacute Il nrsquoest pas meacutechant nrsquoavait pour but que de deacutemontrer la faisabiliteacute
AntivirusAntivirusLes antivirus sont des programmes qui deacutetectent les virus les vers et les chevaux de Troie sur votre ordinateur Ils les eacuteliminent
Ils visitent les fichiers sur votre disque dans le but de trouver des bouts de programmes reconnus comme dangereux
Ceci est possible eacutetant donneacute une base de donneacutees agrave jour contenant les virus connus sous la forme de signatures de virus Une signature est un motif (laquopatternraquo) qui caracteacuterise un virus donneacute
Un antivirus nrsquoest efficace que si sa base de donneacutees est mise agrave jour constamment Les compagnies drsquoantivirus vont vite pour mettre agrave jour leur base de donneacutees lorsqursquoun nouveau virus est identifieacute
Malheureusement les utilisateurs tardent agrave mettre leur copie agrave jour causant bien des infections
Tromper les antivirusTromper les antivirusDe nouveaux virus utilisent les meacutethodes de la cryptographie pour deacutejouer les antivirus
Des virus sont chiffreacutes pour les rendre non reconnaissables par les antivirus car ils ont toujours un aspect diffeacuterent
Ces virus ont un petit code en clair qui permet de les deacutecoder et de les charger en meacutemoire pour ecirctre exeacutecuteacutes Ce code est ce que les antivirus doivent deacutetecter
Ces virus sont de trois types
Oligomorphique Le virus est chiffreacute agrave chaque reacuteplication
Polymorphique Le virus est chiffreacute et la routine de deacutechiffrement est capable de changer certaines de ses instructions au fil des reacuteplications
Meacutetamorphique Le virus change de forme au fil des reacuteplications
IntrusionsIntrusionsPour qursquoun virus ver ou cheval de Troie soit deacuteleacutetegravere encore faut-il qursquoil srsquoinstalle sur votre machine
Mecircme si un adversaire peut parler agrave votre machine ceci nrsquoimplique pas qursquoil peut installer un logiciel sur celle-ci encore moins srsquoil nrsquoen est pas un utilisateur
Pour ce faire les adversaires peuvent essayer diverses strateacutegies
Faiblesses du systegraveme drsquoexploitation ou du logiciel du serveur Nous allons voir un exemple de ce type drsquoattaque attaques par deacutebordement Une page Web nrsquoest pas un objet passif Elle peut contenir du code (JavaScript Perl etc) malveillant
Tromper lrsquoutilisateur Crsquoest peut-ecirctre plus simple Cas speacutecial du piratage psychologique Cliquer ici pour installer un joli logiciel il faut espeacuterer que lrsquoantivirus deacutetecte ceci avant qursquoil ne soit trop tard
Deacutetecter les intrusionsDeacutetecter les intrusionsUne faccedilon diffeacuterente de deacutetecter les logiciels ou utilisateurs malveillants consiste agrave deacutetecter les comportements malveillants
Un systegraveme peut surveiller les processus pour deacutetecter les comportements malveillants
Une telle approche a lrsquoavantage de ne pas deacutependre drsquoinformation sur les virus et les attaques
Un coupe-feu dynamique est un exemple de cette approche
Il surveille les connexions et tente de deacuteterminer si un client transmet des donneacutees agrave contenu suspect (comme la taille)
Requecirctes Requecirctes malveillantesmalveillantes
dlkjfdsflkjsd dlkjfdsflkjsd fjdskl gfjdlskewqewewewewhdfbfbfbww fjdskl gfjdlskewqewewewewhdfbfbfbww jaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfjaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfwewqewqewqewqewqewqeweekjwweeqqqsxcswdswewqewqewqewqewqewqeweekjwweeqqqsxcswdsdddds dddds ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqqwwq qwwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewqeweekwqwqwefdscxcccj qeweekwqwqwefdscxcccj ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxzcwq zcwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfssaDSADSADSsfghdskjgfhdsgfihoiehjrfssaDSADSADSADDSDSDSSDSDSADDSDSDSSDSDSIl arrive que de longues requecirctes puissent faire planter un systegraveme
mal programmeacute Un adversaire peut donc soumettre des chaicircnes tregraves longues dans le but de rendre le systegraveme inopeacuterant (ou mecircme pire assujetti) comme nous le verrons plus loin
Et agrave peu pregraves nrsquoimporte qui Et agrave peu pregraves nrsquoimporte qui peut proposer un service peut proposer un service
comme celui-ci comme celui-ci
Un coupe-feu peut filtrer les requecirctes anormalement longues pour les ignorer Mecircme les systegravemes avec programmes erroneacutes seront agrave lrsquoabri de ce type drsquoattaque
SELECT SELECT FROM Passwords FROM Passwords WHERE user=rsquoWHERE user=rsquoJugheadJugheadrsquo AND password=rsquorsquo AND password=rsquoxrsquo xrsquo OR lsquo1rsquo=lsquo1OR lsquo1rsquo=lsquo1rsquorsquo
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Requecirctes Requecirctes malveillantesmalveillantes
HTTPSHTTPS
Password Password xrsquo OR xrsquo OR lsquo1rsquo=rsquo1lsquo1rsquo=rsquo1
Un coupe-feu dynamique peut filtrer des requecirctes bizarres comme xrsquo OR lsquo1rsquo=rsquo1xrsquo OR lsquo1rsquo=rsquo1
Ceci est beaucoup plus difficile agrave Ceci est beaucoup plus difficile agrave reacutealiser par un coupe-feu que reacutealiser par un coupe-feu que
lrsquoexemple preacuteceacutedentlrsquoexemple preacuteceacutedent
Approche Approche comportementalecomportementaleUne autre approche pour la deacutetection drsquointrusions consiste agrave
observer certains aspects du comportement des utilisateurs et programmes
activiteacutes de connexion et de session
activiteacutes relieacutees agrave lrsquoexeacutecution de programme et drsquoaccegraves aux fichiers
Il y a deux approches pour la deacutetection de comportements suspects
Par regravegles (rule-based) Un ensemble de regravegles deacutecrivant les comportements normaux est eacutetabli Les comportements anormaux (trop loin des normaux) sont rejeteacutes
Statistique Des statistiques sur les utilisateurs normaux sont creacuteeacutees Le comportement de lrsquoutilisateurprogramme observeacute est compareacute aux statistiques Un comportement montrant un trop grand eacutecart avec les statistiques est rejeteacute
Problegravemes avec les Problegravemes avec les systegravemes de deacutetection systegravemes de deacutetection
drsquointrusion (IDS)drsquointrusion (IDS)Le problegraveme majeur avec lrsquoapproche est le mecircme qursquoavec la biomeacutetrie Le systegraveme qui surveille doit ecirctre assez toleacuterant pour autoriser les comportements normaux mais suffisamment restrictif pour attraper les acteurs malveillants
Ce problegraveme nrsquoest pas tregraves bien compris et les solutions proposeacutees ne sont pas tout agrave fait satisfaisantes
La deacutetection drsquointrusion est bien inutile si le systegraveme ne reacuteagit pas de la bonne faccedilon lorsqursquoune intrusion est deacutetecteacutee La partie du systegraveme qui alerte lrsquoadministrateur qui interdit lrsquoaccegraves qui effectue quelque autre tacircche pour eacuteliminer la menace est tout aussi importante que celle qui deacutetecte
Le pot de mielLe pot de miel
Le pot de miel (laquohoney potraquo) est un truc pratique pour la deacutetection drsquointrusions
Une ressource bidon qui semble inteacuteressante pour un adversaire est creacuteeacutee
Puisque celle-ci est bidon on peut supposer que si quelqursquoun y accegravede crsquoest qursquoil srsquoadonne agrave une activiteacute malveillante
En consultant les traces il peut ecirctre possible de retrouver lrsquoutilisateur malveillant
Ceci peut se faire agrave lrsquoinsu de lrsquointrus
ExempleExemple
Un hocircpital ameacutericain soupccedilonnait que quelqursquoun consultait les dossiers de patients sans en avoir lrsquoautorisation
Ils ont creacuteeacute des fichiers pour des patients qui nrsquoexistent pas
Les accegraves agrave ces fichiers ont alors eacuteteacute retraceacutes jusqursquoagrave lrsquoutilisateur malveillant
Les attaques de lrsquointeacuterieurLes attaques de lrsquointeacuterieurPresque tout ce que nous avons vu a pour but la protection contre les attaques venues de lrsquoexteacuterieur
Les attaques peuvent tregraves bien eacutemaner de lrsquointeacuterieur et peuvent causer des problegravemes seacuterieux
Le premiegravere chose agrave comprendre est qursquoil nrsquoest pas possible de se preacutemunir contre ces attaques si les utilisateurs ont tous les droits sur le systegraveme cible
Il est donc neacutecessaire qursquoune partie du systegraveme soit garantie de fonctionner selon ses speacutecifications mecircme sous attaque
Sans cette hypothegravese le systegraveme est sous le controcircle complet de lrsquoadversaire
Base informatique Base informatique seacutecuriseacuteeseacutecuriseacutee
laquotrusted computing baseraquo (TCB)laquotrusted computing baseraquo (TCB)
Une base seacutecuriseacutee peut ecirctre eacutetablie en utilisant de la seacutecuriteacute mateacuterielle logicielle par mot de passe par exemple
Le rocircle de ce systegraveme de base est de controcircler lrsquoaccegraves aux ressources et le flux drsquoinformation sur celui-ci
Pour bien comprendre comment ces protections fonctionnent nous devons mettre de lrsquoordre dans nos ideacutees Nous devons voir agrave quoi ressemble une politique de seacutecuriteacute dans ce sceacutenario
Crsquoest notre prochain sujet
Filtrage dynamique eacutetenduFiltrage dynamique eacutetenduLe filtrage des coupe-feu dynamiques nrsquoest pas limiteacute aux protocoles TCPIP
Pour des applications usuelles le filtrage peut srsquoappliquer au protocole
Le coupe-feu peut ainsi deacutetecter des comportements inhabituels
Peut aussi filtrer certaines parties des donneacutees transmises
Pour le protocole HTTP le filtre peut supprimer les applications Java
Pour le protocole SMTP le filtre peut supprimer les piegraveces jointes drsquoun certain type
Conclusion sur les coupe-Conclusion sur les coupe-feufeu
Les coupe-feu permettent de filtrer le trafic entre le reacuteseau local et lrsquoInternet en nrsquoadministrant qursquoune seule machine
Les coupe-feu ne sont cependant pas une solution magique pour reacutesoudre les problegravemes causeacutes par les attaques exteacuterieures agrave un reacuteseau local
Les coupe-feu pour un seul ordinateur personnel peuvent offrir une solution sans trop drsquoentretien
Les coupe-feu neacutecessitent des mises agrave jour freacutequentes lorsque le reacuteseau local est de bonne taille Lorsque le reacuteseau local change la configuration du coupe-feu doit aussi changer
Penser que lrsquoinstallation drsquoun coupe-feu rend votre reacuteseau sucircr est un peu de la penseacutee magique (neacutecessaire mais pas suffisant)
Logiciels malveillantsLogiciels malveillantsUn adversaire peut une fois passeacute le coupe-feu et les autres deacutefenses vouloir installer un programme malveillant sur la machine locale Ceux-ci sont de trois types
Chevaux de Troie Programme qui semble tout agrave fait utile mais qui cache une fonction malveillante Par exemple donne accegraves agrave des donneacutees priveacutees donne des droits drsquoaccegraves non autoriseacutes ou deacutetruit des donneacutees
Virus Programme qui infecte un autre programme sur votre ordinateur Agrave partir du programme infecteacute le virus se propage vers drsquoautres programmes Apregraves un certain temps ou eacuteveacutenement les virus peuvent entreprendre certaines actions Celles-ci peuvent ecirctre lrsquoeacutelimination de fichiers la deacuteteacuterioration de fonctions du systegraveme drsquoexploitation etc
Vers Programmes qui infectent un ordinateur sans avoir agrave ecirctre heacutebergeacutes par drsquoautres programmes Ils sont des programmes indeacutependants Ils se multiplient en exploitant diffeacuterentes ressources Les objectifs de ces programmes peuvent ecirctre lrsquoespionnage lrsquoouverture de portes deacuterobeacutees eacutemettre des requecirctes vers un site Internet jusqursquoagrave saturation
ExempleExempleI Love You Un ver lanceacute en 2000 et qui a atteint 31 millions de machines en 4 jours
Infection Le ver eacutetait dissimuleacute en piegravece jointe drsquoun courriel Cette piegravece jointe eacutetait preacutesenteacutee comme Love-Letter-for-youtxtvbs Lrsquoextension vbs indique que le fichier est un script Visual Basic Comme lrsquoextension nrsquoapparaicirct pas sur Windows les utilisateurs voyaient la piegravece jointe comme Love-Letter-for-youtxt Objectif Le script lisait la liste des contacts de lrsquoutilisateur pour envoyer ce mecircme message agrave ceux-ci La plate-forme Windows eacutetait viseacutee Des fichiers eacutetaient deacutetruits et remplaceacutes par ce script Il changeait la page drsquoaccueil drsquoInternet Explorer pour teacuteleacutecharger un cheval de Troie
ExempleExempleCode Red Un ver qui a infecteacute 359 000 ordinateurs en moins de 14 heures le 19 juillet 2001
Infections Le ver se multipliait en essayant des adresses IP aleacuteatoires pour ensuite infecter des serveurs qui faisaient tourner Microsoft IIS avec une faille de seacutecuriteacute
Objectif Monter une attaque par deacuteni de service (DOS) contre la Maison-Blanche
Lrsquoattaque a eacuteteacute facile agrave repousser car le ver veacuterifiait avant de lancer lrsquoattaque que le serveur agrave lrsquoadresse IP (au lieu du nom de domaine) de la Maison-Blanche eacutecoutait le port 80 (le port des serveurs Web) En changeant lrsquoadresse IP de la Maison-Blanche lrsquoattaque a eacuteteacute repousseacutee
ExempleExempleCabir Est un virusver (deacutemonstration de faisabiliteacute laquoproof of conceptraquo) qui srsquoattaque agrave la teacuteleacutephonie mobile Crsquoest un fichier de 15 ko nommeacute CARIBESIS
Infection Se propage par la teacuteleacutephonie mobile gracircce agrave la technologie Bluetooth et le systegraveme drsquoexploitation Symbian OS
Action Agrave chaque fois que le teacuteleacutephone infecteacute est ouvert le mot laquoCariberaquo srsquoaffiche Il tente de se propager aux peacuteripheacuteriques BlueTooth de la zone du teacuteleacutephone infecteacute Il nrsquoest pas meacutechant nrsquoavait pour but que de deacutemontrer la faisabiliteacute
AntivirusAntivirusLes antivirus sont des programmes qui deacutetectent les virus les vers et les chevaux de Troie sur votre ordinateur Ils les eacuteliminent
Ils visitent les fichiers sur votre disque dans le but de trouver des bouts de programmes reconnus comme dangereux
Ceci est possible eacutetant donneacute une base de donneacutees agrave jour contenant les virus connus sous la forme de signatures de virus Une signature est un motif (laquopatternraquo) qui caracteacuterise un virus donneacute
Un antivirus nrsquoest efficace que si sa base de donneacutees est mise agrave jour constamment Les compagnies drsquoantivirus vont vite pour mettre agrave jour leur base de donneacutees lorsqursquoun nouveau virus est identifieacute
Malheureusement les utilisateurs tardent agrave mettre leur copie agrave jour causant bien des infections
Tromper les antivirusTromper les antivirusDe nouveaux virus utilisent les meacutethodes de la cryptographie pour deacutejouer les antivirus
Des virus sont chiffreacutes pour les rendre non reconnaissables par les antivirus car ils ont toujours un aspect diffeacuterent
Ces virus ont un petit code en clair qui permet de les deacutecoder et de les charger en meacutemoire pour ecirctre exeacutecuteacutes Ce code est ce que les antivirus doivent deacutetecter
Ces virus sont de trois types
Oligomorphique Le virus est chiffreacute agrave chaque reacuteplication
Polymorphique Le virus est chiffreacute et la routine de deacutechiffrement est capable de changer certaines de ses instructions au fil des reacuteplications
Meacutetamorphique Le virus change de forme au fil des reacuteplications
IntrusionsIntrusionsPour qursquoun virus ver ou cheval de Troie soit deacuteleacutetegravere encore faut-il qursquoil srsquoinstalle sur votre machine
Mecircme si un adversaire peut parler agrave votre machine ceci nrsquoimplique pas qursquoil peut installer un logiciel sur celle-ci encore moins srsquoil nrsquoen est pas un utilisateur
Pour ce faire les adversaires peuvent essayer diverses strateacutegies
Faiblesses du systegraveme drsquoexploitation ou du logiciel du serveur Nous allons voir un exemple de ce type drsquoattaque attaques par deacutebordement Une page Web nrsquoest pas un objet passif Elle peut contenir du code (JavaScript Perl etc) malveillant
Tromper lrsquoutilisateur Crsquoest peut-ecirctre plus simple Cas speacutecial du piratage psychologique Cliquer ici pour installer un joli logiciel il faut espeacuterer que lrsquoantivirus deacutetecte ceci avant qursquoil ne soit trop tard
Deacutetecter les intrusionsDeacutetecter les intrusionsUne faccedilon diffeacuterente de deacutetecter les logiciels ou utilisateurs malveillants consiste agrave deacutetecter les comportements malveillants
Un systegraveme peut surveiller les processus pour deacutetecter les comportements malveillants
Une telle approche a lrsquoavantage de ne pas deacutependre drsquoinformation sur les virus et les attaques
Un coupe-feu dynamique est un exemple de cette approche
Il surveille les connexions et tente de deacuteterminer si un client transmet des donneacutees agrave contenu suspect (comme la taille)
Requecirctes Requecirctes malveillantesmalveillantes
dlkjfdsflkjsd dlkjfdsflkjsd fjdskl gfjdlskewqewewewewhdfbfbfbww fjdskl gfjdlskewqewewewewhdfbfbfbww jaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfjaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfwewqewqewqewqewqewqeweekjwweeqqqsxcswdswewqewqewqewqewqewqeweekjwweeqqqsxcswdsdddds dddds ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqqwwq qwwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewqeweekwqwqwefdscxcccj qeweekwqwqwefdscxcccj ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxzcwq zcwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfssaDSADSADSsfghdskjgfhdsgfihoiehjrfssaDSADSADSADDSDSDSSDSDSADDSDSDSSDSDSIl arrive que de longues requecirctes puissent faire planter un systegraveme
mal programmeacute Un adversaire peut donc soumettre des chaicircnes tregraves longues dans le but de rendre le systegraveme inopeacuterant (ou mecircme pire assujetti) comme nous le verrons plus loin
Et agrave peu pregraves nrsquoimporte qui Et agrave peu pregraves nrsquoimporte qui peut proposer un service peut proposer un service
comme celui-ci comme celui-ci
Un coupe-feu peut filtrer les requecirctes anormalement longues pour les ignorer Mecircme les systegravemes avec programmes erroneacutes seront agrave lrsquoabri de ce type drsquoattaque
SELECT SELECT FROM Passwords FROM Passwords WHERE user=rsquoWHERE user=rsquoJugheadJugheadrsquo AND password=rsquorsquo AND password=rsquoxrsquo xrsquo OR lsquo1rsquo=lsquo1OR lsquo1rsquo=lsquo1rsquorsquo
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Requecirctes Requecirctes malveillantesmalveillantes
HTTPSHTTPS
Password Password xrsquo OR xrsquo OR lsquo1rsquo=rsquo1lsquo1rsquo=rsquo1
Un coupe-feu dynamique peut filtrer des requecirctes bizarres comme xrsquo OR lsquo1rsquo=rsquo1xrsquo OR lsquo1rsquo=rsquo1
Ceci est beaucoup plus difficile agrave Ceci est beaucoup plus difficile agrave reacutealiser par un coupe-feu que reacutealiser par un coupe-feu que
lrsquoexemple preacuteceacutedentlrsquoexemple preacuteceacutedent
Approche Approche comportementalecomportementaleUne autre approche pour la deacutetection drsquointrusions consiste agrave
observer certains aspects du comportement des utilisateurs et programmes
activiteacutes de connexion et de session
activiteacutes relieacutees agrave lrsquoexeacutecution de programme et drsquoaccegraves aux fichiers
Il y a deux approches pour la deacutetection de comportements suspects
Par regravegles (rule-based) Un ensemble de regravegles deacutecrivant les comportements normaux est eacutetabli Les comportements anormaux (trop loin des normaux) sont rejeteacutes
Statistique Des statistiques sur les utilisateurs normaux sont creacuteeacutees Le comportement de lrsquoutilisateurprogramme observeacute est compareacute aux statistiques Un comportement montrant un trop grand eacutecart avec les statistiques est rejeteacute
Problegravemes avec les Problegravemes avec les systegravemes de deacutetection systegravemes de deacutetection
drsquointrusion (IDS)drsquointrusion (IDS)Le problegraveme majeur avec lrsquoapproche est le mecircme qursquoavec la biomeacutetrie Le systegraveme qui surveille doit ecirctre assez toleacuterant pour autoriser les comportements normaux mais suffisamment restrictif pour attraper les acteurs malveillants
Ce problegraveme nrsquoest pas tregraves bien compris et les solutions proposeacutees ne sont pas tout agrave fait satisfaisantes
La deacutetection drsquointrusion est bien inutile si le systegraveme ne reacuteagit pas de la bonne faccedilon lorsqursquoune intrusion est deacutetecteacutee La partie du systegraveme qui alerte lrsquoadministrateur qui interdit lrsquoaccegraves qui effectue quelque autre tacircche pour eacuteliminer la menace est tout aussi importante que celle qui deacutetecte
Le pot de mielLe pot de miel
Le pot de miel (laquohoney potraquo) est un truc pratique pour la deacutetection drsquointrusions
Une ressource bidon qui semble inteacuteressante pour un adversaire est creacuteeacutee
Puisque celle-ci est bidon on peut supposer que si quelqursquoun y accegravede crsquoest qursquoil srsquoadonne agrave une activiteacute malveillante
En consultant les traces il peut ecirctre possible de retrouver lrsquoutilisateur malveillant
Ceci peut se faire agrave lrsquoinsu de lrsquointrus
ExempleExemple
Un hocircpital ameacutericain soupccedilonnait que quelqursquoun consultait les dossiers de patients sans en avoir lrsquoautorisation
Ils ont creacuteeacute des fichiers pour des patients qui nrsquoexistent pas
Les accegraves agrave ces fichiers ont alors eacuteteacute retraceacutes jusqursquoagrave lrsquoutilisateur malveillant
Les attaques de lrsquointeacuterieurLes attaques de lrsquointeacuterieurPresque tout ce que nous avons vu a pour but la protection contre les attaques venues de lrsquoexteacuterieur
Les attaques peuvent tregraves bien eacutemaner de lrsquointeacuterieur et peuvent causer des problegravemes seacuterieux
Le premiegravere chose agrave comprendre est qursquoil nrsquoest pas possible de se preacutemunir contre ces attaques si les utilisateurs ont tous les droits sur le systegraveme cible
Il est donc neacutecessaire qursquoune partie du systegraveme soit garantie de fonctionner selon ses speacutecifications mecircme sous attaque
Sans cette hypothegravese le systegraveme est sous le controcircle complet de lrsquoadversaire
Base informatique Base informatique seacutecuriseacuteeseacutecuriseacutee
laquotrusted computing baseraquo (TCB)laquotrusted computing baseraquo (TCB)
Une base seacutecuriseacutee peut ecirctre eacutetablie en utilisant de la seacutecuriteacute mateacuterielle logicielle par mot de passe par exemple
Le rocircle de ce systegraveme de base est de controcircler lrsquoaccegraves aux ressources et le flux drsquoinformation sur celui-ci
Pour bien comprendre comment ces protections fonctionnent nous devons mettre de lrsquoordre dans nos ideacutees Nous devons voir agrave quoi ressemble une politique de seacutecuriteacute dans ce sceacutenario
Crsquoest notre prochain sujet
Conclusion sur les coupe-Conclusion sur les coupe-feufeu
Les coupe-feu permettent de filtrer le trafic entre le reacuteseau local et lrsquoInternet en nrsquoadministrant qursquoune seule machine
Les coupe-feu ne sont cependant pas une solution magique pour reacutesoudre les problegravemes causeacutes par les attaques exteacuterieures agrave un reacuteseau local
Les coupe-feu pour un seul ordinateur personnel peuvent offrir une solution sans trop drsquoentretien
Les coupe-feu neacutecessitent des mises agrave jour freacutequentes lorsque le reacuteseau local est de bonne taille Lorsque le reacuteseau local change la configuration du coupe-feu doit aussi changer
Penser que lrsquoinstallation drsquoun coupe-feu rend votre reacuteseau sucircr est un peu de la penseacutee magique (neacutecessaire mais pas suffisant)
Logiciels malveillantsLogiciels malveillantsUn adversaire peut une fois passeacute le coupe-feu et les autres deacutefenses vouloir installer un programme malveillant sur la machine locale Ceux-ci sont de trois types
Chevaux de Troie Programme qui semble tout agrave fait utile mais qui cache une fonction malveillante Par exemple donne accegraves agrave des donneacutees priveacutees donne des droits drsquoaccegraves non autoriseacutes ou deacutetruit des donneacutees
Virus Programme qui infecte un autre programme sur votre ordinateur Agrave partir du programme infecteacute le virus se propage vers drsquoautres programmes Apregraves un certain temps ou eacuteveacutenement les virus peuvent entreprendre certaines actions Celles-ci peuvent ecirctre lrsquoeacutelimination de fichiers la deacuteteacuterioration de fonctions du systegraveme drsquoexploitation etc
Vers Programmes qui infectent un ordinateur sans avoir agrave ecirctre heacutebergeacutes par drsquoautres programmes Ils sont des programmes indeacutependants Ils se multiplient en exploitant diffeacuterentes ressources Les objectifs de ces programmes peuvent ecirctre lrsquoespionnage lrsquoouverture de portes deacuterobeacutees eacutemettre des requecirctes vers un site Internet jusqursquoagrave saturation
ExempleExempleI Love You Un ver lanceacute en 2000 et qui a atteint 31 millions de machines en 4 jours
Infection Le ver eacutetait dissimuleacute en piegravece jointe drsquoun courriel Cette piegravece jointe eacutetait preacutesenteacutee comme Love-Letter-for-youtxtvbs Lrsquoextension vbs indique que le fichier est un script Visual Basic Comme lrsquoextension nrsquoapparaicirct pas sur Windows les utilisateurs voyaient la piegravece jointe comme Love-Letter-for-youtxt Objectif Le script lisait la liste des contacts de lrsquoutilisateur pour envoyer ce mecircme message agrave ceux-ci La plate-forme Windows eacutetait viseacutee Des fichiers eacutetaient deacutetruits et remplaceacutes par ce script Il changeait la page drsquoaccueil drsquoInternet Explorer pour teacuteleacutecharger un cheval de Troie
ExempleExempleCode Red Un ver qui a infecteacute 359 000 ordinateurs en moins de 14 heures le 19 juillet 2001
Infections Le ver se multipliait en essayant des adresses IP aleacuteatoires pour ensuite infecter des serveurs qui faisaient tourner Microsoft IIS avec une faille de seacutecuriteacute
Objectif Monter une attaque par deacuteni de service (DOS) contre la Maison-Blanche
Lrsquoattaque a eacuteteacute facile agrave repousser car le ver veacuterifiait avant de lancer lrsquoattaque que le serveur agrave lrsquoadresse IP (au lieu du nom de domaine) de la Maison-Blanche eacutecoutait le port 80 (le port des serveurs Web) En changeant lrsquoadresse IP de la Maison-Blanche lrsquoattaque a eacuteteacute repousseacutee
ExempleExempleCabir Est un virusver (deacutemonstration de faisabiliteacute laquoproof of conceptraquo) qui srsquoattaque agrave la teacuteleacutephonie mobile Crsquoest un fichier de 15 ko nommeacute CARIBESIS
Infection Se propage par la teacuteleacutephonie mobile gracircce agrave la technologie Bluetooth et le systegraveme drsquoexploitation Symbian OS
Action Agrave chaque fois que le teacuteleacutephone infecteacute est ouvert le mot laquoCariberaquo srsquoaffiche Il tente de se propager aux peacuteripheacuteriques BlueTooth de la zone du teacuteleacutephone infecteacute Il nrsquoest pas meacutechant nrsquoavait pour but que de deacutemontrer la faisabiliteacute
AntivirusAntivirusLes antivirus sont des programmes qui deacutetectent les virus les vers et les chevaux de Troie sur votre ordinateur Ils les eacuteliminent
Ils visitent les fichiers sur votre disque dans le but de trouver des bouts de programmes reconnus comme dangereux
Ceci est possible eacutetant donneacute une base de donneacutees agrave jour contenant les virus connus sous la forme de signatures de virus Une signature est un motif (laquopatternraquo) qui caracteacuterise un virus donneacute
Un antivirus nrsquoest efficace que si sa base de donneacutees est mise agrave jour constamment Les compagnies drsquoantivirus vont vite pour mettre agrave jour leur base de donneacutees lorsqursquoun nouveau virus est identifieacute
Malheureusement les utilisateurs tardent agrave mettre leur copie agrave jour causant bien des infections
Tromper les antivirusTromper les antivirusDe nouveaux virus utilisent les meacutethodes de la cryptographie pour deacutejouer les antivirus
Des virus sont chiffreacutes pour les rendre non reconnaissables par les antivirus car ils ont toujours un aspect diffeacuterent
Ces virus ont un petit code en clair qui permet de les deacutecoder et de les charger en meacutemoire pour ecirctre exeacutecuteacutes Ce code est ce que les antivirus doivent deacutetecter
Ces virus sont de trois types
Oligomorphique Le virus est chiffreacute agrave chaque reacuteplication
Polymorphique Le virus est chiffreacute et la routine de deacutechiffrement est capable de changer certaines de ses instructions au fil des reacuteplications
Meacutetamorphique Le virus change de forme au fil des reacuteplications
IntrusionsIntrusionsPour qursquoun virus ver ou cheval de Troie soit deacuteleacutetegravere encore faut-il qursquoil srsquoinstalle sur votre machine
Mecircme si un adversaire peut parler agrave votre machine ceci nrsquoimplique pas qursquoil peut installer un logiciel sur celle-ci encore moins srsquoil nrsquoen est pas un utilisateur
Pour ce faire les adversaires peuvent essayer diverses strateacutegies
Faiblesses du systegraveme drsquoexploitation ou du logiciel du serveur Nous allons voir un exemple de ce type drsquoattaque attaques par deacutebordement Une page Web nrsquoest pas un objet passif Elle peut contenir du code (JavaScript Perl etc) malveillant
Tromper lrsquoutilisateur Crsquoest peut-ecirctre plus simple Cas speacutecial du piratage psychologique Cliquer ici pour installer un joli logiciel il faut espeacuterer que lrsquoantivirus deacutetecte ceci avant qursquoil ne soit trop tard
Deacutetecter les intrusionsDeacutetecter les intrusionsUne faccedilon diffeacuterente de deacutetecter les logiciels ou utilisateurs malveillants consiste agrave deacutetecter les comportements malveillants
Un systegraveme peut surveiller les processus pour deacutetecter les comportements malveillants
Une telle approche a lrsquoavantage de ne pas deacutependre drsquoinformation sur les virus et les attaques
Un coupe-feu dynamique est un exemple de cette approche
Il surveille les connexions et tente de deacuteterminer si un client transmet des donneacutees agrave contenu suspect (comme la taille)
Requecirctes Requecirctes malveillantesmalveillantes
dlkjfdsflkjsd dlkjfdsflkjsd fjdskl gfjdlskewqewewewewhdfbfbfbww fjdskl gfjdlskewqewewewewhdfbfbfbww jaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfjaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfwewqewqewqewqewqewqeweekjwweeqqqsxcswdswewqewqewqewqewqewqeweekjwweeqqqsxcswdsdddds dddds ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqqwwq qwwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewqeweekwqwqwefdscxcccj qeweekwqwqwefdscxcccj ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxzcwq zcwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfssaDSADSADSsfghdskjgfhdsgfihoiehjrfssaDSADSADSADDSDSDSSDSDSADDSDSDSSDSDSIl arrive que de longues requecirctes puissent faire planter un systegraveme
mal programmeacute Un adversaire peut donc soumettre des chaicircnes tregraves longues dans le but de rendre le systegraveme inopeacuterant (ou mecircme pire assujetti) comme nous le verrons plus loin
Et agrave peu pregraves nrsquoimporte qui Et agrave peu pregraves nrsquoimporte qui peut proposer un service peut proposer un service
comme celui-ci comme celui-ci
Un coupe-feu peut filtrer les requecirctes anormalement longues pour les ignorer Mecircme les systegravemes avec programmes erroneacutes seront agrave lrsquoabri de ce type drsquoattaque
SELECT SELECT FROM Passwords FROM Passwords WHERE user=rsquoWHERE user=rsquoJugheadJugheadrsquo AND password=rsquorsquo AND password=rsquoxrsquo xrsquo OR lsquo1rsquo=lsquo1OR lsquo1rsquo=lsquo1rsquorsquo
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Requecirctes Requecirctes malveillantesmalveillantes
HTTPSHTTPS
Password Password xrsquo OR xrsquo OR lsquo1rsquo=rsquo1lsquo1rsquo=rsquo1
Un coupe-feu dynamique peut filtrer des requecirctes bizarres comme xrsquo OR lsquo1rsquo=rsquo1xrsquo OR lsquo1rsquo=rsquo1
Ceci est beaucoup plus difficile agrave Ceci est beaucoup plus difficile agrave reacutealiser par un coupe-feu que reacutealiser par un coupe-feu que
lrsquoexemple preacuteceacutedentlrsquoexemple preacuteceacutedent
Approche Approche comportementalecomportementaleUne autre approche pour la deacutetection drsquointrusions consiste agrave
observer certains aspects du comportement des utilisateurs et programmes
activiteacutes de connexion et de session
activiteacutes relieacutees agrave lrsquoexeacutecution de programme et drsquoaccegraves aux fichiers
Il y a deux approches pour la deacutetection de comportements suspects
Par regravegles (rule-based) Un ensemble de regravegles deacutecrivant les comportements normaux est eacutetabli Les comportements anormaux (trop loin des normaux) sont rejeteacutes
Statistique Des statistiques sur les utilisateurs normaux sont creacuteeacutees Le comportement de lrsquoutilisateurprogramme observeacute est compareacute aux statistiques Un comportement montrant un trop grand eacutecart avec les statistiques est rejeteacute
Problegravemes avec les Problegravemes avec les systegravemes de deacutetection systegravemes de deacutetection
drsquointrusion (IDS)drsquointrusion (IDS)Le problegraveme majeur avec lrsquoapproche est le mecircme qursquoavec la biomeacutetrie Le systegraveme qui surveille doit ecirctre assez toleacuterant pour autoriser les comportements normaux mais suffisamment restrictif pour attraper les acteurs malveillants
Ce problegraveme nrsquoest pas tregraves bien compris et les solutions proposeacutees ne sont pas tout agrave fait satisfaisantes
La deacutetection drsquointrusion est bien inutile si le systegraveme ne reacuteagit pas de la bonne faccedilon lorsqursquoune intrusion est deacutetecteacutee La partie du systegraveme qui alerte lrsquoadministrateur qui interdit lrsquoaccegraves qui effectue quelque autre tacircche pour eacuteliminer la menace est tout aussi importante que celle qui deacutetecte
Le pot de mielLe pot de miel
Le pot de miel (laquohoney potraquo) est un truc pratique pour la deacutetection drsquointrusions
Une ressource bidon qui semble inteacuteressante pour un adversaire est creacuteeacutee
Puisque celle-ci est bidon on peut supposer que si quelqursquoun y accegravede crsquoest qursquoil srsquoadonne agrave une activiteacute malveillante
En consultant les traces il peut ecirctre possible de retrouver lrsquoutilisateur malveillant
Ceci peut se faire agrave lrsquoinsu de lrsquointrus
ExempleExemple
Un hocircpital ameacutericain soupccedilonnait que quelqursquoun consultait les dossiers de patients sans en avoir lrsquoautorisation
Ils ont creacuteeacute des fichiers pour des patients qui nrsquoexistent pas
Les accegraves agrave ces fichiers ont alors eacuteteacute retraceacutes jusqursquoagrave lrsquoutilisateur malveillant
Les attaques de lrsquointeacuterieurLes attaques de lrsquointeacuterieurPresque tout ce que nous avons vu a pour but la protection contre les attaques venues de lrsquoexteacuterieur
Les attaques peuvent tregraves bien eacutemaner de lrsquointeacuterieur et peuvent causer des problegravemes seacuterieux
Le premiegravere chose agrave comprendre est qursquoil nrsquoest pas possible de se preacutemunir contre ces attaques si les utilisateurs ont tous les droits sur le systegraveme cible
Il est donc neacutecessaire qursquoune partie du systegraveme soit garantie de fonctionner selon ses speacutecifications mecircme sous attaque
Sans cette hypothegravese le systegraveme est sous le controcircle complet de lrsquoadversaire
Base informatique Base informatique seacutecuriseacuteeseacutecuriseacutee
laquotrusted computing baseraquo (TCB)laquotrusted computing baseraquo (TCB)
Une base seacutecuriseacutee peut ecirctre eacutetablie en utilisant de la seacutecuriteacute mateacuterielle logicielle par mot de passe par exemple
Le rocircle de ce systegraveme de base est de controcircler lrsquoaccegraves aux ressources et le flux drsquoinformation sur celui-ci
Pour bien comprendre comment ces protections fonctionnent nous devons mettre de lrsquoordre dans nos ideacutees Nous devons voir agrave quoi ressemble une politique de seacutecuriteacute dans ce sceacutenario
Crsquoest notre prochain sujet
Logiciels malveillantsLogiciels malveillantsUn adversaire peut une fois passeacute le coupe-feu et les autres deacutefenses vouloir installer un programme malveillant sur la machine locale Ceux-ci sont de trois types
Chevaux de Troie Programme qui semble tout agrave fait utile mais qui cache une fonction malveillante Par exemple donne accegraves agrave des donneacutees priveacutees donne des droits drsquoaccegraves non autoriseacutes ou deacutetruit des donneacutees
Virus Programme qui infecte un autre programme sur votre ordinateur Agrave partir du programme infecteacute le virus se propage vers drsquoautres programmes Apregraves un certain temps ou eacuteveacutenement les virus peuvent entreprendre certaines actions Celles-ci peuvent ecirctre lrsquoeacutelimination de fichiers la deacuteteacuterioration de fonctions du systegraveme drsquoexploitation etc
Vers Programmes qui infectent un ordinateur sans avoir agrave ecirctre heacutebergeacutes par drsquoautres programmes Ils sont des programmes indeacutependants Ils se multiplient en exploitant diffeacuterentes ressources Les objectifs de ces programmes peuvent ecirctre lrsquoespionnage lrsquoouverture de portes deacuterobeacutees eacutemettre des requecirctes vers un site Internet jusqursquoagrave saturation
ExempleExempleI Love You Un ver lanceacute en 2000 et qui a atteint 31 millions de machines en 4 jours
Infection Le ver eacutetait dissimuleacute en piegravece jointe drsquoun courriel Cette piegravece jointe eacutetait preacutesenteacutee comme Love-Letter-for-youtxtvbs Lrsquoextension vbs indique que le fichier est un script Visual Basic Comme lrsquoextension nrsquoapparaicirct pas sur Windows les utilisateurs voyaient la piegravece jointe comme Love-Letter-for-youtxt Objectif Le script lisait la liste des contacts de lrsquoutilisateur pour envoyer ce mecircme message agrave ceux-ci La plate-forme Windows eacutetait viseacutee Des fichiers eacutetaient deacutetruits et remplaceacutes par ce script Il changeait la page drsquoaccueil drsquoInternet Explorer pour teacuteleacutecharger un cheval de Troie
ExempleExempleCode Red Un ver qui a infecteacute 359 000 ordinateurs en moins de 14 heures le 19 juillet 2001
Infections Le ver se multipliait en essayant des adresses IP aleacuteatoires pour ensuite infecter des serveurs qui faisaient tourner Microsoft IIS avec une faille de seacutecuriteacute
Objectif Monter une attaque par deacuteni de service (DOS) contre la Maison-Blanche
Lrsquoattaque a eacuteteacute facile agrave repousser car le ver veacuterifiait avant de lancer lrsquoattaque que le serveur agrave lrsquoadresse IP (au lieu du nom de domaine) de la Maison-Blanche eacutecoutait le port 80 (le port des serveurs Web) En changeant lrsquoadresse IP de la Maison-Blanche lrsquoattaque a eacuteteacute repousseacutee
ExempleExempleCabir Est un virusver (deacutemonstration de faisabiliteacute laquoproof of conceptraquo) qui srsquoattaque agrave la teacuteleacutephonie mobile Crsquoest un fichier de 15 ko nommeacute CARIBESIS
Infection Se propage par la teacuteleacutephonie mobile gracircce agrave la technologie Bluetooth et le systegraveme drsquoexploitation Symbian OS
Action Agrave chaque fois que le teacuteleacutephone infecteacute est ouvert le mot laquoCariberaquo srsquoaffiche Il tente de se propager aux peacuteripheacuteriques BlueTooth de la zone du teacuteleacutephone infecteacute Il nrsquoest pas meacutechant nrsquoavait pour but que de deacutemontrer la faisabiliteacute
AntivirusAntivirusLes antivirus sont des programmes qui deacutetectent les virus les vers et les chevaux de Troie sur votre ordinateur Ils les eacuteliminent
Ils visitent les fichiers sur votre disque dans le but de trouver des bouts de programmes reconnus comme dangereux
Ceci est possible eacutetant donneacute une base de donneacutees agrave jour contenant les virus connus sous la forme de signatures de virus Une signature est un motif (laquopatternraquo) qui caracteacuterise un virus donneacute
Un antivirus nrsquoest efficace que si sa base de donneacutees est mise agrave jour constamment Les compagnies drsquoantivirus vont vite pour mettre agrave jour leur base de donneacutees lorsqursquoun nouveau virus est identifieacute
Malheureusement les utilisateurs tardent agrave mettre leur copie agrave jour causant bien des infections
Tromper les antivirusTromper les antivirusDe nouveaux virus utilisent les meacutethodes de la cryptographie pour deacutejouer les antivirus
Des virus sont chiffreacutes pour les rendre non reconnaissables par les antivirus car ils ont toujours un aspect diffeacuterent
Ces virus ont un petit code en clair qui permet de les deacutecoder et de les charger en meacutemoire pour ecirctre exeacutecuteacutes Ce code est ce que les antivirus doivent deacutetecter
Ces virus sont de trois types
Oligomorphique Le virus est chiffreacute agrave chaque reacuteplication
Polymorphique Le virus est chiffreacute et la routine de deacutechiffrement est capable de changer certaines de ses instructions au fil des reacuteplications
Meacutetamorphique Le virus change de forme au fil des reacuteplications
IntrusionsIntrusionsPour qursquoun virus ver ou cheval de Troie soit deacuteleacutetegravere encore faut-il qursquoil srsquoinstalle sur votre machine
Mecircme si un adversaire peut parler agrave votre machine ceci nrsquoimplique pas qursquoil peut installer un logiciel sur celle-ci encore moins srsquoil nrsquoen est pas un utilisateur
Pour ce faire les adversaires peuvent essayer diverses strateacutegies
Faiblesses du systegraveme drsquoexploitation ou du logiciel du serveur Nous allons voir un exemple de ce type drsquoattaque attaques par deacutebordement Une page Web nrsquoest pas un objet passif Elle peut contenir du code (JavaScript Perl etc) malveillant
Tromper lrsquoutilisateur Crsquoest peut-ecirctre plus simple Cas speacutecial du piratage psychologique Cliquer ici pour installer un joli logiciel il faut espeacuterer que lrsquoantivirus deacutetecte ceci avant qursquoil ne soit trop tard
Deacutetecter les intrusionsDeacutetecter les intrusionsUne faccedilon diffeacuterente de deacutetecter les logiciels ou utilisateurs malveillants consiste agrave deacutetecter les comportements malveillants
Un systegraveme peut surveiller les processus pour deacutetecter les comportements malveillants
Une telle approche a lrsquoavantage de ne pas deacutependre drsquoinformation sur les virus et les attaques
Un coupe-feu dynamique est un exemple de cette approche
Il surveille les connexions et tente de deacuteterminer si un client transmet des donneacutees agrave contenu suspect (comme la taille)
Requecirctes Requecirctes malveillantesmalveillantes
dlkjfdsflkjsd dlkjfdsflkjsd fjdskl gfjdlskewqewewewewhdfbfbfbww fjdskl gfjdlskewqewewewewhdfbfbfbww jaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfjaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfwewqewqewqewqewqewqeweekjwweeqqqsxcswdswewqewqewqewqewqewqeweekjwweeqqqsxcswdsdddds dddds ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqqwwq qwwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewqeweekwqwqwefdscxcccj qeweekwqwqwefdscxcccj ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxzcwq zcwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfssaDSADSADSsfghdskjgfhdsgfihoiehjrfssaDSADSADSADDSDSDSSDSDSADDSDSDSSDSDSIl arrive que de longues requecirctes puissent faire planter un systegraveme
mal programmeacute Un adversaire peut donc soumettre des chaicircnes tregraves longues dans le but de rendre le systegraveme inopeacuterant (ou mecircme pire assujetti) comme nous le verrons plus loin
Et agrave peu pregraves nrsquoimporte qui Et agrave peu pregraves nrsquoimporte qui peut proposer un service peut proposer un service
comme celui-ci comme celui-ci
Un coupe-feu peut filtrer les requecirctes anormalement longues pour les ignorer Mecircme les systegravemes avec programmes erroneacutes seront agrave lrsquoabri de ce type drsquoattaque
SELECT SELECT FROM Passwords FROM Passwords WHERE user=rsquoWHERE user=rsquoJugheadJugheadrsquo AND password=rsquorsquo AND password=rsquoxrsquo xrsquo OR lsquo1rsquo=lsquo1OR lsquo1rsquo=lsquo1rsquorsquo
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Requecirctes Requecirctes malveillantesmalveillantes
HTTPSHTTPS
Password Password xrsquo OR xrsquo OR lsquo1rsquo=rsquo1lsquo1rsquo=rsquo1
Un coupe-feu dynamique peut filtrer des requecirctes bizarres comme xrsquo OR lsquo1rsquo=rsquo1xrsquo OR lsquo1rsquo=rsquo1
Ceci est beaucoup plus difficile agrave Ceci est beaucoup plus difficile agrave reacutealiser par un coupe-feu que reacutealiser par un coupe-feu que
lrsquoexemple preacuteceacutedentlrsquoexemple preacuteceacutedent
Approche Approche comportementalecomportementaleUne autre approche pour la deacutetection drsquointrusions consiste agrave
observer certains aspects du comportement des utilisateurs et programmes
activiteacutes de connexion et de session
activiteacutes relieacutees agrave lrsquoexeacutecution de programme et drsquoaccegraves aux fichiers
Il y a deux approches pour la deacutetection de comportements suspects
Par regravegles (rule-based) Un ensemble de regravegles deacutecrivant les comportements normaux est eacutetabli Les comportements anormaux (trop loin des normaux) sont rejeteacutes
Statistique Des statistiques sur les utilisateurs normaux sont creacuteeacutees Le comportement de lrsquoutilisateurprogramme observeacute est compareacute aux statistiques Un comportement montrant un trop grand eacutecart avec les statistiques est rejeteacute
Problegravemes avec les Problegravemes avec les systegravemes de deacutetection systegravemes de deacutetection
drsquointrusion (IDS)drsquointrusion (IDS)Le problegraveme majeur avec lrsquoapproche est le mecircme qursquoavec la biomeacutetrie Le systegraveme qui surveille doit ecirctre assez toleacuterant pour autoriser les comportements normaux mais suffisamment restrictif pour attraper les acteurs malveillants
Ce problegraveme nrsquoest pas tregraves bien compris et les solutions proposeacutees ne sont pas tout agrave fait satisfaisantes
La deacutetection drsquointrusion est bien inutile si le systegraveme ne reacuteagit pas de la bonne faccedilon lorsqursquoune intrusion est deacutetecteacutee La partie du systegraveme qui alerte lrsquoadministrateur qui interdit lrsquoaccegraves qui effectue quelque autre tacircche pour eacuteliminer la menace est tout aussi importante que celle qui deacutetecte
Le pot de mielLe pot de miel
Le pot de miel (laquohoney potraquo) est un truc pratique pour la deacutetection drsquointrusions
Une ressource bidon qui semble inteacuteressante pour un adversaire est creacuteeacutee
Puisque celle-ci est bidon on peut supposer que si quelqursquoun y accegravede crsquoest qursquoil srsquoadonne agrave une activiteacute malveillante
En consultant les traces il peut ecirctre possible de retrouver lrsquoutilisateur malveillant
Ceci peut se faire agrave lrsquoinsu de lrsquointrus
ExempleExemple
Un hocircpital ameacutericain soupccedilonnait que quelqursquoun consultait les dossiers de patients sans en avoir lrsquoautorisation
Ils ont creacuteeacute des fichiers pour des patients qui nrsquoexistent pas
Les accegraves agrave ces fichiers ont alors eacuteteacute retraceacutes jusqursquoagrave lrsquoutilisateur malveillant
Les attaques de lrsquointeacuterieurLes attaques de lrsquointeacuterieurPresque tout ce que nous avons vu a pour but la protection contre les attaques venues de lrsquoexteacuterieur
Les attaques peuvent tregraves bien eacutemaner de lrsquointeacuterieur et peuvent causer des problegravemes seacuterieux
Le premiegravere chose agrave comprendre est qursquoil nrsquoest pas possible de se preacutemunir contre ces attaques si les utilisateurs ont tous les droits sur le systegraveme cible
Il est donc neacutecessaire qursquoune partie du systegraveme soit garantie de fonctionner selon ses speacutecifications mecircme sous attaque
Sans cette hypothegravese le systegraveme est sous le controcircle complet de lrsquoadversaire
Base informatique Base informatique seacutecuriseacuteeseacutecuriseacutee
laquotrusted computing baseraquo (TCB)laquotrusted computing baseraquo (TCB)
Une base seacutecuriseacutee peut ecirctre eacutetablie en utilisant de la seacutecuriteacute mateacuterielle logicielle par mot de passe par exemple
Le rocircle de ce systegraveme de base est de controcircler lrsquoaccegraves aux ressources et le flux drsquoinformation sur celui-ci
Pour bien comprendre comment ces protections fonctionnent nous devons mettre de lrsquoordre dans nos ideacutees Nous devons voir agrave quoi ressemble une politique de seacutecuriteacute dans ce sceacutenario
Crsquoest notre prochain sujet
ExempleExempleI Love You Un ver lanceacute en 2000 et qui a atteint 31 millions de machines en 4 jours
Infection Le ver eacutetait dissimuleacute en piegravece jointe drsquoun courriel Cette piegravece jointe eacutetait preacutesenteacutee comme Love-Letter-for-youtxtvbs Lrsquoextension vbs indique que le fichier est un script Visual Basic Comme lrsquoextension nrsquoapparaicirct pas sur Windows les utilisateurs voyaient la piegravece jointe comme Love-Letter-for-youtxt Objectif Le script lisait la liste des contacts de lrsquoutilisateur pour envoyer ce mecircme message agrave ceux-ci La plate-forme Windows eacutetait viseacutee Des fichiers eacutetaient deacutetruits et remplaceacutes par ce script Il changeait la page drsquoaccueil drsquoInternet Explorer pour teacuteleacutecharger un cheval de Troie
ExempleExempleCode Red Un ver qui a infecteacute 359 000 ordinateurs en moins de 14 heures le 19 juillet 2001
Infections Le ver se multipliait en essayant des adresses IP aleacuteatoires pour ensuite infecter des serveurs qui faisaient tourner Microsoft IIS avec une faille de seacutecuriteacute
Objectif Monter une attaque par deacuteni de service (DOS) contre la Maison-Blanche
Lrsquoattaque a eacuteteacute facile agrave repousser car le ver veacuterifiait avant de lancer lrsquoattaque que le serveur agrave lrsquoadresse IP (au lieu du nom de domaine) de la Maison-Blanche eacutecoutait le port 80 (le port des serveurs Web) En changeant lrsquoadresse IP de la Maison-Blanche lrsquoattaque a eacuteteacute repousseacutee
ExempleExempleCabir Est un virusver (deacutemonstration de faisabiliteacute laquoproof of conceptraquo) qui srsquoattaque agrave la teacuteleacutephonie mobile Crsquoest un fichier de 15 ko nommeacute CARIBESIS
Infection Se propage par la teacuteleacutephonie mobile gracircce agrave la technologie Bluetooth et le systegraveme drsquoexploitation Symbian OS
Action Agrave chaque fois que le teacuteleacutephone infecteacute est ouvert le mot laquoCariberaquo srsquoaffiche Il tente de se propager aux peacuteripheacuteriques BlueTooth de la zone du teacuteleacutephone infecteacute Il nrsquoest pas meacutechant nrsquoavait pour but que de deacutemontrer la faisabiliteacute
AntivirusAntivirusLes antivirus sont des programmes qui deacutetectent les virus les vers et les chevaux de Troie sur votre ordinateur Ils les eacuteliminent
Ils visitent les fichiers sur votre disque dans le but de trouver des bouts de programmes reconnus comme dangereux
Ceci est possible eacutetant donneacute une base de donneacutees agrave jour contenant les virus connus sous la forme de signatures de virus Une signature est un motif (laquopatternraquo) qui caracteacuterise un virus donneacute
Un antivirus nrsquoest efficace que si sa base de donneacutees est mise agrave jour constamment Les compagnies drsquoantivirus vont vite pour mettre agrave jour leur base de donneacutees lorsqursquoun nouveau virus est identifieacute
Malheureusement les utilisateurs tardent agrave mettre leur copie agrave jour causant bien des infections
Tromper les antivirusTromper les antivirusDe nouveaux virus utilisent les meacutethodes de la cryptographie pour deacutejouer les antivirus
Des virus sont chiffreacutes pour les rendre non reconnaissables par les antivirus car ils ont toujours un aspect diffeacuterent
Ces virus ont un petit code en clair qui permet de les deacutecoder et de les charger en meacutemoire pour ecirctre exeacutecuteacutes Ce code est ce que les antivirus doivent deacutetecter
Ces virus sont de trois types
Oligomorphique Le virus est chiffreacute agrave chaque reacuteplication
Polymorphique Le virus est chiffreacute et la routine de deacutechiffrement est capable de changer certaines de ses instructions au fil des reacuteplications
Meacutetamorphique Le virus change de forme au fil des reacuteplications
IntrusionsIntrusionsPour qursquoun virus ver ou cheval de Troie soit deacuteleacutetegravere encore faut-il qursquoil srsquoinstalle sur votre machine
Mecircme si un adversaire peut parler agrave votre machine ceci nrsquoimplique pas qursquoil peut installer un logiciel sur celle-ci encore moins srsquoil nrsquoen est pas un utilisateur
Pour ce faire les adversaires peuvent essayer diverses strateacutegies
Faiblesses du systegraveme drsquoexploitation ou du logiciel du serveur Nous allons voir un exemple de ce type drsquoattaque attaques par deacutebordement Une page Web nrsquoest pas un objet passif Elle peut contenir du code (JavaScript Perl etc) malveillant
Tromper lrsquoutilisateur Crsquoest peut-ecirctre plus simple Cas speacutecial du piratage psychologique Cliquer ici pour installer un joli logiciel il faut espeacuterer que lrsquoantivirus deacutetecte ceci avant qursquoil ne soit trop tard
Deacutetecter les intrusionsDeacutetecter les intrusionsUne faccedilon diffeacuterente de deacutetecter les logiciels ou utilisateurs malveillants consiste agrave deacutetecter les comportements malveillants
Un systegraveme peut surveiller les processus pour deacutetecter les comportements malveillants
Une telle approche a lrsquoavantage de ne pas deacutependre drsquoinformation sur les virus et les attaques
Un coupe-feu dynamique est un exemple de cette approche
Il surveille les connexions et tente de deacuteterminer si un client transmet des donneacutees agrave contenu suspect (comme la taille)
Requecirctes Requecirctes malveillantesmalveillantes
dlkjfdsflkjsd dlkjfdsflkjsd fjdskl gfjdlskewqewewewewhdfbfbfbww fjdskl gfjdlskewqewewewewhdfbfbfbww jaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfjaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfwewqewqewqewqewqewqeweekjwweeqqqsxcswdswewqewqewqewqewqewqeweekjwweeqqqsxcswdsdddds dddds ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqqwwq qwwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewqeweekwqwqwefdscxcccj qeweekwqwqwefdscxcccj ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxzcwq zcwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfssaDSADSADSsfghdskjgfhdsgfihoiehjrfssaDSADSADSADDSDSDSSDSDSADDSDSDSSDSDSIl arrive que de longues requecirctes puissent faire planter un systegraveme
mal programmeacute Un adversaire peut donc soumettre des chaicircnes tregraves longues dans le but de rendre le systegraveme inopeacuterant (ou mecircme pire assujetti) comme nous le verrons plus loin
Et agrave peu pregraves nrsquoimporte qui Et agrave peu pregraves nrsquoimporte qui peut proposer un service peut proposer un service
comme celui-ci comme celui-ci
Un coupe-feu peut filtrer les requecirctes anormalement longues pour les ignorer Mecircme les systegravemes avec programmes erroneacutes seront agrave lrsquoabri de ce type drsquoattaque
SELECT SELECT FROM Passwords FROM Passwords WHERE user=rsquoWHERE user=rsquoJugheadJugheadrsquo AND password=rsquorsquo AND password=rsquoxrsquo xrsquo OR lsquo1rsquo=lsquo1OR lsquo1rsquo=lsquo1rsquorsquo
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Requecirctes Requecirctes malveillantesmalveillantes
HTTPSHTTPS
Password Password xrsquo OR xrsquo OR lsquo1rsquo=rsquo1lsquo1rsquo=rsquo1
Un coupe-feu dynamique peut filtrer des requecirctes bizarres comme xrsquo OR lsquo1rsquo=rsquo1xrsquo OR lsquo1rsquo=rsquo1
Ceci est beaucoup plus difficile agrave Ceci est beaucoup plus difficile agrave reacutealiser par un coupe-feu que reacutealiser par un coupe-feu que
lrsquoexemple preacuteceacutedentlrsquoexemple preacuteceacutedent
Approche Approche comportementalecomportementaleUne autre approche pour la deacutetection drsquointrusions consiste agrave
observer certains aspects du comportement des utilisateurs et programmes
activiteacutes de connexion et de session
activiteacutes relieacutees agrave lrsquoexeacutecution de programme et drsquoaccegraves aux fichiers
Il y a deux approches pour la deacutetection de comportements suspects
Par regravegles (rule-based) Un ensemble de regravegles deacutecrivant les comportements normaux est eacutetabli Les comportements anormaux (trop loin des normaux) sont rejeteacutes
Statistique Des statistiques sur les utilisateurs normaux sont creacuteeacutees Le comportement de lrsquoutilisateurprogramme observeacute est compareacute aux statistiques Un comportement montrant un trop grand eacutecart avec les statistiques est rejeteacute
Problegravemes avec les Problegravemes avec les systegravemes de deacutetection systegravemes de deacutetection
drsquointrusion (IDS)drsquointrusion (IDS)Le problegraveme majeur avec lrsquoapproche est le mecircme qursquoavec la biomeacutetrie Le systegraveme qui surveille doit ecirctre assez toleacuterant pour autoriser les comportements normaux mais suffisamment restrictif pour attraper les acteurs malveillants
Ce problegraveme nrsquoest pas tregraves bien compris et les solutions proposeacutees ne sont pas tout agrave fait satisfaisantes
La deacutetection drsquointrusion est bien inutile si le systegraveme ne reacuteagit pas de la bonne faccedilon lorsqursquoune intrusion est deacutetecteacutee La partie du systegraveme qui alerte lrsquoadministrateur qui interdit lrsquoaccegraves qui effectue quelque autre tacircche pour eacuteliminer la menace est tout aussi importante que celle qui deacutetecte
Le pot de mielLe pot de miel
Le pot de miel (laquohoney potraquo) est un truc pratique pour la deacutetection drsquointrusions
Une ressource bidon qui semble inteacuteressante pour un adversaire est creacuteeacutee
Puisque celle-ci est bidon on peut supposer que si quelqursquoun y accegravede crsquoest qursquoil srsquoadonne agrave une activiteacute malveillante
En consultant les traces il peut ecirctre possible de retrouver lrsquoutilisateur malveillant
Ceci peut se faire agrave lrsquoinsu de lrsquointrus
ExempleExemple
Un hocircpital ameacutericain soupccedilonnait que quelqursquoun consultait les dossiers de patients sans en avoir lrsquoautorisation
Ils ont creacuteeacute des fichiers pour des patients qui nrsquoexistent pas
Les accegraves agrave ces fichiers ont alors eacuteteacute retraceacutes jusqursquoagrave lrsquoutilisateur malveillant
Les attaques de lrsquointeacuterieurLes attaques de lrsquointeacuterieurPresque tout ce que nous avons vu a pour but la protection contre les attaques venues de lrsquoexteacuterieur
Les attaques peuvent tregraves bien eacutemaner de lrsquointeacuterieur et peuvent causer des problegravemes seacuterieux
Le premiegravere chose agrave comprendre est qursquoil nrsquoest pas possible de se preacutemunir contre ces attaques si les utilisateurs ont tous les droits sur le systegraveme cible
Il est donc neacutecessaire qursquoune partie du systegraveme soit garantie de fonctionner selon ses speacutecifications mecircme sous attaque
Sans cette hypothegravese le systegraveme est sous le controcircle complet de lrsquoadversaire
Base informatique Base informatique seacutecuriseacuteeseacutecuriseacutee
laquotrusted computing baseraquo (TCB)laquotrusted computing baseraquo (TCB)
Une base seacutecuriseacutee peut ecirctre eacutetablie en utilisant de la seacutecuriteacute mateacuterielle logicielle par mot de passe par exemple
Le rocircle de ce systegraveme de base est de controcircler lrsquoaccegraves aux ressources et le flux drsquoinformation sur celui-ci
Pour bien comprendre comment ces protections fonctionnent nous devons mettre de lrsquoordre dans nos ideacutees Nous devons voir agrave quoi ressemble une politique de seacutecuriteacute dans ce sceacutenario
Crsquoest notre prochain sujet
ExempleExempleCode Red Un ver qui a infecteacute 359 000 ordinateurs en moins de 14 heures le 19 juillet 2001
Infections Le ver se multipliait en essayant des adresses IP aleacuteatoires pour ensuite infecter des serveurs qui faisaient tourner Microsoft IIS avec une faille de seacutecuriteacute
Objectif Monter une attaque par deacuteni de service (DOS) contre la Maison-Blanche
Lrsquoattaque a eacuteteacute facile agrave repousser car le ver veacuterifiait avant de lancer lrsquoattaque que le serveur agrave lrsquoadresse IP (au lieu du nom de domaine) de la Maison-Blanche eacutecoutait le port 80 (le port des serveurs Web) En changeant lrsquoadresse IP de la Maison-Blanche lrsquoattaque a eacuteteacute repousseacutee
ExempleExempleCabir Est un virusver (deacutemonstration de faisabiliteacute laquoproof of conceptraquo) qui srsquoattaque agrave la teacuteleacutephonie mobile Crsquoest un fichier de 15 ko nommeacute CARIBESIS
Infection Se propage par la teacuteleacutephonie mobile gracircce agrave la technologie Bluetooth et le systegraveme drsquoexploitation Symbian OS
Action Agrave chaque fois que le teacuteleacutephone infecteacute est ouvert le mot laquoCariberaquo srsquoaffiche Il tente de se propager aux peacuteripheacuteriques BlueTooth de la zone du teacuteleacutephone infecteacute Il nrsquoest pas meacutechant nrsquoavait pour but que de deacutemontrer la faisabiliteacute
AntivirusAntivirusLes antivirus sont des programmes qui deacutetectent les virus les vers et les chevaux de Troie sur votre ordinateur Ils les eacuteliminent
Ils visitent les fichiers sur votre disque dans le but de trouver des bouts de programmes reconnus comme dangereux
Ceci est possible eacutetant donneacute une base de donneacutees agrave jour contenant les virus connus sous la forme de signatures de virus Une signature est un motif (laquopatternraquo) qui caracteacuterise un virus donneacute
Un antivirus nrsquoest efficace que si sa base de donneacutees est mise agrave jour constamment Les compagnies drsquoantivirus vont vite pour mettre agrave jour leur base de donneacutees lorsqursquoun nouveau virus est identifieacute
Malheureusement les utilisateurs tardent agrave mettre leur copie agrave jour causant bien des infections
Tromper les antivirusTromper les antivirusDe nouveaux virus utilisent les meacutethodes de la cryptographie pour deacutejouer les antivirus
Des virus sont chiffreacutes pour les rendre non reconnaissables par les antivirus car ils ont toujours un aspect diffeacuterent
Ces virus ont un petit code en clair qui permet de les deacutecoder et de les charger en meacutemoire pour ecirctre exeacutecuteacutes Ce code est ce que les antivirus doivent deacutetecter
Ces virus sont de trois types
Oligomorphique Le virus est chiffreacute agrave chaque reacuteplication
Polymorphique Le virus est chiffreacute et la routine de deacutechiffrement est capable de changer certaines de ses instructions au fil des reacuteplications
Meacutetamorphique Le virus change de forme au fil des reacuteplications
IntrusionsIntrusionsPour qursquoun virus ver ou cheval de Troie soit deacuteleacutetegravere encore faut-il qursquoil srsquoinstalle sur votre machine
Mecircme si un adversaire peut parler agrave votre machine ceci nrsquoimplique pas qursquoil peut installer un logiciel sur celle-ci encore moins srsquoil nrsquoen est pas un utilisateur
Pour ce faire les adversaires peuvent essayer diverses strateacutegies
Faiblesses du systegraveme drsquoexploitation ou du logiciel du serveur Nous allons voir un exemple de ce type drsquoattaque attaques par deacutebordement Une page Web nrsquoest pas un objet passif Elle peut contenir du code (JavaScript Perl etc) malveillant
Tromper lrsquoutilisateur Crsquoest peut-ecirctre plus simple Cas speacutecial du piratage psychologique Cliquer ici pour installer un joli logiciel il faut espeacuterer que lrsquoantivirus deacutetecte ceci avant qursquoil ne soit trop tard
Deacutetecter les intrusionsDeacutetecter les intrusionsUne faccedilon diffeacuterente de deacutetecter les logiciels ou utilisateurs malveillants consiste agrave deacutetecter les comportements malveillants
Un systegraveme peut surveiller les processus pour deacutetecter les comportements malveillants
Une telle approche a lrsquoavantage de ne pas deacutependre drsquoinformation sur les virus et les attaques
Un coupe-feu dynamique est un exemple de cette approche
Il surveille les connexions et tente de deacuteterminer si un client transmet des donneacutees agrave contenu suspect (comme la taille)
Requecirctes Requecirctes malveillantesmalveillantes
dlkjfdsflkjsd dlkjfdsflkjsd fjdskl gfjdlskewqewewewewhdfbfbfbww fjdskl gfjdlskewqewewewewhdfbfbfbww jaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfjaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfwewqewqewqewqewqewqeweekjwweeqqqsxcswdswewqewqewqewqewqewqeweekjwweeqqqsxcswdsdddds dddds ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqqwwq qwwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewqeweekwqwqwefdscxcccj qeweekwqwqwefdscxcccj ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxzcwq zcwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfssaDSADSADSsfghdskjgfhdsgfihoiehjrfssaDSADSADSADDSDSDSSDSDSADDSDSDSSDSDSIl arrive que de longues requecirctes puissent faire planter un systegraveme
mal programmeacute Un adversaire peut donc soumettre des chaicircnes tregraves longues dans le but de rendre le systegraveme inopeacuterant (ou mecircme pire assujetti) comme nous le verrons plus loin
Et agrave peu pregraves nrsquoimporte qui Et agrave peu pregraves nrsquoimporte qui peut proposer un service peut proposer un service
comme celui-ci comme celui-ci
Un coupe-feu peut filtrer les requecirctes anormalement longues pour les ignorer Mecircme les systegravemes avec programmes erroneacutes seront agrave lrsquoabri de ce type drsquoattaque
SELECT SELECT FROM Passwords FROM Passwords WHERE user=rsquoWHERE user=rsquoJugheadJugheadrsquo AND password=rsquorsquo AND password=rsquoxrsquo xrsquo OR lsquo1rsquo=lsquo1OR lsquo1rsquo=lsquo1rsquorsquo
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Requecirctes Requecirctes malveillantesmalveillantes
HTTPSHTTPS
Password Password xrsquo OR xrsquo OR lsquo1rsquo=rsquo1lsquo1rsquo=rsquo1
Un coupe-feu dynamique peut filtrer des requecirctes bizarres comme xrsquo OR lsquo1rsquo=rsquo1xrsquo OR lsquo1rsquo=rsquo1
Ceci est beaucoup plus difficile agrave Ceci est beaucoup plus difficile agrave reacutealiser par un coupe-feu que reacutealiser par un coupe-feu que
lrsquoexemple preacuteceacutedentlrsquoexemple preacuteceacutedent
Approche Approche comportementalecomportementaleUne autre approche pour la deacutetection drsquointrusions consiste agrave
observer certains aspects du comportement des utilisateurs et programmes
activiteacutes de connexion et de session
activiteacutes relieacutees agrave lrsquoexeacutecution de programme et drsquoaccegraves aux fichiers
Il y a deux approches pour la deacutetection de comportements suspects
Par regravegles (rule-based) Un ensemble de regravegles deacutecrivant les comportements normaux est eacutetabli Les comportements anormaux (trop loin des normaux) sont rejeteacutes
Statistique Des statistiques sur les utilisateurs normaux sont creacuteeacutees Le comportement de lrsquoutilisateurprogramme observeacute est compareacute aux statistiques Un comportement montrant un trop grand eacutecart avec les statistiques est rejeteacute
Problegravemes avec les Problegravemes avec les systegravemes de deacutetection systegravemes de deacutetection
drsquointrusion (IDS)drsquointrusion (IDS)Le problegraveme majeur avec lrsquoapproche est le mecircme qursquoavec la biomeacutetrie Le systegraveme qui surveille doit ecirctre assez toleacuterant pour autoriser les comportements normaux mais suffisamment restrictif pour attraper les acteurs malveillants
Ce problegraveme nrsquoest pas tregraves bien compris et les solutions proposeacutees ne sont pas tout agrave fait satisfaisantes
La deacutetection drsquointrusion est bien inutile si le systegraveme ne reacuteagit pas de la bonne faccedilon lorsqursquoune intrusion est deacutetecteacutee La partie du systegraveme qui alerte lrsquoadministrateur qui interdit lrsquoaccegraves qui effectue quelque autre tacircche pour eacuteliminer la menace est tout aussi importante que celle qui deacutetecte
Le pot de mielLe pot de miel
Le pot de miel (laquohoney potraquo) est un truc pratique pour la deacutetection drsquointrusions
Une ressource bidon qui semble inteacuteressante pour un adversaire est creacuteeacutee
Puisque celle-ci est bidon on peut supposer que si quelqursquoun y accegravede crsquoest qursquoil srsquoadonne agrave une activiteacute malveillante
En consultant les traces il peut ecirctre possible de retrouver lrsquoutilisateur malveillant
Ceci peut se faire agrave lrsquoinsu de lrsquointrus
ExempleExemple
Un hocircpital ameacutericain soupccedilonnait que quelqursquoun consultait les dossiers de patients sans en avoir lrsquoautorisation
Ils ont creacuteeacute des fichiers pour des patients qui nrsquoexistent pas
Les accegraves agrave ces fichiers ont alors eacuteteacute retraceacutes jusqursquoagrave lrsquoutilisateur malveillant
Les attaques de lrsquointeacuterieurLes attaques de lrsquointeacuterieurPresque tout ce que nous avons vu a pour but la protection contre les attaques venues de lrsquoexteacuterieur
Les attaques peuvent tregraves bien eacutemaner de lrsquointeacuterieur et peuvent causer des problegravemes seacuterieux
Le premiegravere chose agrave comprendre est qursquoil nrsquoest pas possible de se preacutemunir contre ces attaques si les utilisateurs ont tous les droits sur le systegraveme cible
Il est donc neacutecessaire qursquoune partie du systegraveme soit garantie de fonctionner selon ses speacutecifications mecircme sous attaque
Sans cette hypothegravese le systegraveme est sous le controcircle complet de lrsquoadversaire
Base informatique Base informatique seacutecuriseacuteeseacutecuriseacutee
laquotrusted computing baseraquo (TCB)laquotrusted computing baseraquo (TCB)
Une base seacutecuriseacutee peut ecirctre eacutetablie en utilisant de la seacutecuriteacute mateacuterielle logicielle par mot de passe par exemple
Le rocircle de ce systegraveme de base est de controcircler lrsquoaccegraves aux ressources et le flux drsquoinformation sur celui-ci
Pour bien comprendre comment ces protections fonctionnent nous devons mettre de lrsquoordre dans nos ideacutees Nous devons voir agrave quoi ressemble une politique de seacutecuriteacute dans ce sceacutenario
Crsquoest notre prochain sujet
ExempleExempleCabir Est un virusver (deacutemonstration de faisabiliteacute laquoproof of conceptraquo) qui srsquoattaque agrave la teacuteleacutephonie mobile Crsquoest un fichier de 15 ko nommeacute CARIBESIS
Infection Se propage par la teacuteleacutephonie mobile gracircce agrave la technologie Bluetooth et le systegraveme drsquoexploitation Symbian OS
Action Agrave chaque fois que le teacuteleacutephone infecteacute est ouvert le mot laquoCariberaquo srsquoaffiche Il tente de se propager aux peacuteripheacuteriques BlueTooth de la zone du teacuteleacutephone infecteacute Il nrsquoest pas meacutechant nrsquoavait pour but que de deacutemontrer la faisabiliteacute
AntivirusAntivirusLes antivirus sont des programmes qui deacutetectent les virus les vers et les chevaux de Troie sur votre ordinateur Ils les eacuteliminent
Ils visitent les fichiers sur votre disque dans le but de trouver des bouts de programmes reconnus comme dangereux
Ceci est possible eacutetant donneacute une base de donneacutees agrave jour contenant les virus connus sous la forme de signatures de virus Une signature est un motif (laquopatternraquo) qui caracteacuterise un virus donneacute
Un antivirus nrsquoest efficace que si sa base de donneacutees est mise agrave jour constamment Les compagnies drsquoantivirus vont vite pour mettre agrave jour leur base de donneacutees lorsqursquoun nouveau virus est identifieacute
Malheureusement les utilisateurs tardent agrave mettre leur copie agrave jour causant bien des infections
Tromper les antivirusTromper les antivirusDe nouveaux virus utilisent les meacutethodes de la cryptographie pour deacutejouer les antivirus
Des virus sont chiffreacutes pour les rendre non reconnaissables par les antivirus car ils ont toujours un aspect diffeacuterent
Ces virus ont un petit code en clair qui permet de les deacutecoder et de les charger en meacutemoire pour ecirctre exeacutecuteacutes Ce code est ce que les antivirus doivent deacutetecter
Ces virus sont de trois types
Oligomorphique Le virus est chiffreacute agrave chaque reacuteplication
Polymorphique Le virus est chiffreacute et la routine de deacutechiffrement est capable de changer certaines de ses instructions au fil des reacuteplications
Meacutetamorphique Le virus change de forme au fil des reacuteplications
IntrusionsIntrusionsPour qursquoun virus ver ou cheval de Troie soit deacuteleacutetegravere encore faut-il qursquoil srsquoinstalle sur votre machine
Mecircme si un adversaire peut parler agrave votre machine ceci nrsquoimplique pas qursquoil peut installer un logiciel sur celle-ci encore moins srsquoil nrsquoen est pas un utilisateur
Pour ce faire les adversaires peuvent essayer diverses strateacutegies
Faiblesses du systegraveme drsquoexploitation ou du logiciel du serveur Nous allons voir un exemple de ce type drsquoattaque attaques par deacutebordement Une page Web nrsquoest pas un objet passif Elle peut contenir du code (JavaScript Perl etc) malveillant
Tromper lrsquoutilisateur Crsquoest peut-ecirctre plus simple Cas speacutecial du piratage psychologique Cliquer ici pour installer un joli logiciel il faut espeacuterer que lrsquoantivirus deacutetecte ceci avant qursquoil ne soit trop tard
Deacutetecter les intrusionsDeacutetecter les intrusionsUne faccedilon diffeacuterente de deacutetecter les logiciels ou utilisateurs malveillants consiste agrave deacutetecter les comportements malveillants
Un systegraveme peut surveiller les processus pour deacutetecter les comportements malveillants
Une telle approche a lrsquoavantage de ne pas deacutependre drsquoinformation sur les virus et les attaques
Un coupe-feu dynamique est un exemple de cette approche
Il surveille les connexions et tente de deacuteterminer si un client transmet des donneacutees agrave contenu suspect (comme la taille)
Requecirctes Requecirctes malveillantesmalveillantes
dlkjfdsflkjsd dlkjfdsflkjsd fjdskl gfjdlskewqewewewewhdfbfbfbww fjdskl gfjdlskewqewewewewhdfbfbfbww jaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfjaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfwewqewqewqewqewqewqeweekjwweeqqqsxcswdswewqewqewqewqewqewqeweekjwweeqqqsxcswdsdddds dddds ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqqwwq qwwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewqeweekwqwqwefdscxcccj qeweekwqwqwefdscxcccj ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxzcwq zcwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfssaDSADSADSsfghdskjgfhdsgfihoiehjrfssaDSADSADSADDSDSDSSDSDSADDSDSDSSDSDSIl arrive que de longues requecirctes puissent faire planter un systegraveme
mal programmeacute Un adversaire peut donc soumettre des chaicircnes tregraves longues dans le but de rendre le systegraveme inopeacuterant (ou mecircme pire assujetti) comme nous le verrons plus loin
Et agrave peu pregraves nrsquoimporte qui Et agrave peu pregraves nrsquoimporte qui peut proposer un service peut proposer un service
comme celui-ci comme celui-ci
Un coupe-feu peut filtrer les requecirctes anormalement longues pour les ignorer Mecircme les systegravemes avec programmes erroneacutes seront agrave lrsquoabri de ce type drsquoattaque
SELECT SELECT FROM Passwords FROM Passwords WHERE user=rsquoWHERE user=rsquoJugheadJugheadrsquo AND password=rsquorsquo AND password=rsquoxrsquo xrsquo OR lsquo1rsquo=lsquo1OR lsquo1rsquo=lsquo1rsquorsquo
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Requecirctes Requecirctes malveillantesmalveillantes
HTTPSHTTPS
Password Password xrsquo OR xrsquo OR lsquo1rsquo=rsquo1lsquo1rsquo=rsquo1
Un coupe-feu dynamique peut filtrer des requecirctes bizarres comme xrsquo OR lsquo1rsquo=rsquo1xrsquo OR lsquo1rsquo=rsquo1
Ceci est beaucoup plus difficile agrave Ceci est beaucoup plus difficile agrave reacutealiser par un coupe-feu que reacutealiser par un coupe-feu que
lrsquoexemple preacuteceacutedentlrsquoexemple preacuteceacutedent
Approche Approche comportementalecomportementaleUne autre approche pour la deacutetection drsquointrusions consiste agrave
observer certains aspects du comportement des utilisateurs et programmes
activiteacutes de connexion et de session
activiteacutes relieacutees agrave lrsquoexeacutecution de programme et drsquoaccegraves aux fichiers
Il y a deux approches pour la deacutetection de comportements suspects
Par regravegles (rule-based) Un ensemble de regravegles deacutecrivant les comportements normaux est eacutetabli Les comportements anormaux (trop loin des normaux) sont rejeteacutes
Statistique Des statistiques sur les utilisateurs normaux sont creacuteeacutees Le comportement de lrsquoutilisateurprogramme observeacute est compareacute aux statistiques Un comportement montrant un trop grand eacutecart avec les statistiques est rejeteacute
Problegravemes avec les Problegravemes avec les systegravemes de deacutetection systegravemes de deacutetection
drsquointrusion (IDS)drsquointrusion (IDS)Le problegraveme majeur avec lrsquoapproche est le mecircme qursquoavec la biomeacutetrie Le systegraveme qui surveille doit ecirctre assez toleacuterant pour autoriser les comportements normaux mais suffisamment restrictif pour attraper les acteurs malveillants
Ce problegraveme nrsquoest pas tregraves bien compris et les solutions proposeacutees ne sont pas tout agrave fait satisfaisantes
La deacutetection drsquointrusion est bien inutile si le systegraveme ne reacuteagit pas de la bonne faccedilon lorsqursquoune intrusion est deacutetecteacutee La partie du systegraveme qui alerte lrsquoadministrateur qui interdit lrsquoaccegraves qui effectue quelque autre tacircche pour eacuteliminer la menace est tout aussi importante que celle qui deacutetecte
Le pot de mielLe pot de miel
Le pot de miel (laquohoney potraquo) est un truc pratique pour la deacutetection drsquointrusions
Une ressource bidon qui semble inteacuteressante pour un adversaire est creacuteeacutee
Puisque celle-ci est bidon on peut supposer que si quelqursquoun y accegravede crsquoest qursquoil srsquoadonne agrave une activiteacute malveillante
En consultant les traces il peut ecirctre possible de retrouver lrsquoutilisateur malveillant
Ceci peut se faire agrave lrsquoinsu de lrsquointrus
ExempleExemple
Un hocircpital ameacutericain soupccedilonnait que quelqursquoun consultait les dossiers de patients sans en avoir lrsquoautorisation
Ils ont creacuteeacute des fichiers pour des patients qui nrsquoexistent pas
Les accegraves agrave ces fichiers ont alors eacuteteacute retraceacutes jusqursquoagrave lrsquoutilisateur malveillant
Les attaques de lrsquointeacuterieurLes attaques de lrsquointeacuterieurPresque tout ce que nous avons vu a pour but la protection contre les attaques venues de lrsquoexteacuterieur
Les attaques peuvent tregraves bien eacutemaner de lrsquointeacuterieur et peuvent causer des problegravemes seacuterieux
Le premiegravere chose agrave comprendre est qursquoil nrsquoest pas possible de se preacutemunir contre ces attaques si les utilisateurs ont tous les droits sur le systegraveme cible
Il est donc neacutecessaire qursquoune partie du systegraveme soit garantie de fonctionner selon ses speacutecifications mecircme sous attaque
Sans cette hypothegravese le systegraveme est sous le controcircle complet de lrsquoadversaire
Base informatique Base informatique seacutecuriseacuteeseacutecuriseacutee
laquotrusted computing baseraquo (TCB)laquotrusted computing baseraquo (TCB)
Une base seacutecuriseacutee peut ecirctre eacutetablie en utilisant de la seacutecuriteacute mateacuterielle logicielle par mot de passe par exemple
Le rocircle de ce systegraveme de base est de controcircler lrsquoaccegraves aux ressources et le flux drsquoinformation sur celui-ci
Pour bien comprendre comment ces protections fonctionnent nous devons mettre de lrsquoordre dans nos ideacutees Nous devons voir agrave quoi ressemble une politique de seacutecuriteacute dans ce sceacutenario
Crsquoest notre prochain sujet
AntivirusAntivirusLes antivirus sont des programmes qui deacutetectent les virus les vers et les chevaux de Troie sur votre ordinateur Ils les eacuteliminent
Ils visitent les fichiers sur votre disque dans le but de trouver des bouts de programmes reconnus comme dangereux
Ceci est possible eacutetant donneacute une base de donneacutees agrave jour contenant les virus connus sous la forme de signatures de virus Une signature est un motif (laquopatternraquo) qui caracteacuterise un virus donneacute
Un antivirus nrsquoest efficace que si sa base de donneacutees est mise agrave jour constamment Les compagnies drsquoantivirus vont vite pour mettre agrave jour leur base de donneacutees lorsqursquoun nouveau virus est identifieacute
Malheureusement les utilisateurs tardent agrave mettre leur copie agrave jour causant bien des infections
Tromper les antivirusTromper les antivirusDe nouveaux virus utilisent les meacutethodes de la cryptographie pour deacutejouer les antivirus
Des virus sont chiffreacutes pour les rendre non reconnaissables par les antivirus car ils ont toujours un aspect diffeacuterent
Ces virus ont un petit code en clair qui permet de les deacutecoder et de les charger en meacutemoire pour ecirctre exeacutecuteacutes Ce code est ce que les antivirus doivent deacutetecter
Ces virus sont de trois types
Oligomorphique Le virus est chiffreacute agrave chaque reacuteplication
Polymorphique Le virus est chiffreacute et la routine de deacutechiffrement est capable de changer certaines de ses instructions au fil des reacuteplications
Meacutetamorphique Le virus change de forme au fil des reacuteplications
IntrusionsIntrusionsPour qursquoun virus ver ou cheval de Troie soit deacuteleacutetegravere encore faut-il qursquoil srsquoinstalle sur votre machine
Mecircme si un adversaire peut parler agrave votre machine ceci nrsquoimplique pas qursquoil peut installer un logiciel sur celle-ci encore moins srsquoil nrsquoen est pas un utilisateur
Pour ce faire les adversaires peuvent essayer diverses strateacutegies
Faiblesses du systegraveme drsquoexploitation ou du logiciel du serveur Nous allons voir un exemple de ce type drsquoattaque attaques par deacutebordement Une page Web nrsquoest pas un objet passif Elle peut contenir du code (JavaScript Perl etc) malveillant
Tromper lrsquoutilisateur Crsquoest peut-ecirctre plus simple Cas speacutecial du piratage psychologique Cliquer ici pour installer un joli logiciel il faut espeacuterer que lrsquoantivirus deacutetecte ceci avant qursquoil ne soit trop tard
Deacutetecter les intrusionsDeacutetecter les intrusionsUne faccedilon diffeacuterente de deacutetecter les logiciels ou utilisateurs malveillants consiste agrave deacutetecter les comportements malveillants
Un systegraveme peut surveiller les processus pour deacutetecter les comportements malveillants
Une telle approche a lrsquoavantage de ne pas deacutependre drsquoinformation sur les virus et les attaques
Un coupe-feu dynamique est un exemple de cette approche
Il surveille les connexions et tente de deacuteterminer si un client transmet des donneacutees agrave contenu suspect (comme la taille)
Requecirctes Requecirctes malveillantesmalveillantes
dlkjfdsflkjsd dlkjfdsflkjsd fjdskl gfjdlskewqewewewewhdfbfbfbww fjdskl gfjdlskewqewewewewhdfbfbfbww jaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfjaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfwewqewqewqewqewqewqeweekjwweeqqqsxcswdswewqewqewqewqewqewqeweekjwweeqqqsxcswdsdddds dddds ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqqwwq qwwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewqeweekwqwqwefdscxcccj qeweekwqwqwefdscxcccj ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxzcwq zcwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfssaDSADSADSsfghdskjgfhdsgfihoiehjrfssaDSADSADSADDSDSDSSDSDSADDSDSDSSDSDSIl arrive que de longues requecirctes puissent faire planter un systegraveme
mal programmeacute Un adversaire peut donc soumettre des chaicircnes tregraves longues dans le but de rendre le systegraveme inopeacuterant (ou mecircme pire assujetti) comme nous le verrons plus loin
Et agrave peu pregraves nrsquoimporte qui Et agrave peu pregraves nrsquoimporte qui peut proposer un service peut proposer un service
comme celui-ci comme celui-ci
Un coupe-feu peut filtrer les requecirctes anormalement longues pour les ignorer Mecircme les systegravemes avec programmes erroneacutes seront agrave lrsquoabri de ce type drsquoattaque
SELECT SELECT FROM Passwords FROM Passwords WHERE user=rsquoWHERE user=rsquoJugheadJugheadrsquo AND password=rsquorsquo AND password=rsquoxrsquo xrsquo OR lsquo1rsquo=lsquo1OR lsquo1rsquo=lsquo1rsquorsquo
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Requecirctes Requecirctes malveillantesmalveillantes
HTTPSHTTPS
Password Password xrsquo OR xrsquo OR lsquo1rsquo=rsquo1lsquo1rsquo=rsquo1
Un coupe-feu dynamique peut filtrer des requecirctes bizarres comme xrsquo OR lsquo1rsquo=rsquo1xrsquo OR lsquo1rsquo=rsquo1
Ceci est beaucoup plus difficile agrave Ceci est beaucoup plus difficile agrave reacutealiser par un coupe-feu que reacutealiser par un coupe-feu que
lrsquoexemple preacuteceacutedentlrsquoexemple preacuteceacutedent
Approche Approche comportementalecomportementaleUne autre approche pour la deacutetection drsquointrusions consiste agrave
observer certains aspects du comportement des utilisateurs et programmes
activiteacutes de connexion et de session
activiteacutes relieacutees agrave lrsquoexeacutecution de programme et drsquoaccegraves aux fichiers
Il y a deux approches pour la deacutetection de comportements suspects
Par regravegles (rule-based) Un ensemble de regravegles deacutecrivant les comportements normaux est eacutetabli Les comportements anormaux (trop loin des normaux) sont rejeteacutes
Statistique Des statistiques sur les utilisateurs normaux sont creacuteeacutees Le comportement de lrsquoutilisateurprogramme observeacute est compareacute aux statistiques Un comportement montrant un trop grand eacutecart avec les statistiques est rejeteacute
Problegravemes avec les Problegravemes avec les systegravemes de deacutetection systegravemes de deacutetection
drsquointrusion (IDS)drsquointrusion (IDS)Le problegraveme majeur avec lrsquoapproche est le mecircme qursquoavec la biomeacutetrie Le systegraveme qui surveille doit ecirctre assez toleacuterant pour autoriser les comportements normaux mais suffisamment restrictif pour attraper les acteurs malveillants
Ce problegraveme nrsquoest pas tregraves bien compris et les solutions proposeacutees ne sont pas tout agrave fait satisfaisantes
La deacutetection drsquointrusion est bien inutile si le systegraveme ne reacuteagit pas de la bonne faccedilon lorsqursquoune intrusion est deacutetecteacutee La partie du systegraveme qui alerte lrsquoadministrateur qui interdit lrsquoaccegraves qui effectue quelque autre tacircche pour eacuteliminer la menace est tout aussi importante que celle qui deacutetecte
Le pot de mielLe pot de miel
Le pot de miel (laquohoney potraquo) est un truc pratique pour la deacutetection drsquointrusions
Une ressource bidon qui semble inteacuteressante pour un adversaire est creacuteeacutee
Puisque celle-ci est bidon on peut supposer que si quelqursquoun y accegravede crsquoest qursquoil srsquoadonne agrave une activiteacute malveillante
En consultant les traces il peut ecirctre possible de retrouver lrsquoutilisateur malveillant
Ceci peut se faire agrave lrsquoinsu de lrsquointrus
ExempleExemple
Un hocircpital ameacutericain soupccedilonnait que quelqursquoun consultait les dossiers de patients sans en avoir lrsquoautorisation
Ils ont creacuteeacute des fichiers pour des patients qui nrsquoexistent pas
Les accegraves agrave ces fichiers ont alors eacuteteacute retraceacutes jusqursquoagrave lrsquoutilisateur malveillant
Les attaques de lrsquointeacuterieurLes attaques de lrsquointeacuterieurPresque tout ce que nous avons vu a pour but la protection contre les attaques venues de lrsquoexteacuterieur
Les attaques peuvent tregraves bien eacutemaner de lrsquointeacuterieur et peuvent causer des problegravemes seacuterieux
Le premiegravere chose agrave comprendre est qursquoil nrsquoest pas possible de se preacutemunir contre ces attaques si les utilisateurs ont tous les droits sur le systegraveme cible
Il est donc neacutecessaire qursquoune partie du systegraveme soit garantie de fonctionner selon ses speacutecifications mecircme sous attaque
Sans cette hypothegravese le systegraveme est sous le controcircle complet de lrsquoadversaire
Base informatique Base informatique seacutecuriseacuteeseacutecuriseacutee
laquotrusted computing baseraquo (TCB)laquotrusted computing baseraquo (TCB)
Une base seacutecuriseacutee peut ecirctre eacutetablie en utilisant de la seacutecuriteacute mateacuterielle logicielle par mot de passe par exemple
Le rocircle de ce systegraveme de base est de controcircler lrsquoaccegraves aux ressources et le flux drsquoinformation sur celui-ci
Pour bien comprendre comment ces protections fonctionnent nous devons mettre de lrsquoordre dans nos ideacutees Nous devons voir agrave quoi ressemble une politique de seacutecuriteacute dans ce sceacutenario
Crsquoest notre prochain sujet
Tromper les antivirusTromper les antivirusDe nouveaux virus utilisent les meacutethodes de la cryptographie pour deacutejouer les antivirus
Des virus sont chiffreacutes pour les rendre non reconnaissables par les antivirus car ils ont toujours un aspect diffeacuterent
Ces virus ont un petit code en clair qui permet de les deacutecoder et de les charger en meacutemoire pour ecirctre exeacutecuteacutes Ce code est ce que les antivirus doivent deacutetecter
Ces virus sont de trois types
Oligomorphique Le virus est chiffreacute agrave chaque reacuteplication
Polymorphique Le virus est chiffreacute et la routine de deacutechiffrement est capable de changer certaines de ses instructions au fil des reacuteplications
Meacutetamorphique Le virus change de forme au fil des reacuteplications
IntrusionsIntrusionsPour qursquoun virus ver ou cheval de Troie soit deacuteleacutetegravere encore faut-il qursquoil srsquoinstalle sur votre machine
Mecircme si un adversaire peut parler agrave votre machine ceci nrsquoimplique pas qursquoil peut installer un logiciel sur celle-ci encore moins srsquoil nrsquoen est pas un utilisateur
Pour ce faire les adversaires peuvent essayer diverses strateacutegies
Faiblesses du systegraveme drsquoexploitation ou du logiciel du serveur Nous allons voir un exemple de ce type drsquoattaque attaques par deacutebordement Une page Web nrsquoest pas un objet passif Elle peut contenir du code (JavaScript Perl etc) malveillant
Tromper lrsquoutilisateur Crsquoest peut-ecirctre plus simple Cas speacutecial du piratage psychologique Cliquer ici pour installer un joli logiciel il faut espeacuterer que lrsquoantivirus deacutetecte ceci avant qursquoil ne soit trop tard
Deacutetecter les intrusionsDeacutetecter les intrusionsUne faccedilon diffeacuterente de deacutetecter les logiciels ou utilisateurs malveillants consiste agrave deacutetecter les comportements malveillants
Un systegraveme peut surveiller les processus pour deacutetecter les comportements malveillants
Une telle approche a lrsquoavantage de ne pas deacutependre drsquoinformation sur les virus et les attaques
Un coupe-feu dynamique est un exemple de cette approche
Il surveille les connexions et tente de deacuteterminer si un client transmet des donneacutees agrave contenu suspect (comme la taille)
Requecirctes Requecirctes malveillantesmalveillantes
dlkjfdsflkjsd dlkjfdsflkjsd fjdskl gfjdlskewqewewewewhdfbfbfbww fjdskl gfjdlskewqewewewewhdfbfbfbww jaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfjaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfwewqewqewqewqewqewqeweekjwweeqqqsxcswdswewqewqewqewqewqewqeweekjwweeqqqsxcswdsdddds dddds ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqqwwq qwwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewqeweekwqwqwefdscxcccj qeweekwqwqwefdscxcccj ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxzcwq zcwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfssaDSADSADSsfghdskjgfhdsgfihoiehjrfssaDSADSADSADDSDSDSSDSDSADDSDSDSSDSDSIl arrive que de longues requecirctes puissent faire planter un systegraveme
mal programmeacute Un adversaire peut donc soumettre des chaicircnes tregraves longues dans le but de rendre le systegraveme inopeacuterant (ou mecircme pire assujetti) comme nous le verrons plus loin
Et agrave peu pregraves nrsquoimporte qui Et agrave peu pregraves nrsquoimporte qui peut proposer un service peut proposer un service
comme celui-ci comme celui-ci
Un coupe-feu peut filtrer les requecirctes anormalement longues pour les ignorer Mecircme les systegravemes avec programmes erroneacutes seront agrave lrsquoabri de ce type drsquoattaque
SELECT SELECT FROM Passwords FROM Passwords WHERE user=rsquoWHERE user=rsquoJugheadJugheadrsquo AND password=rsquorsquo AND password=rsquoxrsquo xrsquo OR lsquo1rsquo=lsquo1OR lsquo1rsquo=lsquo1rsquorsquo
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Requecirctes Requecirctes malveillantesmalveillantes
HTTPSHTTPS
Password Password xrsquo OR xrsquo OR lsquo1rsquo=rsquo1lsquo1rsquo=rsquo1
Un coupe-feu dynamique peut filtrer des requecirctes bizarres comme xrsquo OR lsquo1rsquo=rsquo1xrsquo OR lsquo1rsquo=rsquo1
Ceci est beaucoup plus difficile agrave Ceci est beaucoup plus difficile agrave reacutealiser par un coupe-feu que reacutealiser par un coupe-feu que
lrsquoexemple preacuteceacutedentlrsquoexemple preacuteceacutedent
Approche Approche comportementalecomportementaleUne autre approche pour la deacutetection drsquointrusions consiste agrave
observer certains aspects du comportement des utilisateurs et programmes
activiteacutes de connexion et de session
activiteacutes relieacutees agrave lrsquoexeacutecution de programme et drsquoaccegraves aux fichiers
Il y a deux approches pour la deacutetection de comportements suspects
Par regravegles (rule-based) Un ensemble de regravegles deacutecrivant les comportements normaux est eacutetabli Les comportements anormaux (trop loin des normaux) sont rejeteacutes
Statistique Des statistiques sur les utilisateurs normaux sont creacuteeacutees Le comportement de lrsquoutilisateurprogramme observeacute est compareacute aux statistiques Un comportement montrant un trop grand eacutecart avec les statistiques est rejeteacute
Problegravemes avec les Problegravemes avec les systegravemes de deacutetection systegravemes de deacutetection
drsquointrusion (IDS)drsquointrusion (IDS)Le problegraveme majeur avec lrsquoapproche est le mecircme qursquoavec la biomeacutetrie Le systegraveme qui surveille doit ecirctre assez toleacuterant pour autoriser les comportements normaux mais suffisamment restrictif pour attraper les acteurs malveillants
Ce problegraveme nrsquoest pas tregraves bien compris et les solutions proposeacutees ne sont pas tout agrave fait satisfaisantes
La deacutetection drsquointrusion est bien inutile si le systegraveme ne reacuteagit pas de la bonne faccedilon lorsqursquoune intrusion est deacutetecteacutee La partie du systegraveme qui alerte lrsquoadministrateur qui interdit lrsquoaccegraves qui effectue quelque autre tacircche pour eacuteliminer la menace est tout aussi importante que celle qui deacutetecte
Le pot de mielLe pot de miel
Le pot de miel (laquohoney potraquo) est un truc pratique pour la deacutetection drsquointrusions
Une ressource bidon qui semble inteacuteressante pour un adversaire est creacuteeacutee
Puisque celle-ci est bidon on peut supposer que si quelqursquoun y accegravede crsquoest qursquoil srsquoadonne agrave une activiteacute malveillante
En consultant les traces il peut ecirctre possible de retrouver lrsquoutilisateur malveillant
Ceci peut se faire agrave lrsquoinsu de lrsquointrus
ExempleExemple
Un hocircpital ameacutericain soupccedilonnait que quelqursquoun consultait les dossiers de patients sans en avoir lrsquoautorisation
Ils ont creacuteeacute des fichiers pour des patients qui nrsquoexistent pas
Les accegraves agrave ces fichiers ont alors eacuteteacute retraceacutes jusqursquoagrave lrsquoutilisateur malveillant
Les attaques de lrsquointeacuterieurLes attaques de lrsquointeacuterieurPresque tout ce que nous avons vu a pour but la protection contre les attaques venues de lrsquoexteacuterieur
Les attaques peuvent tregraves bien eacutemaner de lrsquointeacuterieur et peuvent causer des problegravemes seacuterieux
Le premiegravere chose agrave comprendre est qursquoil nrsquoest pas possible de se preacutemunir contre ces attaques si les utilisateurs ont tous les droits sur le systegraveme cible
Il est donc neacutecessaire qursquoune partie du systegraveme soit garantie de fonctionner selon ses speacutecifications mecircme sous attaque
Sans cette hypothegravese le systegraveme est sous le controcircle complet de lrsquoadversaire
Base informatique Base informatique seacutecuriseacuteeseacutecuriseacutee
laquotrusted computing baseraquo (TCB)laquotrusted computing baseraquo (TCB)
Une base seacutecuriseacutee peut ecirctre eacutetablie en utilisant de la seacutecuriteacute mateacuterielle logicielle par mot de passe par exemple
Le rocircle de ce systegraveme de base est de controcircler lrsquoaccegraves aux ressources et le flux drsquoinformation sur celui-ci
Pour bien comprendre comment ces protections fonctionnent nous devons mettre de lrsquoordre dans nos ideacutees Nous devons voir agrave quoi ressemble une politique de seacutecuriteacute dans ce sceacutenario
Crsquoest notre prochain sujet
IntrusionsIntrusionsPour qursquoun virus ver ou cheval de Troie soit deacuteleacutetegravere encore faut-il qursquoil srsquoinstalle sur votre machine
Mecircme si un adversaire peut parler agrave votre machine ceci nrsquoimplique pas qursquoil peut installer un logiciel sur celle-ci encore moins srsquoil nrsquoen est pas un utilisateur
Pour ce faire les adversaires peuvent essayer diverses strateacutegies
Faiblesses du systegraveme drsquoexploitation ou du logiciel du serveur Nous allons voir un exemple de ce type drsquoattaque attaques par deacutebordement Une page Web nrsquoest pas un objet passif Elle peut contenir du code (JavaScript Perl etc) malveillant
Tromper lrsquoutilisateur Crsquoest peut-ecirctre plus simple Cas speacutecial du piratage psychologique Cliquer ici pour installer un joli logiciel il faut espeacuterer que lrsquoantivirus deacutetecte ceci avant qursquoil ne soit trop tard
Deacutetecter les intrusionsDeacutetecter les intrusionsUne faccedilon diffeacuterente de deacutetecter les logiciels ou utilisateurs malveillants consiste agrave deacutetecter les comportements malveillants
Un systegraveme peut surveiller les processus pour deacutetecter les comportements malveillants
Une telle approche a lrsquoavantage de ne pas deacutependre drsquoinformation sur les virus et les attaques
Un coupe-feu dynamique est un exemple de cette approche
Il surveille les connexions et tente de deacuteterminer si un client transmet des donneacutees agrave contenu suspect (comme la taille)
Requecirctes Requecirctes malveillantesmalveillantes
dlkjfdsflkjsd dlkjfdsflkjsd fjdskl gfjdlskewqewewewewhdfbfbfbww fjdskl gfjdlskewqewewewewhdfbfbfbww jaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfjaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfwewqewqewqewqewqewqeweekjwweeqqqsxcswdswewqewqewqewqewqewqeweekjwweeqqqsxcswdsdddds dddds ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqqwwq qwwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewqeweekwqwqwefdscxcccj qeweekwqwqwefdscxcccj ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxzcwq zcwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfssaDSADSADSsfghdskjgfhdsgfihoiehjrfssaDSADSADSADDSDSDSSDSDSADDSDSDSSDSDSIl arrive que de longues requecirctes puissent faire planter un systegraveme
mal programmeacute Un adversaire peut donc soumettre des chaicircnes tregraves longues dans le but de rendre le systegraveme inopeacuterant (ou mecircme pire assujetti) comme nous le verrons plus loin
Et agrave peu pregraves nrsquoimporte qui Et agrave peu pregraves nrsquoimporte qui peut proposer un service peut proposer un service
comme celui-ci comme celui-ci
Un coupe-feu peut filtrer les requecirctes anormalement longues pour les ignorer Mecircme les systegravemes avec programmes erroneacutes seront agrave lrsquoabri de ce type drsquoattaque
SELECT SELECT FROM Passwords FROM Passwords WHERE user=rsquoWHERE user=rsquoJugheadJugheadrsquo AND password=rsquorsquo AND password=rsquoxrsquo xrsquo OR lsquo1rsquo=lsquo1OR lsquo1rsquo=lsquo1rsquorsquo
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Requecirctes Requecirctes malveillantesmalveillantes
HTTPSHTTPS
Password Password xrsquo OR xrsquo OR lsquo1rsquo=rsquo1lsquo1rsquo=rsquo1
Un coupe-feu dynamique peut filtrer des requecirctes bizarres comme xrsquo OR lsquo1rsquo=rsquo1xrsquo OR lsquo1rsquo=rsquo1
Ceci est beaucoup plus difficile agrave Ceci est beaucoup plus difficile agrave reacutealiser par un coupe-feu que reacutealiser par un coupe-feu que
lrsquoexemple preacuteceacutedentlrsquoexemple preacuteceacutedent
Approche Approche comportementalecomportementaleUne autre approche pour la deacutetection drsquointrusions consiste agrave
observer certains aspects du comportement des utilisateurs et programmes
activiteacutes de connexion et de session
activiteacutes relieacutees agrave lrsquoexeacutecution de programme et drsquoaccegraves aux fichiers
Il y a deux approches pour la deacutetection de comportements suspects
Par regravegles (rule-based) Un ensemble de regravegles deacutecrivant les comportements normaux est eacutetabli Les comportements anormaux (trop loin des normaux) sont rejeteacutes
Statistique Des statistiques sur les utilisateurs normaux sont creacuteeacutees Le comportement de lrsquoutilisateurprogramme observeacute est compareacute aux statistiques Un comportement montrant un trop grand eacutecart avec les statistiques est rejeteacute
Problegravemes avec les Problegravemes avec les systegravemes de deacutetection systegravemes de deacutetection
drsquointrusion (IDS)drsquointrusion (IDS)Le problegraveme majeur avec lrsquoapproche est le mecircme qursquoavec la biomeacutetrie Le systegraveme qui surveille doit ecirctre assez toleacuterant pour autoriser les comportements normaux mais suffisamment restrictif pour attraper les acteurs malveillants
Ce problegraveme nrsquoest pas tregraves bien compris et les solutions proposeacutees ne sont pas tout agrave fait satisfaisantes
La deacutetection drsquointrusion est bien inutile si le systegraveme ne reacuteagit pas de la bonne faccedilon lorsqursquoune intrusion est deacutetecteacutee La partie du systegraveme qui alerte lrsquoadministrateur qui interdit lrsquoaccegraves qui effectue quelque autre tacircche pour eacuteliminer la menace est tout aussi importante que celle qui deacutetecte
Le pot de mielLe pot de miel
Le pot de miel (laquohoney potraquo) est un truc pratique pour la deacutetection drsquointrusions
Une ressource bidon qui semble inteacuteressante pour un adversaire est creacuteeacutee
Puisque celle-ci est bidon on peut supposer que si quelqursquoun y accegravede crsquoest qursquoil srsquoadonne agrave une activiteacute malveillante
En consultant les traces il peut ecirctre possible de retrouver lrsquoutilisateur malveillant
Ceci peut se faire agrave lrsquoinsu de lrsquointrus
ExempleExemple
Un hocircpital ameacutericain soupccedilonnait que quelqursquoun consultait les dossiers de patients sans en avoir lrsquoautorisation
Ils ont creacuteeacute des fichiers pour des patients qui nrsquoexistent pas
Les accegraves agrave ces fichiers ont alors eacuteteacute retraceacutes jusqursquoagrave lrsquoutilisateur malveillant
Les attaques de lrsquointeacuterieurLes attaques de lrsquointeacuterieurPresque tout ce que nous avons vu a pour but la protection contre les attaques venues de lrsquoexteacuterieur
Les attaques peuvent tregraves bien eacutemaner de lrsquointeacuterieur et peuvent causer des problegravemes seacuterieux
Le premiegravere chose agrave comprendre est qursquoil nrsquoest pas possible de se preacutemunir contre ces attaques si les utilisateurs ont tous les droits sur le systegraveme cible
Il est donc neacutecessaire qursquoune partie du systegraveme soit garantie de fonctionner selon ses speacutecifications mecircme sous attaque
Sans cette hypothegravese le systegraveme est sous le controcircle complet de lrsquoadversaire
Base informatique Base informatique seacutecuriseacuteeseacutecuriseacutee
laquotrusted computing baseraquo (TCB)laquotrusted computing baseraquo (TCB)
Une base seacutecuriseacutee peut ecirctre eacutetablie en utilisant de la seacutecuriteacute mateacuterielle logicielle par mot de passe par exemple
Le rocircle de ce systegraveme de base est de controcircler lrsquoaccegraves aux ressources et le flux drsquoinformation sur celui-ci
Pour bien comprendre comment ces protections fonctionnent nous devons mettre de lrsquoordre dans nos ideacutees Nous devons voir agrave quoi ressemble une politique de seacutecuriteacute dans ce sceacutenario
Crsquoest notre prochain sujet
Deacutetecter les intrusionsDeacutetecter les intrusionsUne faccedilon diffeacuterente de deacutetecter les logiciels ou utilisateurs malveillants consiste agrave deacutetecter les comportements malveillants
Un systegraveme peut surveiller les processus pour deacutetecter les comportements malveillants
Une telle approche a lrsquoavantage de ne pas deacutependre drsquoinformation sur les virus et les attaques
Un coupe-feu dynamique est un exemple de cette approche
Il surveille les connexions et tente de deacuteterminer si un client transmet des donneacutees agrave contenu suspect (comme la taille)
Requecirctes Requecirctes malveillantesmalveillantes
dlkjfdsflkjsd dlkjfdsflkjsd fjdskl gfjdlskewqewewewewhdfbfbfbww fjdskl gfjdlskewqewewewewhdfbfbfbww jaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfjaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfwewqewqewqewqewqewqeweekjwweeqqqsxcswdswewqewqewqewqewqewqeweekjwweeqqqsxcswdsdddds dddds ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqqwwq qwwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewqeweekwqwqwefdscxcccj qeweekwqwqwefdscxcccj ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxzcwq zcwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfssaDSADSADSsfghdskjgfhdsgfihoiehjrfssaDSADSADSADDSDSDSSDSDSADDSDSDSSDSDSIl arrive que de longues requecirctes puissent faire planter un systegraveme
mal programmeacute Un adversaire peut donc soumettre des chaicircnes tregraves longues dans le but de rendre le systegraveme inopeacuterant (ou mecircme pire assujetti) comme nous le verrons plus loin
Et agrave peu pregraves nrsquoimporte qui Et agrave peu pregraves nrsquoimporte qui peut proposer un service peut proposer un service
comme celui-ci comme celui-ci
Un coupe-feu peut filtrer les requecirctes anormalement longues pour les ignorer Mecircme les systegravemes avec programmes erroneacutes seront agrave lrsquoabri de ce type drsquoattaque
SELECT SELECT FROM Passwords FROM Passwords WHERE user=rsquoWHERE user=rsquoJugheadJugheadrsquo AND password=rsquorsquo AND password=rsquoxrsquo xrsquo OR lsquo1rsquo=lsquo1OR lsquo1rsquo=lsquo1rsquorsquo
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Requecirctes Requecirctes malveillantesmalveillantes
HTTPSHTTPS
Password Password xrsquo OR xrsquo OR lsquo1rsquo=rsquo1lsquo1rsquo=rsquo1
Un coupe-feu dynamique peut filtrer des requecirctes bizarres comme xrsquo OR lsquo1rsquo=rsquo1xrsquo OR lsquo1rsquo=rsquo1
Ceci est beaucoup plus difficile agrave Ceci est beaucoup plus difficile agrave reacutealiser par un coupe-feu que reacutealiser par un coupe-feu que
lrsquoexemple preacuteceacutedentlrsquoexemple preacuteceacutedent
Approche Approche comportementalecomportementaleUne autre approche pour la deacutetection drsquointrusions consiste agrave
observer certains aspects du comportement des utilisateurs et programmes
activiteacutes de connexion et de session
activiteacutes relieacutees agrave lrsquoexeacutecution de programme et drsquoaccegraves aux fichiers
Il y a deux approches pour la deacutetection de comportements suspects
Par regravegles (rule-based) Un ensemble de regravegles deacutecrivant les comportements normaux est eacutetabli Les comportements anormaux (trop loin des normaux) sont rejeteacutes
Statistique Des statistiques sur les utilisateurs normaux sont creacuteeacutees Le comportement de lrsquoutilisateurprogramme observeacute est compareacute aux statistiques Un comportement montrant un trop grand eacutecart avec les statistiques est rejeteacute
Problegravemes avec les Problegravemes avec les systegravemes de deacutetection systegravemes de deacutetection
drsquointrusion (IDS)drsquointrusion (IDS)Le problegraveme majeur avec lrsquoapproche est le mecircme qursquoavec la biomeacutetrie Le systegraveme qui surveille doit ecirctre assez toleacuterant pour autoriser les comportements normaux mais suffisamment restrictif pour attraper les acteurs malveillants
Ce problegraveme nrsquoest pas tregraves bien compris et les solutions proposeacutees ne sont pas tout agrave fait satisfaisantes
La deacutetection drsquointrusion est bien inutile si le systegraveme ne reacuteagit pas de la bonne faccedilon lorsqursquoune intrusion est deacutetecteacutee La partie du systegraveme qui alerte lrsquoadministrateur qui interdit lrsquoaccegraves qui effectue quelque autre tacircche pour eacuteliminer la menace est tout aussi importante que celle qui deacutetecte
Le pot de mielLe pot de miel
Le pot de miel (laquohoney potraquo) est un truc pratique pour la deacutetection drsquointrusions
Une ressource bidon qui semble inteacuteressante pour un adversaire est creacuteeacutee
Puisque celle-ci est bidon on peut supposer que si quelqursquoun y accegravede crsquoest qursquoil srsquoadonne agrave une activiteacute malveillante
En consultant les traces il peut ecirctre possible de retrouver lrsquoutilisateur malveillant
Ceci peut se faire agrave lrsquoinsu de lrsquointrus
ExempleExemple
Un hocircpital ameacutericain soupccedilonnait que quelqursquoun consultait les dossiers de patients sans en avoir lrsquoautorisation
Ils ont creacuteeacute des fichiers pour des patients qui nrsquoexistent pas
Les accegraves agrave ces fichiers ont alors eacuteteacute retraceacutes jusqursquoagrave lrsquoutilisateur malveillant
Les attaques de lrsquointeacuterieurLes attaques de lrsquointeacuterieurPresque tout ce que nous avons vu a pour but la protection contre les attaques venues de lrsquoexteacuterieur
Les attaques peuvent tregraves bien eacutemaner de lrsquointeacuterieur et peuvent causer des problegravemes seacuterieux
Le premiegravere chose agrave comprendre est qursquoil nrsquoest pas possible de se preacutemunir contre ces attaques si les utilisateurs ont tous les droits sur le systegraveme cible
Il est donc neacutecessaire qursquoune partie du systegraveme soit garantie de fonctionner selon ses speacutecifications mecircme sous attaque
Sans cette hypothegravese le systegraveme est sous le controcircle complet de lrsquoadversaire
Base informatique Base informatique seacutecuriseacuteeseacutecuriseacutee
laquotrusted computing baseraquo (TCB)laquotrusted computing baseraquo (TCB)
Une base seacutecuriseacutee peut ecirctre eacutetablie en utilisant de la seacutecuriteacute mateacuterielle logicielle par mot de passe par exemple
Le rocircle de ce systegraveme de base est de controcircler lrsquoaccegraves aux ressources et le flux drsquoinformation sur celui-ci
Pour bien comprendre comment ces protections fonctionnent nous devons mettre de lrsquoordre dans nos ideacutees Nous devons voir agrave quoi ressemble une politique de seacutecuriteacute dans ce sceacutenario
Crsquoest notre prochain sujet
Requecirctes Requecirctes malveillantesmalveillantes
dlkjfdsflkjsd dlkjfdsflkjsd fjdskl gfjdlskewqewewewewhdfbfbfbww fjdskl gfjdlskewqewewewewhdfbfbfbww jaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfjaskhfdkjsahfkjhsdkjfhkjhfkasjhjkfhakjfhaskjhfjkashfwewqewqewqewqewqewqeweekjwweeqqqsxcswdswewqewqewqewqewqewqeweekjwweeqqqsxcswdsdddds dddds ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqakjhfkaslhfklahsflkhaskhffwewaaeewfrfdsdfcddsdqqwwq qwwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewsfghdskjgfhdsgfihoiehjrfswewqewqewqewqewqewqeweekwqwqwefdscxcccj qeweekwqwqwefdscxcccj ffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsffhasjfkhsakjfhkjashfkjsahfkjsahfkjsahkjsahhjsakfhsakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxakjhfkaslhfklahsflkhaskhffweqeewqwedqcxcxcxzcxzcwq zcwq dgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdgdhsgkjdsjgnbfdsgmnnbfdngbdfmngbmdsnfbgsdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwdbgdshgfkdshhgjdkshgklsjhdgkjhsoieruoiwueroiuwqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdqehdasmnfmnsdfgswjuoiewuorasnfmnsdafmnbdsfghdskjgfhdsgfihoiehjrfssaDSADSADSsfghdskjgfhdsgfihoiehjrfssaDSADSADSADDSDSDSSDSDSADDSDSDSSDSDSIl arrive que de longues requecirctes puissent faire planter un systegraveme
mal programmeacute Un adversaire peut donc soumettre des chaicircnes tregraves longues dans le but de rendre le systegraveme inopeacuterant (ou mecircme pire assujetti) comme nous le verrons plus loin
Et agrave peu pregraves nrsquoimporte qui Et agrave peu pregraves nrsquoimporte qui peut proposer un service peut proposer un service
comme celui-ci comme celui-ci
Un coupe-feu peut filtrer les requecirctes anormalement longues pour les ignorer Mecircme les systegravemes avec programmes erroneacutes seront agrave lrsquoabri de ce type drsquoattaque
SELECT SELECT FROM Passwords FROM Passwords WHERE user=rsquoWHERE user=rsquoJugheadJugheadrsquo AND password=rsquorsquo AND password=rsquoxrsquo xrsquo OR lsquo1rsquo=lsquo1OR lsquo1rsquo=lsquo1rsquorsquo
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Requecirctes Requecirctes malveillantesmalveillantes
HTTPSHTTPS
Password Password xrsquo OR xrsquo OR lsquo1rsquo=rsquo1lsquo1rsquo=rsquo1
Un coupe-feu dynamique peut filtrer des requecirctes bizarres comme xrsquo OR lsquo1rsquo=rsquo1xrsquo OR lsquo1rsquo=rsquo1
Ceci est beaucoup plus difficile agrave Ceci est beaucoup plus difficile agrave reacutealiser par un coupe-feu que reacutealiser par un coupe-feu que
lrsquoexemple preacuteceacutedentlrsquoexemple preacuteceacutedent
Approche Approche comportementalecomportementaleUne autre approche pour la deacutetection drsquointrusions consiste agrave
observer certains aspects du comportement des utilisateurs et programmes
activiteacutes de connexion et de session
activiteacutes relieacutees agrave lrsquoexeacutecution de programme et drsquoaccegraves aux fichiers
Il y a deux approches pour la deacutetection de comportements suspects
Par regravegles (rule-based) Un ensemble de regravegles deacutecrivant les comportements normaux est eacutetabli Les comportements anormaux (trop loin des normaux) sont rejeteacutes
Statistique Des statistiques sur les utilisateurs normaux sont creacuteeacutees Le comportement de lrsquoutilisateurprogramme observeacute est compareacute aux statistiques Un comportement montrant un trop grand eacutecart avec les statistiques est rejeteacute
Problegravemes avec les Problegravemes avec les systegravemes de deacutetection systegravemes de deacutetection
drsquointrusion (IDS)drsquointrusion (IDS)Le problegraveme majeur avec lrsquoapproche est le mecircme qursquoavec la biomeacutetrie Le systegraveme qui surveille doit ecirctre assez toleacuterant pour autoriser les comportements normaux mais suffisamment restrictif pour attraper les acteurs malveillants
Ce problegraveme nrsquoest pas tregraves bien compris et les solutions proposeacutees ne sont pas tout agrave fait satisfaisantes
La deacutetection drsquointrusion est bien inutile si le systegraveme ne reacuteagit pas de la bonne faccedilon lorsqursquoune intrusion est deacutetecteacutee La partie du systegraveme qui alerte lrsquoadministrateur qui interdit lrsquoaccegraves qui effectue quelque autre tacircche pour eacuteliminer la menace est tout aussi importante que celle qui deacutetecte
Le pot de mielLe pot de miel
Le pot de miel (laquohoney potraquo) est un truc pratique pour la deacutetection drsquointrusions
Une ressource bidon qui semble inteacuteressante pour un adversaire est creacuteeacutee
Puisque celle-ci est bidon on peut supposer que si quelqursquoun y accegravede crsquoest qursquoil srsquoadonne agrave une activiteacute malveillante
En consultant les traces il peut ecirctre possible de retrouver lrsquoutilisateur malveillant
Ceci peut se faire agrave lrsquoinsu de lrsquointrus
ExempleExemple
Un hocircpital ameacutericain soupccedilonnait que quelqursquoun consultait les dossiers de patients sans en avoir lrsquoautorisation
Ils ont creacuteeacute des fichiers pour des patients qui nrsquoexistent pas
Les accegraves agrave ces fichiers ont alors eacuteteacute retraceacutes jusqursquoagrave lrsquoutilisateur malveillant
Les attaques de lrsquointeacuterieurLes attaques de lrsquointeacuterieurPresque tout ce que nous avons vu a pour but la protection contre les attaques venues de lrsquoexteacuterieur
Les attaques peuvent tregraves bien eacutemaner de lrsquointeacuterieur et peuvent causer des problegravemes seacuterieux
Le premiegravere chose agrave comprendre est qursquoil nrsquoest pas possible de se preacutemunir contre ces attaques si les utilisateurs ont tous les droits sur le systegraveme cible
Il est donc neacutecessaire qursquoune partie du systegraveme soit garantie de fonctionner selon ses speacutecifications mecircme sous attaque
Sans cette hypothegravese le systegraveme est sous le controcircle complet de lrsquoadversaire
Base informatique Base informatique seacutecuriseacuteeseacutecuriseacutee
laquotrusted computing baseraquo (TCB)laquotrusted computing baseraquo (TCB)
Une base seacutecuriseacutee peut ecirctre eacutetablie en utilisant de la seacutecuriteacute mateacuterielle logicielle par mot de passe par exemple
Le rocircle de ce systegraveme de base est de controcircler lrsquoaccegraves aux ressources et le flux drsquoinformation sur celui-ci
Pour bien comprendre comment ces protections fonctionnent nous devons mettre de lrsquoordre dans nos ideacutees Nous devons voir agrave quoi ressemble une politique de seacutecuriteacute dans ce sceacutenario
Crsquoest notre prochain sujet
SELECT SELECT FROM Passwords FROM Passwords WHERE user=rsquoWHERE user=rsquoJugheadJugheadrsquo AND password=rsquorsquo AND password=rsquoxrsquo xrsquo OR lsquo1rsquo=lsquo1OR lsquo1rsquo=lsquo1rsquorsquo
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Script du serveurScript du serveur
R-SQL lt-rsquoR-SQL lt-rsquoSELECT SELECT FROM Passwords FROM Passwords WHERE user=$input1 AND WHERE user=$input1 AND password=$input2rsquopassword=$input2rsquo
SI Execute(R-SQL) est vide ALORS AVORTERSI Execute(R-SQL) est vide ALORS AVORTER
Requecirctes Requecirctes malveillantesmalveillantes
HTTPSHTTPS
Password Password xrsquo OR xrsquo OR lsquo1rsquo=rsquo1lsquo1rsquo=rsquo1
Un coupe-feu dynamique peut filtrer des requecirctes bizarres comme xrsquo OR lsquo1rsquo=rsquo1xrsquo OR lsquo1rsquo=rsquo1
Ceci est beaucoup plus difficile agrave Ceci est beaucoup plus difficile agrave reacutealiser par un coupe-feu que reacutealiser par un coupe-feu que
lrsquoexemple preacuteceacutedentlrsquoexemple preacuteceacutedent
Approche Approche comportementalecomportementaleUne autre approche pour la deacutetection drsquointrusions consiste agrave
observer certains aspects du comportement des utilisateurs et programmes
activiteacutes de connexion et de session
activiteacutes relieacutees agrave lrsquoexeacutecution de programme et drsquoaccegraves aux fichiers
Il y a deux approches pour la deacutetection de comportements suspects
Par regravegles (rule-based) Un ensemble de regravegles deacutecrivant les comportements normaux est eacutetabli Les comportements anormaux (trop loin des normaux) sont rejeteacutes
Statistique Des statistiques sur les utilisateurs normaux sont creacuteeacutees Le comportement de lrsquoutilisateurprogramme observeacute est compareacute aux statistiques Un comportement montrant un trop grand eacutecart avec les statistiques est rejeteacute
Problegravemes avec les Problegravemes avec les systegravemes de deacutetection systegravemes de deacutetection
drsquointrusion (IDS)drsquointrusion (IDS)Le problegraveme majeur avec lrsquoapproche est le mecircme qursquoavec la biomeacutetrie Le systegraveme qui surveille doit ecirctre assez toleacuterant pour autoriser les comportements normaux mais suffisamment restrictif pour attraper les acteurs malveillants
Ce problegraveme nrsquoest pas tregraves bien compris et les solutions proposeacutees ne sont pas tout agrave fait satisfaisantes
La deacutetection drsquointrusion est bien inutile si le systegraveme ne reacuteagit pas de la bonne faccedilon lorsqursquoune intrusion est deacutetecteacutee La partie du systegraveme qui alerte lrsquoadministrateur qui interdit lrsquoaccegraves qui effectue quelque autre tacircche pour eacuteliminer la menace est tout aussi importante que celle qui deacutetecte
Le pot de mielLe pot de miel
Le pot de miel (laquohoney potraquo) est un truc pratique pour la deacutetection drsquointrusions
Une ressource bidon qui semble inteacuteressante pour un adversaire est creacuteeacutee
Puisque celle-ci est bidon on peut supposer que si quelqursquoun y accegravede crsquoest qursquoil srsquoadonne agrave une activiteacute malveillante
En consultant les traces il peut ecirctre possible de retrouver lrsquoutilisateur malveillant
Ceci peut se faire agrave lrsquoinsu de lrsquointrus
ExempleExemple
Un hocircpital ameacutericain soupccedilonnait que quelqursquoun consultait les dossiers de patients sans en avoir lrsquoautorisation
Ils ont creacuteeacute des fichiers pour des patients qui nrsquoexistent pas
Les accegraves agrave ces fichiers ont alors eacuteteacute retraceacutes jusqursquoagrave lrsquoutilisateur malveillant
Les attaques de lrsquointeacuterieurLes attaques de lrsquointeacuterieurPresque tout ce que nous avons vu a pour but la protection contre les attaques venues de lrsquoexteacuterieur
Les attaques peuvent tregraves bien eacutemaner de lrsquointeacuterieur et peuvent causer des problegravemes seacuterieux
Le premiegravere chose agrave comprendre est qursquoil nrsquoest pas possible de se preacutemunir contre ces attaques si les utilisateurs ont tous les droits sur le systegraveme cible
Il est donc neacutecessaire qursquoune partie du systegraveme soit garantie de fonctionner selon ses speacutecifications mecircme sous attaque
Sans cette hypothegravese le systegraveme est sous le controcircle complet de lrsquoadversaire
Base informatique Base informatique seacutecuriseacuteeseacutecuriseacutee
laquotrusted computing baseraquo (TCB)laquotrusted computing baseraquo (TCB)
Une base seacutecuriseacutee peut ecirctre eacutetablie en utilisant de la seacutecuriteacute mateacuterielle logicielle par mot de passe par exemple
Le rocircle de ce systegraveme de base est de controcircler lrsquoaccegraves aux ressources et le flux drsquoinformation sur celui-ci
Pour bien comprendre comment ces protections fonctionnent nous devons mettre de lrsquoordre dans nos ideacutees Nous devons voir agrave quoi ressemble une politique de seacutecuriteacute dans ce sceacutenario
Crsquoest notre prochain sujet
Approche Approche comportementalecomportementaleUne autre approche pour la deacutetection drsquointrusions consiste agrave
observer certains aspects du comportement des utilisateurs et programmes
activiteacutes de connexion et de session
activiteacutes relieacutees agrave lrsquoexeacutecution de programme et drsquoaccegraves aux fichiers
Il y a deux approches pour la deacutetection de comportements suspects
Par regravegles (rule-based) Un ensemble de regravegles deacutecrivant les comportements normaux est eacutetabli Les comportements anormaux (trop loin des normaux) sont rejeteacutes
Statistique Des statistiques sur les utilisateurs normaux sont creacuteeacutees Le comportement de lrsquoutilisateurprogramme observeacute est compareacute aux statistiques Un comportement montrant un trop grand eacutecart avec les statistiques est rejeteacute
Problegravemes avec les Problegravemes avec les systegravemes de deacutetection systegravemes de deacutetection
drsquointrusion (IDS)drsquointrusion (IDS)Le problegraveme majeur avec lrsquoapproche est le mecircme qursquoavec la biomeacutetrie Le systegraveme qui surveille doit ecirctre assez toleacuterant pour autoriser les comportements normaux mais suffisamment restrictif pour attraper les acteurs malveillants
Ce problegraveme nrsquoest pas tregraves bien compris et les solutions proposeacutees ne sont pas tout agrave fait satisfaisantes
La deacutetection drsquointrusion est bien inutile si le systegraveme ne reacuteagit pas de la bonne faccedilon lorsqursquoune intrusion est deacutetecteacutee La partie du systegraveme qui alerte lrsquoadministrateur qui interdit lrsquoaccegraves qui effectue quelque autre tacircche pour eacuteliminer la menace est tout aussi importante que celle qui deacutetecte
Le pot de mielLe pot de miel
Le pot de miel (laquohoney potraquo) est un truc pratique pour la deacutetection drsquointrusions
Une ressource bidon qui semble inteacuteressante pour un adversaire est creacuteeacutee
Puisque celle-ci est bidon on peut supposer que si quelqursquoun y accegravede crsquoest qursquoil srsquoadonne agrave une activiteacute malveillante
En consultant les traces il peut ecirctre possible de retrouver lrsquoutilisateur malveillant
Ceci peut se faire agrave lrsquoinsu de lrsquointrus
ExempleExemple
Un hocircpital ameacutericain soupccedilonnait que quelqursquoun consultait les dossiers de patients sans en avoir lrsquoautorisation
Ils ont creacuteeacute des fichiers pour des patients qui nrsquoexistent pas
Les accegraves agrave ces fichiers ont alors eacuteteacute retraceacutes jusqursquoagrave lrsquoutilisateur malveillant
Les attaques de lrsquointeacuterieurLes attaques de lrsquointeacuterieurPresque tout ce que nous avons vu a pour but la protection contre les attaques venues de lrsquoexteacuterieur
Les attaques peuvent tregraves bien eacutemaner de lrsquointeacuterieur et peuvent causer des problegravemes seacuterieux
Le premiegravere chose agrave comprendre est qursquoil nrsquoest pas possible de se preacutemunir contre ces attaques si les utilisateurs ont tous les droits sur le systegraveme cible
Il est donc neacutecessaire qursquoune partie du systegraveme soit garantie de fonctionner selon ses speacutecifications mecircme sous attaque
Sans cette hypothegravese le systegraveme est sous le controcircle complet de lrsquoadversaire
Base informatique Base informatique seacutecuriseacuteeseacutecuriseacutee
laquotrusted computing baseraquo (TCB)laquotrusted computing baseraquo (TCB)
Une base seacutecuriseacutee peut ecirctre eacutetablie en utilisant de la seacutecuriteacute mateacuterielle logicielle par mot de passe par exemple
Le rocircle de ce systegraveme de base est de controcircler lrsquoaccegraves aux ressources et le flux drsquoinformation sur celui-ci
Pour bien comprendre comment ces protections fonctionnent nous devons mettre de lrsquoordre dans nos ideacutees Nous devons voir agrave quoi ressemble une politique de seacutecuriteacute dans ce sceacutenario
Crsquoest notre prochain sujet
Problegravemes avec les Problegravemes avec les systegravemes de deacutetection systegravemes de deacutetection
drsquointrusion (IDS)drsquointrusion (IDS)Le problegraveme majeur avec lrsquoapproche est le mecircme qursquoavec la biomeacutetrie Le systegraveme qui surveille doit ecirctre assez toleacuterant pour autoriser les comportements normaux mais suffisamment restrictif pour attraper les acteurs malveillants
Ce problegraveme nrsquoest pas tregraves bien compris et les solutions proposeacutees ne sont pas tout agrave fait satisfaisantes
La deacutetection drsquointrusion est bien inutile si le systegraveme ne reacuteagit pas de la bonne faccedilon lorsqursquoune intrusion est deacutetecteacutee La partie du systegraveme qui alerte lrsquoadministrateur qui interdit lrsquoaccegraves qui effectue quelque autre tacircche pour eacuteliminer la menace est tout aussi importante que celle qui deacutetecte
Le pot de mielLe pot de miel
Le pot de miel (laquohoney potraquo) est un truc pratique pour la deacutetection drsquointrusions
Une ressource bidon qui semble inteacuteressante pour un adversaire est creacuteeacutee
Puisque celle-ci est bidon on peut supposer que si quelqursquoun y accegravede crsquoest qursquoil srsquoadonne agrave une activiteacute malveillante
En consultant les traces il peut ecirctre possible de retrouver lrsquoutilisateur malveillant
Ceci peut se faire agrave lrsquoinsu de lrsquointrus
ExempleExemple
Un hocircpital ameacutericain soupccedilonnait que quelqursquoun consultait les dossiers de patients sans en avoir lrsquoautorisation
Ils ont creacuteeacute des fichiers pour des patients qui nrsquoexistent pas
Les accegraves agrave ces fichiers ont alors eacuteteacute retraceacutes jusqursquoagrave lrsquoutilisateur malveillant
Les attaques de lrsquointeacuterieurLes attaques de lrsquointeacuterieurPresque tout ce que nous avons vu a pour but la protection contre les attaques venues de lrsquoexteacuterieur
Les attaques peuvent tregraves bien eacutemaner de lrsquointeacuterieur et peuvent causer des problegravemes seacuterieux
Le premiegravere chose agrave comprendre est qursquoil nrsquoest pas possible de se preacutemunir contre ces attaques si les utilisateurs ont tous les droits sur le systegraveme cible
Il est donc neacutecessaire qursquoune partie du systegraveme soit garantie de fonctionner selon ses speacutecifications mecircme sous attaque
Sans cette hypothegravese le systegraveme est sous le controcircle complet de lrsquoadversaire
Base informatique Base informatique seacutecuriseacuteeseacutecuriseacutee
laquotrusted computing baseraquo (TCB)laquotrusted computing baseraquo (TCB)
Une base seacutecuriseacutee peut ecirctre eacutetablie en utilisant de la seacutecuriteacute mateacuterielle logicielle par mot de passe par exemple
Le rocircle de ce systegraveme de base est de controcircler lrsquoaccegraves aux ressources et le flux drsquoinformation sur celui-ci
Pour bien comprendre comment ces protections fonctionnent nous devons mettre de lrsquoordre dans nos ideacutees Nous devons voir agrave quoi ressemble une politique de seacutecuriteacute dans ce sceacutenario
Crsquoest notre prochain sujet
Le pot de mielLe pot de miel
Le pot de miel (laquohoney potraquo) est un truc pratique pour la deacutetection drsquointrusions
Une ressource bidon qui semble inteacuteressante pour un adversaire est creacuteeacutee
Puisque celle-ci est bidon on peut supposer que si quelqursquoun y accegravede crsquoest qursquoil srsquoadonne agrave une activiteacute malveillante
En consultant les traces il peut ecirctre possible de retrouver lrsquoutilisateur malveillant
Ceci peut se faire agrave lrsquoinsu de lrsquointrus
ExempleExemple
Un hocircpital ameacutericain soupccedilonnait que quelqursquoun consultait les dossiers de patients sans en avoir lrsquoautorisation
Ils ont creacuteeacute des fichiers pour des patients qui nrsquoexistent pas
Les accegraves agrave ces fichiers ont alors eacuteteacute retraceacutes jusqursquoagrave lrsquoutilisateur malveillant
Les attaques de lrsquointeacuterieurLes attaques de lrsquointeacuterieurPresque tout ce que nous avons vu a pour but la protection contre les attaques venues de lrsquoexteacuterieur
Les attaques peuvent tregraves bien eacutemaner de lrsquointeacuterieur et peuvent causer des problegravemes seacuterieux
Le premiegravere chose agrave comprendre est qursquoil nrsquoest pas possible de se preacutemunir contre ces attaques si les utilisateurs ont tous les droits sur le systegraveme cible
Il est donc neacutecessaire qursquoune partie du systegraveme soit garantie de fonctionner selon ses speacutecifications mecircme sous attaque
Sans cette hypothegravese le systegraveme est sous le controcircle complet de lrsquoadversaire
Base informatique Base informatique seacutecuriseacuteeseacutecuriseacutee
laquotrusted computing baseraquo (TCB)laquotrusted computing baseraquo (TCB)
Une base seacutecuriseacutee peut ecirctre eacutetablie en utilisant de la seacutecuriteacute mateacuterielle logicielle par mot de passe par exemple
Le rocircle de ce systegraveme de base est de controcircler lrsquoaccegraves aux ressources et le flux drsquoinformation sur celui-ci
Pour bien comprendre comment ces protections fonctionnent nous devons mettre de lrsquoordre dans nos ideacutees Nous devons voir agrave quoi ressemble une politique de seacutecuriteacute dans ce sceacutenario
Crsquoest notre prochain sujet
ExempleExemple
Un hocircpital ameacutericain soupccedilonnait que quelqursquoun consultait les dossiers de patients sans en avoir lrsquoautorisation
Ils ont creacuteeacute des fichiers pour des patients qui nrsquoexistent pas
Les accegraves agrave ces fichiers ont alors eacuteteacute retraceacutes jusqursquoagrave lrsquoutilisateur malveillant
Les attaques de lrsquointeacuterieurLes attaques de lrsquointeacuterieurPresque tout ce que nous avons vu a pour but la protection contre les attaques venues de lrsquoexteacuterieur
Les attaques peuvent tregraves bien eacutemaner de lrsquointeacuterieur et peuvent causer des problegravemes seacuterieux
Le premiegravere chose agrave comprendre est qursquoil nrsquoest pas possible de se preacutemunir contre ces attaques si les utilisateurs ont tous les droits sur le systegraveme cible
Il est donc neacutecessaire qursquoune partie du systegraveme soit garantie de fonctionner selon ses speacutecifications mecircme sous attaque
Sans cette hypothegravese le systegraveme est sous le controcircle complet de lrsquoadversaire
Base informatique Base informatique seacutecuriseacuteeseacutecuriseacutee
laquotrusted computing baseraquo (TCB)laquotrusted computing baseraquo (TCB)
Une base seacutecuriseacutee peut ecirctre eacutetablie en utilisant de la seacutecuriteacute mateacuterielle logicielle par mot de passe par exemple
Le rocircle de ce systegraveme de base est de controcircler lrsquoaccegraves aux ressources et le flux drsquoinformation sur celui-ci
Pour bien comprendre comment ces protections fonctionnent nous devons mettre de lrsquoordre dans nos ideacutees Nous devons voir agrave quoi ressemble une politique de seacutecuriteacute dans ce sceacutenario
Crsquoest notre prochain sujet
Les attaques de lrsquointeacuterieurLes attaques de lrsquointeacuterieurPresque tout ce que nous avons vu a pour but la protection contre les attaques venues de lrsquoexteacuterieur
Les attaques peuvent tregraves bien eacutemaner de lrsquointeacuterieur et peuvent causer des problegravemes seacuterieux
Le premiegravere chose agrave comprendre est qursquoil nrsquoest pas possible de se preacutemunir contre ces attaques si les utilisateurs ont tous les droits sur le systegraveme cible
Il est donc neacutecessaire qursquoune partie du systegraveme soit garantie de fonctionner selon ses speacutecifications mecircme sous attaque
Sans cette hypothegravese le systegraveme est sous le controcircle complet de lrsquoadversaire
Base informatique Base informatique seacutecuriseacuteeseacutecuriseacutee
laquotrusted computing baseraquo (TCB)laquotrusted computing baseraquo (TCB)
Une base seacutecuriseacutee peut ecirctre eacutetablie en utilisant de la seacutecuriteacute mateacuterielle logicielle par mot de passe par exemple
Le rocircle de ce systegraveme de base est de controcircler lrsquoaccegraves aux ressources et le flux drsquoinformation sur celui-ci
Pour bien comprendre comment ces protections fonctionnent nous devons mettre de lrsquoordre dans nos ideacutees Nous devons voir agrave quoi ressemble une politique de seacutecuriteacute dans ce sceacutenario
Crsquoest notre prochain sujet
Base informatique Base informatique seacutecuriseacuteeseacutecuriseacutee
laquotrusted computing baseraquo (TCB)laquotrusted computing baseraquo (TCB)
Une base seacutecuriseacutee peut ecirctre eacutetablie en utilisant de la seacutecuriteacute mateacuterielle logicielle par mot de passe par exemple
Le rocircle de ce systegraveme de base est de controcircler lrsquoaccegraves aux ressources et le flux drsquoinformation sur celui-ci
Pour bien comprendre comment ces protections fonctionnent nous devons mettre de lrsquoordre dans nos ideacutees Nous devons voir agrave quoi ressemble une politique de seacutecuriteacute dans ce sceacutenario
Crsquoest notre prochain sujet