Attaque DOS (Deny of service)

Attaque DOS (Deny of service)

1 – Introduction à l’attaque DOS

Le samedi 25 janvier 2003, 5h30 UTC, plusieurs vols aériens sont annulés, il y a des perturbations pour les paiements par cartes de crédit et les guichets automatiques subissent eux aussi des problèmes, plusieurs grandes entreprises voient leurs réseaux inutilisables. C’est le résultat de du virus SLAMMER DOS qui provoqua un déni de service généralisé planétaire. Basé sur UDP, il s’est propagé en moins de 30 minutes sur plus de 75 000 ordinateurs connectés à Internet.

dos-attaque-deny-of-service attaque dos

2 – Définition de l’attaque DOS

Le déni de service, connu sous le titre anglophone de « Denial Of Service » ou encore DOS, est une attaque réalisée dans le but de rendre indisponible durant une certaine période les services ou ressources d’une organisation. Généralement, ce type d’attaque à lieu contre des machines, serveurs et accès d’une entreprise afin qu’ils deviennent inaccessibles pour leurs clients. Le but d’une telle attaque n’est pas d’altérer ou de supprimer des données, ni même de voler quelconque information. Il s’agit ici de nuire à la réputation de sociétés présentes sur Internet en empêchant le bon fonctionnement de leurs activités.

La réalisation d’un DOS déni de service n’est pas très compliquée, mais pas moins efficace. Il est possible d’attaquer tout type d’équipements réseau tel que les serveurs, routeurs et Switchs. Cela touche 99% de la planète car la plupart des dénis de service exploitent des failles liées au protocole TCP/IP. Nous pouvons diviser les impacts des attaques DOS en deux catégories :

  • Les dénis de service DOS par saturation qui consistent à submerger une machine de requêtes, afin qu’elle ne soit plus capable de répondre aux demandes réelles.
  • Les dénis de service DOS par exploitation des vulnérabilités qui consistent à exploiter une faille du système cible afin de le rendre inutilisable.

Le principe de ces attaques DOS est d’envoyer des paquets ou des données de taille ou de constitution inhabituelle, afin de provoquer une saturation ou un état instable des équipements victimes et de les empêcher ainsi d’assurer les services réseau qu’elles sont sensées offrir. Dans certains cas extrêmes, ce type d’attaque peut conduire au crash de l’équipement cible.

Le déni de service DOS est donc un type d’attaque qui coûte très cher puisqu’il interrompt le cours normal des transactions d’une organisation. Sachant qu’à l’heure actuelle, les sommes et les enjeux d’une entreprise sont généralement énormes, cela peut poser de graves problèmes si une telle situation se produit ne fût-ce que quelques heures. Imaginez les impacts :

  • Financier d’un grand site de commerce en ligne dont sa plateforme d’hébergement serait indisponible lors des fêtes de Noël ?
  • Sur l’image d’une banque qui ne pourrait plus recevoir ses mails ?
  • Globaux pour vous, en tant qu’entreprise qui communiquez avec vos clients ?

Les contre-mesures sont compliquées à mettre en place et doivent être spécifiques à un type d’attaque DOS. Etant donné que les attaques par déni de service utilisent les services et protocoles normaux d’Internet, s’en protéger reviendrait à couper les voies de communications normales, sachant qu’il s’agit de la raison d’être principale des machines concernées (Site web, Messagerie, Extranet, …).

Il faut donc essayer se protéger au mieux de certains comportements anormaux, ce qui implique notamment la vérification de l’intégrité des paquets, la surveillance du trafic, établissement de profils types et de seuils… On est donc loin de la protection absolue, mais il est tout de même possible de se protéger de façon intelligente et flexible.

3 – Les principales attaques

3.1 – Attaque ARP Poisoning

Cette attaque se base sur l’envoi d’informations ARP falsifiés. Ainsi, les différents équipements du LAN apprennent des mauvaises correspondances adresses IP avec MAC. La conséquence est de rompre toutes communications entre deux équipements IP. Les cibles sont souvent les serveurs et les routeurs rendant indisponible les services associés.

3.2 – Attaque par fragmentation (fragment attack)

