Injeção de código

Definição - o que significa injeção de código?

A injeção de código é a injeção ou introdução maliciosa de código em um aplicativo. O código introduzido ou injetado é capaz de comprometer a integridade do banco de dados e / ou comprometer as propriedades de privacidade, segurança e até mesmo a correção dos dados. Ele também pode roubar dados e / ou ignorar o controle de acesso e autenticação. Os ataques de injeção de código podem afetar os aplicativos que dependem da entrada do usuário para a execução.

Definirtec explica injeção de código

Existem quatro tipos principais de ataques de injeção de código:

  • injeção SQL
  • Injeção de script
  • Injeção de casca
  • Avaliação dinâmica

A injeção de SQL é um modo de ataque usado para corromper uma consulta de banco de dados legítima para fornecer dados falsificados. A injeção de script é um ataque no qual o invasor fornece código de programação para o servidor do mecanismo de script. Os ataques de injeção de shell, também conhecidos como ataques de comando do sistema operacional, manipulam os aplicativos usados ​​para formular comandos para o sistema operacional. Em um ataque de avaliação dinâmica, um código arbitrário substitui a entrada padrão, o que resulta na execução do primeiro pelo aplicativo. A diferença entre injeção de código e injeção de comando, outra forma de ataque, é a limitação da funcionalidade do código injetado para o usuário malicioso.

As vulnerabilidades de injeção de código variam de fáceis a difíceis de encontrar. Muitas soluções foram desenvolvidas para impedir esses tipos de ataques de injeção de código, tanto para aplicativos quanto para domínios de arquitetura. Alguns exemplos incluem validação de entrada, parametrização, configuração de privilégios para diferentes ações, adição de camada extra de proteção e outros.