it-swarm-pt.tech

Vetor de ataque, superfície de ataque, vulnerabilidade, exploração: onde está a diferença?

Tenho dificuldades para identificar a diferença entre vetor de ataque/superfície de ataque/vulnerabilidade e exploração.

Eu acho que a diferença entre uma vulnerabilidade e uma exploração é a seguinte: Uma vulnerabilidade é algo que pode ser usado para causar danos (por exemplo, um estouro de buffer), mas não significa necessariamente que qualquer coisa possa ser feita. Uma exploração utiliza uma vulnerabilidade de maneira "produtiva" (por exemplo, lendo os seguintes bytes na memória após disparar uma mensagem de erro).

De acordo com Wikipedia (vulnerabilidade)

Para explorar uma vulnerabilidade, o invasor deve ter pelo menos uma ferramenta ou técnica aplicável que possa se conectar a uma fraqueza do sistema. Nesse quadro, a vulnerabilidade também é conhecida como superfície de ataque.

Portanto, a superfície de ataque e a vulnerabilidade parecem ser sinônimos no contexto da segurança de TI (?)

Alguém poderia definir as palavras ou dar exemplos da diferença entre elas?

22
Martin Thoma

Todos os 4 termos são muito diferentes:

Descreve o ataque:

  • Vetor de ataque: a 'rota' pela qual um ataque foi realizado. O SQLi geralmente é realizado usando um cliente do navegador para o aplicativo da web. A aplicação web é o vetor de ataque (possivelmente também a Internet, a aplicação cliente, etc .; depende do seu foco).
  • Exploração: o método de tirar proveito de uma vulnerabilidade. O código usado para enviar comandos SQL para um aplicativo Web, a fim de aproveitar as entradas não autorizadas do usuário, é uma 'exploração'.

Descreve o alvo:

  • Superfície de ataque: descreve como alguém está exposto a ataques. Sem um firewall para limitar quantas portas estão bloqueadas, sua 'superfície de ataque' é todas as portas. Bloquear todas as portas, exceto a porta 80, reduz sua 'superfície de ataque' a uma única porta.
  • Vulnerability: uma fraqueza que expõe riscos. Entradas de usuário não autorizadas podem representar uma 'vulnerabilidade' por um método SQLi.

Também podemos olhar para isso da perspectiva de um usuário como alvo. Um invasor envia um PDF infectado como um anexo de email a um usuário. O usuário abre o PDF, é infectado e o malware é instalado. O 'vetor de ataque' era o email, o 'exploit' era o código no PDF, a 'vulnerabilidade' é a fraqueza do visualizador PDF que permitia a execução do código, a 'superfície de ataque' é o usuário e sistema de e-mail.

26
schroeder

Isso é verdade até onde eu sei, no entanto, acredito que algumas possam ter pequenas melhorias na redação:

  • O vetor de ataque é o "tipo" do ataque, é o que permite ao invasor ter sucesso.
  • A superfície de ataque é quantos pontos de extremidade podem ser atacados, por exemplo, se você estiver direcionando um site, com uma linguagem de script (PHP/Node ...) e um Banco de Dados (MySql/Postgre ...), a superfície de ataque é maior do que se você estiver segmentando uma única página estática sem conteúdo dinâmico e sem banco de dados.
  • Uma vulnerabilidade é uma fraqueza em um sistema que pode ser usado para alterar o comportamento pretendido do sistema, às vezes eles permitem despejos de memória, às vezes permitem a representação de um usuário ...
  • e uma exploração é a ferramenta usada para realizar um ataque.
2
Purefan

Com base no meu entendimento e considerando um aplicativo Web simples como ambiente de teste, posso ver a relação entre eles como abaixo:

A superfície de ataque é usada para identificar os componentes/partes do sistema/web que podem conter vulnerabilidades (por exemplo, função de autenticação de aplicativos da web)

A avaliação de vulnerabilidade se aplica ao componente/peça identificado (autenticação) encontrado nas superfícies de ataque, para encontrar vulnerabilidades (por exemplo, nenhuma validação de entrada)

O vetor de ataque (tipos de ataques) refere-se à identificação de quais ataques podem ser realizados, com base nas vulnerabilidades identificadas (sem validação de entrada), como SQLI, XSS, FI, etc.

A exploração refere-se ao lançamento de ataques (por exemplo, ataque SQLI, ataque XSS, ataque FI, etc.) contra a vulnerabilidade identificada (sem validação de entrada) para obter acesso aos dados ou sistema na máquina vítima.

1
Vahab Iranmanesh