Um firewall de aplicação é um tipo de firewall que controla o tráfego de, para ou por uma aplicação ou serviço.
Os firewalls de aplicação, ou firewalls de camada de aplicação, utilizam uma série de políticas configuradas para determinar se deve bloquear ou permitir comunicações de ou para uma aplicação.
Firewalls tradicionais controlam o fluxo de dados de e para a CPU, examinando cada pacote conforme ele passa. Um firewall de aplicativo vai além ao controlar a execução de arquivos ou códigos por aplicativos específicos. Dessa forma, mesmo que um intruso consiga entrar em uma rede ou servidor, ele não poderá executar código malicioso.
Os firewalls de aplicação podem ser ativos ou passivos.
Ativo – Firewalls de aplicativos ativos inspecionam ativamente todas as solicitações recebidas, incluindo a mensagem real que está sendo trocada, em relação a vulnerabilidades conhecidas, como injeções de SQL , adulteração de parâmetros e cookies e scripts entre sites . Somente solicitações consideradas “limpas” são passadas para o aplicativo.
Passivo — Os firewalls de aplicação passivos agem de maneira semelhante a um sistema de detecção de intrusões (IDS), pois também inspecionam todas as solicitações de entrada em relação a vulnerabilidades conhecidas, mas não rejeitam ou negam ativamente essas solicitações se um ataque em potencial for descoberto.
Os firewalls de aplicativos geralmente podem ser atualizados remotamente, o que lhes permite evitar vulnerabilidades recém-descobertas. Eles geralmente são mais atualizados do que códigos específicos focados em segurança incluídos em aplicativos, devido aos ciclos mais longos de desenvolvimento e teste necessários para incluir esse código em aplicativos.
Hoje em dia, você verá mais comumente firewalls de aplicativos da web (WAFs) para filtrar, monitorar e bloquear tráfego HTTP/S de e para um aplicativo da web, especificamente.