Software  
 
Conhecimento computador >> Software >> Software de banco de dados >> 
Tutorial SQL Injection
hacks de injeção de SQL são executadas em servidores que não têm o seguro de programação necessário. Estes são geralmente realizadas em servidores onde o código de página da web usa SQL inline, o que significa que a consulta está no código de páginas web em vez de localizada em um procedimento armazenado. Saber como um hack de injeção SQL funciona ajuda a donos de sites proteger os dados dos clientes e garantir as páginas da web. A Variável de formulário

O primeiro passo para a compreensão de como um ataque de injeção SQL é criado é , replicando o problema. Ataques de injeção SQL são realizadas através de variáveis ​​de formulário em uma página HTML. Criando o formulário permite que o webmaster para simular e testar a segurança do servidor web. Abaixo está um exemplo de um objeto de formulário usado para criar um ataque de injeção de SQL.


Embora esta seja uma forma simples caixa de texto , é tudo o que é necessário para realizar uma injeção SQL.
o Código Hacker

Quando instruções SQL são feitas, o aplicativo cria código SQL que é enviada para o banco de dados . Quando uma string é enviada para o banco de dados , o código é algo como o texto abaixo :

select * from myTable onde name = ' myVariableFromtheForm '

A marca de verificação significa o fim do código SQL , e é aí alvo hackers. Quando uma caixa de texto , como o que foi criado na seção 1 é usado para construir uma string, um hacker pode entrar algo como o seguinte na caixa de texto :

'or 1 = 1; -

pode parecer sem sentido , mas na verdade ele injeta código na base de dados que é executado pelo servidor. Quando " myVariableFromtheForm " é substituído pelo código acima , a declaração executado pelo servidor realmente se parece com o seguinte :

select * from myTable onde name = ' ' or 1 = 1 - 'em

o "-" é o código de comentários para o servidor SQL , assim que o último carrapato terminação é ignorado. A seqüência está vazia e que o hacker injeta o código " 1 = 1 " no comunicado. O que isso faz é retornar cada linha da tabela para o hacker. Isto é como uma pessoa sem escrúpulos rouba informações pessoais dos servidores de banco de dados .
Resolvendo o Problema

A melhor maneira de resolver o problema no código que é suscetível a um corte de injeção SQL é usar a função "Substituir" em todos os casos em que o texto é digitado usuários. Por exemplo, no código ASP, a seguinte linha de código substitui a marca de verificação única com dois. Quando um SQL Server executa um código com duas marcas de escala , ele lê -los como um literal e a cadeia não é encerrada

String.Replace ( "'" , "''" ); .

o código acima substitui todas as ocorrências de uma marca de verificação única com dois, removendo a vulnerabilidade de um ataque de injeção SQL.

Anterior :

Próximo : No
  Os artigos relacionados
·Como criar um banco de dados Oracle usando um arquivo d…
·O que são imagens Vinculadas & Unbound 
·Como excluir Demonstrações do Oracle 
·Como consultar nomes de coluna de Acesso 
·Como gravar um arquivo ISO para Flash 
·Ferramentas de ETL : Técnicas de Consulta 
·Como reconstruir índices 
·Como desativar Native IO 
·Como usar CardScan 
·Como copiar arquivos XLS para SPSS 
  Artigos em destaque
·Como gravar fitas a um computador com o Audacity em Vis…
·Como remover o vírus Dungcoi 
·Como compactar arquivos em VB Net 
·Como remover Cubase Prefs 
·Informações sobre Silverlight 
·O que fazer quando você não pode baixar qualquer anti…
·Como compactar um arquivo grande para enviar 
·Como remover Polícia XP Com a Ferramenta de Remoção …
·Como fazer uma desinstalação limpa do Norton Symantec…
·Como remover Trojan Horse Generic10.ABRY 
Cop e direita © Conhecimento computador http://ptcomputador.com Todos os Direitos Reservados