Powering Your Uptime
HAProxy Technologies
Packetshield
EMEA Headquarters
3, rue du petit Robinson
ZAC des Metz
78350 Jouy ...
Packetshield - Packet flood protection
Agenda
• Qu'est-ce qu'un DDoS?
• Les points de faiblesses d'une architecture
• Comm...
Contact
Pour toute question concernant ces slides, vous pouvez contacter le présentateur: Baptiste Assmann
<bassmann (at) ...
Qu'est-ce qu'un DDoS?
DDoS: Distributed Denial Of Service
• trafic illégitime généré par un ou plusieurs attaquants
• rech...
Les points de faiblesses d'une architecture
Architecture applicative / d'entreprise classique:
+----------+ +----------+ +...
Comment se protéger?
• Saturation de bande passante:
• augmenter la bande passante !!!
• utiliser un service externe de pr...
Présentation de Packetshield
• Protection contre les attaques couches basses: IP, TCP, UDP
• Fonctionne dans le kernel de ...
Présentation de Packetshield
• Packetshield peut nettoyer les flux:
• routés à travers l'ALOHA
• Load-balancés au niveau 4...
Comment fonctionne Packetshield ?
• Packetshield est composé d'intance:
• Une instance est associée à une ou plusieurs int...
Comment se configure Packetshield?
Packetshield fonctionne comme des ACLs réseaux stateful. On peut créer les règles suiva...
Packetshield en action!
Soit l'architecture suivante, où l'ALOHA load-balance un service web sur le port 80 (HAProxy):
+--...
Packetshield en action!
• Utilisation d'un paquet non valide
• Démarrage de packetshield
• Générer un paquet invalide: sud...
Demo #1 output
Affichage lors de l'injection de paquets non-valides:
Every 1.0s: cat /sys/packetshield/mydemo/Other/stats ...
Demo #2 output
• Plus aucun paquet n'est affiché par tcpdump une fois packetshield démarré
• Satistiques packetshield:
Eve...
Packetshield en action!
• Attaque sur un port protégé: SYN flood
• Arrêt de Packetshield
• Génération de trafic sur le por...
Demo #3 output
• Affichage de inject, avant et pendant l'attaque, puis après le démarrage de packetshield:
hits ^hits hits...
Demo #3 output
• Statistiques packetshield pendant cette attaque, on peut voir le nombre de syncookie augmenter:
Every 1.0...
Demo #4 output
• Statistiques packetshield, on peut voir le nombre de packet unmatched augmenter:
Every 1.0s: cat /sys/pac...
Disponibilité de Packetshield
• disponible depuis le firmware ALOHA 7.0 pour les early-adopters, intégré définitivement en...
A venir dans Packetshield
Pas encore disponible dans Packetshield, mais on y travaille:
• ALOHA 8.0, Fin février 2016:
• P...
Prochain SlideShare
Chargement dans…5
×

Presentation packetshield, solution de protection contre les DDoS réseau

893 vues

Publié le

Packetshield est la solution contre les DDoS réseau développée par HAProxy Technologies et intégrée au Load-Balancer ALOHA.

Publié dans : Ingénierie
1 commentaire
1 j’aime
Statistiques
Remarques
Aucun téléchargement
Vues
Nombre de vues
893
Sur SlideShare
0
Issues des intégrations
0
Intégrations
34
Actions
Partages
0
Téléchargements
35
Commentaires
1
J’aime
1
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

