présentation de l'idps suricata · 2012-01-12 · richard bejtlich, dr. jose nazario, joel...

80
Présentation de l’I D P S Suricata Éric Leblond OISF 10 janvier 2012 Éric Leblond (OISF) Présentation de l’I D P S Suricata 10 janvier 2012 1 / 45

Upload: others

Post on 05-Aug-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

Présentation de l’IDP S Suricata

Éric Leblond

OISF

10 janvier 2012

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 1 / 45

Page 2: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

1 IntroductionIntroductionObjectifs du projetEcosystème

2 FonctionnalitésListe des fonctionnalitésSignaturesStream inlineCUDA

3 Fonctions avancées de suricatalibHTPVariables de fluxExtraction et inspection de fichiersÉtude de la négociation TLS

4 Le futurFonctionnalités planifiéesPlus d’informations

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 2 / 45

Page 3: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

Suricata ?

(C) +marcelo math

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 3 / 45

Page 4: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

Suricata ?

(C) +marcelo math

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 3 / 45

Page 5: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

Introduction

Éric LeblondInitiateur du projet NuFW, ancien CTO d’EdenWallContributeur Netfilter notamment sur ulogd2Core développeur Suricata

Responsable de l’acquisitionOptimisation multicoreFonctions IPS. . .

Consultant indépendant Open Source et Sécurité

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 4 / 45

Page 6: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

À propos de l’OISF

Open Information Security Foundationhttp://www.openinfosecfoundation.org

Fondation à but non lucratif dont le but est de construire unmoteur IDS/IPS de nouvelle générationSoutenue financièrement par le gouvernement américain (DHS,Navy)Développement d’un IDS/IPS Open Source :

Financement des développeursBoard chargé de définir les orientations

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 5 / 45

Page 7: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

À propos de l’OISF

Open Information Security Foundationhttp://www.openinfosecfoundation.org

Fondation à but non lucratif dont le but est de construire unmoteur IDS/IPS de nouvelle générationSoutenue financièrement par le gouvernement américain (DHS,Navy)Développement d’un IDS/IPS Open Source :

Financement des développeurs

Board chargé de définir les orientations

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 5 / 45

Page 8: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

À propos de l’OISF

Open Information Security Foundationhttp://www.openinfosecfoundation.org

Fondation à but non lucratif dont le but est de construire unmoteur IDS/IPS de nouvelle générationSoutenue financièrement par le gouvernement américain (DHS,Navy)Développement d’un IDS/IPS Open Source :

Financement des développeursBoard chargé de définir les orientations

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 5 / 45

Page 9: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

À propos de l’OISF

Membres du consortiumProgramme HOST : Homeland Open Security TechnologyNiveau or : Npulse, EndaceNiveau bronze : Nitro Security, Mara systems, . . .

Partenaire technologique : Napatech, NvidiaDéveloppeurs

Leader : Victor Julien

Développeurs : Anoop Saldanha, Eileen Doilon, Eric Leblond, . . .

BoardMatt JonkmannRichard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton,Stuart Wilson. . .

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 6 / 45

Page 10: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

À propos de l’OISF

Membres du consortiumProgramme HOST : Homeland Open Security TechnologyNiveau or : Npulse, EndaceNiveau bronze : Nitro Security, Mara systems, . . .Partenaire technologique : Napatech, Nvidia

DéveloppeursLeader : Victor Julien

Développeurs : Anoop Saldanha, Eileen Doilon, Eric Leblond, . . .

BoardMatt JonkmannRichard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton,Stuart Wilson. . .

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 6 / 45

Page 11: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

À propos de l’OISF

Membres du consortiumProgramme HOST : Homeland Open Security TechnologyNiveau or : Npulse, EndaceNiveau bronze : Nitro Security, Mara systems, . . .Partenaire technologique : Napatech, Nvidia

DéveloppeursLeader : Victor Julien

Développeurs : Anoop Saldanha, Eileen Doilon, Eric Leblond, . . .Board

Matt JonkmannRichard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton,Stuart Wilson. . .

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 6 / 45

Page 12: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

À propos de l’OISF

Membres du consortiumProgramme HOST : Homeland Open Security TechnologyNiveau or : Npulse, EndaceNiveau bronze : Nitro Security, Mara systems, . . .Partenaire technologique : Napatech, Nvidia