Cette technique d’attaque est basé sur la fragmentation IP. L’objectif est de planter la pile IP de la cible en modifiant les numéros de séquences.

En effet, le protocole IP est prévu pour fragmenter les datagrammes de taille importante provenant de la couche 4 du modèle OSI. Le datagramme est alors fragmenté en en plusieurs paquets IP possédant chacun un numéro de séquence et un numéro d’identification commun. A réception des fragments, la cible rassemble les paquets grâce aux valeurs de décalage (en anglais offset) qu’ils contiennent.

L’astuce est de modifier les numéros de séquence afin de générer des blancs ou des recouvrement lors du réassemblage par la pile IP cible. Et certain équipement ne le supportait pas avec différent conséquence tel que l’arrêt du service TCPIP.

Cependant, revenons sur terre, aujourd’hui, comme pour le ping de la mort, cette technique n’est plus viable du faite que les pile IP ont toutes évoluées. Le faite de détailler cette attaque permet de raconter l’histoire et se remémorer des souvenirs.

3.3 – Attaque Ping de la mort (Ping of death)

Cette technique d’attaque DOS est dépassée, mais elle a fait ses preuves à l’époque. Elle exploitait une faiblesse dans l’implémentation de la plus part des piles IP en envoyant un paquet ICMP d’une taille non conforme (supérieur à 64 octets). Ceci avait pour effet de planter directement la pile IP attaquée.

Cependant, revenons sur terre, aujourd’hui, comme pour l’attaque par fragmentation, cette technique n’est plus viable du faite que les pile IP ont toutes évoluées. Nous pouvons donc discuter en datagramme ICMP de grande taille sans aucun soucis (heureusement). Le faite de détailler cette attaque permet de raconter l’histoire et se remémorer des souvenirs.

L’attaque DOS Ping de la mort est souvent confondue en pensant qu’elle est basée sur le faite de saturer une bande passante en ICMP. Ce n’est pas le cas, car ce principe est appliquée par l’attaque DOS Ping Flood et non pas par Ping de la mort.

3.4 – Attaque Unreachable Host

Cette attaque DOS envoie des messages ICMP de type « Host Unreachable » à une cible, provoquant la déconnexion des sessions et paralyse ainsi la victime. La simplicité de cette attaque DOS est qu’elle demande qu’un faible débit du fait que les envois de datagramme ICMP peuvent être sur une faible cadence.

3.5 – Attaque ICMP Redirect

Cette attaque DOS envoi des messages ICMP de type « Redirect » à une cible pouvant être aussi bien un serveur comme un routeur. Le datagramme informera la victime qu’il faut passer par une autre chemin. Ainsi, cela provoquera une indisponibilité WAN.

3.6 – Attaque Ping Flood (ICMP Flood)

Beaucoup d’hôte Internet ou privée répondent aux paquets ICMP, il est donc facile de les inonder de ce flux afin les rendre indisponibles. D’ailleurs, que les cibles répondent ou pas à l’ICMP, l’objectif premier étant de saturer leurs bande passantes d’accès réseau, processeurs, mémoire …

Ping Flood est la plus répandu des attaques par déni de service, car de nombreux particuliers et amateurs s’amusent simplement à pinguer un host distant. Et bien sur, ils se font plaisir en ajoutant les options permettant d’augmenter la cadence au maximum. Cependant, Microsoft à limité les options de son Ping obligeant ainsi à attendre une seconde entre chaque Ping. Ca permet d’éviter aux particuliers de s’amuser avec cette attaque, mais il faut être réaliste, Windows n’est pas le seul OS et Ping.exe n’est pas la seule application …

3.7 – Attaque UDP Flood

Le concept de cette attaque DOS est identique au Ping Flood. C’est de saturer les ressources de la cible en terme de débit, processeur, mémoire à l’aide de datagramme UDP De la même manière, que la cible réponde ou pas au flux abondant émis, ne change pas le résultat.

3.8 – Attaque * Flood

