19
Application Security Forum - 2012 Western Switzerland 7-8 novembre 2012 - Y-Parc / Yverdon-les-Bains https://www.appsec-forum.ch Les utilités d'un coupe-feu applicatif Web Jonathan Marcil OWASP Montréal Canada #ASFWS

ASFWS 2012 - Les utilités d’un pare-feu applicatif Web (WAF) par Jonathan Marcil

Embed Size (px)

DESCRIPTION

Vous hébergez des applications Web et votre défense se limite à un coupe-feu réseau. Cependant, une grande partie des attaques sont menées directement via le protocole HTTP et l’utilisation d’un coupe-feu traditionnel s’avère inutile. Le coupe-feu applicatif Web (Web Application Firewall, WAF) se veut une solution à cette problématique. La présentation, basée sur mon expérience des dernières années, fait le point sur les diverses utilités de cette technologie : Les choix d’implémentations. Les diverses modes de fonctionnements. L’importance et le choix des types de règles à implémenter. Rapports et collection des alertes. Méthodologie de développement de règles. Bonus: Contournement de règles et exceptions. Le logiciel Open Source ModSecurity sera utilisé comme exemple ainsi que les règles OWASP CRS. D’autres règles conçues pour la présentation seront aussi présentées dans le but de démontrer une utilisation sur mesure du WAF.

Citation preview

Page 1: ASFWS 2012 - Les utilités d’un pare-feu applicatif Web (WAF) par Jonathan Marcil

Application Security Forum - 2012 Western Switzerland

7-8 novembre 2012 - Y-Parc / Yverdon-les-Bains

https://www.appsec-forum.ch

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

Jonathan Marcil

OWASP Montréal

Canada

#ASFWS

Page 2: ASFWS 2012 - Les utilités d’un pare-feu applicatif Web (WAF) par Jonathan Marcil

WAF

Web

Application

Firewall

2

Page 3: ASFWS 2012 - Les utilités d’un pare-feu applicatif Web (WAF) par Jonathan Marcil

Coupe-feu?

IP/TCP IP/UDP

IDS

IPS

3

Page 4: ASFWS 2012 - Les utilités d’un pare-feu applicatif Web (WAF) par Jonathan Marcil

Implémentations

Routeur (Router) Pont (Bridge)

Serveur mandataire (Reverse Proxy)

Incorporé (Embedded)

4

Page 5: ASFWS 2012 - Les utilités d’un pare-feu applicatif Web (WAF) par Jonathan Marcil

Routeur (Router)

5

Point de défaillance unique

Problèmes de performances

Page 6: ASFWS 2012 - Les utilités d’un pare-feu applicatif Web (WAF) par Jonathan Marcil

Serveur mandataire (Reverse Proxy)

6

Incorporé (Embedded)

Serveurs Web ne supportant pas de module Moyens limités

SSL facile

Performance distribuée

Page 7: ASFWS 2012 - Les utilités d’un pare-feu applicatif Web (WAF) par Jonathan Marcil

Modes de fonctionnements

Surveillance

Alertes

Anomalies

Protection

Bloquer les attaques

Corrections virtuelles (Virtual Patching)

7

Page 8: ASFWS 2012 - Les utilités d’un pare-feu applicatif Web (WAF) par Jonathan Marcil

Philosophies

Boîte noire et espérance

À conseiller pour surveillance

Boîte blanche et personnalisation

À conseiller pour protection

8

Page 9: ASFWS 2012 - Les utilités d’un pare-feu applicatif Web (WAF) par Jonathan Marcil

Types de règles

Surveillance (watchlist)

Liste blanche (whitelist)

Liste noire (blacklist)

Exceptions surveillées (bypass)

À ignorer (ignorelist)

Expérience utilisateur (UX)

9

Page 10: ASFWS 2012 - Les utilités d’un pare-feu applicatif Web (WAF) par Jonathan Marcil

Alertes et rapports

Importance pour la sécurité

Importance pour la fonctionnalité

Console centrale vs. journaux

10

Page 11: ASFWS 2012 - Les utilités d’un pare-feu applicatif Web (WAF) par Jonathan Marcil

