Os testes de invasão ou penetração têm como objetivo descobrir e explorar falhas de segurança, permitindo assim que as organizações corrijam seus pontos de vulnerabilidade.
Em um teste de invasão faz-se uso de todos os artifícios que um hacker geralmente usaria. Em outras palavras, o que se tem são simulações controladas de ataques reais, objetivando a avaliação da segurança da organização e relatando as deficiências tanto da estrutura física quanto lógica.
O teste pode ser feito por alguém de dentro ou fora da empresa. Em ambos os casos, é preciso conhecimento e experiência. Mas, se for realizado por alguém de dentro, é fundamental ainda que esse funcionário esteja separado organizacionalmente do ambiente a ser testado. Quer dizer, não é interessante colocar o gerente de redes para testar a própria rede.
Antes da realização do teste de invasão, é importante a assinatura de um contrato, que protegerá tanto a organização que contratou o serviço quanto a empresa contratada para executá-lo.
Assinado o contrato, inicia-se a fase de reconhecimento, quando o atacante começa coletando o máximo de informações possíveis sobre seu alvo e, depois, parte para a coleta de informações mais específicas como dados sobre redes e sistemas de informação.
A próxima fase é a de escaneamento, que corresponde à exploração e varredura das redes e sistemas de informação à procura de vulnerabilidades.
Após análise das vulnerabilidades e das brechas de segurança encontradas, parte-se para a fase de ataque, quando as falhas de segurança existentes são exploradas para a obtenção e manutenção do acesso. Ao final dessa fase, limpa-se os rastros e realiza-se uma avaliação técnica com base nos resultados do teste.
O último passo é a elaboração de um relatório que explique os riscos, as prioridades, as futuras consequências e também as recomendações para que as falhas sejam corrigidas.
O teste de invasão deve ser adequado ao tamanho e complexidade da organização, podendo incluir engenharia social, ataques DOS (Denial Of Service), exploração de vulnerabilidades já conhecidas, configurações inadequadas, controles de acesso, aplicativos personalizados, aplicativos para web, conexões sem fio etc. Devem ser definidos o período e o escopo do teste, bem como as partes que serão afetadas.
Aconselha-se realizar um teste por ano ou toda vez que acontecer uma significativa mudança de infraestrutura ou nos aplicativos. O ideal seria que toda modificação ou atualização fosse submetida a um teste de invasão.
Às vezes, para se ganhar tempo, a organização fornece à empresa que realizará o teste um mapa completo da sua estrutura e dos seus sistemas de tecnologia da informação, inclusive as vulnerabilidades. E isso é justificável, uma vez que os hackers geralmente gastam 90% do seu tempo em pesquisa e apenas 10% em ataques.
É importante que os testes sejam realizados de acordo com os processos críticos da organização, incluindo aí o plano de continuidade, sendo que os testes capazes de causar danos devem ser executados em períodos de baixa atividade. É importante também que os testes não violem direitos individuais e a privacidade.
Resultados só podem ser entregues ao término do teste de invasão. O relatório deve conter também toda metodologia e passos executados, onde se conseguiu acesso e onde não. Após a correção das falhas, o teste de invasão precisa ser feito novamente.
Um teste de invasão bem feito precisa realizar todos os testes possíveis, sempre levando em consideração o ambiente organizacional, e o que se deve esperar é um grande número de falhas encontradas. Entretanto, se não forem detectados quaisquer problemas, é quase certo que o serviço prestado não foi de qualidade, pois segurança perfeita não existe. Também não há muita profissionalização nesse setor, o que faz com que testes de invasão de empresas diferentes acabem tendo resultados diferentes. Dessa forma, deve-se procurar uma empresa qualificada.
Um teste de invasão geralmente envolve análise de rede e de portas, identificação de sistemas, vulnerabilidades em sistemas sem fios, verificação de serviços (como site da empresa, correio interno, servidor de nomes e documentos visíveis), determinação de vulnerabilidades e identificação dos exploits, verificação manual das vulnerabilidades, verificação das aplicações, verificação de firewall, revisão das políticas de segurança, verificação de sistemas de detecção de intrusos, revisão de sistemas de telefonia, obtenção de informação sobre a empresa, engenharia social, verificação de sistemas considerados confiáveis, análise de senhas, revisão da política de privacidade, análise de cookies e bugs no site, revisão de arquivos de log e até mesmo análise do lixo corporativo. Pode ser feito de fora ou de dentro do alvo e deve colocar à prova a segurança interna e a externa.
As informações obtidas num teste de invasão são tão devastadoras que, se caíssem em mãos erradas, poderiam trazer sérios riscos à organização. Daí a importância da credibilidade da empresa contratada para fazer esse serviço. Ao final do teste, a empresa que executou o serviço, não deve ficar com nenhuma cópia do relatório.
Embora a maioria das organizações acredite estar protegida, isso geralmente não passa de uma ilusão. A única forma de se conhecer a situação real de segurança, é por meio de um teste de invasão, que estão sendo cada vez mais utilizados, quase sempre por organizações que já apresentam patamares de segurança elevados. Uma vez com o relatório, a organização deve providenciar a correção das falhas de segurança.
Que fique claro que um teste de invasão não substitui a análise/avaliação de riscos. E a recíproca também é verdadeira.
MACHADO, Marcel Jacques. Segurança da Informação: uma Visão Geral sobre as Soluções Adotadas em Ambientes Organizacionais. Curitiba: UFPR, 2012. Trabalho de Graduação – Bacharelado em Ciência da Computação, Universidade Federal do Paraná, Curitiba, 2012.