DéveloppeursLeader : Victor JulienDéveloppeurs : Anoop Saldanha, Eileen Doilon, Eric Leblond, . . .

BoardMatt JonkmannRichard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton,Stuart Wilson. . .

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 6 / 45

Page 13: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

À propos de l’OISF

Membres du consortiumProgramme HOST : Homeland Open Security TechnologyNiveau or : Npulse, EndaceNiveau bronze : Nitro Security, Mara systems, . . .Partenaire technologique : Napatech, Nvidia

DéveloppeursLeader : Victor JulienDéveloppeurs : Anoop Saldanha, Eileen Doilon, Eric Leblond, . . .

BoardMatt JonkmannRichard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton,Stuart Wilson. . .

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 6 / 45

Page 14: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

Buts

Apporter de nouvelles technologies aux IDSPerformance

Multi-threadéAccélération matériellehttp://packetchaser.org/index.php/opensource/suricata-10gbps

Open sourceSupport de Linux / *BSD / Mac OSX / Windows

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 7 / 45

Page 15: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

Projets similaires

BroPositionnement différent (orientation capture)Études statistiques/anomalies

SnortFonctionnellement équivalentCompatibilitéConcurrence frontaleSourcefire se sent menacé et est agressifhttp://www.informationweek.com/news/software/enterprise_apps/226400079

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 8 / 45

Page 16: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

Volume de code

Suricata

Snort

Source : ohloh.net

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 9 / 45

Page 17: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

Committeurs

Suricata

Snort

Source : ohloh.net

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 10 / 45

Page 18: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

Suricata vs Snort

SuricataSoutenu par une fondationMulti-threadéIPS natifFonctions avancées(flowint, libHTP)Support de PF_RINGCode moderne etmodulaireJeune mais dynamique

SnortDéveloppé par SourcefireMulti-processIPS supportéJeu de règles SO (logiqueavancée + perf mais fermé)Pas d’accélérationmatérielleCode vieillissant10 ans d’expérience

Étude intéressante :http://www.aldeid.com/index.php/Suricata-vs-snort

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 11 / 45

Page 19: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

1 IntroductionIntroductionObjectifs du projetEcosystème

2 FonctionnalitésListe des fonctionnalitésSignaturesStream inlineCUDA

3 Fonctions avancées de suricatalibHTPVariables de fluxExtraction et inspection de fichiersÉtude de la négociation TLS

4 Le futurFonctionnalités planifiéesPlus d’informations

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 12 / 45

Page 20: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

Fonctionnalités

Support Ipv6 natif

Multi-threadéeAccélération matérielle native (Accélération par GPU, PF_RING)De nombreuses options pour optimiser les performancesSupport optimisé des tests sur IP seulesIPS (mode inline) natif

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 13 / 45

Page 21: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

Fonctionnalités

Support Ipv6 natifMulti-threadée

Accélération matérielle native (Accélération par GPU, PF_RING)De nombreuses options pour optimiser les performancesSupport optimisé des tests sur IP seulesIPS (mode inline) natif

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 13 / 45

Page 22: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

Fonctionnalités

Support Ipv6 natifMulti-threadéeAccélération matérielle native (Accélération par GPU, PF_RING)

De nombreuses options pour optimiser les performancesSupport optimisé des tests sur IP seulesIPS (mode inline) natif

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 13 / 45

Page 23: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

Fonctionnalités

Support Ipv6 natifMulti-threadéeAccélération matérielle native (Accélération par GPU, PF_RING)De nombreuses options pour optimiser les performances

Support optimisé des tests sur IP seulesIPS (mode inline) natif

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 13 / 45

Page 24: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

Fonctionnalités

Support Ipv6 natifMulti-threadéeAccélération matérielle native (Accélération par GPU, PF_RING)De nombreuses options pour optimiser les performancesSupport optimisé des tests sur IP seules

IPS (mode inline) natif

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 13 / 45

Page 25: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

Fonctionnalités

Support Ipv6 natifMulti-threadéeAccélération matérielle native (Accélération par GPU, PF_RING)De nombreuses options pour optimiser les performancesSupport optimisé des tests sur IP seulesIPS (mode inline) natif

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 13 / 45

