Início topics What is penetration testing? O que é o teste de penetração?
Explore a solução de testes de penetração da IBM Inscreva-se para atualizações do tópico de segurança
Ilustração com colagem de pictogramas de nuvens, telefone móvel, impressão digital, marca de verificação
O que é o teste de penetração?

Um teste de penetração, ou "teste de pen", é um teste de segurança que inicia um ataque cibernético de simulação para encontrar vulnerabilidades em um sistema computacional.

Os testadores de penetração são profissionais de segurança qualificados na arte do hacking ético, que é o uso de ferramentas e técnicas de hacking para corrigir vulnerabilidades de segurança em vez de causar danos. As empresas contratam testadores de penetração para lançar ataques simulados contra seus aplicativos, redes e outros ativos. Ao organizar ataques falsos, os testadores de penetração ajudam as equipes de segurança a descobrir vulnerabilidades críticas de segurança e melhorar a postura geral de segurança.

Os termos "hacking ético" e "teste de penetração" às vezes são usados de forma intercambiável, mas há uma diferença. O hacking ético é um campo mais amplo da cibersegurança, que inclui qualquer uso de skills de hacking para melhorar a segurança da rede. Os testes de penetração são apenas um dos métodos que os hackers éticos usam. Os hackers éticos também podem fornecer análise de malware, avaliação de riscos e outros serviços.

Custo de uma violação de dados

Obtenha insights para gerenciar melhor o risco de uma violação de dados com o relatório mais recente do custo das violações de dados.

Conteúdo relacionado

Cadastre-se no X-Force Threat Intelligence Index

Por que as empresas fazem o teste de penetração

Existem três razões principais pelas quais as empresas realizam testes de penetração.

Os testes de penetração são mais abrangentes do que apenas avaliações de vulnerabilidade. Os testes de penetração e as avaliações de vulnerabilidade ajudam as equipes de segurança a identificar pontos fracos em aplicativos, dispositivos e redes. No entanto, esses métodos servem a propósitos ligeiramente diferentes; por isso, muitas organizações usam ambos em vez de contar apenas com um ou com outro. 

As avaliações de vulnerabilidade geralmente são varreduras recorrentes e automatizadas que procuram vulnerabilidades conhecidas em um sistema e as sinalizam para revisão. As equipes de segurança usam avaliações de vulnerabilidade para verificar rapidamente se há falhas comuns.

Os testes de penetração vão um passo além. Quando os testadores de penetração encontram vulnerabilidades, eles as exploram em ataques simulados que imitam os comportamentos de hackers maliciosos. Isso fornece à equipe de segurança uma compreensão profunda de como hackers reais podem explorar vulnerabilidades para acessar dados confidenciais ou interromper operações. Em vez de tentar adivinhar o que os hackers podem fazer, a equipe de segurança pode usar esse conhecimento para projetar controles de segurança de rede para ameaças cibernéticas do mundo real.

Como os testadores de penetração usam processos automatizados e manuais, eles descobrem vulnerabilidades conhecidas e desconhecidas. Como os testadores de penetração exploram ativamente os pontos fracos que encontram, é menos provável que encontrem falsos positivos; se eles podem explorar uma falha, os cibercriminosos também podem. E como os serviços de teste de penetração são fornecidos por especialistas em segurança terceirizados, que abordam os sistemas a partir da perspectiva de um hacker, os testes de penetração geralmente descobrem falhas que as equipes de segurança internas poderiam deixar passar. 

Especialistas em cibersegurança recomendam testes de penetração. Muitos especialistas e autoridades em cibersegurança recomendam testes de penetração como medida de segurança proativa. Por exemplo, em 2021, o governo federal dos EUA (link externo a ibm.com) instou as empresas a usar testes de penetração para se defender contra os crescentes ataques de ransomware

Os testes de penetração apoiam a conformidade regulatória. Regulamentações de segurança de dados, como a Lei de portabilidade e responsabilidade de planos de saúde (HIPAA) e o Regulamento geral de proteção de dados (GDPR), exigem determinados controles de segurança. Os testes de penetração podem ajudar as empresas a comprovar a conformidade com esses regulamentos, garantindo que seus controles funcionem conforme o pretendido.

Outros regulamentos exigem explicitamente testes de penetração. A Norma de segurança de dados do setor de cartões de pagamento (PCI-DSS), que se aplica a organizações que processam cartões de crédito, exige especificamente "testes de penetração externos e internos" regulares (link externo a ibm.com).

Os testes de penetração também podem apoiar a conformidade com normas voluntárias de segurança da informação, como a ISO/IEC 27001 (link externo a ibm.com).

