78
Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência das requisições Web

número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

Felipe Homrich Melchior

WRSeg - 2019

Web Application Firewalls (WAFs): o impacto do número de regras na latência das requisições Web

Page 2: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

Requisição

2

Requisita Imagem

Retorna Imagem

Alice

Page 3: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

Requisição

3

Requisita Imagem

Retorna Imagem

Alice

Page 4: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

Requisição

4

Requisita Imagem

Retorna Imagem

Alice

Page 5: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

Problema?

5

Retorna Dados Sensíveis

Bob

Envia ‘ OR 1=1 -- #

Page 6: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

Problema?

6

Retorna Dados Sensíveis

Bob

Envia ‘ OR 1=1 -- #

Page 7: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

Problema?

7

Retorna Dados Sensíveis

Bob

Envia ‘ OR 1=1 -- #

Page 8: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

Vulnerabilidades na Web

8

Cross-site scripting é a falha mais recorrente

Pelo menos uma falha de nível médio em 90% das aplicações web

Metade dos sistemas vulneráveis com falhas críticas

Page 9: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

Vulnerabilidades na Web

9

Como melhorar este cenário?

Page 10: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

Web Application Firewall

10

Regras pré-definidas

Processa e filtra requisições

Intermediador entre o Cliente e a Aplicação

Page 11: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

11

Alice

Requisita Imagem Repassa Requisição

Envia Imagem Encaminha Imagem

Requisição com WAF - Sem Bloqueio

Page 12: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

12

Alice

Requisita Imagem Repassa Requisição

Envia Imagem Encaminha Imagem

Requisição com WAF - Sem Bloqueio

Page 13: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

13

Alice

Requisita Imagem Repassa Requisição

Envia Imagem Encaminha Imagem

Requisição com WAF - Sem Bloqueio

Page 14: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

14

Alice

Requisita Imagem Repassa Requisição

Envia Imagem Encaminha Imagem

Requisição com WAF - Sem Bloqueio

Page 15: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

15

Alice

Requisita Imagem Repassa Requisição

Envia Imagem Encaminha Imagem

Requisição com WAF - Sem Bloqueio

Page 16: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

16

Bob

Envia ‘ OR 1=1 -- #

Solicitação Rejeitada

Requisição com WAF - Com Bloqueio

Page 17: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

17

Bob

Envia ‘ OR 1=1 -- #

Solicitação Rejeitada

Requisição com WAF - Com Bloqueio

Page 18: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

18

Bob

Envia ‘ OR 1=1 -- #

Solicitação Rejeitada

Requisição com WAF - Com Bloqueio

Page 19: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

19

Desenvolvimento

WAFs

Resultados

Considerações Finais

Estudos sobre WAFs

Page 20: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

WAFs

20

Security as a Service

Standalone

Page 21: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

WAFs - Standalone

21

● Executados junto ao Servidor Web

● Gratuitos e Comerciais

Page 22: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

WAFs - Standalone

22

Cliente WAF Aplicação Web

Page 23: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

WAFs - Standalone

23

Cliente Aplicação WebWAF

Page 24: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

WAFs - Standalone

24

Cliente Aplicação WebWAF

Page 25: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

WAFs - Standalone

25

Cliente Aplicação WebWAF

Page 26: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

WAFs - Standalone

26

Cliente Aplicação WebWAF

Page 27: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

● Oferecidos sob demanda por terceiros

● Redirecionamento DNS

● Proxy de Redirecionamento

WAFs - SaaS

27

Page 28: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

WAFs - SaaS

28

Cliente Aplicação WebWAF SaaS

Page 29: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

WAFs - SaaS

29

Cliente Aplicação WebWAF SaaS

Page 30: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

WAFs - SaaS

30

Cliente Aplicação WebWAF SaaS

Page 31: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

WAFs - SaaS

31

Cliente Aplicação WebWAF SaaS

Page 32: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

WAFs - SaaS

32

Cliente Aplicação WebWAF SaaS

Page 33: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

33

Desenvolvimento

WAFs

Resultados

Considerações Finais

Estudos sobre WAFs

Page 34: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

Principais Desafios

34

Detecção de Ataques

Avaliação em Cenários Controlados

Domínio da Ferramenta

Page 35: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

Principais Desafios

35

Detecção de Ataques

Avaliação em Cenários Controlados

Domínio da Ferramenta

Page 36: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

Detecção de Ataques

36

● Algoritmos capazes de detectar CSRF e XSS

● Autenticação Adicional

● Histórico de Similaridade

Page 37: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

Principais Desafios

37

Detecção de Ataques

Avaliação em Cenários Controlados

Domínio da Ferramenta

