O que é uma injeção de código?
A injeção de código é um método usado pelos hackers para injetar código malicioso em um site ou programa que contém uma fraqueza na segurança. Esse código altera todo o site ou programa - ou o destrói - dependendo do código que foi injetado. Um ataque de injeção de código ocorre com mais freqüência quando um administrador não adiciona regras que restringem o uso de certos caracteres encontrados em ataques de injeção. Embora geralmente malicioso, a injeção de código pode obter bons resultados e pode ser feita acidentalmente.
Uma injeção de código é um tipo de ataque à codificação original de um programa ou site. O hacker entra no espaço digital e insere um código que permite que a programação malévola entre no espaço digital, dobrando-o conforme sua vontade. A injeção do código pode causar muitos resultados diferentes, como a introdução de malware, permitindo que o hacker acesse informações privadas, permitindo que o hacker roube cookies e dados da sessão, ou apenas destruindo a codificação original e tornando o site ou programa inútil.
Uma das maneiras mais simples de um hacker entrar em um espaço virtual é a partir de um livro de visitas ou função de entrada do usuário. Se o administrador não limitar o uso de caracteres ou não restringir os caracteres comumente usados durante uma injeção de código, o hacker poderá digitar o código de injeção. Quando alguém vê a injeção, ela entra em seu computador e a injeção se propaga. Essa ameaça significa que os administradores precisam controlar a entrada do usuário com muito cuidado.
Embora os ataques de injeção de código quase sempre sejam maliciosos, existem algumas boas razões para iniciar um. Por exemplo, talvez um programador de software tenha criado um programa difícil de atualizar, mas o programa precisa desesperadamente ter alguma codificação reorganizada ou adicionada. Em vez de tentar uma atualização regular, o que pode levar muito tempo, ele ou ela pode injetar o novo código no programa. Isso altera rapidamente o código, mas de uma maneira boa, adicionando ou corrigindo um recurso no programa.
A injeção de código também pode ocorrer por acidente. Se o administrador não limitar o uso de caracteres e alguém usar um caractere que tenha um significado especial para a linguagem de programação, isso poderá prejudicar a linguagem. Isso ocorre porque a linguagem de programação vê o personagem como aquele que deve criar uma função, mas, como não há codificação para essa função, a linguagem não sabe o que fazer e apresenta falhas. O site exibirá símbolos irregulares em vez do próprio site. Se o usuário anexar um arquivo incorreto por acidente, isso pode causar um problema semelhante.