XLabs Web Firewall na defesa de um ataque DDoS em Layer 7 [Caso Real]

xlabs-web-firewall-na-defesa-ataque-ddos-layer-7-blog-post-xlabs

No mês de abril do ano de 2015 fomos contratados por uma das maiores empresas em hospedagem de websites e cloud computing do Brasil para a defesa de seus sistemas, aos quais vinham sofrendo diariamente diversos ataques sofisticados direcionados a sua infraestrutura de TI e sistemas próprios. O nome e informações do cliente serão omitidos por questões contratuais de sigilo.

Nossa resposta aos incidentes foi praticamente imediata, após o contato com a empresa cliente e contratos assinados, fomos diretamente para as análises que temos como praxe, análises básicas de segurança da infraestrutura do cliente, e de pronto encontramos diversas falhas e configurações inseguras em diversos serviços internos aos quais a empresa mantinha, analisamos a infraestrutura dos Data-Center’s que esta empresa mantém em São Paulo-SP e também identificamos algumas falhas, o cliente devidamente ciente da situação começou imediatamente as correções em seus sistemas.

Após as análises de segurança, começou-se então a auditoria de sistemas como regras de firewall’s e auditorias em ambientes de hospedagem e cloud. Identificou-se que algumas regras no firewall estavam duplicadas, outras funcionalidades essenciais para a segurança do negócio desabilitadas, após uma conversa com o Gerente de TI identificamos também que a empresa desconhecia a utilização de Web Application Firewall’s, o mesmo confundia as tecnologias de Next Generation Firewall como sendo a mesma tecnologia de um Web Application Firewall, confusão muito comum para gestores de TI e administradores de empresas, afinal, são diversos sistemas utilizados na segurança digital de uma empresa, gestores não tem o foco somente na segurança de seus sistemas, mas sim na qualidade de seus serviços/produtos e seus funcionários. [Dúvidas entre NGFW e WAF? clique aqui]

Após a identificação destes itens, obtivemos permissão do gestor de TI para administrarmos o firewall da Palo-Alto Networks de modelo PA-3020, firewall este que é de uma das empresas que estão no top 10 do Gartner em liderança de soluções em Next Generation Firewall’s, após obtermos a permissão para a administração do Firewall, durante este “meio tempo” a empresa começou a perceber a lentidão de um dos servidores que faz Application Request Routing (ARR da Microsoft), nosso consultor foi acionado devido a lentidão parecer algum tipo de ataque, ao analisarmos o firewall PA-3020, na feature de URL Filtering percebeu-se então a grande quantidade de requisições chegando ao ARR da empresa com uma assinatura estranha, todas as requisições baseavam-se em requisições “legítimas” tentando acesso a uma URL /*/ext onde * seria substituído por qualquer letra do alfabeto.

Baseando-se nestas informações o gestor de TI resolveu criar uma regra na feature do PA-3020 que toda a requisição contendo “/*/ext” fosse bloqueada pelo firewall, após o commit das regras, perceberam-se os serviços do ARR voltando a normalidade, o processamento do servidor baixou e pode-se navegar nos sistemas da empresa tranquilamente.

Abaixo podemos ver na imagem o Firewall Palo-Alto PA-3020 bloqueando todas as requisições ao endereço do servidor de ARR com a assinatura do ataque.

PaloAlto_Logs

Após alguns minutos, perceberam-se instabilidades na rede do Data-Center inteiro, novamente nossa consultoria foi acionada, para analisarmos o que possa ter ocorrido no Data-Center do cliente, ao analisarmos o Firewall, percebemos que o mesmo havia caído, não suportando a grande quantidade de requisições geradas pelo ataque.

Podemos perceber esta afirmação no uptime do equipamento ao analisarmos, segue na imagem abaixo.

UPtime

Percebemos também que o ataque conseguiu consumir o número máximo de sessões ao qual o Palo-Alto PA-3020 suporta, que é de 250 mil sessões simultâneas, como podemos perceber estes números na imagem abaixo.

PaloAlto_240k_sessions

Após certo período, o cliente nos informou que o Palo-Alto não estava reduzindo a quantidade de sessões e nem estava mais barrando o ataque, e sim estava se tornando mais uma vítima do ataque DDoS em camada de aplicação (Layer 7) que estava a ocorrer, o Palo-Alto já estava com suas sessões em 260 mil, bem acima do esperado de sessões do appliance, deixando a rede completamente lenta e correndo o risco de novamente cair e deixar o Data-Center por alguns minutos off-line, ocasionando cerca de 20 mil clientes offline no momento de reboot do firewall.

PaloAlto_260k+_sessions

Ciente do problema que estávamos a encarar, decidimos então colocar nossa ferramenta até então em desenvolvimento para uma tentativa de barrar o ataque, informamos o cliente de nossa ferramenta, que estava em desenvolvimento e que poderia barrar certo ataque, por se tratar de um ataque em camada de aplicação, justamente ataques que nossa ferramenta foi programada para defender. O cliente ciente de todas as instabilidades que poderiam ocorrer, nos informou que não seria tão impactante se somente um sistema fosse afetado e não todo o Data-Center onde mais de 20 mil clientes mantém suas aplicações e sistemas online.