Page 26: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

Architecture globale

Enchainement des modules de traitementsChaque running mode peut avoir sa propre architecture

Architecture du mode pcap auto v1 :

Paramétrage fin des préférences CPUAffectation d’un thread à un CPUD’une famille de threads à un ensemble de CPUPermet la prise en compte des IRQs

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 14 / 45

Page 27: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

Architecture globale

Enchainement des modules de traitementsChaque running mode peut avoir sa propre architectureArchitecture du mode pcap auto v1 :

Paramétrage fin des préférences CPUAffectation d’un thread à un CPUD’une famille de threads à un ensemble de CPUPermet la prise en compte des IRQs

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 14 / 45

Page 28: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

Architecture globale

Enchainement des modules de traitementsChaque running mode peut avoir sa propre architectureArchitecture du mode pcap auto v1 :

Paramétrage fin des préférences CPUAffectation d’un thread à un CPUD’une famille de threads à un ensemble de CPUPermet la prise en compte des IRQs

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 14 / 45

Page 29: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

Modules d’entrées

IDSPCAP

live, multi interfacehors ligne

PF_RINGhttp://www.ntop.org/PF_RING.html

AF_PACKET

IPSNFQueue :

Linux : multi-queueWindows

ipfw :FreeBSDNetBSD

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 15 / 45

Page 30: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

Modules d’entrées

IDSPCAP

live, multi interfacehors ligne

PF_RINGhttp://www.ntop.org/PF_RING.html

AF_PACKET

IPSNFQueue :

Linux : multi-queueWindows

ipfw :FreeBSDNetBSD

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 15 / 45

Page 31: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

Modules de sortie

FastlogUnified log (Barnyard 1 & 2)HTTP log (log dans un format de type apache)Prelude (IDMEF)

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 16 / 45

Page 32: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

Signatures

Support de presque toutes les signatures de snortSupport de fonctionnalités exclusives utilisées par les rulesetscomme VRT ou Emerging Threats

alert tcp any any -> 192.168.1.0/24 21 (content : "USER root" ; msg : "FTP root login" ;)

Action : alert / drop / pass Paramètres IP Motif Autres paramètres

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 17 / 45

Page 33: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

Signatures

Support de presque toutes les signatures de snortSupport de fonctionnalités exclusives utilisées par les rulesetscomme VRT ou Emerging Threats

alert tcp any any -> 192.168.1.0/24 21 (content : "USER root" ; msg : "FTP root login" ;)

Action : alert / drop / pass

Paramètres IP Motif Autres paramètres

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 17 / 45

Page 34: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

Signatures

Support de presque toutes les signatures de snortSupport de fonctionnalités exclusives utilisées par les rulesetscomme VRT ou Emerging Threats

alert tcp any any -> 192.168.1.0/24 21 (content : "USER root" ; msg : "FTP root login" ;)

Action : alert / drop / pass

Paramètres IP

Motif Autres paramètres

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 17 / 45

Page 35: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

Signatures

Support de presque toutes les signatures de snortSupport de fonctionnalités exclusives utilisées par les rulesetscomme VRT ou Emerging Threats

alert tcp any any -> 192.168.1.0/24 21 (content : "USER root" ; msg : "FTP root login" ;)

Action : alert / drop / pass Paramètres IP

Motif

Autres paramètres

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 17 / 45

Page 36: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

Signatures

Support de presque toutes les signatures de snortSupport de fonctionnalités exclusives utilisées par les rulesetscomme VRT ou Emerging Threats

alert tcp any any -> 192.168.1.0/24 21 (content : "USER root" ; msg : "FTP root login" ;)

Action : alert / drop / pass Paramètres IP Motif

Autres paramètres

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 17 / 45

Page 37: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

Stream inline

L’analyse au niveau applicatif travaille sur un flux de donnéesLes données envoyés dans une session TCP peuvent êtredésordonnées

Perte de paquetsRéemission de paquetsPaquets arrivant dans le désordre

l’IDP S doit donc reconstruire les flux TCP avant de les livrer à

l’analyse applicative

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 18 / 45

Page 38: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

Problématique

Prise en compte des différences entre IDS et IPSL’IDS doit être au plus proche de ce qui est reçu par la cible