Le concept de cette attaque DOS, dont je viens d’inventer le nom, est de saturer une cible exactement comme le réalise Ping Flood et UDP Flood. Le concept de ces attaques se base toutes sur l’envoi massive de requête à destination de la cible. Ces requêtes ne sont pas obligatoirement basées sur ICMP ou UDP, mais elles se reposeent sur TCP, IGMP, IP_raw, … D’où le nom de l’attaque * Flood indiquant que l’on peux saturer une cible avec n’importe quel flux IP.

3.9 – Attaque Land (Land Attack)

Cette attaque DOS consiste à démarrer un ouverture de session TCP via un SYN à destination d’un port ouvert de la machine cible. L’astuce de l’attaque est de préciser l’adresse IP source identiquement à l’IP destination ainsi que le port source identiquement au port destination. La victime recevant cette trame pense alors qu’il discuter avec lui même ce qui généralement provoquait un crash.

Cependant, revenons sur terre, aujourd’hui, comme pour le ping de la mort et , cette technique n’est plus viable du faite que les pile TCP/IP ont toutes évoluées. Le faite de détailler cette attaque DOS permet de raconter l’histoire et se remémorer des souvenirs. Du plus, les consoles IDS et les Firewall sont tous opérationnels pour bloquer de type de trame.

3.10 – Attaque SynFlood

Cette attaque DOS utilise une faiblesse du protocole TCP en se basant sur l’envoi massive de demande d’ouverture de session SYN. L’objectif étant de saturer le nombre maximum de sessions TCP en cours de l’équipement IP assaillis. Ainsi, lorsque cette limite est atteinte, la cible ne pourra plus établir aucune session TCP causant une indisponibilité de tous ces applications en écoute de port TCP.

Tout équipement IP dispose de plusieurs variables pour gérer le fonctionnement de TCP. Ceci apportant donc les limites définies suivantes :

  • Le nombre de session maximum établies (L’attaque SynFlood ne se base pas sur cette limite)
  • Le nombre de session maximum en cours d’établissement
  • Le temps d’attente du retour ACK avant de supprimer la session en cours

Pour se protéger, il est donc possible de jouer sur ces valeurs afin d’accepter plus de sessions et d’être plus réactif sur la durée d’attente. Cependant, le fait de modifier ces valeurs peux engendrer un impact de performance local. De plus, cela ne fait que repousser les limites que l’attaquant se fera un malin plaisir à atteindre.

Les SynCookies représente une solution technique relativement efficace. Sur le même principe que les cookies HTTP, le serveur sollicité renvoie un cookie crypté dans le SYN/ACK, puis il efface l’entrée de sa file d’attente. Si c’est un client régulier il lui renverra un ACK, dont on peut déduire le cookie et reconstitué ainsi l’entrée dans la file d’attente. La problématique de cette technique est que tout le monde n’implémente pas ce mécanisme provoquant ainsi des problèmes de compatibilité.

On notera aussi que l’implémentation d’IPSec dans IPv6 rendra les ces attaques DOS difficiles. IPv6 compliquera aussi la taches des pirates par le nombre d’adresses à scanner et par l’affectation unique d’une IP qui augmentera leur traçabilité.

Vous trouverez sur ce lien web un exemple d’outil permettant de réaliser cette attaque DOS.

3.11 – Attaque Session Flood

La méthode générale de cette attaque DOS consiste à saturer un service distant en montant un plus grand nombres de connexions TCP que peut en supporter la cible. Cela ressemble beaucoup à l’attaque SynFlood excepté le fait qu’elle se base sur le montage complet d’une session TCP (SYN – SYN/ACK – ACK). La conséquence pour la cible est de plus pouvoir accepter aucune session TCP supplémentaire.

Cette attaque DOS à l’avantage d’être très simple à mettre en oeuvre, mais la faiblesse d’être très rapidement repéré. La force de cette attaque DOS est son couplage en mode distribué.

Du côté cible, les préconisations afin de tenter de l’éviter sont :

  • Augmenter le nombre de sessions maximums supportées
  • Dupliquer la cible afin d’obtenir N fois le nombre de sessions maximums
  • Mettre en oeuvre des boîtiers de repartissions de charge des sessions TCP
  • Implémenter une console IDS détectant l’attaque afin de bloquer l’IP attaquante

