# Teste de intrusão

O teste de intrusão (do inglês "Penetration Test" ou pentest"), também traduzido como "teste de penetração", é um método que avalia a segurança de um sistema de computador ou de uma rede, simulando um ataque de uma fonte maliciosa. O processo envolve uma análise nas atividades do sistema, que envolvem a busca de alguma vulnerabilidade em potencial que possa ser resultado de uma má configuração do sistema, falhas em hardwares/softwares desconhecidas, deficiência no sistema operacional ou técnicas contramedidas. Todas as análises submetidas pelos testes escolhidos são apresentadas no sistema, junto com uma avaliação do seu impacto e muitas vezes com uma proposta de resolução ou de uma solução técnica.

## Objetivo

Pode ser classificado como método de auditoria de segurança que o administrador de redes, analista de teste/tester ou até mesmo os pentester, que são profissionais especializados em realizar teste de intrusão, simulam ataques com o intuito de mensurar o impacto da varredura caso seja bem sucedido e seja descoberto falhas ou bug. Desta forma é possível descobrir o conjunto de vetores de ataques, vulnerabilidade de alto e baixo risco, identificar os que podem ser difíceis ou impossíveis de detectar, os impactos operacionais, testar a capacidade defensiva da rede e identificar a reação do sistema aos ataques.
Dentre vários motivos pra realizar um ataque a um software, se destaca as invasões por questões financeiras, pessoais, cometer fraudes, sabotagem ou espionagem.O invasor é uma pessoa com alto nível de conhecimento técnico, seus ataques são minuciosamente planejados, é importante que haja o estudo do comportamento do alvo, assim ira descobri uma brecha na segurança dando início ao seu objetivo depois de passar por várias etapas ou fases.
As etapas de estudo se dividem em:
* Coletar informações: toda e qualquer informação sobre a empresa a ser atacada é indispensável, como o ramo de atuação, se existem filiais ou empresas coligadas, endereços de e-mails, nomes dos principais cargos. Com esses dados é possível descobrir se a empresa utiliza VPN (Virtual Private Network) e coletar endereços dos servidores DNS (Domain Name Service).
* Mapeamento de rede: através do DNS é possível descobrir a topologia da rede, IP e a quantidade de computadores na rede interna.
* Enumeração de serviços: depois de conhecer as maquinas da rede, essa etapa consiste em descobrir os serviços que estão sendo executados em uma determinada porta utilizando um programa que monitora atrás das conexões. Na porta 80 por exemplo, a conexão é com o servidor web.
* Busca de vulnerabilidades: fase em que o software é examinado com intuito de encontrar alguma vulnerabilidade e se é explorável.
* Exploração das vulnerabilidades: após a busca das vulnerabilidades, é realizado a invasão ao software, podendo interromper o serviço, atacar o SQL ou dar início à execução de um outro programa que recebe comandos remotamente.
* Implantação de backdoors e rootkits: o invasor deixa instalado um programa que facilita o seu retorno ao software. Esses tipos de programas são chamados de backdoors (“portas dos fundos”) e rootkits (programas que se mantêm do núcleo do sistema operacional, difíceis de serem localizados).
* Eliminação de vestígios: as invasões são registradas através do histórico (logs) ou de arquivos temporários. Para apagar os rastros o invasor terá que apagar esses registros, podendo tornar impossível ser identificado.

## Testes caixa branca vs. caixa preta

Os testes de intrusão podem ser realizados de várias maneiras. A diferença mais comum é a quantidade de detalhes da implementação do sistema a ser testado, que estão disponíveis para os testadores.
O teste da caixa preta assume que não existe qualquer conhecimento prévio da infraestrutura a ser testada. Sendo que o primeiro teste deve determinar a localização e extensão dos sistemas antes de iniciar a análise.
O teste da caixa branca assume que o testador possui total conhecimento da infraestrutura a ser testada, incluindo o diagrama da rede, endereçamento IP e qualquer informação complementar.
Teste de caixa preta simulam um ataque de alguém que esteja familiarizado com o sistema, enquanto um teste de caixa branca simula o que pode acontecer durante o expediente de um trabalho ou depois de um "vazamento" de informações, em que o invasor tenha acesso ao código fonte, esquemas de rede e, possivelmente, até mesmo de algumas senhas.

## Sua aplicação

Os serviços oferecidos por empresas contratadas para usar o teste de intrusão, podem ser uma simples varredura na organização dos endereços IP, abrir/fechar portas ou fazer uma auditoria completa no escopo da rede em busca de vulnerabilidade. Segundo a página “Software Livre Brasil”, há vinte e um passos para se realizar teste de segurança:
* Análise da rede;
* Análise de portas;
* Identificação de sistemas;
* Provas de debilidades em sistemas sem fios (dependendo segundo o caso);
* Verificação de serviços (site, correio, servidor de nomes, documentos visíveis, vírus e trojans);
* Determinação de vulnerabilidades;
* Identificação de exploits;
* Verificação manual de vulnerabilidades;
* Verificação de aplicações;
* Verificação de firewall e ACLs;
* Revisão das políticas de segurança;
* Revisão de sistemas de detecção de intrusos;
* Revisão de sistemas de telefonia (dependendo segundo o caso)
* Obtenção de informação (serviços de notícias, notas de imprensa, informações facilitadas pela própria empresa), ofertas de trabalho, newsgroups, xracks, números de série e “underground”, FTP, site, P2P;
* Engenharia social;
* Verificação de sistemas “confiáveis”;
* Análise de robustez de senhas;
* Negação de serviço;
* Revisão da política de privacidade;
* Análise de cookies e bugs no site;
* Revisão de arquivos de anotações cronológicas (logs).
O primeiro passo para a prevenção é o firewall ativo na rede para controlar e impedir acessos suspeitos, com todas as configurações e atualização dos serviços web realizadas, além de realizar monitoramento constante da rede pelo administrador de redes que gera um relatório com registros de todas anomalias detectadas.