Analyse des paquets quand leur réception est établieLa réception d’un ACK déclenche l’analyse des données

l’IPS doit bloquer les paquets avant qu’ils atteignent leur cibleLa technique de l’IDS bloquerait les paquets après passageIl faut donc envisager une autre solution

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 19 / 45

Page 39: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

IPS comme point de contrôle

l’IPS agit comme un point de bloquageIl est donc représentatif de ce qui traverseIl peut donc reconstruire les flux avant de les envoyer

Solution retenueReconstruction des segments de données à la réceptionPassage de données reconstruites à la couche applicativeDécision prise sur la donnéeRéécriture des paquets si nécessaireTransmission

Détails : http://www.inliniac.net/blog/2011/01/31/suricata-ips-improvements.html

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 20 / 45

Page 40: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

IPS comme point de contrôle

l’IPS agit comme un point de bloquageIl est donc représentatif de ce qui traverseIl peut donc reconstruire les flux avant de les envoyer

Solution retenueReconstruction des segments de données à la réceptionPassage de données reconstruites à la couche applicativeDécision prise sur la donnéeRéécriture des paquets si nécessaireTransmission

Détails : http://www.inliniac.net/blog/2011/01/31/suricata-ips-improvements.html

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 20 / 45

Page 41: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

IPS comme point de contrôle

l’IPS agit comme un point de bloquageIl est donc représentatif de ce qui traverseIl peut donc reconstruire les flux avant de les envoyer

Solution retenueReconstruction des segments de données à la réceptionPassage de données reconstruites à la couche applicativeDécision prise sur la donnéeRéécriture des paquets si nécessaireTransmission

Détails : http://www.inliniac.net/blog/2011/01/31/suricata-ips-improvements.html

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 20 / 45

Page 42: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

CUDA

Utilisation de CUDA (architecture de calcul parrallèle dévéloppéepar NVIDIA)Actuellement : implémentation d’un algorithme de matching enCUDATravail en cours, Nvidia est partenaire technologique de l’OISF

Difficulté d’utiliser le pipeline du GPU de manière efficace... Performance similaire avec ou sans (avec des CPUs décents)

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 21 / 45

Page 43: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

CUDA

Utilisation de CUDA (architecture de calcul parrallèle dévéloppéepar NVIDIA)Actuellement : implémentation d’un algorithme de matching enCUDATravail en cours, Nvidia est partenaire technologique de l’OISFDifficulté d’utiliser le pipeline du GPU de manière efficace

... Performance similaire avec ou sans (avec des CPUs décents)

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 21 / 45

Page 44: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

CUDA

Utilisation de CUDA (architecture de calcul parrallèle dévéloppéepar NVIDIA)Actuellement : implémentation d’un algorithme de matching enCUDATravail en cours, Nvidia est partenaire technologique de l’OISFDifficulté d’utiliser le pipeline du GPU de manière efficace... Performance similaire avec ou sans (avec des CPUs décents)

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 21 / 45

Page 45: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

1 IntroductionIntroductionObjectifs du projetEcosystème

2 FonctionnalitésListe des fonctionnalitésSignaturesStream inlineCUDA

3 Fonctions avancées de suricatalibHTPVariables de fluxExtraction et inspection de fichiersÉtude de la négociation TLS

4 Le futurFonctionnalités planifiéesPlus d’informations

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 22 / 45

Page 46: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

libHTP

Parseur orienté sécurité du protocole HTTPÉcrit par Ivan Ristic (ModSecurity, IronBee)Suivi des fluxSupport des mots clés

http_bodyhttp_raw_urihttp_headerhttp_cookie. . .

Capable de décoder des flux compressés par Gzip

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 23 / 45

Page 47: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

Utilisation de HTTP dans les règles

Exemple de règles : Chat facebook

a l e r t h t t p $HOME_NET any −> $EXTERNAL_NET $HTTP_PORTS \(msg : "ET CHAT Facebook Chat ( send message ) " ; \flow : es tab l ished , to_server ; content : "POST" ; http_method ; \content : " / a jax / chat / send . php " ; h t t p _ u r i ; content : " facebook . com" ; ht tp_header ; \classtype : po l i cy−v i o l a t i o n ; reference : u r l , doc . emerg ingthreats . net /2010784; \reference : u r l ,www. emerg ingthreats . net / cgi−bin / cvsweb . cg i / s igs / POLICY / POLICY_Facebook_Chat ; \sid :2010784; rev : 4 ; \

)