Tipos de testes de penetração

Todos os testes de penetração envolvem um ataque simulado contra os sistemas de computador de uma empresa. No entanto, diferentes tipos de testes de penetração têm como alvo diferentes tipos de ativos corporativos.

  1. Testes de penetração de aplicativos
  2. Testes de penetração de rede
  3. Testes de penetração de hardware
  4. Testes de penetração de pessoal

Testes de penetração de aplicativos


Os testes de penetração de aplicativos procuram vulnerabilidades em aplicativos e sistemas relacionados, incluindo aplicativos da web e sites, aplicativos móveis e de IoT, aplicativos na nuvem e interfaces de programação de aplicativos (APIs).

Os testadores de penetração frequentemente começam pesquisando as vulnerabilidades listadas no Open Web Application Security Project (OWASP) Top 10 (link externo a ibm.com). O OWASP Top 10 é uma lista das vulnerabilidades mais críticas em aplicativos da web. A lista é atualizada periodicamente para refletir o cenário de cibersegurança em constante mudança, mas as vulnerabilidades comuns incluem injeções de código mal-intencionado, configurações incorretas e falhas de autenticação. Além do OWASP Top 10, os testes de penetração de aplicativos também procuram falhas de segurança menos comuns e vulnerabilidades que podem ser exclusivas do aplicativo em questão.

Testes de penetração de rede


Os testes de penetração de rede atacam toda a rede de computadores da empresa. Existem dois tipos amplos de testes de penetração de rede: testes externos e testes internos.

Em testes externos, os testadores de penetração imitam o comportamento de hackers externos para encontrar problemas de segurança em ativos voltados para a Internet, como servidores, roteadores, sites e computadores de funcionários. Eles são chamados de "testes externos" porque os testadores de penetração tentam invadir a rede de fora.

Em testes internos, os testadores de penetração imitam o comportamento de agentes internos maliciosos ou hakcers com credenciais roubadas. O objetivo é descobrir vulnerabilidades que uma pessoa possa explorar de dentro da rede — por exemplo, abusar dos privilégios de acesso para roubar dados confidenciais

Testes de penetração de hardware


Esses testes de segurança buscam vulnerabilidades em dispositivos conectados à rede, como notebooks, dispositivos móveis e de IoT e tecnologia operacional (OT).

Os testadores de penetração podem procurar falhas de software, como uma exploração do sistema operacional, que permita que hackers obtenham acesso remoto a um endpoint. Eles podem procurar vulnerabilidades físicas, como um data center inadequadamente protegido no qual agentes maliciosos possam entrar. A equipe de testes também pode avaliar como os hackers podem migrar de um dispositivo comprometido para outras partes da rede.

Testes de penetração de pessoal


Os testes de penetração de pessoal procuram pontos fracos na higiene de cibersegurança dos funcionários. Em outras palavras, esses testes de segurança avaliam a vulnerabilidade de uma empresa a ataques de engenharia social.

Os testadores de penetração de pessoal usam phishing, vishing (phishing por voz) e smishing (phishing por SMS) para enganar os funcionários e fazê-los divulgar informações confidenciais. Os testes de penetração de pessoal também podem avaliar a segurança física dos escritórios. Por exemplo, os testadores de penetração podem tentar entrar furtivamente em um prédio disfarçando-se de entregadores. Esse método, chamado "tailgating," é comumente usado por criminosos do mundo real.

O processo de testes de penetração

Antes de um teste de penetração começar, a equipe de teste e a empresa definem um escopo para o teste. O escopo descreve quais sistemas serão testados, quando o teste acontecerá e os métodos que os testadores de penetração podem usar. O escopo também determina quanta informação os testadores de penetração terão antecipadamente:

  • Em um teste de caixa-preta, os testadores de penetração não têm informações sobre o sistema-alvo. Eles devem confiar em suas próprias pesquisas para desenvolver um plano de ataque, como faria um hacker do mundo real.
     

  • Em um teste de caixa-branca, os testadores de penetração têm total transparência do sistema de destino. A empresa compartilha detalhes como diagramas de rede, códigos fonte, credenciais e muito mais.
     

  • Em um teste de caixa-cinza, os testadores de penetração obtêm algumas informações, mas não muitas. Por exemplo, a empresa pode compartilhar intervalos de IP para dispositivos de rede, mas os testadores de penetração precisam investigar esses intervalos de IP por conta própria em busca de vulnerabilidades.

