SQL Injection

SQL Injection ou injeção SQL é uma vulnerabilidade de segurança web que permite uma ameaça – no geral um criminoso cibernético – interferir nas consultas que um determinado sistema ou aplicação web realiza em seu banco de dados, possibilitando assim a ameaça visualizar dados que normalmente não são capazes de recuperar. Esses dados podem ser, por exemplo: dados de clientes, dados de usuários ou qualquer outro tipo de dados que esteja armazenado no banco de dados.

Dependendo da técnica utilizada de SQL injection a ameaça pode incluir, alterar ou até excluir dados do banco de dados ou comprometer o servidor em que se encontra o sistema/aplicação, causando danos e/ou a negação dos serviços providos pelo sistema/aplicativo impossibilitando que clientes realizar o acesso e consumam, por exemplo, algum produto ou serviço da organização.

Com relação às consequências e impactos, além dos mencionados anteriormente, um ataque do tipo SQL injection pode resultar em acesso não autorizado a dados confidenciais e/ou pessoais/pessoais sensíveis e até promover o vazamento desses dados na Internet, por exemplo. É importante ressaltar que ao longo do tempo, muitas violações, perdas e vazamentos de dados foram resultados de ataques de SQL injection, o que causou a muitas organizações danos à reputação e multas regulatórias.

Para evitar esse tipo de ataque, as equipes de segurança devem realizar o gerenciamento de vulnerabilidades para tratar dos pontos fracos e, em conjunto com os desenvolvedores de sistemas e aplicativos para web implementar consultas parametrizadas, também conhecidas como instruções preparadas em vez de concatenadas em strings da linguagem SQL.

XSS – CROSS SITE-SCRIPTING

XSS ou Cross Site-Scripting é um tipo de ataque que há exemplo do SQL injection, realiza uma injeção de dados, que no caso são scripts maliciosos em sítios, sistemas e aplicativos web. Esse tipo de ataque ocorre quando a ameaça usa um sistema ou aplicativo web para enviar um script (código de programação) malicioso, no formato em que o navegador de internet, fazendo com o usuário entenda que se trata do sistema ou aplicação verdadeiros.

No geral ataques do tipo XSS são destinados a desviar o usuário para uma página falsa, simulando a página verdadeira e assim possibilitando o criminoso cibernético roubar dados ou informações do usuário, tais como número do cartão de crédito, por exemplo, sem que ele perceba que está em um ambiente totalmente falso.

Os ataques XSS podem ocorrer de 2 maneiras: a primeira é quando os dados entram em um sistema/aplicativo web por meio de uma fonte não confiável e, a segunda é quando os dados são incluídos no conteúdo que é enviado ao usuário que por sua vez não percebe que está recebendo um conteúdo malicioso e mal-intencionado.

As equipes de segurança da informação e segurança cibernética, realizam constantemente análises de vulnerabilidades em seus sistemas e aplicações web, para verificar se eles estão ou não suscetíveis a ataques do tipo XSS, além de testes de intrusão voltados para sistemas e/ou aplicativos web.

Além dessas medidas, as equipes de segurança devem atuar em conjunto com as equipes de desenvolvimento, informando as falhas e solicitando as devidas correções e sempre que necessário recorrer às recomendações fornecidas pela entidade OWASP que veremos a seguir.

OWASP

OWASP é um acrônimo de Open Web Application Security Project ou Projeto Aberto de Segurança para Aplicações Web Abertas. Trata-se de uma entidade sem fins lucrativos formada por diversas organizações privadas e governamentais, entidades relacionadas a segurança cibernética, desenvolvedores, pesquisadores, especialistas em segurança cibernética e demais entusiastas no assunto desenvolvimento de sistemas para a Internet e segurança cibernética, que tem como principal objetivo prover: (a) informações relacionadas ao desenvolvimento seguro de sistemas e aplicações para a Internet; (b) servir como um guia para o desenvolvimento seguro de sistemas e aplicações para a Internet; © prover ferramentas e recursos destinados à segurança cibernética e a segurança de sistemas e aplicações web; (d) promover a comunicação e o debate de novas tecnologias; (e) promover as melhores práticas no desenvolvimento de sistemas e aplicativos web de forma segura; (f) promover a informação e por fim (g) promover programas educacionais de treinamento e conscientização sobre o desenvolvimento de sistemas e aplicativos voltados para a Internet bem como a segurança e proteção deles.

Uma das contribuições mais importantes da fundação OWASP é o projeto Owasp Top 10 que tem como objetivo servir como um documento de referência que descreve as 10 maiores preocupações e ameaças de segurança mais críticas para sistemas e aplicativos voltados para a Internet.

Por fim, outra contribuição muito útil para as equipes de segurança cibernética e desenvolvedores de sistemas web é a ferramenta OWASP-ZAP. Essa ferramenta totalmente open source permite às equipes de segurança cibernética realizar a identificação de vulnerabilidades em sistemas e aplicativos web, bem como orientar quais medidas necessárias à correção dessas vulnerabilidades, além de possibilitar testes de intrusão nesses mesmos sistemas e aplicativos web.

WAF – Web Application Firewall

O WAF (Web Application Firewall) é um novo tipo de firewall desenvolvido para combater ameaças que ultrapassam as capacidades dos firewalls tradicionais (MACHADO, 2014). Esse dispositivo cria uma barreira entre o serviço baseado na web e o restante da Internet, protegendo a aplicação de ações criminosas como manipulação de conteúdo exibido, injeções indevidas em banco de dados SQL e outros tipos de ciberataques (STALLINGS; BROWN, 2017).

A atuação do WAF garante a proteção adequada das redes de diferentes tipos de negócios, auxiliando as equipes de segurança da informação e segurança cibernética no combate às principais ameaças e na continuidade das operações da empresa (SÊMOLA, 2014). O WAF trabalha para impedir a exposição não autorizada de dados em um site ou aplicativo baseado na web (HARRIS, 2004). Nesse contexto, o WAF monitora, filtra e bloqueia automaticamente o tráfego de dados potencialmente maliciosos (TANENBAUM, 2011).

Existem diferentes tipos de WAFs, cada um com suas vantagens e desvantagens (KIM; SOLOMON, 2014). O WAF de Rede, geralmente baseado em hardware, é mais rápido e tem gerenciamento simplificado, mas apresenta custos mais altos de implementação (FREIRE, 2004). O WAF de Host, por outro lado, oferece maior possibilidade de personalização a um custo mais baixo, porém seu gerenciamento pode ser desafiador (LYRA, 2008). Já o WAF na Nuvem, administrado pelos provedores do serviço, é de fácil implantação e oferece uma opção econômica e escalável (FONTES, 2008).

Independentemente do tipo de WAF implementado, é recomendável que a equipe de segurança participe de treinamentos de administração (HARRIS, 2004). Além disso, é importante envolver a equipe de desenvolvimento na tarefa, já que um WAF configurado incorretamente pode afetar negativamente a performance e disponibilidade da aplicação protegida (STALLINGS; BROWN, 2017).