Cette signature teste donc :La méthode HTTP : POSTLa page : /ajax/chat/send.phpLe domaine : facebook.com

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 24 / 45

Page 48: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

Variables de flux

ObjectifsDétection des attaques en étapesVérification de conditions sur un fluxModification du traitement sur l’alerteMachine à état au sein du flux

FlowbitsCondition booléennePositionnement d’undrapeau

FlowintDéfinition de compteurOpération arithmétique

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 25 / 45

Page 49: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

Variables de flux

ObjectifsDétection des attaques en étapesVérification de conditions sur un fluxModification du traitement sur l’alerteMachine à état au sein du flux

FlowbitsCondition booléennePositionnement d’undrapeau

FlowintDéfinition de compteurOpération arithmétique

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 25 / 45

Page 50: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

Variables de flux

ObjectifsDétection des attaques en étapesVérification de conditions sur un fluxModification du traitement sur l’alerteMachine à état au sein du flux

FlowbitsCondition booléennePositionnement d’undrapeau

FlowintDéfinition de compteurOpération arithmétique

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 25 / 45

Page 51: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

Variables de type Flowint

Permet la capture, le stockage et la comparaison de donnéesdans une variableStockage et opérations mathématiquesVariable lié à un flux donné

Ex : montre une alerte si et seulement si usernamecount est plusgrand que 5 :

a l e r t tcp any any −> any any (msg : " Counting Usernames " ; content : " jonkman " ; \

f lowint : usernamecount , + , 1 ; f lowint : usernamecount , > , 5 ; )

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 26 / 45

Page 52: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

Variables de type Flowint (2)

Ex : Suivi des loginsMise en place d’un compteur des échecs de login :

a l e r t tcp any any −> any any (msg : " S t a r t a l o g i n count " ; content : " l o g i n f a i l e d " ; \f lowint : l o g i n f a i l , no tse t ; f lowint : l o g i n f a i l , = , 1 ; f lowint : n o a l e r t ; )a l e r t tcp any any −> any any (msg : " Counting Logins " ; content : " l o g i n f a i l e d " ; \f lowint : l o g i n f a i l , isset ; f lowint : l o g i n f a i l , + , 1 ; f lowint : n o a l e r t ; )

Alerte si il y a un login réussi après 5 échecs :

a l e r t tcp any any −> any any (msg : " Login success a f t e r f i l e f a i l u r e s " ; \content : " l o g i n success fu l " ; \

f lowint : l o g i n f a i l e d , isset ; f lowint : l o g i n f a i l e d , = , 5 ; )

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 27 / 45

Page 53: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

Extraction et inspection de fichiers

Récupération des fichiers des downloads et uploads HTTPDétection des information sur le fichier (libmagic)

Type de fichiers. . .

Une extension dédiée du langage des signatures

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 28 / 45

Page 54: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

Mots clés dédiés

filemagic : description du contenu

a l e r t h t t p any any −> any any (msg : " windows exec " ; \f i l e m a g i c : " executable f o r MS Windows " ; sid : 1 ; rev : 1 ; )

filestore : stockage du fichier pour inspection

a l e r t h t t p any any −> any any (msg : " windows exec " ;f i l e m a g i c : " executable f o r MS Windows " ; \f i l e s t o r e ; sid : 1 ; rev : 1 ; )

fileext : extension du fichier

a l e r t h t t p any any −> any any (msg : " jpg claimed , but not jpg f i l e " ; \f i l e e x t : " jpg " ; \f i l e m a g i c : ! "JPEG image data " ; sid : 1 ; rev : 1 ; )

filename : nom du fichier

a l e r t h t t p any any −> any any (msg : " s e n s i t i v e f i l e leak " ;f i lename : " sec re t " ; sid : 1 ; rev : 1 ; )

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 29 / 45

Page 55: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

Exemples

Envoi de fichier sur un serveur n’acceptant que les PDF