Ao sermos autorizados a efetuar a defesa do sistema atacado, começamos a trabalhar em conjunto com as equipes de infra-estrutura de TI da empresa cliente, solicitamos as equipes do cliente que fosse instalado nosso sistema de Web Application Firewall em um cloud server dentro de seu Data-Center, tarefa não muito complicada para os engenheiros da empresa cliente.

Após a criação do cloud-server com nosso sistema de web firewall, o cliente foi orientado por meio de nosso consultor in-loco a direcionar em seus DNS’s o CNAME do sistema que estava a ser afetado pelo ataque ao IP do cloud-server que hospedava nossa aplicação para a mitigação do ataque ser efetuada através de nosso sistema, nossos consultores localizados em nosso Centro de Operações em Segurança (SOC) obtiveram maiores informações do ataque, podendo assim desenvolver assinaturas dos padrões de detecção do ataque e começar a mitigação do mesmo, até então tínhamos informações de que poderia se tratar de apenas um ataque de DoS vindo somente de um IP e direcionado ao sistema de nosso cliente.

Após nossa ferramenta ser “alimentada” com a nova assinatura de ataque, começou-se então a mitigação do ataque através de nossa ferramenta, não afetando mais o Data-Center do cliente, nem mesmo o sistema alvo do ataque, apenas tráfego legítimo estava passando ao sistema do cliente.

Possuímos uma linha do tempo com a quantidade de requisições barradas por nosso Web Firewall, incluindo também as manutenções em nosso WebIPS ao qual foi aperfeiçoado para detectar e bloquear os IP’s que estavam cometendo o ataque, este bloqueio não se trata de um bloqueio definitivo, e sim um bloqueio temporário.

Requests

A seguir temos uma imagem de nosso sistema de Web Application Firewall em sua versão 1.0 Beta demonstrando a defesa de uma requisição do ataque,

DDoS

Ao notarmos que as requisições não sessavam e vinham praticamente de diversas origens, resolvemos recolher informações do Web App Firewall para sabermos a quantidade de IP’s que estavam a atacar o sistema de nosso cliente, foi então que percebemos de se tratar de um grande ataque de DDoS em Layer 7 contra o sistema do cliente, o ataque persistiu por cerca de um mês, a seguir temos uma lista dos IP’s que formaram esta botnet que efetuou este ataque.

Pelos cálculos, se formos levar em consideração que cada máquina na melhor das hipóteses tenha gerado 1Mbps de tráfego ao servidor alvo, nossa ferramenta defendeu um ataque de aproximadamente 300Mbps, lembrando que isso na melhor das hipóteses, podendo na pior das hipóteses atingir um valor bem maior se tivermos máquinas com maior capacidade de gerar tráfego.

