Teste de penetração explicado: como hackers éticos simulam ataques

As ferramentas, etapas e métodos para encontrar vulnerabilidades antes que os bandidos o façam

Author Photo
10:00 am - 04 de janeiro de 2022
segurança, cibersegurança, login, senha

Texto originalmente publicado em 21 de dezembro de 2021

O que é o teste de penetração?

O teste de penetração é um processo no qual um profissional de segurança simula um ataque a uma rede ou sistema de computador para avaliar sua segurança – com a permissão dos proprietários desse sistema.

Não se deixe enganar pela palavra “simula”: um testador de penetração (ou pen tester, para abreviar) trará todas as ferramentas e técnicas de invasores do mundo real para atingir o sistema alvo. Mas, em vez de usar as informações que descobrem ou o controle que obtêm para seu próprio enriquecimento pessoal, eles relatam suas descobertas aos proprietários dos sistemas de destino para que sua segurança possa ser melhorada.

Como um pen tester segue o mesmo manual de um hacker mal-intencionado, o teste de penetração é às vezes chamado de hackeamento ético ou hackeamento de chapéu branco. No início, muitos de seus praticantes começaram como hackers mal-intencionados antes de se tornarem legítimos, embora isso seja um pouco menos comum hoje. Você também pode encontrar o termo “red team” ou “red teaming”, derivado do nome dado ao time que joga o “enemy” em cenários de jogos de guerra disputados por militares. O teste de penetração pode ser realizado por equipes ou hackers individuais, que podem ser funcionários internos da empresa-alvo, ou podem trabalhar de forma independente ou para empresas de segurança que fornecem serviços especializados de teste de penetração.

Como funciona um teste de penetração?

Em um sentido amplo, um teste de penetração funciona exatamente da mesma maneira que uma tentativa real de violar os sistemas de uma organização. Os pen testers começam examinando e identificando os hosts, portas e serviços de rede associados à organização de destino. Eles então pesquisam vulnerabilidades potenciais nesta superfície de ataque e essa pesquisa pode sugerir investigações adicionais e mais detalhadas no sistema de destino. Eventualmente, eles tentarão violar o perímetro de seu alvo e obter acesso aos dados protegidos ou obter o controle de seus sistemas.

Os detalhes, é claro, podem variar muito; existem diferentes tipos de testes de penetração e discutiremos as variações na próxima seção. Mas é importante observar primeiro que o tipo exato de teste conduzido e o escopo do ataque simulado precisam ser acordados com antecedência entre os testadores e a organização-alvo.

Um teste de penetração que viola com sucesso os sistemas ou dados importantes de uma organização pode causar muito ressentimento ou constrangimento entre a liderança de TI ou segurança dessa organização, e não é inédito para organizações-alvo alegar que os pen testers ultrapassaram seus limites ou invadiram sistemas com dados de alto valor que eles não estavam autorizados a testar – e ameaçam com uma ação legal como resultado. Estabelecer com antecedência as regras básicas sobre o que um teste de penetração específico irá cobrir é uma parte importante para determinar como o teste irá funcionar.

Tipos de teste de penetração

Existem várias decisões importantes que determinarão a forma do seu teste de penetração. A empresa de segurança de aplicativos Contrast Security divide os tipos de teste em várias categorias:

  • Um teste de penetração externo simula o que você pode imaginar como um cenário típico de hacker, com um estranho investigando as defesas do perímetro da organização-alvo para tentar encontrar pontos fracos a serem explorados.
  • Um teste interno, por outro lado, mostra o que um invasor que já está dentro da rede – um funcionário insatisfeito, um contratado com intenções nefastas ou um hacker superstar que ultrapassa o perímetro – seria capaz de fazer.
  • Um teste cego simula um ataque “real” vindo da extremidade do atacante. O pen tester não recebe nenhuma informação sobre a rede ou os sistemas da organização, forçando-o a confiar em informações que estão publicamente disponíveis ou que ele pode obter com suas próprias habilidades.
  • Um teste duplo-cego também simula um ataque real no final da organização-alvo, mas neste tipo de envolvimento, o fato de que um teste de penetração está sendo conduzido é mantido em segredo pela equipe de TI e segurança para garantir que a postura de segurança típica da empresa seja testada .
  • Um teste direcionado, às vezes chamado de teste de luzes acesas, envolve os pen testers e o TI do alvo executando um “jogo de guerra” simulado em um cenário específico com foco em um aspecto específico da infraestrutura de rede. Um teste direcionado geralmente requer menos tempo ou esforço do que as outras opções, mas não fornece uma imagem tão completa.