Presentation packetshield, solution de protection contre les DDoS réseau

  1. 1. Powering Your Uptime HAProxy Technologies Packetshield EMEA Headquarters 3, rue du petit Robinson ZAC des Metz 78350 Jouy en Josas France http://www.haproxy.com Powering Your Uptime HAProxy Technologies - HAProxy and web performance Private document
  2. 2. Packetshield - Packet flood protection Agenda • Qu'est-ce qu'un DDoS? • Les points de faiblesses d'une architecture • Comment se protéger? • Présentation de Packetshield • Comment fonctionne Packetshield? • Comment se configure Packetshield? • Packetshield en action! • A venir dans Packetshield Powering Your Uptime HAProxy Technologies - HAProxy and web performance Private document
  3. 3. Contact Pour toute question concernant ces slides, vous pouvez contacter le présentateur: Baptiste Assmann <bassmann (at) haproxy (dot) com> Restez informé des nouveautés d'HAProxy Technologies: • http://www.haproxy.com/ • http://blog.haproxy.com/ • http://twitter.com/haproxy_tech/ • http://github.com/haproxytech/ • http://www.slideshare.net/haproxytech/ Pour toute question relatives à nos produits et services, envoyez un mail à <info (at) haproxy (dot) com> Powering Your Uptime HAProxy Technologies - HAProxy and web performance Private document
  4. 4. Qu'est-ce qu'un DDoS? DDoS: Distributed Denial Of Service • trafic illégitime généré par un ou plusieurs attaquants • recherche le point faible dans une architecture en vue de le saturer • Plusieurs vecteurs d'attaques sont possibles: • SYN flood: tentative de création de sessions illégitimes • Packet floods: saturation des couches réseau/transport • réflexion (protocoles UDP): saturation de la bande passante de la cible • paquets IP/TCP/UDP volontairement mal formatés • floods applicatifs: saturation des serveurs d'application • Objectif principal: rendre un service indisponible • Objectif inavoué: extorsion, concurrence, etc... Powering Your Uptime HAProxy Technologies - HAProxy and web performance Private document
  5. 5. Les points de faiblesses d'une architecture Architecture applicative / d'entreprise classique: +----------+ +----------+ +---------------+ +---------------------+ | Internet |--->| Firewall |--->| Load-Balancer |--->| Application servers | +----------+ +----------+ +---------------+ +---------------------+ Les points de faiblesses sont: • la bande passante entre Internet et le Firewall • le nombre de paquets par secondes traités par le Firewall et le Load-Balancer • paquets IP/TCP/UDP mal formés pour le Firewall et le Load-Balancer • rapidité d'établissement de nouvelles sessions TCP pour le Firewall et le Load-Balancer • le nombre de session TCP/UDP maintenues par le Firewall et le Load-Balancer • le nombre de connexions/requêtes par secondes sur le Load-Balancer et les Serveurs d'application • la différentiation entre le trafic réfléchi et le trafic légitime (DNS reflexion) Powering Your Uptime HAProxy Technologies - HAProxy and web performance Private document
  6. 6. Comment se protéger? • Saturation de bande passante: • augmenter la bande passante !!! • utiliser un service externe de protection DDoS (CDN like) • packet floods: • tunning des firewalls, activer le synproxy, etc.. • packetshield • packets mal formatés: • firewall • packetshield • reflexion de trafic: packetshield • Floods applicatifs: HAProxy Powering Your Uptime HAProxy Technologies - HAProxy and web performance Private document
  7. 7. Présentation de Packetshield • Protection contre les attaques couches basses: IP, TCP, UDP • Fonctionne dans le kernel de l'ALOHA: il traite le trafic juste après la carte réseau • Filtrage stateless effectuant sur chaque paquet entrant: • validation protocolaire: nettoyage automatique des paquets mal formatés • protections contre un trop grand nombre de paquets entrants uniquement • filtrage par IP, protocole et port • sacrifice d'une IP attaquée • Filtrage stateful (paquets aller et retour de chaque session), ajoute: • protection contre les attaques SYN flood: émission de SYN cookie • protection contres les attaques ACK ou RST flood: reconnaissance des sessions TCP • protection contres les tempêtes de ACK • protection contres les reflexions DNS Powering Your Uptime HAProxy Technologies - HAProxy and web performance Private document
  8. 8. Présentation de Packetshield • Packetshield peut nettoyer les flux: • routés à travers l'ALOHA • Load-balancés au niveau 4 en mode NAT et DSR • load-balancés au niveau 7 via HAProxy • HAProxy Technologies s'engage sur deux points importants: • la garantie de la protection de l'interface publique de l'ALOHA, même en 10G (wire speed) • aucun paquet appartenant à une session légitime ne doit être bloqué: 0 faux-positif Powering Your Uptime HAProxy Technologies - HAProxy and web performance Private document
  9. 9. Comment fonctionne Packetshield ? • Packetshield est composé d'intance: • Une instance est associée à une ou plusieurs interfaces réseau • Chaque instance possède plusieurs context • Un context est un ensemble de règles appliquées à des IPs de destinations (potentiellement des tags de VLANs aussi) • Un context par défaut est automatiquement créé. Il s'appelle Other • Le diagramme ci-dessous montre comment un paquet entrant dans l'ALOHA est traité <------- packetshield -------> interface réseau ===> instance ========> context ====> system (1) (2) (3) 1. Le paquet entre par l'interface réseau. L'interface réseau le délivre à l'instance Packetshield qui lui est associée. 2. Packetshield applique le context correspondant à l'IP de destination ou à l'IP de destination + VLAN. 3. Si le paquet traverse avec succès toutes les règles de protection, il est délivré au système (Noyau Linux) • Tout ce qui n'est pas protégé ou whitelisté est bloqué Powering Your Uptime HAProxy Technologies - HAProxy and web performance Private document
  10. 10. Comment se configure Packetshield? Packetshield fonctionne comme des ACLs réseaux stateful. On peut créer les règles suivantes: • Blacklisting par IP source • Whitelisting par: • IP source • Protocol • Port de destination TCP • Port de destination UDP • Protection par: • Port de destination TCP Le traitement d'un paquet s'arrête à la première règle lui correspondant. Powering Your Uptime HAProxy Technologies - HAProxy and web performance Private document
  11. 11. Packetshield en action! Soit l'architecture suivante, où l'ALOHA load-balance un service web sur le port 80 (HAProxy): +----------+ +----------+ +---------------+ | hping |--->| ALOHA |--->| serveur web | +----------+ +----------+ +---------------+ • Création de la configuration Packetshield suivante: instances mydemo mydemo/ifaces eth0 mydemo/Other/new_cookie_threshold 100-50 mydemo/Other/unmatch_drop_threshold 100-50 mydemo/Other/unknown_ttlfilter_threshold 100-50 # whitelist ICMP and VRRP mydemo/Other/w_protocols 1 mydemo/Other/w_protocols 112 # ports proteges mydemo/Other/p_tcp_ports 80 mydemo/Other/p_tcp_ports 443 # ports whiteliste mydemo/Other/w_tcp_ports 22 mydemo/Other/w_tcp_ports 4444 • Validation du service: http://aloha1/ Powering Your Uptime HAProxy Technologies - HAProxy and web performance Private document
  12. 12. Packetshield en action! • Utilisation d'un paquet non valide • Démarrage de packetshield • Générer un paquet invalide: sudo hping3 -p 80 -S -A -R -i -u10 --rand-source --faster aloha1 • Statistiques Packetshield: watch -n 1 cat /sys/packetshield/mydemo/Other/stats • Attaque d'un port non protégé • Capture de trafic sur le port 81: tcpdump -nn -i eth0 port 81 • Attaque sur le port 81: sudo hping3 -p 81 -S -i -u10 --rand-source --faster aloha1 • Démarrage de packetshield • Observer l'impact sur tcpdump • Statistiques Packetshield: watch -n 1 cat /sys/packetshield/mydemo/Other/stats Powering Your Uptime HAProxy Technologies - HAProxy and web performance Private document
  13. 13. Demo #1 output Affichage lors de l'injection de paquets non-valides: Every 1.0s: cat /sys/packetshield/mydemo/Other/stats Mon Nov 23 13:47:23 2015 status : 0x0000 rx_total : 799627 invalid : 799624 whitelisted: 3 filtered : 0 ... Powering Your Uptime HAProxy Technologies - HAProxy and web performance Private document
  14. 14. Demo #2 output • Plus aucun paquet n'est affiché par tcpdump une fois packetshield démarré • Satistiques packetshield: Every 1.0s: cat /sys/packetshield/mydemo/Other/stats Mon Nov 23 13:51:03 2015 status : 0x0000 rx_total : 389173 invalid : 0 whitelisted: 9 filtered : 389164 ... Powering Your Uptime HAProxy Technologies - HAProxy and web performance Private document
  15. 15. Packetshield en action! • Attaque sur un port protégé: SYN flood • Arrêt de Packetshield • Génération de trafic sur le port 80: ~/tools/inject -G aloha1:80/ -u 10 -o 4 • Attaque sur le port 80: sudo hping3 -p 80 -S -i -u10 --rand-source --faster aloha1 • Observer l'impact sur le trafic • Démarrage de packetshield • Observer l'impact sur le trafic • Statistiques Packetshield: watch -n 1 cat /sys/packetshield/mydemo/Other/stats • Attaque d'un port non protégé: ACK flood • Arrêt de Packetshield • Génération de trafic sur le port 80: ~/tools/inject -G aloha1:80/ -u 10 -o 4 • Attaque sur le port 80: sudo hping3 -p 80 -A -i -u10 --rand-source --faster aloha1 • Observer l'impact sur le trafic • Démarrage de packetshield • Observer l'impact sur le trafic • Statistiques Packetshield: watch -n 1 cat /sys/packetshield/mydemo/Other/stats Powering Your Uptime HAProxy Technologies - HAProxy and web performance Private document
  16. 16. Demo #3 output • Affichage de inject, avant et pendant l'attaque, puis après le démarrage de packetshield: hits ^hits hits/s ^h/s bytes kB/s last errs tout htime sdht ptime 48690 1456 1432 1456 22305987 656 667 0 0 23.8 7.1 27.2 50219 1529 1434 1529 23006428 657 700 0 0 23.0 6.4 25.7 51560 1341 1432 1341 23620856 656 614 0 0 23.1 11.6 27.7 51560 0 1393 0 23620856 638 0 0 0 0.0 0.0 0.0 51560 0 1356 0 23620856 621 0 0 0 0.0 0.0 0.0 51560 0 1322 0 23620856 605 0 0 0 0.0 0.0 0.0 51560 0 1289 0 23620856 590 0 0 0 0.0 0.0 0.0 51562 2 1257 2 23621760 576 0 0 0 4848.5 41.5 0.0 51569 7 1227 7 23624924 562 3 0 0 5542.1 308.6 5698.0 51575 6 1199 6 23627636 549 2 0 0 6568.2 272.8 6308.0 51582 7 1172 7 23631044 537 3 0 0 7586.7 304.7 7903.0 51596 14 1146 14 23637372 525 6 0 0 8300.1 228.4 8422.5 52397 801 1139 801 24004060 521 366 0 0 136.6 737.1 143.4 53190 793 1131 793 24367620 518 363 0 0 45.5 67.4 56.8 L'attaque réussie puisqu'inject n'arrive plus à envoyer de requêtes. Le démarrage de packetshield permet de voir le traffic passer à nouveau. Powering Your Uptime HAProxy Technologies - HAProxy and web performance Private document
  17. 17. Demo #3 output • Statistiques packetshield pendant cette attaque, on peut voir le nombre de syncookie augmenter: Every 1.0s: cat /sys/packetshield/mydemo/Other/stats Mon Nov 23 13:56:40 2015 status : 0x0001 rx_total : 925321 invalid : 0 whitelisted: 2 filtered : 2 out_related: 75519 dns_resp : 0 syn : 800051 rst : 39 ack : 49708 unknown_ttl: 0 ttlfiltered: 0 established: 50319 newconns : 800051 unmatched : 4 syncookie : 799283 drop_syn : 0 drop_rst : 0 drop_ack : 0 delivered : 126036 tx_total : 137861 Powering Your Uptime HAProxy Technologies - HAProxy and web performance Private document
  18. 18. Demo #4 output • Statistiques packetshield, on peut voir le nombre de packet unmatched augmenter: Every 1.0s: cat /sys/packetshield/mydemo/Other/stats Mon Nov 23 14:06:40 2015 status : 0x0002 rx_total : 718671 invalid : 0 whitelisted: 6 filtered : 42 out_related: 30 dns_resp : 0 syn : 0 rst : 0 ack : 718593 unknown_ttl: 0 ttlfiltered: 0 established: 0 newconns : 0 unmatched : 718784 syncookie : 0 drop_syn : 0 drop_rst : 0 drop_ack : 718784 delivered : 246 tx_total : 231 Powering Your Uptime HAProxy Technologies - HAProxy and web performance Private document
  19. 19. Disponibilité de Packetshield • disponible depuis le firmware ALOHA 7.0 pour les early-adopters, intégré définitivement en ALOHA 7.5 • uniquement sur les boitiers physiques • Sans surcout pour la protection d'une interface 1G • Licence requise pour les interfaces 10G • La documentation de configuration est disponible en ligne: http://haproxy.com/doc/aloha/7.5/packet_flood_protection/ Powering Your Uptime HAProxy Technologies - HAProxy and web performance Private document
  20. 20. A venir dans Packetshield Pas encore disponible dans Packetshield, mais on y travaille: • ALOHA 8.0, Fin février 2016: • Protection stateful UDP, tout protocole: DNS, NTP, SNMP, etc... • Graphes dans la GUI de l'ALOHA • Statistiques disponibles via SNMP • Notification d'attaques par email ou traps SNMP • ALOHA 8.5, Fin Octobre 2016: • Support de l'IPv6 • Geolocalisation: whitelist / blacklist par code pays Powering Your Uptime HAProxy Technologies - HAProxy and web performance Private document

×