Vous trouverez sur ce lien web un exemple d’outil permettant de réaliser cette attaque DOS.

3.12 – Attaque Mail Bombing

Cette attaque DOS, très souvent utilisée par du grand public, consiste à envoyer plusieurs milliers d’emails à destination d’une entreprise ou d’un utilisateur cible. L’impact est évidement avec un remplissage massive de la boite à lettre utilisateur, mais surtout de saturer le débit Internet de l’entreprise ciblée qui ne possède pas de qualité de service.

Cette attaque DOSdevient de moins en moins efficace du fait que les entreprise possède de plus en plus des tuyaux de boucle local en haut débit, de la QOS performante et des relais Anti-Spam pertinents.

4 – Les variantes des attaques

4.1 – La réflexion  – Smurf

Cette variante consiste à envoyer une trame à la destination d’un broadcast de réseau. La finalité est couplé cette trame à une adresse IP source correspondante à celle de la cible. Ainsi, le flux de réponse en destination de la cible sera fortement multiplié.

Cette amplification peux facilement se coupler avec les attaques :

  • Attaque Ping Flood
  • Attaque UDP Flood
  • Attaque * Flood

Vous trouverez sur ce lien web un exemple d’outil permettant de réaliser cette variante.

4.2 – L’IP Spoofing

Cette variante permet de se cacher lors de l’attaque. Pour cela, il suffit de changer l’adresse IP Source afin de pas être reconnu. Il est même possible d’effectuer un changement aléatoire à chaque envoi, cela brouillera particulièrement les pistes.

Ce camouflage peux facilement se coupler avec les attaques ne nécessitant pas de recevoir la réponse :

  • Attaque Ping de la mort
  • Attaque Ping Flood
  • Attaque UDP Flood
  • Attaque * Flood
  • Attaque SynFlood
  • Attaque par fragmentation (fragment attack)
  • Attaque Unreachable Host
  • Attaque ICMP Redirect

4.3 – Le zombie

Cette variante permet de très bien se cacher en exécutant l’attaque DOS à partir d’une machine distantes ne nous appartenant pas. Pour cela, il faudra donc pirater et prendre la main d’une machine Internet qui sera appelé Zombie, d’où l’attaque sera lancée. Ainsi, la cible ne verra que le Zombie dans ses logs et pas la source réelle du hacker.

C’est une technique est simple à réaliser du fait qu’il existe de nombreuses stations de travail de particulier sans aucune protection ou presque.

Ce camouflage peux facilement se coupler avec toutes les attaques.

5 – Histoire des grandes attaques

