número de regras na latência das requisições Web Web ... · Felipe Homrich Melchior WRSeg -...

Preview:

Citation preview

Felipe Homrich Melchior

WRSeg - 2019

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

Requisição

2

Requisita Imagem

Retorna Imagem

Alice

Requisição

3

Requisita Imagem

Retorna Imagem

Alice

Requisição

4

Requisita Imagem

Retorna Imagem

Alice

Problema?

5

Retorna Dados Sensíveis

Bob

Envia ‘ OR 1=1 -- #

Problema?

6

Retorna Dados Sensíveis

Bob

Envia ‘ OR 1=1 -- #

Problema?

7

Retorna Dados Sensíveis

Bob

Envia ‘ OR 1=1 -- #

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

Vulnerabilidades na Web

9

Como melhorar este cenário?

Web Application Firewall

10

Regras pré-definidas

Processa e filtra requisições

Intermediador entre o Cliente e a Aplicação

11

Alice

Requisita Imagem Repassa Requisição

Envia Imagem Encaminha Imagem

Requisição com WAF - Sem Bloqueio

12

Alice

Requisita Imagem Repassa Requisição

Envia Imagem Encaminha Imagem

Requisição com WAF - Sem Bloqueio

13

Alice

Requisita Imagem Repassa Requisição

Envia Imagem Encaminha Imagem

Requisição com WAF - Sem Bloqueio

14

Alice

Requisita Imagem Repassa Requisição

Envia Imagem Encaminha Imagem

Requisição com WAF - Sem Bloqueio

15

Alice

Requisita Imagem Repassa Requisição

Envia Imagem Encaminha Imagem

Requisição com WAF - Sem Bloqueio

16

Bob

Envia ‘ OR 1=1 -- #

Solicitação Rejeitada

Requisição com WAF - Com Bloqueio

17

Bob

Envia ‘ OR 1=1 -- #

Solicitação Rejeitada

Requisição com WAF - Com Bloqueio

18

Bob

Envia ‘ OR 1=1 -- #

Solicitação Rejeitada

Requisição com WAF - Com Bloqueio

19

Desenvolvimento

WAFs

Resultados

Considerações Finais

Estudos sobre WAFs

WAFs

20

Security as a Service

Standalone

WAFs - Standalone

21

● Executados junto ao Servidor Web

● Gratuitos e Comerciais

WAFs - Standalone

22

Cliente WAF Aplicação Web

WAFs - Standalone

23

Cliente Aplicação WebWAF

WAFs - Standalone

24

Cliente Aplicação WebWAF

WAFs - Standalone

25

Cliente Aplicação WebWAF

WAFs - Standalone

26

Cliente Aplicação WebWAF

● Oferecidos sob demanda por terceiros

● Redirecionamento DNS

● Proxy de Redirecionamento

WAFs - SaaS

27

WAFs - SaaS

28

Cliente Aplicação WebWAF SaaS

WAFs - SaaS

29

Cliente Aplicação WebWAF SaaS

WAFs - SaaS

30

Cliente Aplicação WebWAF SaaS

WAFs - SaaS

31

Cliente Aplicação WebWAF SaaS

WAFs - SaaS

32

Cliente Aplicação WebWAF SaaS

33

Desenvolvimento

WAFs

Resultados

Considerações Finais

Estudos sobre WAFs

Principais Desafios

34

Detecção de Ataques

Avaliação em Cenários Controlados

Domínio da Ferramenta

Principais Desafios

35

Detecção de Ataques

Avaliação em Cenários Controlados

Domínio da Ferramenta

Detecção de Ataques

36

● Algoritmos capazes de detectar CSRF e XSS

● Autenticação Adicional

● Histórico de Similaridade

Principais Desafios

37

Detecção de Ataques

Avaliação em Cenários Controlados

Domínio da Ferramenta

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

Principais Desafios

39

Detecção de Ataques

Avaliação em Cenários Controlados

Domínio da Ferramenta

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%

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%

Problemas em aberto

42

WAFs SaaS

Impacto da quantidade de regras

Caso específico

Problemas em aberto

43

WAFs SaaS

Impacto da quantidade de regras

Caso específico

44

Desenvolvimento

WAFs

Resultados

Considerações Finais

Estudos sobre WAFs

Desenvolvimento

45

ShadowDaemon

Naxsi

xWAF

ModSecurity

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

Máquinas Virtuais

47

● 1vCPU

● 2GB de memória RAM

● Distribuição Linux Ubuntu Server 16.0.4

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

Teste de Funcionamento

49

Teste de Funcionamento

50

Teste de Funcionamento

51

Teste de Funcionamento

52

53

Desenvolvimento

WAFs

Resultados

Considerações Finais

Estudos sobre WAFs

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

Resultados

55

Resultados

56

Resultados

57

Resultados

58

Resultados

59

Resultados

60

Resultados

61

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

Resultados

63

Resultados

64

Resultados

65

Resultados

66

Resultados

67

1.66 ms40.69 ms

Resultados

68

1.66 ms40.69 ms

2367%

Resultados

69

Resultados

70

Resultados

71

Resultados

72

1.21 ms23.75 ms

Resultados

73

1.21 ms23.75 ms

1862%

Resultados

74

Problema na engine?

75

Desenvolvimento

WAFs

Resultados

Considerações Finais

Estudos sobre WAFs

Considerações Finais

76

Usuários comuns são mais prejudicados

Grande impacto da quantidade de regras na latência

Contato:fehmel@gmail.com

77

Obrigado!

Figuras retiradas do site flaticon.com

Felipe Homrich Melchior

WRSeg - 2019

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

Recommended