Méthodologie de développement de règles Focus sur liste noire

Audit d’applications ou collectes des failles connues

Création des règles pour corriger les failles

Tests en mode surveillance

Vérification des alertes Pour ne pas impacter la production

Passage en mode protection

Suivis Des alertes pour suivre les changements imprévus la production et les

attaques

Des changements pour mises à jour itératives des règles

11

Page 12: ASFWS 2012 - Les utilités d’un pare-feu applicatif Web (WAF) par Jonathan Marcil

Méthodologie de développement de règles Focus sur liste blanche

Collection et analyse trafic légitime

Création des règles À partir du trafic (profil des applications)

Tests en mode surveillance

Vérification des alertes Pour ne pas impacter la production

Passage en mode protection

Suivis Des alertes pour suivre les changements imprévus la production, les

anomalies et attaques

Des changements pour mises à jour itératives des règles

12

Page 13: ASFWS 2012 - Les utilités d’un pare-feu applicatif Web (WAF) par Jonathan Marcil

Conclusions

Autres utilités que la sécurité

Fonctionnalités (UX)

Détection d’anomalies (QA)

Traces en profondeur (DEBUG)

Attention au contournement des règles Corriger vos applications si possible

13

Page 14: ASFWS 2012 - Les utilités d’un pare-feu applicatif Web (WAF) par Jonathan Marcil

Questions?

14

Démonstration http://www.modsecurity.org/

http://www.ironbee.com/

http://jwall.org/web/audit/console/screenshots/eventview.png

http://www.owasp.org/index.php/Category:OWASP_ModSecurity_Core_Rule_Set_Project

Page 15: ASFWS 2012 - Les utilités d’un pare-feu applicatif Web (WAF) par Jonathan Marcil

Bonus

WAF Testing Framework par Imperva

Gratuit

Disponible fin 2012

Utilise WebGoat

Code fermé (sera ouvert un jour) mais configurations ouvertes XML

15

Page 16: ASFWS 2012 - Les utilités d’un pare-feu applicatif Web (WAF) par Jonathan Marcil

Bonus ReDoS

MSC_PCRE_LIMITS_EXCEEDED:

PCRE match limits were exceeded.

SecRule TX:/^MSC_/ "!@streq 0" "id:'200004',phase:2,t:none,deny,msg:'ModSecurity internal error flagged: %{MATCHED_VAR_NAME}‘"

16

Page 17: ASFWS 2012 - Les utilités d’un pare-feu applicatif Web (WAF) par Jonathan Marcil

Bonus Some Ivan Ristic bypass in a nutshell

<Location /myapp/admin.php>

# Allow only numbers in userid

SecRule ARGS:userid "!^\d+$«

</Location>

/myapp/admin.php/xyz?userid=1PAYLOAD

/myapp/admin.php;param=value?userid=1PAYLOAD

SecRule REQUEST_FILENAME "@streq /myapp/admin.php"

Short names Apache running on Windows

Multipart Evasion ModSecurity CRS:

Content-Type: multipart/; boundary=0000

http://bit.ly/PYp5G6

17

Page 18: ASFWS 2012 - Les utilités d’un pare-feu applicatif Web (WAF) par Jonathan Marcil

Merci/Thank you!

Contact:

[email protected]

@jonathanmarcil

http://blog.jonathanmarcil.ca

Slides:

http://slideshare.net/ASF-WS/presentations

18

Page 19: ASFWS 2012 - Les utilités d’un pare-feu applicatif Web (WAF) par Jonathan Marcil

Références OWASP Best Practices: Use of Web Application Firewalls

https://www.owasp.org/index.php/Category:OWASP_Best_Practices:_Use_of_Web_Application_Firewalls

OWASP ModSecurity Core Rule Set Project https://www.owasp.org/index.php/Category:OWASP_ModSecurity_Core_Rule_Set_Project

Web Application Firewall Evaluation Criteria Version 1.0 http://projects.webappsec.org/w/page/13246983/WAFEC%201%20HTML%20Version

ModSecurity Reference Manual

https://github.com/SpiderLabs/ModSecurity/wiki/Reference-Manual

19