DefensePro Presentation - PowerPoint PPT Presentation

About This Presentation
Title:

DefensePro Presentation

Description:

Au-dessus de TCP, coute sur un port lev . Toutes les transactions sont chiffr es ... (Routing Information Base) du routeur (RFC 1918, reserved address etc. ... – PowerPoint PPT presentation

Number of Views:68
Avg rating:3.0/5.0
Slides: 45
Provided by: renaud6
Learn more at: http://actes.sstic.org
Category:

less

Transcript and Presenter's Notes

Title: DefensePro Presentation


1
Lutte contre les DĂ©nis de Service RĂ©seau
Renaud BIDOU renaudb_at_radware.com
2
La preuve par lexemple
INTRO
  • BasĂ© sur une histoire rĂ©elle
  • Tentative dextorsion
  • En russie
  • Objectif
  • Analyser les attaques
  • Etudier les solutions possibles
  • Au niveau de linfrastructure finale
  • Au niveau des opĂ©rateurs
  • Etudier les faiblesses conceptuelles

3
Première Vague
4
Contexte
5
La Cible
Contexte
  • Entreprise
  • Russe, basĂ©e Ă  Moscou
  • Etablissement financier
  • Effectue des transactions de change
  • Exposition aux DoS
  • Application propriĂ©taire
  • UtilisĂ©e par les clients pour les transactions
  • 100 des opĂ©rations effectuĂ©es en ligne
  • La cible idĂ©ale

6
Architecture
Contexte
7
Opérations des frontaux
Contexte
  • Aspects fonctionnels
  • Authentifient lutilisateur
  • RĂ©cupèrent les requĂŞtes
  • Formattent et transmettent aux bases de donnĂ©es
  • Aspects techniques
  • Au-dessus de TCP, Ă©coute sur un port Ă©levĂ©
  • Toutes les transactions sont chiffrĂ©es
  • Chiffrement propriĂ©taire ?
  • ParanoĂŻa Aucune autre information disponible

8
Extorsion
9
Lalerte
Extorsion
  • t0
  • Dysfonctionnements identifiĂ©s
  • Serveurs frontaux freezĂ©s
  • Plus aucune connexion possible
  • t0 15 mn
  • Trafic rĂ©seau analysĂ© entre Internet et les
    frontaux
  • sources distinctes
  • 1 cible et 1 port destination
  • uniquement des SYNs (150.000 par seconde)
  • SYNFlood

10
Le chantage
Extorsion
  • t0 30 mn
  • Contact via ICQ
  • X M de dollards doivent ĂŞtre versĂ©s
  • Avant t1 t0 36h
  • Mode de transaction non dĂ©voilĂ©
  • t0 60 mn
  • SYNFlood stoppĂ©

11
Analyse
12
Caractéristiques dun SYNFlood
Analyse
  • Petits paquets
  • 64 octets
  • Excellent ratio BP / Impact
  • 1 Mbps 2.000 pps
  • SpoofĂ©e
  • Aucun besoin de recevoir le SYN/ACK
  • Rend le traçage difficile

13
Impacts dun SYNFlood
Analyse
  • Sur la cible
  • Saturation de la TCB
  • Abandon des connexions existantes
  • Refus de nouvelles connexions
  • Effet de bord saturation de la CPU
  • Sur linfrastructure
  • DĂ©passement de la capacitĂ© de traitement des
    paquets
  • Crash, reboot, freeze etc.

14
Protection de la cible 1
Analyse
  • Mise en place de SYNCookies
  • Session TCP Ă©tablie en amont du serveur
  • NumĂ©ro de sĂ©quence du SYN/ACK obtenu par calcul
  • SYN_ACK_SEQ f(net_params.time)
  • Transfert de ressources TCB gt CPU
  • NumĂ©ro de sĂ©quence ne doit pas ĂŞtre dĂ©vinĂ©
  • f() fonction de hashage
  • SYN_ACK_SEQ f(seed.net_params.time)
  • Mise en place
  • Au plus prĂŞt de la ressource Ă  protĂ©ger
  • Derrière le firewall
  • SpĂ©cifique cible / port

15
Protection de la cible 2
Analyse
  • Protection contre le spoofing
  • uRPF (Unicast Reverse Path Forwarding)
  • Strict Bloque les paquets si le rĂ©seau source
    nest pas dans la FIB (Forwarding Information
    Base) correspondant Ă  linterface entrante.
  • Loose Bloque les paquets si la source nest pas
    dans la RIB (Routing Information Base) du routeur
    (RFC 1918, reserved address etc.)
  • VRF (Virtual Routing and Forwarding)
  • Fournit Ă  uRPF une table de routage par session
    eBGP.
  • Mise en place
  • uRPF strict Customer / ISP edge
  • uRPF loose ISP / ISP edge
  • uRPF strict VRF ISP / ISP edge

16
Protection de linfrastructure
Analyse
  • Couper un bras pour sauver le corps
  • Mise en place de BHR (Black Hole Routing)
  • Application dune règle de routage statique dune
    adresse (_at_IP1) vers null0 (express forwarding,
    pas dimpact de performances)
  • Envoi dun BGP Send Next-hop pour la cible
    _at_IP1
  • Aucun paquet ne peut atteindre la cible
  • Le DĂ©nis de Service est un succès
  • Linfrastructure est sauve
  • Pas dimpact sur lopĂ©rateur
  • Les autres systèmes du client restent
    opérationnels

17
Deuxième Vague
18
PreludeBefore the tempest
19
A quoi sattendre ?
Prélude
  • Contraintes
  • BHR pas acceptable
  • Aucune solution ne peut ĂŞtre mise en place en 36h
    chez un opérateur
  • Analyse
  • Sources spoofĂ©es
  • ACL non applicables
  • Port cible non privilĂ©giĂ©
  • Connaissance de lapplication par lattaquant
  • Il peut ĂŞtre en possession du logiciel client
  • Attaques applicatives probables

20
OĂą mettre la protection ?
Prélude
  • OpĂ©rateur absent
  • Pas de retour
  • Aucune rĂ©activitĂ©
  • Sur plate-forme cible
  • Protection du firewall
  • Protection en amont pour Ă©viter un crash dĂ» Ă  un
    nombre élevé de PPS
  • Application obscure et probablement mal
    développée
  • Protection en aval pour les Ă©ventuelles attaques
    applicatives

21
Attaque phase I
22
SYNFlood - Le retour
Phase I
  • Mode opĂ©ratoire
  • t1 t0 36h
  • SYNFlood identique Ă  celui en t0
  • Puissance accrue par palliers
  • t1 5 mn 50.000 pps
  • t1 10 mn 100.000 pps
  • t1 15 mn 150.000 pps
  • BloquĂ© par SYNCookies
  • Probablement un botnet activĂ© sĂ©quenciellement

23
Anomalies protocolaires
Phase I
  • Nouvelle attaque
  • t1 20 mn
  • Xmas Tree avec numĂ©ros de sĂ©quence Ă  0
  • Volume accru 200.000 pps
  • Limite supportĂ©e par les routeurs
  • Nouveau type de trafic
  • t1 20 mn SYN 150 kpps / Anomalies 50 kpps
  • t1 25 mn SYN 100 kpps / Anomalies 100 kpps
  • t1 30 mn SYN 50 kpps / Anomalies 150 kpps
  • BloquĂ©
  • A priori 4 botnets, reconfigurables avec une
    capacité maximale de 200.000 pps

24
Analyse Phase I
25
Schéma de lattaque
Phase I
26
Attaques par anomalies
Phase I
  • BasĂ©es sur des bugs ou des exceptions
  • Bugs
  • Oldies PoD, land, bo(i)nk, Xmas Tree
  • Plus rĂ©cemment Taille des options
  • Exceptions
  • Valeurs limites ou incohĂ©rentes
  • Flags TCP, protocole, numĂ©ros de sĂ©quences etc.
  • Un seul paquet na plus dimpact
  • Mais le traitement de plusieurs kpps monte la CPU
    Ă  100
  • Et merci pour le flag PUSH!

27
Caractéristiques des attaques
Phase I
  • CaractĂ©ristiques des attaques
  • Volume important
  • Trafic sortant de lordinaire
  • Sources spoofĂ©es
  • Blocage par firewalls
  • Principe du blocage
  • Les attaques sont souvent effectuĂ©es en dehors de
    sessions TCP Ă©tablies
  • Elles pourraient ĂŞtre bloquĂ©es par des firewalls
    stateful
  • ProblĂ©matique
  • Petits paquets (en gĂ©nĂ©ral TCP sans data 70
    octets)
  • Nombre important de paquets
  • Gros problèmes de performances

28
Identification des attaques
Phase I
  • Modes de dĂ©tection
  • Signatures paquet par paquet
  • Trop de signatures possibles trop de paquets
  • Signature par Ă©chantillonnage
  • Analyse de 1 paquet sur n
  • Activation uniquement de la signature qui
    correspond
  • Heuristique
  • DĂ©tection de trafic sortant dun format normal
  • DĂ©finition de signatures dynamiques

29
Implémentation
Phase I
  • Mise en place
  • En ligne
  • NĂ©cessite de nombreux Ă©quipements
  • Besoin de performances
  • Gestion de lensemble du trafic
  • Effectue DĂ©tection Blocage
  • Architecture en 2 blocs
  • Ecoute du trafic et dĂ©tection danomalies
  • Redirection du trafic suspect en fonction de la
    cible vers une  machine à laver 
  • Le système de blocage ne traite que du trafic
    suspect
  • Les techniques danti-spoofing sont Ă©galement
    efficaces

30
Attaque phase II
31
Niveau applicatif
Phase II
  • t1 35 mn
  • Etablissement de connexions lĂ©gitimes
  • Mode opĂ©ratoire
  • Etablissement de sessions TCP complètes
  • 1er paquet de data contient un payload alĂ©atoire
  • Impact
  • A 5.000 sessions/s (20.000 pps)

GEL DES CONNEXIONS
32
RĂ©action
Phase II
  • Besoin de reconnaĂ®tre le trafic lĂ©gitime
  • Seule information disponible
  • Les deux premiers octets du premier paquet sont
    00 01
  • Mise en place dun filtre stateful
  • Transfert de la session au serveur après le 4è
    paquet
  • SYN / SYN-ACK / ACK / ACK(00 01)
  • t1 45 mn Attaque bloquĂ©e

33
Trahison
Phase II
  • Nouvelle attaque applicative
  • SYN
  • SYN/ACK
  • ACK
  • ACK (00 01 donnĂ©es alĂ©atoires)
  • Impact
  • Dès la première session

CRASH DE LAPPLICATION
34
La dernière chance
Phase II
  • Comprendre lapplication
  • Pour bloquer le trafic au contenu illĂ©gitime
  • A dĂ©faut de la redĂ©velopper
  • Le problème
  • ParanoĂŻa de la cible
  • Ne veut fournir aucune information
  • Ne comprend plus son application
  • DĂ©veloppĂ©e en SibĂ©rie par des prisonniers
    politiques
  • Ne veut pas y rĂ©mĂ©dier

35
Analyse Phase II
36
Schéma de lattaque
Phase II
37
Bad / Pending Sessions
Phase II
  • Principe
  • Ouverture de sessions lĂ©gitimes sans fermeture
  • Atteint les limites de connexions
  • ImposĂ©es par le serveur
  • Possibles en fonction des ressources
  • SYNFlood de niveau 7
  • Dans le cas Ă©tudiĂ©
  • Le premier paquet de donnĂ©es de rĂ©pond pas aux
    critères de lapplication
  • Celle-ci attend larrivĂ©e dun paquet correct
    et considère la session toujours ouverte

38
Bad / Pending Sessions
Phase II
  • Protection
  • Limitation du nombre de sessions par source
  • Egalement efficace contre les attaques de botnets
    effectuant des milliers de connexions valides et
    légitimes
  • Dans ce cas permet de protĂ©ger le lien montant au
    niveau du site final
  • Attention aux mĂ©ta-proxy !
  • Fonctionnement Ă  la SYNCookies
  • NĂ©cessite un rĂ©el Stateful de niveau 7
  • Le moteur de Stateful doit ĂŞtre hautement
    configurable

39
Lattaque finale
Phase II
  • Crash de lapplication
  • Les donnĂ©es erronĂ©es envoyĂ©es Ă  lapplication on
    été traités
  • Elles ont Ă  priori provoquĂ© un crash
  • Buffer Overflow ?
  • Aucun accès Ă  lapplication ni au système
  • Pas de code
  • Pas de dumps
  • Rien ne peut ĂŞtre fait Ă  ce niveau pour protĂ©ger
    lapplication

40
La solution
Phase II
  • Identification des adresses sources
  • Les sessions TCP ont rĂ©vĂ©lĂ© les sources
  • 500 sources identifiĂ©es
  • Logs scripts
  • Filtrage des sources sur le firewall
  • Mauvaise solution
  • Trop dACL sur le firewall
  • Groupes dadresses comprenant des adresses
    non-compromises
  • Impact de performances
  • Solution temporaire
  • Prochaine attaque Ă  partir dun nouveau BotNet
    sera de nouveau efficace

41
Conclusion
42
Analyse de la source
Conclusion
  • Les Botnets
  • A priori 4 MontĂ©e en puissance des attaques par
    pallier
  • Les agents sont
  • Soit des relais de commandes
  • Lensemble des attaques auraient pu ĂŞtre lancĂ©es
    par hping3, uploadé sur les systèmes
  • Soit une application spĂ©cifique codĂ©e par
    lattaquant
  • Dans tous les cas lattaque Ă©tait rĂ©flĂ©chie
  • Lattaquant
  • Connaissait le fonctionnement de lapplication
  • A essayĂ© dautres attaques avant pour ne pas
    révéler cette information

43
Nous avons été chanceux
Conclusion
  • Application restreinte
  • Nombre de clients limitĂ©
  • Peu de risque de blacklister les clients
    légitimes en prenant des tranches dadresses IP
    larges
  • Lattaquant na pas insistĂ©
  • Reculer pour mieux sauter
  •  Security by obscurity 
  • OK
  • quand lapplication est bien programmĂ©e
  • JusquĂ  un certain point
  • Security is a process, not a product
  • Un produit ne peut pas tout faire Ă  lui tout seul!

44
A propos de la RSTACK
Write a Comment
User Comments (0)
About PowerShow.com