109.163.234.4 
109.194.220.197 
131.100.10.241 
131.108.188.253 
138.36.107.18 
138.36.107.6 
146.164.121.13
152.237.225.68 
152.238.2.119 
176.10.99.208 
176.10.99.209 
176.14.251.107 
176.193.198.11 
176.195.208.152 
176.195.29.83 
176.195.86.204 
176.195.95.74 
177.0.193.67 
177.0.194.29 
177.103.125.124 
177.103.86.115 
177.104.240.20 
177.104.244.130 
177.104.48.2 
177.12.20.217 
177.134.56.111 
177.138.78.250 
177.156.58.187 
177.157.188.214 
177.177.203.144 
177.177.84.186 
177.179.171.206 
177.18.169.47 
177.18.172.86 
177.18.99.118 
177.18.99.82 
177.185.29.101 
177.19.236.148 
177.194.28.15 
177.205.200.49 
177.205.202.193 
177.22.192.2 
177.22.194.124 
177.220.142.42 
177.221.232.187 
177.23.7.2 
177.36.58.35 
177.37.100.248 
177.54.115.158 
177.54.195.189 
177.55.206.73 
177.59.78.185 
177.67.1.226 
177.67.100.110 
177.68.192.109 
177.69.169.114 
177.69.231.66 
177.69.32.109 
177.7.112.238 
177.7.95.72
177.74.144.70 
177.75.35.150 
177.75.52.156 
177.86.57.190 
177.87.150.59 
177.87.19.73 
177.87.21.113 
177.9.1.25 
177.92.57.173 
177.93.114.168 
177.95.224.254 
177.95.73.4 
177.97.193.128 
178.63.97.34 
179.104.165.232 
179.107.116.17 
179.174.174.220 
179.182.75.226 
179.184.45.64 
179.191.202.45 
179.191.205.137 
179.199.32.181 
179.208.86.106 
179.222.21.244 
179.222.29.31 
179.254.28.10 
186.200.51.106 
186.207.204.141 
186.215.16.225 
186.222.97.82 
186.224.242.40 
186.225.53.182 
186.227.8.21 
186.229.1.69 
186.232.251.195 
186.233.21.188 
186.235.120.6 
186.235.77.149 
186.237.129.162 
186.247.60.146 
186.251.78.44 
187.101.11.249 
187.101.179.47 
187.101.9.195 
187.102.225.60 
187.108.150.218 
187.108.190.212 
187.114.28.248 
187.17.52.14 
187.24.165.248 
187.24.201.67 
187.28.166.54 
187.35.0.246 
187.35.12.17 
187.40.89.52 
187.40.90.67 
187.41.82.254 
187.41.87.84 
187.41.91.63 
187.41.91.85 
187.54.212.176 
187.55.113.148 
187.63.195.178 
187.63.227.177 
187.70.176.198 
187.72.160.200 
187.78.26.115 
187.79.1.74 
187.79.14.210 
187.79.15.207 
187.84.177.147 
187.94.201.245 
188.140.114.37
188.244.39.126 
189.111.72.229 
189.111.95.127 
189.112.169.140 
189.112.217.61 
189.112.42.89 
189.113.73.134 
189.124.17.42 
189.127.200.12 
189.13.201.51 
189.15.2.242 
189.17.199.2 
189.212.185.220 
189.3.222.193 
189.31.204.23 
189.36.9.78 
189.38.1.74 
189.38.1.78 
189.38.3.238 
189.41.30.136 
189.48.102.199 
189.48.142.220 
189.58.231.71 
189.72.201.174 
189.72.240.13 
189.74.45.120 
189.78.13.12 
189.78.14.33 
189.78.15.224 
189.78.17.221 
189.78.22.135 
189.78.22.178 
189.78.27.134 
189.78.28.117 
189.78.29.125 
189.78.3.211 
189.78.3.99 
189.78.32.74 
189.78.4.219 
189.78.6.124 
189.78.6.246 
189.78.8.151 
189.78.9.131 
189.79.180.193 
189.81.112.63 
189.81.123.194 
189.81.124.221 
189.81.149.210
189.81.184.89 
189.82.130.94 
189.82.140.239 
189.82.189.173 
189.82.54.49 
189.90.246.67 
189.90.96.90 
189.93.251.34 
190.151.29.146 
190.180.174.26 
191.17.152.222 
191.17.152.228 
191.17.158.178 
191.189.22.191 
191.240.180.2 
191.242.240.34 
191.247.231.1 
191.253.64.50 
191.255.12.163 
191.255.34.149 
191.255.34.74 
191.5.147.104 
191.54.23.234 
200.100.71.125 
200.101.133.75 
200.128.84.50 
200.129.160.136 
200.131.199.29 
200.131.252.220 
200.131.62.31 
200.133.1.59 
200.137.128.130 
200.137.135.30 
200.137.180.15 
200.137.227.30 
200.142.117.250 
200.142.79.143 
200.144.92.20 
200.144.92.40 
200.150.113.165 
200.150.168.114 
200.150.83.106 
200.151.190.206 
200.153.211.253 
200.164.74.202 
200.178.129.120 
200.178.195.70 
200.189.118.3 
200.192.72.2 
200.192.72.3 
200.195.143.25 
200.195.180.208 
200.195.189.55 
200.199.217.221 
200.201.89.42 
200.202.142.16 
200.216.19.188 
200.223.129.85 
200.232.28.132 
200.239.65.67 
201.1.70.42 
201.18.153.188 
201.2.210.99 
201.22.185.237 
201.23.92.114 
201.3.113.198 
201.33.121.69 
201.35.248.155 
201.39.196.194 
201.45.58.227 
201.48.124.165 
201.48.179.146 
201.48.179.85 
201.48.60.156 
201.48.8.194 
201.48.80.93 
201.49.77.202 
201.50.89.202 
201.51.31.40 
201.51.33.83 
201.51.39.238 
201.51.41.110 
201.54.5.74 
201.55.169.17 
201.59.200.137 
201.64.100.99 
201.68.154.178
201.68.155.80 
201.71.224.77 
201.71.47.38 
201.75.106.190 
201.77.115.224 
212.230.90.168 
24.238.6.178 
46.188.0.87 
5.228.195.25 
54.229.121.172 
64.69.91.210 
76.19.47.29 
78.85.239.94 
79.120.10.98 
84.177.0.130 
84.177.1.251 
84.177.11.104 
84.177.11.46 
84.177.18.140 
84.177.18.154 
84.177.22.119 
84.177.27.1 
84.177.27.67 
84.177.30.100 
84.177.5.240 
84.177.7.136 
84.177.7.197 
89.214.248.212 
93.173.62.159 
94.26.140.150 
94.29.7.105 
95.25.218.88 
95.25.218.90 
95.26.250.68 
95.26.53.3 
95.26.53.77 
95.84.250.250 

Gostou do artigo? Compartilhe.

LinkedIn
Facebook
WhatsApp

Faça parte da nossa lista de emails!