{"id":1844,"date":"2022-01-12T12:29:21","date_gmt":"2022-01-12T15:29:21","guid":{"rendered":"https:\/\/www.xlabs.com.br\/blog\/?p=1844"},"modified":"2022-01-17T14:49:40","modified_gmt":"2022-01-17T17:49:40","slug":"entre-as-entranhas-do-nosso-waf-parte-1","status":"publish","type":"post","link":"https:\/\/www.xlabs.com.br\/blog\/entre-as-entranhas-do-nosso-waf-parte-1\/","title":{"rendered":"Entre as entranhas do nosso WAF &#8211; Parte 1"},"content":{"rendered":"\n<p>Ao longo do ano de 2021, decidimos come\u00e7ar a expor algumas das evolu\u00e7\u00f5es em nossa plataforma de CDN e WAF, como essas evolu\u00e7\u00f5es sempre ficavam \u201cescondidas\u201d e em \u201csegredo\u201d, devido a quest\u00f5es estrat\u00e9gicas, n\u00f3s pouco publicamos sobre as melhorias da plataforma, nos meses que antecederam o final do ano de 2021 decidimos expor algumas das melhorias, juntamente com algumas tecnologias que utilizamos em nossa plataforma de WAF e CDN, o por que de expormos agora? justamente para demonstrar sermos uma tecnologia desenvolvida em solo nacional e que usa diversas outras tecnologias associadas, visto que na computa\u00e7\u00e3o, nada \u00e9 criado do zero, tudo \u00e9 uma composi\u00e7\u00e3o de softwares associados, bem configurados e sincronizados que leva a cria\u00e7\u00e3o de plataformas, sistemas e servi\u00e7os iguais ao WAF e a CDN da XLabs.<\/p>\n\n\n\n<p>Assim como o Google, o Facebook e diversas outras empresas iniciaram suas atividades utilizando linguagens de programa\u00e7\u00e3o como PHP, C\/C++, Java, JavaScript, etc. Nossa empresa n\u00e3o foge ao normal. N\u00f3s utilizamos as mesmas tecnologias e linguagens que muitos grandes players utilizam no mercado, salvo a Microsoft que cria suas pr\u00f3prias ferramentas, web-servers com uma linguagem digamos que pr\u00f3pria, as empresas todas utilizam na fonte diversas plataformas, uma vez que seria uma perda de tempo, praticamente, a re-cria\u00e7\u00e3o de uma plataforma j\u00e1 criada e mantida, muitas vezes por alguma entidade de c\u00f3digo aberto.<\/p>\n\n\n\n<p>O que muitos grandes players fazem \u00e9 a utiliza\u00e7\u00e3o dessas plataformas open-source e al\u00e9m disso, a melhoria dessas plataformas, exemplo a NetFlix que identificou vulnerabilidades em web-servers utilizados por eles pr\u00f3prios.<br><\/p>\n\n\n\n<p>At\u00e9 mesmo n\u00f3s da XLabs Security j\u00e1 contribu\u00edmos com a comunidade open-source, disponibilizando c\u00f3digos de exploits e ferramentas que podem auxiliar diversas empresas, seus analistas e at\u00e9 mesmo pesquisadores. Para quem j\u00e1 nos conhece isso n\u00e3o \u00e9 novidade, para quem est\u00e1 nos conhecendo agora, possu\u00edmos c\u00f3digos utilizados at\u00e9 mesmo em trabalhos e pesquisas do Instituto Militar de Engenharia do Ex\u00e9rcito Brasileiro.<\/p>\n\n\n\n<p>Agora vamos parar de papo e abordar um pouco da tecnologia que utilizamos para a distribui\u00e7\u00e3o de IP\u2019s maliciosos em nossa rede de WAFs, que comp\u00f5em a plataforma de CDN (Content Delivery Network).<\/p>\n\n\n\n<p>Essa tecnologia, utilizada at\u00e9 mesmo em plataformas como LinkedIn, trata-se do Apache Kafka, o qual nas \u00faltimas atualiza\u00e7\u00f5es do nosso WAF, ajudou a resolver um problema que detectamos em nossa arquitetura de defesa para aplica\u00e7\u00f5es web.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<h2>Distribui\u00e7\u00e3o de IPs maliciosos entre WAFs utilizando Apache Kafka<\/h2>\n\n\n\n<p>Um dos fundamentos mais inerentes da XLabs Security se baseia na mitiga\u00e7\u00e3o, atenua\u00e7\u00e3o e preven\u00e7\u00e3o a ataques que possam estar ocorrendo sob as aplica\u00e7\u00f5es protegidas pelo nosso <em>Web Application Firewall<\/em> (WAF).<br>Dito isso, dia a dia, nossos especialistas aplicam seus conhecimentos na an\u00e1lise dos ataques incidentes em nossos servi\u00e7os, buscando identificar padr\u00f5es de comportamento de hackers que possam ser previstos e, principalmente, antecipados.<\/p>\n\n\n\n<p>O bom entendimento de como cada ciberataque afeta a nossa infraestrutura, permite que nossos desenvolvedores consigam entend\u00ea-los e implementar solu\u00e7\u00f5es mais eficazes e assertivas no que se refere a mitiga\u00e7\u00e3o desses ataques.<br>Neste artigo, vamos descrever como conseguimos limitar a progress\u00e3o de ciberataques atrav\u00e9s dos nossos WAFs, aplicando conceitos de sistemas distribu\u00eddos e mensageria por meio do Apache Kafka.<\/p>\n\n\n\n<p>Ent\u00e3o, busque seu caf\u00e9, se ajeite na cadeira e aproveite essa leitura que cont\u00e9m um estudo de caso muito interessante na \u00e1rea de ciberseguran\u00e7a!<\/p>\n\n\n\n<p><\/p>\n\n\n\n<h2>A prolifera\u00e7\u00e3o de ciberataques nos WAFs<\/h2>\n\n\n\n<p>Antes de mais nada, vamos tentar entender como funciona a infraestrutura de WAF da XLabs. Nosso WAF \u00e9 composto por diversas m\u00e1quinas distribu\u00eddas horizontalmente ao redor do globo, dispostas na Am\u00e9rica do Sul, Am\u00e9rica do Norte, Europa, \u00c1sia e Oceania. Cada uma dessas m\u00e1quinas \u00e9 um WAF independente, que recebe requisi\u00e7\u00f5es HTTP\/HTTPS direcionadas \u00e0s aplica\u00e7\u00f5es WEB de clientes, verificando se n\u00e3o s\u00e3o requisi\u00e7\u00f5es maliciosas antes de direcion\u00e1-las ,de fato, ao destino final. Legal n\u00e9?<\/p>\n\n\n\n<p>Nossos WAFs recebem requisi\u00e7\u00f5es diretamente da nossa zona especial, que distribui as requisi\u00e7\u00f5es de acordo com a origem das mesmas, direcionando-as sempre para o WAF geograficamente mais pr\u00f3ximo. Assim mantemos o melhor desempenho poss\u00edvel durante o processo de entrega de conte\u00fado WEB aos usu\u00e1rios de nossos clientes.<\/p>\n\n\n\n<p>Quando recebida, a requisi\u00e7\u00e3o \u00e9 analisada pelo nosso sistema de intelig\u00eancia WebIPS (Web Intrusion Prevention System) presente em cada WAF. O WebIPS ent\u00e3o verifica se n\u00e3o h\u00e1 presente na requisi\u00e7\u00e3o nenhuma tentativa real de explora\u00e7\u00e3o de vulnerabilidade. Sempre que o WebIPS classifica a requisi\u00e7\u00e3o recebida com criticidade alarmante, o IP de origem \u00e9 adicionado em blacklist e o WAF para de respond\u00ea-lo.<\/p>\n\n\n\n<p>Na Figura abaixo conseguimos ver um exemplo de como isso ocorre na pr\u00e1tica. Inicialmente o IP fict\u00edcio 111.111.111.111 efetua um ataque que incide sobre o WAF 1. O WebIPS presente no WAF verifica que \u00e9 um ataque real e bloqueia o IP de origem imediatamente. Nesse momento, requisi\u00e7\u00f5es posteriores param de ser respondidas\/recebidas pelo WAF 1. Na figura abaixo vemos uma seta na cor vermelha representando uma requisi\u00e7\u00e3o bloqueada.<\/p>\n\n\n\n<p class=\"has-text-align-center\"><img decoding=\"async\" width=\"782\" height=\"304\" class=\"wp-image-1849\" style=\"width: px;\" src=\"https:\/\/www.xlabs.com.br\/blog\/wp-content\/uploads\/2022\/01\/pic1.png\" alt=\"\"><\/p>\n\n\n\n<p>Uma vez que, cada adi\u00e7\u00e3o a blacklist \u00e9 particular de cada WAF, podemos ent\u00e3o observar um problema aqui, certo? Um IP que \u00e9 bloqueado por um \u00fanico WAF por estar efetuando ataques, ainda estar\u00e1 livre para performar outros tipos de ataques nos outros WAFs. Esse comportamento permite que hackers aprimorem seus conhecimentos sobre a infraestrutura da XLabs Security e, como a gente sabe, na \u00e1rea da Seguran\u00e7a da Informa\u00e7\u00e3o. Conhecimento \u00e9 poder.<\/p>\n\n\n\n<p>Al\u00e9m do problema relacionado com diversos tipos de ataques sendo reproduzidos atrav\u00e9s dos WAFs, a redund\u00e2ncia de trabalho exercido no bloqueio do mesmo IP \u00e9 um problema. Isso tende a gerar um desperd\u00edcio de recursos computacionais que poderiam ser destinados a outras tarefas que sen\u00e3o na mitiga\u00e7\u00e3o de um IP malicioso reincidente na nossa rede.<\/p>\n\n\n\n<p>Na figura abaixo, ilustramos esse problema na pr\u00e1tica. Vamos supor que o mesmo IP 111.111.111.111 j\u00e1 est\u00e1 bloqueado no WAF 1, por ter efetuado o ataque do tipo A. Nesse momento, ele ainda est\u00e1 livre para realizar ataques do tipo B e C em outros WAFs da mesma regi\u00e3o. S\u00f3 ap\u00f3s os WebIPS dos WAFs 2 e 3 agirem \u00e9 que o IP ser\u00e1 devidamente bloqueado.<\/p>\n\n\n\n<p class=\"has-text-align-center\"><img decoding=\"async\" width=\"713\" height=\"784\" class=\"wp-image-1850\" style=\"width: px;\" src=\"https:\/\/www.xlabs.com.br\/blog\/wp-content\/uploads\/2022\/01\/pic2.png\" alt=\"Ciberataques nos WAFs\"><\/p>\n\n\n\n<p>Recentemente, nossos analistas t\u00eam verificado que esse comportamento tem se reproduzido com frequ\u00eancia em nossos servi\u00e7os, ou seja, diversos hackers t\u00eam realizado ataques distintos em cada um dos nossos WAFs sucessivamente. Desta forma, eles acabam testando uma vasta gama de ataques na tentativa de conseguir um bypass. Apesar das tentativas em conseguir bypass costumeiramente falhem, este \u00e9 um comportamento que queremos evitar.<\/p>\n\n\n\n<p>Neste contexto, estudamos formas de aprimorar a seguran\u00e7a de nossos servi\u00e7os, fazendo com que os bloqueios de IPs maliciosos ocorram de forma lateral entre os WAFs, automaticamente. A alternativa implementada se baseia na aplica\u00e7\u00e3o do Apache Kafka como um centralizador de IPs maliciosos, distribuindo entre os WAFs os endere\u00e7os que devem ser adicionados em blacklist. Antes de vermos como isso ocorre, vamos falar um pouco do Kafka.<\/p>\n\n\n\n<p><\/p>\n\n<!--HubSpot Call-to-Action Code --><span class=\"hs-cta-wrapper\" id=\"hs-cta-wrapper-edf4dcb3-49a2-4903-8062-605d19c3dbae\"><span class=\"hs-cta-node hs-cta-edf4dcb3-49a2-4903-8062-605d19c3dbae\" id=\"hs-cta-edf4dcb3-49a2-4903-8062-605d19c3dbae\"><!--[if lte IE 8]><div id=\"hs-cta-ie-element\"><\/div><![endif]--><a href=\"https:\/\/cta-redirect.hubspot.com\/cta\/redirect\/6339257\/edf4dcb3-49a2-4903-8062-605d19c3dbae\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" class=\"hs-cta-img\" id=\"hs-cta-img-edf4dcb3-49a2-4903-8062-605d19c3dbae\" style=\"border-width:0px;\" height=\"268\" width=\"1000\" src=\"https:\/\/no-cache.hubspot.com\/cta\/default\/6339257\/edf4dcb3-49a2-4903-8062-605d19c3dbae.png\"  alt=\"Baixe agora o Guia definitivo do WAF da XLabs\"\/><\/a><\/span><script charset=\"utf-8\" src=\"https:\/\/js.hscta.net\/cta\/current.js\"><\/script><script type=\"text\/javascript\"> hbspt.cta.load(6339257, 'edf4dcb3-49a2-4903-8062-605d19c3dbae', {\"useNewLoader\":\"true\",\"region\":\"na1\"}); <\/script><\/span><!-- end HubSpot Call-to-Action Code -->\n\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n\n\n\n<h2>O Apache Kafka<\/h2>\n\n\n\n<p>Atualmente, uma das formas mais comuns de se distribuir dados atrav\u00e9s da rede com alto desempenho \u00e9 com o Apache Kafka. O Kafka \u00e9 um sistema distribu\u00eddo de streaming e mensageria comumente aplicado em pipeline de dados e an\u00e1lise de streams, tamb\u00e9m sendo muito \u00fatil em agrega\u00e7\u00e3o de logs e processamento de eventos.<\/p>\n\n\n\n<p>O Kafka segue um modelo publish\/subscribe de produtores e consumidores. Neste modelo, produtores podem publicar mensagens em entidades denominadas t\u00f3picos, e consumidores que por sua vez, se inscrevem nestes mesmos t\u00f3picos para de fato consumi-las.<\/p>\n\n\n\n<p>Um cluster Kafka \u00e9 constitu\u00eddo por um ou mais brokers, onde cada broker \u00e9 uma inst\u00e2ncia individual que opera os servi\u00e7os do Kafka. Os brokers s\u00e3o os principais respons\u00e1veis pelo armazenamento nos t\u00f3picos, bem como das mensagens que ser\u00e3o armazenadas particularmente em cada t\u00f3pico.<\/p>\n\n\n\n<p>Ainda, cada t\u00f3pico pode ser constitu\u00eddo por uma ou mais parti\u00e7\u00f5es, sendo essas parti\u00e7\u00f5es distribu\u00eddas atrav\u00e9s dos brokers para agregar paralelismo e distribuir as cargas de armazenamento.<\/p>\n\n\n\n<p class=\"has-text-align-center\"><img decoding=\"async\" width=\"1296\" height=\"481\" class=\"wp-image-1851\" style=\"width: px;\" src=\"https:\/\/www.xlabs.com.br\/blog\/wp-content\/uploads\/2022\/01\/pic3.png\" alt=\"Apache Kafka e Distribui\u00e7\u00e3o Brokers\"><\/p>\n\n\n\n<p>Quando uma mensagem \u00e9 adicionada a um t\u00f3pico, todos os consumidores que est\u00e3o inscritos no t\u00f3pico recebem a mensagem automaticamente. O consumo, por sua vez, ocorre sequencialmente, ou seja, as mensagens s\u00e3o consumidas uma por uma, na ordem exata em que s\u00e3o recebidas em cada t\u00f3pico.<\/p>\n\n\n\n<p>Em linhas gerais, a especialidade do Kafka \u00e9 transportar dados em tempo real com alto desempenho, sendo extremamente \u00fatil em contextos onde os usu\u00e1rios necessitam distribuir dados atrav\u00e9s de diversas aplica\u00e7\u00f5es com desempenho satisfat\u00f3rio.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<h2>O Kafka e a distribui\u00e7\u00e3o de IPs maliciosos<\/h2>\n\n\n\n<p>Sendo o Kafka uma alternativa promissora, atuando na distribui\u00e7\u00e3o de dados, decidimos testar na pr\u00e1tica uma aplica\u00e7\u00e3o do Kafka na distribui\u00e7\u00e3o de IPs maliciosos entre os WAFs. Vamos tentar entender como isso seria exercido?<\/p>\n\n\n\n<p>Inicialmente, decidimos que cada WAF deve ser capaz de compartilhar IPs que est\u00e3o sendo adicionados em sua blacklist. Desta forma, sempre que houver um compartilhamento de IP, todos os WAFs da nossa rede tamb\u00e9m devem receber este mesmo endere\u00e7o e adicion\u00e1-lo em blacklist.<\/p>\n\n\n\n<p>Assim, antes que o hacker tente distribuir ataques em outros WAFs, ele j\u00e1 estar\u00e1 presente em todas as blacklists. Esse comportamento coletivo dos WAFs n\u00e3o gera desperd\u00edcio de recurso computacional, e, ainda, limita drasticamente o raio de a\u00e7\u00e3o do hacker em nossos servi\u00e7os, coibindo futuras a\u00e7\u00f5es que possam vir a serem exercidas.<\/p>\n\n\n\n<p>Esse compartilhamento de IP, no contexto do Kafka, obviamente deve ser a n\u00edvel de mensagem. Desta maneira, antes de mais nada, criamos brokers do Kafka em nossa rede interna para que toda a infraestrutura do Kafka estivesse operacional para uso. Desta maneira, o conte\u00fado das mensagens enviadas por cada WAF \u00e9 um IP identificado pelo seu WebIPS como malicioso. Com os servi\u00e7os do Kafka operantes, inicializamos um t\u00f3pico que armazenar\u00e1 os IPs.<\/p>\n\n\n\n<p>Para realizar tanto a produ\u00e7\u00e3o quanto o consumo das mensagens, cada WAF apresenta um produtor e um consumidor executando sob seus servi\u00e7os.<\/p>\n\n\n\n<p>Sempre que o WebIPS identifica um IP como malicioso, o WAF aciona um produtor que envia esse IP diretamente ao t\u00f3pico. Uma vez que a mensagem est\u00e1 persistida no t\u00f3pico, cada consumidor presente nos WAFs coleta a mensagem, e imediatamente realiza o bloqueio do IP armazenado na mesma. Assim, todos os WAFs que consomem mensagens direcionadas ao t\u00f3pico adicionam o mesmo IP em suas respectivas blacklists.<\/p>\n\n\n\n<p>Na figura abaixo, ilustramos bem como isso ocorre na pr\u00e1tica. Observamos que o WAF 1 percebe um ataque do IP 111.111.111.111. O WebIPS do WAF 1 classifica o ataque como real e o pr\u00f3prio WAF 1 adiciona o IP respons\u00e1vel pelo ataque em blacklist.<\/p>\n\n\n\n<p>Imediatamente, o produtor presente no WAF 1 transmite uma mensagem ao t\u00f3pico no cluster Kafka contendo o IP malicioso como conte\u00fado. Ap\u00f3s isso, os consumidores presentes nos WAFs 2 e 3 recebem essa mensagem e tamb\u00e9m adicionam o mesmo IP que atacou o WAF 1 em blacklist. Ap\u00f3s isso, o endere\u00e7o 111.111.111.111 j\u00e1 n\u00e3o pode performar mais nenhum tipo de ataque nos outros WAFs, tendo todo seu raio de a\u00e7\u00e3o limitado a partir desse momento.<\/p>\n\n\n\n<p class=\"has-text-align-center\"><img decoding=\"async\" width=\"905\" height=\"558\" class=\"wp-image-1852\" style=\"width: px;\" src=\"https:\/\/www.xlabs.com.br\/blog\/wp-content\/uploads\/2022\/01\/pic4.png\" alt=\"Kafka e a distribui\u00e7\u00e3o de IPs maliciosos - WAF\"><\/p>\n\n\n\n<p><\/p>\n\n\n\n<h2>Considera\u00e7\u00f5es<\/h2>\n\n\n\n<p>Atualmente, um dos requisitos fundamentais de empresas que prestam servi\u00e7os relacionados a ciberseguran\u00e7a \u00e9 a de entender e antecipar o comportamento de hackers, visando a melhor prote\u00e7\u00e3o de seus clientes. Na XLabs n\u00e3o seria diferente. Dito isso, a capacidade de desenvolver solu\u00e7\u00f5es cada vez mais precisas e \u00e1geis no que se refere a conter a a\u00e7\u00e3o de hackers nos nossos servi\u00e7os, ocorre intrinsecamente.<\/p>\n\n\n\n<p>Neste artigo apresentamos como uma integra\u00e7\u00e3o do Apache Kafka a nossa infraestrutura foi capaz de limitar drasticamente a quantidade de ataques hackers nos WAFs por meio da distribui\u00e7\u00e3o de IPs maliciosos entre eles. Com a aplica\u00e7\u00e3o desta ferramenta, conseguimos efetuar bloqueios laterais ao qual impede que diversos tipos de ataques sejam efetuados sucessivamente em cada inst\u00e2ncia de WAF.<\/p>\n\n\n\n<p>Ao coibir a a\u00e7\u00e3o de hackers, al\u00e9m de conseguirmos limitar o conhecimento dos atacantes, tamb\u00e9m aperfei\u00e7oamos ainda mais a prote\u00e7\u00e3o exercida a servi\u00e7os WEB de nossos clientes, sendo essa a nossa principal prioridade.<\/p>\n\n\n\n<p>&nbsp;<\/p>\n<!--HubSpot Call-to-Action Code TRIAL --><span class=\"hs-cta-wrapper\" id=\"hs-cta-wrapper-27bf5124-210a-431f-9a06-2138d2eba4f6\"><span class=\"hs-cta-node hs-cta-27bf5124-210a-431f-9a06-2138d2eba4f6\" id=\"hs-cta-27bf5124-210a-431f-9a06-2138d2eba4f6\"><!--[if lte IE 8]><div id=\"hs-cta-ie-element\"><\/div><![endif]--><a href=\"https:\/\/cta-redirect.hubspot.com\/cta\/redirect\/6339257\/27bf5124-210a-431f-9a06-2138d2eba4f6\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" class=\"hs-cta-img\" id=\"hs-cta-img-27bf5124-210a-431f-9a06-2138d2eba4f6\" style=\"border-width:0px;\" src=\"https:\/\/no-cache.hubspot.com\/cta\/default\/6339257\/27bf5124-210a-431f-9a06-2138d2eba4f6.png\" alt=\"Experimente: 15 dias de WAF gratuito\"><\/a><\/span><script charset=\"utf-8\" src=\"https:\/\/js.hscta.net\/cta\/current.js\"><\/script><script type=\"text\/javascript\"> hbspt.cta.load(6339257, '27bf5124-210a-431f-9a06-2138d2eba4f6', {\"useNewLoader\":\"true\",\"region\":\"na1\"}); <\/script><\/span><!-- end HubSpot Call-to-Action Code -->\n","protected":false},"excerpt":{"rendered":"<p>Ao longo do ano de 2021, decidimos come\u00e7ar a expor algumas das evolu\u00e7\u00f5es em nossa plataforma de CDN e WAF, como essas evolu\u00e7\u00f5es sempre ficavam \u201cescondidas\u201d e em \u201csegredo\u201d, devido a quest\u00f5es estrat\u00e9gicas, n\u00f3s pouco publicamos sobre as melhorias da plataforma, nos meses que antecederam o final do ano de 2021 decidimos expor algumas das [&hellip;]<\/p>\n","protected":false},"author":11,"featured_media":1846,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":[],"categories":[4],"tags":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v20.0 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Entre as entranhas do nosso WAF - Parte 1 &ndash; XLabs Security Blog<\/title>\n<meta name=\"description\" content=\"A integra\u00e7\u00e3o do Apache Kafka a nossa infraestrutura \u00e9 capaz de limitar drasticamente ataques hackers nos WAFs por meio da distribui\u00e7\u00e3o de IPs maliciosos.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.xlabs.com.br\/blog\/entre-as-entranhas-do-nosso-waf-parte-1\/\" \/>\n<meta property=\"og:locale\" content=\"pt_BR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Entre as entranhas do nosso WAF - Parte 1 &ndash; XLabs Security Blog\" \/>\n<meta property=\"og:description\" content=\"A integra\u00e7\u00e3o do Apache Kafka a nossa infraestrutura \u00e9 capaz de limitar drasticamente ataques hackers nos WAFs por meio da distribui\u00e7\u00e3o de IPs maliciosos.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.xlabs.com.br\/blog\/entre-as-entranhas-do-nosso-waf-parte-1\/\" \/>\n<meta property=\"og:site_name\" content=\"XLabs Security Blog\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/xlabs\" \/>\n<meta property=\"article:published_time\" content=\"2022-01-12T15:29:21+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2022-01-17T17:49:40+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.xlabs.com.br\/blog\/wp-content\/uploads\/2022\/01\/xLabs-blogpost-Entre-as-entranhas-do-nosso-WAF_2.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1000\" \/>\n\t<meta property=\"og:image:height\" content=\"488\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Evelyn Rocha\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:image\" content=\"https:\/\/www.xlabs.com.br\/blog\/wp-content\/uploads\/2022\/01\/xLabs-blogpost-Entre-as-entranhas-do-nosso-WAF_2.png\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"Evelyn Rocha\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. tempo de leitura\" \/>\n\t<meta name=\"twitter:data2\" content=\"10 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.xlabs.com.br\/blog\/entre-as-entranhas-do-nosso-waf-parte-1\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.xlabs.com.br\/blog\/entre-as-entranhas-do-nosso-waf-parte-1\/\"},\"author\":{\"name\":\"Evelyn Rocha\",\"@id\":\"https:\/\/www.xlabs.com.br\/blog\/#\/schema\/person\/186fa2419710709368bfa220767edb4b\"},\"headline\":\"Entre as entranhas do nosso WAF &#8211; Parte 1\",\"datePublished\":\"2022-01-12T15:29:21+00:00\",\"dateModified\":\"2022-01-17T17:49:40+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.xlabs.com.br\/blog\/entre-as-entranhas-do-nosso-waf-parte-1\/\"},\"wordCount\":2087,\"publisher\":{\"@id\":\"https:\/\/www.xlabs.com.br\/blog\/#organization\"},\"articleSection\":[\"Artigos\"],\"inLanguage\":\"pt-BR\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.xlabs.com.br\/blog\/entre-as-entranhas-do-nosso-waf-parte-1\/\",\"url\":\"https:\/\/www.xlabs.com.br\/blog\/entre-as-entranhas-do-nosso-waf-parte-1\/\",\"name\":\"Entre as entranhas do nosso WAF - Parte 1 &ndash; XLabs Security Blog\",\"isPartOf\":{\"@id\":\"https:\/\/www.xlabs.com.br\/blog\/#website\"},\"datePublished\":\"2022-01-12T15:29:21+00:00\",\"dateModified\":\"2022-01-17T17:49:40+00:00\",\"description\":\"A integra\u00e7\u00e3o do Apache Kafka a nossa infraestrutura \u00e9 capaz de limitar drasticamente ataques hackers nos WAFs por meio da distribui\u00e7\u00e3o de IPs maliciosos.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.xlabs.com.br\/blog\/entre-as-entranhas-do-nosso-waf-parte-1\/#breadcrumb\"},\"inLanguage\":\"pt-BR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.xlabs.com.br\/blog\/entre-as-entranhas-do-nosso-waf-parte-1\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.xlabs.com.br\/blog\/entre-as-entranhas-do-nosso-waf-parte-1\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"In\u00edcio\",\"item\":\"https:\/\/www.xlabs.com.br\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Entre as entranhas do nosso WAF &#8211; Parte 1\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.xlabs.com.br\/blog\/#website\",\"url\":\"https:\/\/www.xlabs.com.br\/blog\/\",\"name\":\"XLabs Security Blog\",\"description\":\"Seguran\u00e7a da Informa\u00e7\u00e3o\",\"publisher\":{\"@id\":\"https:\/\/www.xlabs.com.br\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.xlabs.com.br\/blog\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"pt-BR\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.xlabs.com.br\/blog\/#organization\",\"name\":\"XLabs Security\",\"url\":\"https:\/\/www.xlabs.com.br\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\/\/www.xlabs.com.br\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.xlabs.com.br\/blog\/wp-content\/uploads\/2020\/11\/Logotipo.png\",\"contentUrl\":\"https:\/\/www.xlabs.com.br\/blog\/wp-content\/uploads\/2020\/11\/Logotipo.png\",\"width\":478,\"height\":168,\"caption\":\"XLabs Security\"},\"image\":{\"@id\":\"https:\/\/www.xlabs.com.br\/blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.instagram.com\/xlabs.security\",\"https:\/\/www.linkedin.com\/company\/xlabs-security\/\",\"https:\/\/www.youtube.com\/channel\/UCPbGDmCQI7_UcAPmvVLi58g?view_as=subscriber\",\"https:\/\/www.facebook.com\/xlabs\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.xlabs.com.br\/blog\/#\/schema\/person\/186fa2419710709368bfa220767edb4b\",\"name\":\"Evelyn Rocha\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\/\/www.xlabs.com.br\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/fbfd8fc83a660edc367ca0dfbbb18e2e?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/fbfd8fc83a660edc367ca0dfbbb18e2e?s=96&d=mm&r=g\",\"caption\":\"Evelyn Rocha\"},\"sameAs\":[\"http:\/\/www.xlabs.com.br\"],\"url\":\"https:\/\/www.xlabs.com.br\/blog\/author\/evelyn-rocha\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Entre as entranhas do nosso WAF - Parte 1 &ndash; XLabs Security Blog","description":"A integra\u00e7\u00e3o do Apache Kafka a nossa infraestrutura \u00e9 capaz de limitar drasticamente ataques hackers nos WAFs por meio da distribui\u00e7\u00e3o de IPs maliciosos.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.xlabs.com.br\/blog\/entre-as-entranhas-do-nosso-waf-parte-1\/","og_locale":"pt_BR","og_type":"article","og_title":"Entre as entranhas do nosso WAF - Parte 1 &ndash; XLabs Security Blog","og_description":"A integra\u00e7\u00e3o do Apache Kafka a nossa infraestrutura \u00e9 capaz de limitar drasticamente ataques hackers nos WAFs por meio da distribui\u00e7\u00e3o de IPs maliciosos.","og_url":"https:\/\/www.xlabs.com.br\/blog\/entre-as-entranhas-do-nosso-waf-parte-1\/","og_site_name":"XLabs Security Blog","article_publisher":"https:\/\/www.facebook.com\/xlabs","article_published_time":"2022-01-12T15:29:21+00:00","article_modified_time":"2022-01-17T17:49:40+00:00","og_image":[{"width":1000,"height":488,"url":"https:\/\/www.xlabs.com.br\/blog\/wp-content\/uploads\/2022\/01\/xLabs-blogpost-Entre-as-entranhas-do-nosso-WAF_2.png","type":"image\/png"}],"author":"Evelyn Rocha","twitter_card":"summary_large_image","twitter_image":"https:\/\/www.xlabs.com.br\/blog\/wp-content\/uploads\/2022\/01\/xLabs-blogpost-Entre-as-entranhas-do-nosso-WAF_2.png","twitter_misc":{"Escrito por":"Evelyn Rocha","Est. tempo de leitura":"10 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.xlabs.com.br\/blog\/entre-as-entranhas-do-nosso-waf-parte-1\/#article","isPartOf":{"@id":"https:\/\/www.xlabs.com.br\/blog\/entre-as-entranhas-do-nosso-waf-parte-1\/"},"author":{"name":"Evelyn Rocha","@id":"https:\/\/www.xlabs.com.br\/blog\/#\/schema\/person\/186fa2419710709368bfa220767edb4b"},"headline":"Entre as entranhas do nosso WAF &#8211; Parte 1","datePublished":"2022-01-12T15:29:21+00:00","dateModified":"2022-01-17T17:49:40+00:00","mainEntityOfPage":{"@id":"https:\/\/www.xlabs.com.br\/blog\/entre-as-entranhas-do-nosso-waf-parte-1\/"},"wordCount":2087,"publisher":{"@id":"https:\/\/www.xlabs.com.br\/blog\/#organization"},"articleSection":["Artigos"],"inLanguage":"pt-BR"},{"@type":"WebPage","@id":"https:\/\/www.xlabs.com.br\/blog\/entre-as-entranhas-do-nosso-waf-parte-1\/","url":"https:\/\/www.xlabs.com.br\/blog\/entre-as-entranhas-do-nosso-waf-parte-1\/","name":"Entre as entranhas do nosso WAF - Parte 1 &ndash; XLabs Security Blog","isPartOf":{"@id":"https:\/\/www.xlabs.com.br\/blog\/#website"},"datePublished":"2022-01-12T15:29:21+00:00","dateModified":"2022-01-17T17:49:40+00:00","description":"A integra\u00e7\u00e3o do Apache Kafka a nossa infraestrutura \u00e9 capaz de limitar drasticamente ataques hackers nos WAFs por meio da distribui\u00e7\u00e3o de IPs maliciosos.","breadcrumb":{"@id":"https:\/\/www.xlabs.com.br\/blog\/entre-as-entranhas-do-nosso-waf-parte-1\/#breadcrumb"},"inLanguage":"pt-BR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.xlabs.com.br\/blog\/entre-as-entranhas-do-nosso-waf-parte-1\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.xlabs.com.br\/blog\/entre-as-entranhas-do-nosso-waf-parte-1\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"In\u00edcio","item":"https:\/\/www.xlabs.com.br\/blog\/"},{"@type":"ListItem","position":2,"name":"Entre as entranhas do nosso WAF &#8211; Parte 1"}]},{"@type":"WebSite","@id":"https:\/\/www.xlabs.com.br\/blog\/#website","url":"https:\/\/www.xlabs.com.br\/blog\/","name":"XLabs Security Blog","description":"Seguran\u00e7a da Informa\u00e7\u00e3o","publisher":{"@id":"https:\/\/www.xlabs.com.br\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.xlabs.com.br\/blog\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"pt-BR"},{"@type":"Organization","@id":"https:\/\/www.xlabs.com.br\/blog\/#organization","name":"XLabs Security","url":"https:\/\/www.xlabs.com.br\/blog\/","logo":{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/www.xlabs.com.br\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.xlabs.com.br\/blog\/wp-content\/uploads\/2020\/11\/Logotipo.png","contentUrl":"https:\/\/www.xlabs.com.br\/blog\/wp-content\/uploads\/2020\/11\/Logotipo.png","width":478,"height":168,"caption":"XLabs Security"},"image":{"@id":"https:\/\/www.xlabs.com.br\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.instagram.com\/xlabs.security","https:\/\/www.linkedin.com\/company\/xlabs-security\/","https:\/\/www.youtube.com\/channel\/UCPbGDmCQI7_UcAPmvVLi58g?view_as=subscriber","https:\/\/www.facebook.com\/xlabs"]},{"@type":"Person","@id":"https:\/\/www.xlabs.com.br\/blog\/#\/schema\/person\/186fa2419710709368bfa220767edb4b","name":"Evelyn Rocha","image":{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/www.xlabs.com.br\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/fbfd8fc83a660edc367ca0dfbbb18e2e?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/fbfd8fc83a660edc367ca0dfbbb18e2e?s=96&d=mm&r=g","caption":"Evelyn Rocha"},"sameAs":["http:\/\/www.xlabs.com.br"],"url":"https:\/\/www.xlabs.com.br\/blog\/author\/evelyn-rocha\/"}]}},"_links":{"self":[{"href":"https:\/\/www.xlabs.com.br\/blog\/wp-json\/wp\/v2\/posts\/1844"}],"collection":[{"href":"https:\/\/www.xlabs.com.br\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.xlabs.com.br\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.xlabs.com.br\/blog\/wp-json\/wp\/v2\/users\/11"}],"replies":[{"embeddable":true,"href":"https:\/\/www.xlabs.com.br\/blog\/wp-json\/wp\/v2\/comments?post=1844"}],"version-history":[{"count":7,"href":"https:\/\/www.xlabs.com.br\/blog\/wp-json\/wp\/v2\/posts\/1844\/revisions"}],"predecessor-version":[{"id":1857,"href":"https:\/\/www.xlabs.com.br\/blog\/wp-json\/wp\/v2\/posts\/1844\/revisions\/1857"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.xlabs.com.br\/blog\/wp-json\/wp\/v2\/media\/1846"}],"wp:attachment":[{"href":"https:\/\/www.xlabs.com.br\/blog\/wp-json\/wp\/v2\/media?parent=1844"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.xlabs.com.br\/blog\/wp-json\/wp\/v2\/categories?post=1844"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.xlabs.com.br\/blog\/wp-json\/wp\/v2\/tags?post=1844"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}