a l e r t h t t p $EXTERNAL_NET −> $WEBSERVER any (msg : " susp ic ious upload " ; \flow : es tab l ished , to_server ; content : "POST" http_method ; \content : " / upload . php " ; h t t p _ u r i ; \f i l e m a g i c : ! "PDF document " ; \f i l e s t o r e ; sid : 1 ; rev : 1 ; )

Clefs privées circulant en clair

a l e r t h t t p $HOME_NET any −> $EXTERNAL_NET any (msg : " outgoing p r i v a t e key " ; \f i l e m a g i c : "RSA p r i v a t e key " ; sid : 1 ; rev : 1 ; )

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 30 / 45

Page 56: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

Stockage sur disque

Chaque fichier est stocké sur disqueAccompagné par un fichier de metadonnées

Des limites d’utilisation globale sont positionnables

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 31 / 45

Page 57: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

Limites actuelles de l’extraction de fichiers

Limité au seul protocole HTTPLimite de stockageFichier MS Office non décodé

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 32 / 45

Page 58: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

Étude de la négociation TLS

TLS est une application au sens de SuricataDétection automatique du protocole

Indépendamment du portGrâce à un système de pattern matching

Des mots clés dédiésUtilisables dans les signatures

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 33 / 45

Page 59: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

Autres protocoles supportés

HTTP :Mots clés : http_uri, http_body, . . .

SMTPFTP

Mots clés : ftpbounceSSH

Mots clés : ssh.softwareversion, ssh.protoversion

DCERPCSMB

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 34 / 45

Page 60: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

Un parseur de handshake

pas de déchiffrage du traficMéthode

Analyse du handshake TLSParsing des messages TLS

Un parseur orienté sécuritéCode developpé depuis zéro

Provide a hackable code-base for the featureNo external dependency

Contribution de Pierre Chifflier (ANSSI)Objectif sécurité

Résistance aux attaques (audité, fuzzé)Detection d’anomalies

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 35 / 45

Page 61: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

Un parseur de handshake

La syntaxe

a l e r t tcp $HOME_NET any −> $EXTERNAL_NET 443

Devient

a l e r t t l s $HOME_NET any −> $EXTERNAL_NET any

IntérêtsPas de dependances sur les paramètres IPLimite les recherches à des protocoles identifiés

Moins de faux positifsPlus de performances

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 36 / 45

Page 62: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

Mots clés TLS

TLS.version : Correspondance avec le numéro de version duprotocoleTLS.subject : Correspondance sur le sujet du certificatTLS.issuerdn : Correspondance sur le nom du générateur decertificatPlus à venir

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 37 / 45

Page 63: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

Exemple : vérification politique de sécurité (1/2)

L’environnement :Une entreprise avec desserveursQui a une PKI officielle

L’objectif :S’assurer que la PKI estutilisée

Sans trop se fatiguer

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 38 / 45

Page 64: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

Exemple : vérification politique de sécurité (1/2)

L’environnement :Une entreprise avec desserveursQui a une PKI officielle

L’objectif :S’assurer que la PKI estutilisée

Sans trop se fatiguer

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 38 / 45

Page 65: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

Exemple : vérification politique de sécurité (1/2)

L’environnement :Une entreprise avec desserveursQui a une PKI officielle

L’objectif :S’assurer que la PKI estutiliséeSans trop se fatiguer

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 38 / 45

Page 66: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

Exemple : vérification politique de sécurité (2/2)

Asssurons nous que les certificats utilisés dans les négotiationsclients vers nos serveurs sont les notres

La signature :

a l e r t t l s any any −> $SERVERS any ( t l s . issuerdn : ! "C=NL, O=Staat der Nederlanden , \CN=Staat der Nederlanden Root CA" ; )

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 39 / 45

Page 67: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

Exemple : vérification politique de sécurité (2/2)

Asssurons nous que les certificats utilisés dans les négotiationsclients vers nos serveurs sont les notresLa signature :

a l e r t t l s any any −> $SERVERS any ( t l s . issuerdn : ! "C=NL, O=Staat der Nederlanden , \CN=Staat der Nederlanden Root CA" ; )

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 39 / 45

Page 68: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

Exemple : détection d’anomalies de certificats

Google.com est signé parGoogle Internet Authority

Il n’est pas signé par uneautre autorité

(Diginotarpar exemple)

Si c’est le cas, c’est mal !Bloquons ça !