Voici des exemples d’attaques qui furent considérées comme toutes importantes en fonction de leurs date d’exécution respective.

  • En Avril 1992, L’attaque Nuke (Icmp_unreach)
  • En janvier 1996, L’attaque Octopus (While – connect)
  • En décembre 1996, L’attaque Ping de la mort (Ping Of Death)
  • En juillet 1997, L’attaque Smurf
  • En juillet 1997, L’attaque WinNuke qui provoquait sur les stations Windows 95 et NT, un écran bleu (blue screen) ou un reboot
  • En octobre 1997, L’attaque Land valable sur les système Windows 95 OSR2, 98, NT 4.O, FreeBSD, HP-UX, OpenBSD, SunOS, IOS et etc …
  • En octobre 1997, L’attaque Latierra qui impactait les stations Windows 95 par un crash et occupait 100% du CPU des stations Windows NT 4.0 (SP3)
  • En décembre 1997, L’attaque Teardrop / Overdrop  qui provoquait un plantage sur les stations Linux (jusqu’au kernel 2.0.31), 95 OSR et NT
  • En janvier 1998, L’attaque Bonk impactait les stations Win95 OSR2 patchées et NT 4.0 par un plantage.
  • En janvier 1998, L’attaque Newtear impactait les stations Windows NT4 patchées et Win95
  • En janvier 1998, L’attaque Bonk/Boink visait les stations Windows en émettant plein de paquet UDP corrompus provoquant des blocage ou des plantages du système d’exploitation cible.
  • En janvier 1998, L’attaque Fraggle en inondation de paquets UDP amplifié par la variante Smurf
  • En avril 1998, L’attaque Nestea impactait les systèmes d’exploitations Linux 2.0.*, 2.1.* et certaines versions Windows.
  • En juin 1998, L’attaque Syndrop basé sur Teardrop en TCP avec le bit SYN et des champs invalides tel que le numéro de séquence, la taille de fenêtre, etc. L’impact est de bloquer les stations Windows NT4 SP3 par un Freeze.
  • En septembre 1998, L’attaque Snork, surnommé « Tueur de Windows NT », envoyait des paquets Netbios de type RPC (port UDP 135) en se faisant passer pour une autres station Windows NT.
  • En octobre 1998, L’attaque Smack inondait de paquets ICMP aléatoires de type UnReachable. Les systèmes d’exploitations impactés étaient BSD, RedHAT, Slackware.
  • En janvier 2000, L’attaque Stream/Raped Inondait des paquets TCP avec le flag marqué en ACK. Les adresses et numéros de séquence étaient aléatoires.
  • En mai 2000, L’attaque Jolt2.c bloquait les Firewall-1. Checkpoint avait réagis avec un patch, cependant, le temps de mise à jours mondiale dépendait des administrateurs eux mêmes et ce fût donc long.
  • Le 23 octobre 2002, L’attaque de type Ping Flood en mode distribuée sur les serveurs racines DNS de l’Internet. Seulement 4 serveurs sur 13 sont restés disponibles.
  • Le 25 janvier 2003, L’attaque Slammer s’enclencha à 5h30 UTC. Plusieurs vols aériens sont annulés, il y a des perturbations pour es paiement par cartes de crédit et les guichets automatiques subissent eux aussi des problèmes, plusieurs grandes entreprises voient leurs réseaux inutilisables. C’est le résultat de du virus SLAMMER qui provoqua un déni de service généralisé planétaire. Basé sur UDP, il s’est propagé en moins de 30 minutes sur plus de 75 000 ordinateurs connectés à Internet.
  • En août 2003,  L’attaque Baster, Virus, était programmé pour effectuer une attaque de déni de service distribué sur le site de mise à jour Windows. Mais le désassemblage (reverse engineering) fait sur le virus à permis de comprendre son fonctionnement et sa cible. Microsoft a donc fait migré son serveur sur une autre adresse pour contrer la future attaque. Cependant, La stratégie de Microsoft a retenue l’attention car sa page d’accueil était alors hébergé sur une plateforme Linux du réseau d’Akamai. Microsoft avait par ailleurs désactivé l’entrée DNS sur www.windowsupdate.com le temps de l’attaque, ce qui a considérablement atténué les effets.

6 – Histoire des condamnations

Les arrestations sont rares, car les hackers, pirates et inconscients sont difficilement repérable. Cependant, les peines attribuées pour les personnes attrapées sont lourdes. Voici quelques exemples de condamnations :

Cinq ans de prison et 35000$ d’amende pour l’Américain Jasmine Singh âgé de 17 ans. Il a été accusé d’avoir à 5 reprises rendus injoignables les sites Internet Jersey-Joe.com et Distant Replays. Il agissait pour le compte du propriétaire d’une société concurrente, âgé lui de 18 ans. Les plaignants estimaient le préjudice à 1,5 millions de dollars. Son mode opératoire était de contrôler des milliers de machines dans le monde à l’aide d’un Virus et ainsi de les utiliser pour inonder de requêtes les sites visés, les rendant injoignables.

21 mois de prison avec sursis pour l’Allemand Sven Jaschan âgé de 17 ans. Il a été accusé d’avoir crée le ver Sasser qui c’est très vite propagé sur la planète entière. L’impact fût un redémarrage massive des stations de travail et serveurs Windows.

Quatre ans de prison pour les deux Américains New-Yorkais Shaun Harrison âgés de 18 ans et Saverio Mondelli 19. Ils ont été accusé du piratage d’un site communautaire. La sanction fût lourde face au délit réel. Ils ont illégalement pénétré sur le site MySpace et demandé une rançon de  150 milles dollars à son propriétaire.