Com um escopo definido, os testes começam. Os testadores de penetração podem seguir várias metodologias de testes de penetração. Os mais comuns incluem as diretrizes de testes de segurança de aplicativos do OWASP (link externo a ibm.com), o Penetration Testing Execution Standard (PTES) (link externo a ibm.com) e o National Institute of Standards and Technology (NIST) SP 800-115 (link externo a site ibm.com).

Independentemente da metodologia usada pela equipe de testes, o processo geralmente segue as mesmas etapas gerais.

1. Reconhecimento


A equipe de testes reúne informações sobre o sistema-alvo. Os testadores de penetração usam diferentes métodos de reconhecimento, dependendo do alvo. Por exemplo, se o alvo for um aplicativo, os testadores de penetração podem estudar seu código fonte. Se o alvo for uma rede inteira, os testadores de penetração podem usar um analisador de pacotes para inspecionar os fluxos de tráfego da rede.

Os testadores de penetração também costumam recorrer à inteligência de código aberto (OSINT) . Ao ler documentação pública, artigos de notícias e até mesmo mídias sociais e contas do GitHub dos funcionários, os testadores de penetração podem obter informações valiosas sobre seus alvos.

2. Descoberta e desenvolvimento de alvos


Os testadores de penetração usam o conhecimento adquirido na etapa de reconhecimento para identificar vulnerabilidades exploráveis no sistema. Por exemplo, os testadores de penetração podem usar um scanner de portas como o Nmap para procurar portas abertas para onde possam enviar malware. Para um teste de penetração de engenharia social, a equipe de testes pode desenvolver uma história falsa, ou "pretexto", que ela usa em um e-mail de phishing para roubar credenciais dos funcionários.

Como parte desta etapa, os testadores de penetração podem verificar como os recursos de segurança reagem às invasões. Por exemplo, eles podem enviar tráfego suspeito para o firewall da empresa para ver o que acontece. Os testadores de penetração usarão o que aprenderam para evitar a detecção durante o restante do teste.

3. Invasão


A equipe de testes inicia o ataque real. Os testadores de penetração podem tentar uma variedade de ataques, dependendo do sistema-alvo, das vulnerabilidades encontradas e do escopo do teste. Alguns dos ataques mais comumente testados incluem:

  • Injeções de SQL: os testadores de penetração tentam obter uma página da Web ou aplicativo para divulgar dados confidenciais inserindo códigos maliciosos nos campos de entrada.
     

  • Scripting entre sites: os testadores de penetração tentam plantar código malicioso no site da empresa.
     

  • Ataques de denial-of-service: os testadores de penetração tentam colocar servidores, aplicativos e outros recursos de rede offline, inundando-os com tráfego.
     

  • Engenharia social: os testadores de penetração usam phishing, baiting, pretexting ou outras táticas para enganar os funcionários para comprometer a segurança da rede.
     

  • Ataques de força bruta: os testadores de penetração tentam invadir um sistema executando scripts que geram e testam possíveis senhas até que uma funcione.
     

  • Ataques de intermediário: os testadores de penetração interceptam o tráfego entre dois dispositivos ou usuários para roubar informações confidenciais ou plantar malware.

4. Escalada


Depois que os testadores de penetração exploram uma vulnerabilidade para se estabelecer no sistema, eles tentam se movimentar e acessar ainda mais vulnerabilidade. Essa fase às vezes é chamada de "encadeamento de vulnerabilidades", porque os testadores de penetração passam de vulnerabilidade em vulnerabilidade para se aprofundar na rede. Por exemplo, eles podem começar plantando um keylogger no computador de um funcionário. Usando esse keylogger, eles podem capturar as credenciais do funcionário. Usando essas credenciais, eles podem acessar um banco de dados confidencial.

Nesse estágio, o objetivo do testador de penetração é manter o acesso e aumentar seus privilégios, evitando as medidas de segurança. Os testadores de penetração fazem tudo isso para imitar ameaças persistentes avançadas (APTs), que podem se esconder em um sistema por semanas, meses ou até anos antes de serem detectadas.

5. Limpeza e geração de relatórios


No final do ataque simulado, os testadores de penetração limpam quaisquer vestígios que tenham deixado para trás, como trojans de porta dos fundos que plantaram ou configurações que alteraram. Dessa forma, hackers do mundo real não podem usar as explorações dos testadores de penetração para violar a rede.

Em seguida, os testadores de penetração preparam um relatório sobre o ataque. O relatório normalmente descreve vulnerabilidades que eles encontraram, explorações que usaram, detalhes sobre como evitaram recursos de segurança e descrições do que fizeram enquanto estavam dentro do sistema. O relatório também pode incluir recomendações específicas sobre correção de vulnerabilidades. A equipe de segurança interna pode usar essas informações para fortalecer as defesas contra ataques do mundo real.