A Synopsis, empresa de segurança de aplicativos, apresenta outra maneira de pensar sobre os vários tipos de teste, com base em quanto conhecimento preliminar sobre a organização-alvo os testadores têm antes de iniciar seu trabalho. Em um teste de caixa preta (black box), a equipe de hacking ético não saberá nada sobre seus alvos, com relativa facilidade ou dificuldade em aprender mais sobre os sistemas da organização-alvo sendo uma das coisas testadas.

Em um teste de caixa branca (white box), os pen testers terão acesso a todos os tipos de artefatos do sistema, incluindo código-fonte, binários, contêineres e, às vezes, até mesmo os servidores que executam o sistema; o objetivo é determinar o quão resistentes os sistemas de destino são quando um insider verdadeiramente experiente que busca escalar suas permissões para obter dados valiosos. Obviamente, o conhecimento preliminar de um invasor do mundo real pode estar em algum lugar entre esses dois pólos e, portanto, você também pode realizar um teste de caixa cinza que reflita esse cenário.

Etapas de teste de penetração

Embora cada um desses diferentes tipos de testes de penetração tenha aspectos únicos, o Padrão de Execução de Teste de Penetração (PTES), desenvolvido por um grupo de especialistas da indústria, estabelece sete grandes etapas que farão parte da maioria dos cenários de teste de penetração:

  • Interações pré-engajamento: como observamos, qualquer pen test deve ser precedido pelos testadores e pela organização-alvo, estabelecendo o escopo e os objetivos do teste, de preferência por escrito.
  • Coleta de inteligência: o testador deve começar realizando o reconhecimento contra um alvo para coletar o máximo de informações possível, um processo que pode incluir a coleta da chamada inteligência de código aberto, ou informações disponíveis publicamente, sobre a organização-alvo.
  • Modelagem de ameaças: nesta fase, o pen tester deve modelar os recursos e motivações por trás de um invasor real em potencial e tentar determinar quais alvos dentro da organização-alvo podem atrair a atenção desse invasor.
  • Análise de vulnerabilidade: este é provavelmente o cerne do que a maioria das pessoas pensa quando se trata de teste de penetração: analisar a infraestrutura da organização de destino em busca de falhas de segurança que permitirão um hack.
  • Exploração: nesta fase, o pen tester usa as vulnerabilidades que descobriu para entrar nos sistemas da organização de destino e exfiltrar dados. O objetivo aqui não é apenas violar seu perímetro, mas contornar as contramedidas ativas e permanecer indetectável pelo maior tempo possível.
  • Pós-exploração: nesta fase, o pen tester tenta manter o controle dos sistemas violados e verificar seu valor. Essa pode ser uma fase particularmente delicada no que diz respeito ao relacionamento entre os pen testers e seus clientes; é importante aqui que as interações pré-contratação na primeira fase produziram um conjunto bem definido de regras básicas que protegerão o cliente e garantirão que nenhum serviço essencial ao cliente seja afetado negativamente pelo teste.
  • Relatórios: finalmente, o testador deve ser capaz de entregar um relatório abrangente e informativo ao seu cliente sobre os riscos e vulnerabilidades descobertos. CSO conversou com vários profissionais de segurança sobre as características e habilidades que um hacker ético deve ter, e muitos deles disseram que as habilidades de comunicação necessárias para transmitir claramente essas informações estão no topo da lista.

Ferramentas de teste de penetração

O conjunto de ferramentas do testador de penetração é praticamente idêntico ao que um hacker malicioso usaria. Provavelmente, a ferramenta mais importante será o Kali Linux, um sistema operacional especificamente otimizado para uso em testes de penetração. Kali (que a maioria dos pen testers são mais propensos a implantar em uma máquina virtual em vez de nativamente em seu próprio hardware) vem equipado com um conjunto completo de programas úteis, incluindo:

  • nmap
  • Metasploit
  • Wireshark
  • John the Ripper
  • Hashcat
  • Hydra
  • Zed Attack
  • sqlmap

Empresas e serviços de teste de penetração

Pen testing é uma área de especialização na indústria de tecnologia que até agora tem resistido à consolidação. Em outras palavras, existem muitas empresas por aí que oferecem serviços de teste de penetração, algumas delas como parte de um conjunto maior de ofertas e algumas delas especializadas em hacking ético. A empresa de pesquisa e consultoria Explority elaborou uma lista das 30 principais empresas de pen testing no Hacker Noon e descreveu seus critérios de inclusão e classificação. É uma lista bastante abrangente, e o fato de que quase não há sobreposição com a lista de Clutch das empresas de teste de penetração mais bem avaliadas ou com as empresas de penetração da Cybercrime Magazine a serem observadas em 2021 mostra como esse campo realmente é diversificado.

Trabalhos de teste de penetração

O fato de haver tantas empresas de pen testers deve ser uma indicação de que há uma grande demanda entre os pen testers e que há bons empregos disponíveis para candidatos qualificados. E os empregos não são apenas em empresas de segurança autônomas: muitas grandes empresas de tecnologia, como a Microsoft, têm equipes internas de teste de penetração.

O departamento de Carreiras em TI da North Carolina State University tem um bom esboço de quais são as perspectivas nesta categoria de carreira. Eles rastrearam mais de 16.000 empregos abertos somente em 2020. Uma ressalva, porém, é que o NC State combina testes de penetração e carreiras de analista de vulnerabilidade nessa visão geral. Os dois planos de carreira têm muitas habilidades em comum, mas os analistas de vulnerabilidade se concentram em encontrar brechas na segurança de aplicativos e sistemas enquanto eles ainda estão em desenvolvimento ou antes de serem implantados, enquanto os pen testers examinam os sistemas ativos, conforme temos descrito aqui.

Treinamento e certificação de teste de penetração

A indústria do hacking ético foi fundada por hackers que antes não eram éticos procurando um caminho para uma forma legal e convencional de ganhar dinheiro com suas habilidades. Como acontece em muitas áreas da tecnologia, esta primeira geração de pen testers foi em grande parte autodidata. Embora ainda haja espaço para aqueles que desenvolveram suas habilidades dessa forma, o teste de penetração agora é um assunto comum nos currículos de ciências da computação ou de faculdades de TI e em cursos on-line semelhantes, e muitos gerentes de contratação esperam algum treinamento formal ao considerar um candidato.

Uma das melhores maneiras de mostrar que você está cultivando habilidades de pen testing é obter uma das várias certificações amplamente aceitas na área. As ofertas de treinamento licenciado que acompanham esses certificados são uma ótima maneira de adquirir ou aprimorar as habilidades relevantes:

  • EC-Council’s Certified Ethical Hacker (CEH) e Licensed Penetration Tester (Master) (LPT)
  • IACRB’s Certified Penetration Tester (CPT), Certified Expert Penetration Tester (CEPT), Certified Mobile and Web Application Penetration Tester (CMWAPT), e Certified Red Team Operations Professional (CRTOP)
  • CompTIA’s PenTest+
  • GIAC’s Penetration Tester (GPEN) e Exploit Researcher and Advanced Penetration Tester (GXPN)
  • Offensive Security’s Certified Professional, Wireless Professional, e Experienced Penetration Tester

Salário de teste de penetração

Tal como acontece com muitos empregos de segurança de tecnologia em demanda, os pen testers podem exigir salários saudáveis. O Instituto Infosec tem uma boa visão geral da remuneração nas regiões geográficas dos EUA e cargos, com o panorama geral apontando que a maioria dos pen testers pode esperar salários na casa dos seis dígitos. Em dezembro de 2021, o Indeed.com fixou o salário-base médio para um pen tester nos Estados Unidos em cerca de US$ 111.000, enquanto o Glassdoor o estimava em pouco mais de US$ 102.000. De qualquer forma, este é claramente um trabalho com potencial, então não tenha medo de persegui-lo se você achar o mundo do hacking ético intrigante.

Newsletter de tecnologia para você

Os melhores conteúdos do IT Forum na sua caixa de entrada.