Huit ans de prison pour un groupe de trois russes. Le 28 juillet 2004, ils ont attaqué le site DoubleClick entraînant le site de ses clients, qui dépendent de sa technologie pour gérer leurs bannières de publicité. Leurs sites furent fortement ralentis ou complètement paralysés pendant de longues heures, entraînant dans son infortune les sites de ses clients, qui dépendent de sa technologie pour gérer leurs bannières de publicité. Ils ont extorqués plus de 4 millions d’Euros repartis sur plus de 54 sites WEB d’une trentaine de pays. Cette peine est la plus lourde prononcée en Russie, car la justice a considéré l’affaire comme relevant de l’extorsion en bande organisée et non du seul piratage informatique.

7 – Demande de rançon

Le déni de service occasionne beaucoup de problèmes repartit dans le monde entier souvent exécuté aléatoirement pour le fun. Aujourd’hui, les braqueurs de banques n’existent presque plus, mais leurs remplaçant sont arrivés. On voit donc se profiler de plus en plus d’attaque qui sont ciblées représentant une nouvelle technique de chantage que bons nombres de pirates exercent maintenant allégrement. En effet, les sociétés dont la principale activité est basée sur un flux d’information Internet, souvent avec des sommes importantes en jeu, sont menacées.

Les pirates actuels utilisent donc les attaques par déni de service comme nouvelle arme pour exercer un chantage contre les sociétés connectés à Internet. Le message est clair « La bourse ou l’exploitation de votre site ». Il est évident que le ralentissement, voir même le blocage de leurs services pendant quelques heures, pourrait occasionner de grandes pertes d’argent ainsi que beaucoup de désagréments pour leurs clients. Ces sociétés ont donc tout intérêt à obéir ou à trouver une parade pour s’en protéger, sans quoi les menaces seraient mises à exécution et ou pourraient perdurer.

Cette nouvelle arme est maintenant utilisée de plus en plus couramment. Toutes les sociétés gérant de l’argent sont menacées, aucune n’est à l’abri. Toute société accessible par Internet est ouverte est potentiellement en danger. On remarque d’ailleurs le nombre d’attaques de ce genre augmente chaque année.

8 – Conclusion

Il ne faut pas sous-estimer la puissance de ces attaques. De plus, il faut aussi prendre conscience qu’il existe deux catégories d’individus dangereux sur la planète :

  • Les bandes organisées sont issues des groupes mafieux, des terroristes et etc.
  • Les adolescents ou jeunes adultes qui sont inconscients. De plus, ils se sentent rassurés et protégés du fait d’être dans leurs chambres derrière leurs ordinateurs personnels.

Pour se protéger de ce type d’attaque, il est nécessaire d’investir dans la sécurité interne en créant un poste ou service dédié au sein de l’entreprise. Leurs deux objectifs principaux devront être la prévention et le curatif. Le premier sera de mener une veille active sur les nouvelles attaques et vulnérabilités. Le second objectif, le curatif, devra procéder à un suivi régulier des différentes mise à jour et d’être très réactifs sur la surveillance des événements relatés en supervision de l’architecture sécurité.

La réalité du risque est donc évidente, dans ce cas, il peut être intéressant de contracter une police d’assurances couvrant les pertes éventuelles engendrées par une attaque de ce type.

9 – Les vidéos

  • 9.1 - Building Honeypots to monitor DDoS Vidéo en Anglais

    This talk will outline how to use DDoS vulnerable services to develop a honeypot network that will extract valuable information from the Internet and produce a data feed that can be used to protect online assets with Kibana, Elasticsearch, Logstash, and AMQP. The speaker will open-source a monitoring system (a project his team has been developing for the last two years) for reflective DDoS statistics that are external to any specific network.

    Building Honeypots to monitor DDoS

10 – Suivi du document

Création et suivi de la documentation par _SebF

11 – Discussion autour de l’attaques DOS (Deny of service)

Vous pouvez poser toutes vos questions, faire part de vos remarques et partager vos expériences à propos de l’attaques DOS (Deny of service). Pour cela, n’hésitez pas à laisser un commentaire ci-dessous :

Commentaire et discussion

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *