Professional Documents
Culture Documents
O Cracker
Funcionamento
Para exemplificar o funcionamento da injeo de
SQL, consideremos uma instruo SQL comum:
SELECT id, nome, sobrenome FROM
autores;
Funcionamento
Funcionamento
Portanto, supondo que a aplicao no faa o
tratamento apropriado do contedo inserido
pelo usurio, o mesmo pode fazer o uso
acidental do caractere de aspas simples.
Mas, gerando a entrada:
nome = jo's
sobrenome = silva
Funcionamento
E fazendo com que a aplicao gere o cdigo:
SELECT id, nome, sobrenome FROM
autores WHERE nome = 'jo's' AND
sobrenome = 'silva';
Funcionamento
De acordo com a especificao
da linguagem SQL, existe um erro
de sintaxe nessa instruo, uma vez que a
string passada para o campo nome a apenas
palavra "jo", pois a adio das aspas simples
quebrou a delimitao das aspas simples
originais da consulta.
Funcionamento
O interpretador do SQL espera que o restante
da instruo seja outros comandos SQL
vlidos que complementem a instruo
principal.
No entanto, como "s" no um identificador
vlido, essa instruo no ser executada e
retornar um erro.
O Ataque
Com base neste problema, um possvel
atacante pode manipular os dados de entrada
a fim de gerar um comportamento no
esperado na base de dados.
O Ataque
Para exemplificar este conceito, consideremos
na mesma consulta apresentada, a entrada
dos seguintes dados pela aplicao:
nome = jo'; DROP TABLE autores ; -sobrenome = silva
O Ataque
Fazendo com que a aplicao gere o cdigo:
SELECT id, nome, sobrenome FROM
autores WHERE nome = 'jo'; DROP
TABLE autores ; --' AND sobrenome =
'silva';
O Ataque
Neste caso, a instruo ser executada
normalmente, pois no h um erro de sintaxe,
no entanto, com a adio do caractere pontoe-vrgula, a instruo foi dada como finalizada
de modo prematuro dando espao para uma
nova instruo.
O Ataque
Essa nova instruo, que poderia ser qualquer
uma escolhida pelo atacante:
(1) pode ser a responsvel por retornar dados
confidenciais armazenados na base de dados
ou;
As conseqncias do ataque
As conseqncias do ataque
Dados crticos podem ser modificados ou
enviados para outros computadores longe da
empresa.
Mostrando o problema
Pode-se ilustrar esse ponto usando um
exemplo de pgina de login em Active Server
Pages (ASP), que acessa um servidor de banco
de dados SQL e tenta autenticar o acesso em
uma aplicao fictcia. Veja no link:
http://pt.wikipedia.org/wiki/Inje%C3%A7%C3
%A3o_de_SQL
Ferramentas de Auditoria
Acunetix
http://www.acunetix.com/
PARA ANALISAR O SEU SITE
Injeo de SQL
Cross-Site Scripting
Outras vulnerabilidades
ACUNETIX
GERAR RELATRIOS
Dados PCI DSS (a norma de segurana de
transaes eletrnicas) Payment Card Industry
(PCI) Data Security standard (DSS)
OWASP (Open Web Application Security Project)
Top 10 Vulnerabilidades
Acunetix
FERRAMENTAS AVANADAS DE TESTE
PENETRAO
Editor de HTTP
Sniffer
Fuzzer
e mais ...