Ferramentas de testes de penetração

Os testadores de penetração usam várias ferramentas para realizar reconhecimento, detectar vulnerabilidades e automatizar partes importantes do processo de testes de penetração. Algumas das ferramentas mais comuns incluem:

  1. Sistemas operacionais especializados
  2. Ferramentas de quebra de credenciais
  3. Scanners de portas
  4. Scanners de vulnerabilidade
  5. Analisadores de pacotes
  6. Metasploit

Sistemas operacionais especializados: a maioria dos testadores de penetração usa sistemas operacionais projetados para testes de penetração e hackers éticos. O mais popular é o Kali Linux, uma distribuição Linux de código aberto que vem pré-instalada com ferramentas de testes de penetração como Nmap, Wireshark e Metasploit.

Ferramentas de quebra de credenciais: esses programas podem descobrir senhas quebrando criptografias ou lançando ataques de força bruta, que usam bots ou scripts para gerar e testar automaticamente possíveis senhas até que uma funcione. Como exemplos, temos o Medusa, Hyrda, Hashcat e John the Ripper.

Scanners de portas: os scanners de portas permitem que os testadores de penetração testem remotamente os dispositivos em busca de portas abertas e disponíveis, que podem ser usadas para violar uma rede. O Nmap é o scanner de portas mais usado, mas o masscan e o ZMap também são comuns.

Verificadores de vulnerabilidades: as ferramentas de verificação de vulnerabilidades pesquisam sistemas em busca de vulnerabilidades conhecidas, permitindo que os testadores de penetração encontrem rapidamente possíveis entradas para um alvo. Como exemplos, temos o Nessus, Core Impact e Netsparker.

Os verificadores de vulnerabilidades da web são um subconjunto de verificadores de vulnerabilidades que avaliam aplicativos da web e sites. Como exemplos, temos o Burp Suite e o Zed Attack Proxy (ZAP) do OWASP.

Analisadores de pacotes: os analisadores de pacotes, também chamados de farejadores de pacotes, permitem que os testadores de penetração analisem o tráfego de rede capturando e inspecionando pacotes. Os testadores de penetração podem descobrir de onde vem o tráfego, para onde está indo e, em alguns casos, quais dados ele contém. O Wireshark e o tcpdump estão entre os analisadores de pacotes mais comumente usados.

Metasploit: o Metasploit é uma estrutura de testes de penetração com uma série de funções. E o mais importante, o Metasploit permite que os testadores de penetração automatizem ataques cibernéticos. O Metasploit possui uma biblioteca integrada de códigos de exploração e cargas úteis pré-escritos. Os testadores de penetração podem selecionar um exploit, fornecer a ele uma carga útil para entregar ao sistema-alvo e deixar que o Metasploit cuide do resto.

Soluções relacionadas
Serviços de testes de penetração do X-Force® Red 

Testes de penetração para aplicativos, redes, hardware e pessoal para descobrir e corrigir vulnerabilidades que expõem seus ativos mais importantes a um ataque. 

Explore os serviços de testes de penetração do X-Force Red
Serviços de segurança ofensiva do X-Force Red 

O X-Force Red é uma equipe global de hackers contratados para invadir organizações e descobrir vulnerabilidades perigosas que os invasores podem usar para ganho pessoal. 

Explore os serviços de segurança ofensiva X-Force Red
IBM Security QRadar XDR

Detecte e elimine ameaças mais rapidamente com o principal pacote de XDR do setor. 

Explore o IBM Security QRadar XDR
Recursos O que é caça a ameaças?

A caça a ameaças é uma abordagem proativa para identificar ameaças desconhecidas anteriormente ou contínuas não mediadas na rede de uma organização.

O que é um cyberattack?

Os ataques cibernéticos são tentativas indesejáveis de roubar, expor, alterar, desabilitar ou destruir informações por meio de acesso não autorizado a sistemas de computador.

O que são ameaças internas?

Ameaças internas vêm de usuários que têm acesso autorizado e legítimo aos ativos de uma empresa e abusam deles deliberadamente ou acidentalmente.

Dê o próximo passo

A adoção generalizada da nuvem híbrida e o suporte permanente à força de trabalho remota tornaram impossível gerenciar a superfície de ataque da empresa. O IBM Security Randori Recon utiliza um processo de descoberta contínuo e preciso para revelar a TI sombra. O Randori mantém você no objetivo com menos falsos positivos e melhora sua resiliência geral por meio de fluxos de trabalho simplificados e integrações com seu ecossistema de segurança existente.

Explore o Randori Recon Agende uma demonstração em tempo real