content top

terça-feira, 15 de janeiro de 2013

Introdução ao SQLi parte 1

Introdução ao SQL Injection

SQL injection é uma das vulnerabilidades mais comuns em aplicações web hoje. É uma das técnicas mais populares e perigosa da web, porque a injeção de SQL bem sucedida poderia permitir que crackers comprometessem seus servidores, redes, computadores pessoais e dados confidenciais. De acordo com UK Security Breach Investigations Report, relatório divulgado pela 7Safe janeiro antes de 2010, um colossal 60% de todos os incidentes de computadores examinados envolveu ataques de injeção SQL. Com base em seu estudo, 40% de todos os ataques de injeção de SQL utilizada como fonte de compromisso e 20% utilizam a injeção de SQL combinado com outra vulnerabilidade, tais como malware. De CWE / SANS Top 25 erros de programação mais perigosos, SQL ranking de injeção é o número 2 dos 25 erros.

O que é SQL Injection? Injeção de SQL é uma técnica de ataque que explora a vulnerabilidade SQL na consulta através de usuário/s, dados de entrada do cliente para a camada de banco de dados de uma aplicação. Esta vulnerabilidade existe no aplicativo personalizado da Web que carece de validação de entrada adequada, não utilizar instruções SQL parametrizadas, e/ou cria SQL dinâmico com dados fornecidos pelo usuário. Isso ocorre quando a entrada do usuário é incorretamente filtrada para strings literais, caracteres de escape embutidas em instruções SQL ou de entrada do usuário não é fortemente digitados e, assim, inesperadamente executado.

Normalmente, os hackers ou crackers vão testar a injeção de SQL digitando comandos SQL mal formados em front-end Web application caixas de entrada que são vinculados a contas de banco de dados, a fim de enganar o banco de dados em oferecer mais acesso à informação do que o desenvolvedor pretendido. A façanha de injeção SQL com sucesso, pode-se ler dados sensíveis do banco de dados, modificar dados de banco de dados, executar operações de administração de banco de dados, e recuperar o conteúdo de um arquivo presente dado no sistema de arquivos DBMS e em alguns casos emitir comandos para o sistema operacional. Este ataque permite que atacantes 'spoofing' identidades, mexer com os dados existentes, causar problemas de repúdio, tais como anular ou alterar as operações de saldos ($$$), destruir os dados e tornar-se administradores do servidor de banco de dados.

Texto Original de Mohd Izhar Ali, traduzido e remanejado por Brasil Pentest.

content top