Signature :drop t l s $CLIENT any −> any any ( \

t l s . sub jec t= "C=US, ST= C a l i f o r n i a , L=Mountain View , O=Google Inc , CN=∗. google . com" ; \t l s . issuerdn =! "C=US, O=Google Inc , CN=Google I n t e r n e t A u t h o r i t y " ; )

Ah, Quoi ! KPN a aussi été hacké !Sus aux hollandais !drop t l s $CLIENT any −> any any ( t l s . issuerdn="C=NL" ) ;

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 40 / 45

Page 69: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

Exemple : détection d’anomalies de certificats

Google.com est signé parGoogle Internet AuthorityIl n’est pas signé par uneautre autorité

(Diginotarpar exemple)Si c’est le cas, c’est mal !Bloquons ça !

Signature :drop t l s $CLIENT any −> any any ( \

t l s . sub jec t= "C=US, ST= C a l i f o r n i a , L=Mountain View , O=Google Inc , CN=∗. google . com" ; \t l s . issuerdn =! "C=US, O=Google Inc , CN=Google I n t e r n e t A u t h o r i t y " ; )

Ah, Quoi ! KPN a aussi été hacké !Sus aux hollandais !drop t l s $CLIENT any −> any any ( t l s . issuerdn="C=NL" ) ;

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 40 / 45

Page 70: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

Exemple : détection d’anomalies de certificats

Google.com est signé parGoogle Internet AuthorityIl n’est pas signé par uneautre autorité (Diginotarpar exemple)

Si c’est le cas, c’est mal !Bloquons ça !

Signature :drop t l s $CLIENT any −> any any ( \

t l s . sub jec t= "C=US, ST= C a l i f o r n i a , L=Mountain View , O=Google Inc , CN=∗. google . com" ; \t l s . issuerdn =! "C=US, O=Google Inc , CN=Google I n t e r n e t A u t h o r i t y " ; )

Ah, Quoi ! KPN a aussi été hacké !Sus aux hollandais !drop t l s $CLIENT any −> any any ( t l s . issuerdn="C=NL" ) ;

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 40 / 45

Page 71: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

Exemple : détection d’anomalies de certificats

Google.com est signé parGoogle Internet AuthorityIl n’est pas signé par uneautre autorité (Diginotarpar exemple)Si c’est le cas, c’est mal !

Bloquons ça !Signature :drop t l s $CLIENT any −> any any ( \

t l s . sub jec t= "C=US, ST= C a l i f o r n i a , L=Mountain View , O=Google Inc , CN=∗. google . com" ; \t l s . issuerdn =! "C=US, O=Google Inc , CN=Google I n t e r n e t A u t h o r i t y " ; )

Ah, Quoi ! KPN a aussi été hacké !Sus aux hollandais !drop t l s $CLIENT any −> any any ( t l s . issuerdn="C=NL" ) ;

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 40 / 45

Page 72: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

Exemple : détection d’anomalies de certificats

Google.com est signé parGoogle Internet AuthorityIl n’est pas signé par uneautre autorité (Diginotarpar exemple)Si c’est le cas, c’est mal !Bloquons ça !

Signature :drop t l s $CLIENT any −> any any ( \

t l s . sub jec t= "C=US, ST= C a l i f o r n i a , L=Mountain View , O=Google Inc , CN=∗. google . com" ; \t l s . issuerdn =! "C=US, O=Google Inc , CN=Google I n t e r n e t A u t h o r i t y " ; )

Ah, Quoi ! KPN a aussi été hacké !Sus aux hollandais !drop t l s $CLIENT any −> any any ( t l s . issuerdn="C=NL" ) ;

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 40 / 45

Page 73: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

Exemple : détection d’anomalies de certificats

Google.com est signé parGoogle Internet AuthorityIl n’est pas signé par uneautre autorité (Diginotarpar exemple)Si c’est le cas, c’est mal !Bloquons ça !

Signature :drop t l s $CLIENT any −> any any ( \

t l s . sub jec t= "C=US, ST= C a l i f o r n i a , L=Mountain View , O=Google Inc , CN=∗. google . com" ; \t l s . issuerdn =! "C=US, O=Google Inc , CN=Google I n t e r n e t A u t h o r i t y " ; )

