La sécurité - Les attaques Philippe Sèvre. Attaques réseau externes Elles sappuient sur les...

Post on 04-Apr-2015

107 views 1 download

Transcript of La sécurité - Les attaques Philippe Sèvre. Attaques réseau externes Elles sappuient sur les...

La sécurité - Les attaques

Philippe Sèvre

Attaques réseau externes

• Elles s’appuient sur les vulnérabilités liées aux protocoles ou à leurs implémentations

• elles sont très nombreuses et peuvent s'appliquer aux différents niveaux OSI

Rappel sur la connexion TCP

• Envoi d’un SYN

• réception d’un SYN-ACK

• envoi d’un ACK

• Ces mécanismes sont souvent utilisés pour les attaques par saturation (DOS)

IP Spoofing

• Usurpation d’adresse IP pour cacher la source de l’attaque

• principe : on se forge ses propres paquets IP dans lesquels l’adresse source est faussée.

• on utilise avec des outils spéciaux (hping2, nemesis)• attaque aveugle : l’attaquant n’a aucun retour• Solution : ne pas se fier à l'adresse IP pour identifier

une machine => utiliser des procédés cryptographiques (SSL, SSH, …) avec des certificats

TCP Session Hikacking

• on usurpe une connexion TCP en forgeant des N° de sessions adaptés au contexte (simulation de la pile TCP/IP)

ARP Spoofing

• usurpation ARP avec des paquets forgés => attaque classique MIM (Man in the Midle)

• on se fait passer pour une autre machine avec des paquets ARP gratuits

Man in the middle

• Homme du Milieu

• Un tiers se fait passer pour chacun des deux autres interlocuteurs

• Pratiques à mettre en oeuvre (complexe)– ARP Spoofing

– Empoisonnement DNS

– Écoute

– Déni de service

Firewalking

• Utilise le TTL (décrémenté par chaque routeur)

• Si TTL = 0 : envoi message ICMP TTL Exceeded

• Permet de déterminer le nombre et l’adresse des routeurs

• On envoie des paquets test avec TTL = Nbre routeurs + 1

DNS Spoofing

• il suffit de se faire passer pour le vrai serveur DNS et de fournir les information « adaptées”

• Il est également possible de reconfigurer la couche réseau du client au moyen d'un malware

DNS poisonning

• DNS cache Poisonning

• on empoisonne le cache DNS du client (phishing ou hameçonage)

• Remède : utilisation de DNSSEC (DNS avec certificats) encore peu utilisé

Attaques applicatives

• ce sont des attaques concernant la couche 7:– protocole HTTP

– protocole SMTP, POP3/IMAP

– protocole SMB/CIFS

– protocole FTP

– protocole NFS

– DNS

Les Dénis de Service (DOS)

• Dénis de service applicatifs : ils visent à mettre hors de service la couche 7: envoi de requêtes induisant une charge système très élevée => blocage de la mchine

Dénis de service réseaux – 1 • Syn Flooding : on laisse sur la machine cible un

grand nombre de connexion en attente (Flag Syn à 1) sans répondre au Syn-Ack renvoyé par la machine cible => saturation des ressources

• UDP Flooding : exploite le mode non connecté d’UDP . Création d’un UDP Paquet Storm => congestion du réseau - UDP est prioritaire / TCP => plus de BP pour TCP

Dénis de service réseaux - 2• Smurfing : utilise ICMP: ping à une adresse de broadcast => tout le monde

répond. On usurpe l’adresse source en mettant celle de la cible qui va recevoir les paquets ICMP de tout le réseau => tout le réseau recoit le déni de service

• Packet Fragment : utilisent des faiblesses dans la mise en oeuvre de la fragmentation/défragmentation des paquets

• Tiny Fragments– RFC 791 : un routeur doit pouvoir laisser des paquets de 68 octets sans les

fragmenter davantage

– principe de l’attaque : fragmenter sur 2 paquets une demande de connexion TCP

– 2e paquet : demande de connexion TCP (SYN :1 et ACK : 0)

– les routeurs appliquent les même règles aux différents fragments d’un paquet : le 1er passe : le second également

Fragment Overlapping

• RFC 791 : si 2 fragments (IP) se superposent, le 2éme écrase le premier

• cf prec : la demande de connexion est dans le 2eme paquet => la connexion s’établit malgré le filtre

Dénis de service distribués (DDOS)

• On utilise l'effet de levier produit apr plusieurs (+de 100 ou 1000) sources pilotées par des BOT (serveurs IRC)

• très difficiles à contrer (répartition de charge, intervention chez l'opérateur rélécom)

Les attaques Web

• Interprétation des URL

• Mauvais contrôle de données utilisateur

• Injection de code SQL

• Attaque sur les identifiants de session

• Cross site Scripting

• Autres attaques

Exemple

http://www.mondomaine.fr/chemin/fichier.ext?param1=val1&param2=val2

Utilisation de../../.. Pour remonter dans l’arborescence

Utilisation d’Unicode pour IIS

Autres attaques

Parades• Utiliser des partitions séparées• Enlever le composants non nécessaires• Désactiver le browsing• Supprimer les filtres et interpréteurs inutiles• Appliquer des permissions d’accès fichier• Désactiver HTTP si possible (cf HTTPS)• Utiliser le filtrage d’URL (mod_rewrite d’Apache) • Installer un reverse proxy (cf Apache ou Squid)• Installer un IDS dans la DMZ pour détecter les attaques

classiques

Injection de code SQL

Select * from table where champ_nom = NomIl suffit de saisir dans le mot de passe :Toto’ or 1 = 1Le test de validation du mot de passe est court-

circuitéOn peut utiliser UNIONCommandes SQL server :999; exec sp_addlogin ‘monuser’Xp_cmdshell « NET USER /ADD …»’

Attaque sur les identifiants de session

On peut générer automatiquement des identifiants de cookie pour « voler » la session d’un autre utilisateur

Filtrage applicatif

Proxy reverse : il répond aux requêtes des clients et transmet au serveur Web après avoir fait les controles