Page 38: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

Domínio da Ferramenta

38

● Conhecer a solução pode otimizar resultados

● Níveis de Paranoia do ModSecurity

● Aumento das taxas de Detecção e de Falsos Positivos

Page 39: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

Principais Desafios

39

Detecção de Ataques

Avaliação em Cenários Controlados

Domínio da Ferramenta

Page 40: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

Avaliação em Cenários Controlados

40

● Avaliação da segurança em Cenários Controlados

● Frameworks de Desenvolvimento junto com WAFs

● Framework Laravel sozinho mitiga 60% das vulnerabilidades

● Com ModSecurity, sobe para 70%

Page 41: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

Avaliação em Cenários Controlados

41

● Avaliação da segurança em Cenários Controlados

● Frameworks de Desenvolvimento junto com WAFs

● Framework Laravel sozinho mitiga 60% das vulnerabilidades

● Com ModSecurity, sobe para 70%

● Nota: Framework Symfony protege 60% e ao adicionar WAFs como Naxsi e ShadowDaemon, esta proteção caipara 50%

Page 42: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

Problemas em aberto

42

WAFs SaaS

Impacto da quantidade de regras

Caso específico

Page 43: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

Problemas em aberto

43

WAFs SaaS

Impacto da quantidade de regras

Caso específico

Page 44: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

44

Desenvolvimento

WAFs

Resultados

Considerações Finais

Estudos sobre WAFs

Page 45: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

Desenvolvimento

45

ShadowDaemon

Naxsi

xWAF

ModSecurity

Page 46: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

Máquina Hospedeira

46

● Processador i5 7300-HQ quad-core 2.5Ghz

● 8GB de memória RAM

● Placa de Vídeo GTX 1050

● HD 1TB HM170/QM170 Chipset SATA de 6.0Ghz

● Distribuição Linux Manjaro 18.0.4

● VirtualBox 6.0.6

Page 47: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

Máquinas Virtuais

47

● 1vCPU

● 2GB de memória RAM

● Distribuição Linux Ubuntu Server 16.0.4

Page 48: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

Cenário Controlado

48

● Sistema Web que implementa as dez vulnerabilidades mais recorrentes (Top Ten OWASP)

● PHP 7.0.3

● MySQL 5.7.25

● Servidores Apache 2.4.18 e Nginx 1.13.1

Page 49: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

Teste de Funcionamento

49

Page 50: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

Teste de Funcionamento

50

Page 51: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

Teste de Funcionamento

51

Page 52: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

Teste de Funcionamento

52

Page 53: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

53

Desenvolvimento

WAFs

Resultados

Considerações Finais

Estudos sobre WAFs

Page 54: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

Resultados

54

● Programa em Python que simula acessos ao sistema

● Considerando um ataque bloqueado por uma regra no início do conjunto

● Média de tempos de mil requisições

● Aumento gradativo da ativação das regras

Page 55: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

Resultados

55

Page 56: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

Resultados

56

Page 57: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

Resultados

57

Page 58: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

Resultados

58

Page 59: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

Resultados

59

Page 60: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

Resultados

60

Page 61: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

Resultados

61

Page 62: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

Resultados

62Traceroute ao DNS Google.8 google-public-dns-a.google.com (8.8.8.8)24.003 ms 24.904 ms 25.148 ms

Nota: Ao aproximar-se deste ponto, o acesso ao servidor local leva quase o mesmo que acessar um serviço externo, como o DNS da Google

Page 63: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

Resultados

63

Page 64: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

Resultados

64

Page 65: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

Resultados

65

Page 66: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

Resultados

66

Page 67: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

Resultados

67

1.66 ms40.69 ms

Page 68: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

Resultados

68

1.66 ms40.69 ms

2367%

Page 69: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

Resultados

69

Page 70: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

Resultados

70

Page 71: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

Resultados

71

Page 72: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

Resultados

72

1.21 ms23.75 ms

Page 73: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

Resultados

73

1.21 ms23.75 ms

1862%

Page 74: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

Resultados

74

Problema na engine?

Page 75: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

75

Desenvolvimento

WAFs

Resultados

Considerações Finais

Estudos sobre WAFs

Page 76: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

Considerações Finais

76

Usuários comuns são mais prejudicados

Grande impacto da quantidade de regras na latência

Page 77: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

Contato:[email protected]

77

Obrigado!

Figuras retiradas do site flaticon.com

Page 78: número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg - 2019 Web Application Firewalls (WAFs): o impacto do número de regras na latência

Felipe Homrich Melchior

WRSeg - 2019

Web Application Firewalls (WAFs): o impacto do número de regras na latência das requisições Web