Ah, Quoi ! KPN a aussi été hacké !Sus aux hollandais !drop t l s $CLIENT any −> any any ( t l s . issuerdn="C=NL" ) ;

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 40 / 45

Page 74: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

Exemple : détection d’anomalies de certificats

Google.com est signé parGoogle Internet AuthorityIl n’est pas signé par uneautre autorité (Diginotarpar exemple)Si c’est le cas, c’est mal !Bloquons ça !

Signature :drop t l s $CLIENT any −> any any ( \

t l s . sub jec t= "C=US, ST= C a l i f o r n i a , L=Mountain View , O=Google Inc , CN=∗. google . com" ; \t l s . issuerdn =! "C=US, O=Google Inc , CN=Google I n t e r n e t A u t h o r i t y " ; )

Ah, Quoi ! KPN a aussi été hacké !

Sus aux hollandais !drop t l s $CLIENT any −> any any ( t l s . issuerdn="C=NL" ) ;

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 40 / 45

Page 75: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

Exemple : détection d’anomalies de certificats

Google.com est signé parGoogle Internet AuthorityIl n’est pas signé par uneautre autorité (Diginotarpar exemple)Si c’est le cas, c’est mal !Bloquons ça !

Signature :drop t l s $CLIENT any −> any any ( \

t l s . sub jec t= "C=US, ST= C a l i f o r n i a , L=Mountain View , O=Google Inc , CN=∗. google . com" ; \t l s . issuerdn =! "C=US, O=Google Inc , CN=Google I n t e r n e t A u t h o r i t y " ; )

Ah, Quoi ! KPN a aussi été hacké !Sus aux hollandais !drop t l s $CLIENT any −> any any ( t l s . issuerdn="C=NL" ) ;

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 40 / 45

Page 76: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

Limitation actuelle

Vient juste d’être commité dans le gitLes mots clés ne portent que sur le premier certificat de la chaine.

Impossible actuellement de faire des vérifications sur les certificatschainésLe parseur les supporte mais pas les mots clés.

Certains mots clés manquent et vont être ajoutésAlgorithme cryptographique utilisé/proposéTaille de clefsParamètre Diffie-Hellman

Études statistiques

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 41 / 45

Page 77: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

1 IntroductionIntroductionObjectifs du projetEcosystème

2 FonctionnalitésListe des fonctionnalitésSignaturesStream inlineCUDA

3 Fonctions avancées de suricatalibHTPVariables de fluxExtraction et inspection de fichiersÉtude de la négociation TLS

4 Le futurFonctionnalités planifiéesPlus d’informations

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 42 / 45

Page 78: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

Fonctionnalités planifiées

Réputation IP et DNSCompteur de répétition temporelleMot clé geoipRechargement du jeu de signatures sans rupture de l’analyse desflux

Détails : http://www.openinfosecfoundation.org/index.php/component/content/article/1-latest-news/136-brainstorming-meeting-summary-and-phase-three-development-roadmap-draft

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 43 / 45

Page 79: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

Comment tester rapidement

Déjà disponible dans Debian, Ubuntu, Gentoo, FreebsdDistribution live :

SIEM live (Suricata + Prelude + Openvas) : https://www.wzdftpd.net/redmine/projects/siem-live/wiki

Smooth-Sec (Suricata + Snorby) :http://bailey.st/blog/smooth-sec/

Security Onion : http://securityonion.blogspot.com/

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 44 / 45

Page 80: Présentation de l'IDPS Suricata · 2012-01-12 · Richard Bejtlich, Dr. Jose Nazario, Joel Ebrahimi, Marc Norton, Stuart Wilson... Éric Leblond (OISF) Présentation de l’ID P

Questions

Avez-vous des questions ?

Merci à :Pierre Chifflier : http://www.wzdftpd.net/blog/Toute l’équipe de l’OISF et Victor Julien en particulier

Pour aller plus loin :Site de l’OISF : http://www.openinfosecfoundation.org/Site développeurs de Suricata :https://redmine.openinfosecfoundation.org/Blog de Victor Julien : http://www.inliniac.net/blog/Mon blog : http://home.regit.org

Me joindre :Courriel : [email protected] : Regiteric

Éric Leblond (OISF) Présentation de l’IDP S Suricata 10 janvier 2012 45 / 45