cchar_font[[black*
Sumário:
[ ---0 Introdução
[ ---1 Identificação da Vulnerabilidade
[ ---2 Injeção
0- MySQL Injection é uma das vulnerabilidades mais comuns em sites atualmente. Ela permite o atacante executar consultas ao banco de dados inserindo querys na URL e assim pegando dados confidenciais.
Vou utilizar exemplos fictícios aqui e lembrando que a fonte é somente para estudo. Nunca pratique isso pois é crime!
[[[]]]
1- Vamos supor que o link abaixo é de um site de notícias e você está tentando descobrir alguma vulnerabilidade nele.
(** ] Apenas usuários registrados e ativados podem ver os links., Clique aqui para se cadastrar...
O link acima estaria normal sem nenhuma modificação. Você não tem nenhum scanner e quer descobrir se existe algo de incomum. Faça o seguinte:
(** ] Apenas usuários registrados e ativados podem ver os links., Clique aqui para se cadastrar...
Acrescente uma aspas simples no final. Se a página aparecer sem nenhuma anormalidade é porque não está vulnerável caso contrário apareça algum erro...
"You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the...”
2- Agora partiremos para a parte interessante. A injeção! Para continuar com o obtenção de dados precisamos identifcar quantas tabelas/colunas existem no banco de dados. Para isso acrescentamos o seguinte comando ao final da URL:
(** ] Apenas usuários registrados e ativados podem ver os links., Clique aqui para se cadastrar... order by 1
Neste exemplo queremos saber se a tabela/coluna número 1 é existente. Se aparecer algum erro na página ela não existe caso contrário ela existe e teremos que dar continuidade ao processo. Façam:
(** ] Apenas usuários registrados e ativados podem ver os links., Clique aqui para se cadastrar... order by 1,2
E assim por diante até encontrarem um erro. Vamos supor que o erro está na tabela/coluna 5 então só existem 4 colunas no banco de dados.
Agora que descobrimos as tabelas/colunas vamos junta-las para obter as informações. Mudaremos de comando..
(** ] Apenas usuários registrados e ativados podem ver os links., Clique aqui para se cadastrar... union all select 1,2,3,4
Quando apertado enter o site modificará a página e aparecerá um número entre os que você colocou(1,2,3,4). Supondo que o número que apareceu foi o 2, modifique a URL da maneira abaixo para saber a versão do banco de dados.
(** ] Apenas usuários registrados e ativados podem ver os links., Clique aqui para se cadastrar... union all select 1,@@version,3,4
Caso o site não aceitar aparecerá um erro.
"union + illegal mix of collations (IMPLICIT + COERCIBLE) ..."
Para “ageitar” esse erro você terá que utilizar uma função chamada convert.
(** ] Apenas usuários registrados e ativados podem ver os links., Clique aqui para se cadastrar... union all select 1,convert(@@version using latin1),3,4/
Depois da descoberta teremos que agora descobrir o nome da tabela/coluna e o dado contido dentro dela. Passarei uma mini-lista contendo os nomes mais utilizados:
user, usuario, admin, member, membro, password, passwd, pwd, user_name
Vamos tentar descobrir o nome e o que contém dentro; Modificando:
(** ] Apenas usuários registrados e ativados podem ver os links., Clique aqui para se cadastrar... union all select 1,2,3,4 from admin
Aqui no exemplo tentamos o nome admin. Se der certo aparecerá a página normalmente com um ou mais números. Caso não, aparecerá erros.
Se o número que apareceu foi “2 e 4” modifique o link tentando colocar palavras como “usuário, username, user, usr..” & “senha, psw, password..”.
Apenas usuários registrados e ativados podem ver os links., Clique aqui para se cadastrar... union all select 1,user,3,psw from admin
Assim aparecerá o login e senha do administrador então depois é so achar a área de login e ser feliz.
(A técnica utilizada aqui não foi a avançada. Espero que gostem.)
Zona101.com & Guiadohacker.com.br
################################################
Explorando a falha MySQL em sites
writting by dwango
################################################
Explorando a falha MySQL em sites
writting by dwango
################################################
Sumário:
[ ---0 Introdução
[ ---1 Identificação da Vulnerabilidade
[ ---2 Injeção
0- MySQL Injection é uma das vulnerabilidades mais comuns em sites atualmente. Ela permite o atacante executar consultas ao banco de dados inserindo querys na URL e assim pegando dados confidenciais.
Vou utilizar exemplos fictícios aqui e lembrando que a fonte é somente para estudo. Nunca pratique isso pois é crime!
[[[]]]
1- Vamos supor que o link abaixo é de um site de notícias e você está tentando descobrir alguma vulnerabilidade nele.
(** ] Apenas usuários registrados e ativados podem ver os links., Clique aqui para se cadastrar...
O link acima estaria normal sem nenhuma modificação. Você não tem nenhum scanner e quer descobrir se existe algo de incomum. Faça o seguinte:
(** ] Apenas usuários registrados e ativados podem ver os links., Clique aqui para se cadastrar...
Acrescente uma aspas simples no final. Se a página aparecer sem nenhuma anormalidade é porque não está vulnerável caso contrário apareça algum erro...
"You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the...”
2- Agora partiremos para a parte interessante. A injeção! Para continuar com o obtenção de dados precisamos identifcar quantas tabelas/colunas existem no banco de dados. Para isso acrescentamos o seguinte comando ao final da URL:
(** ] Apenas usuários registrados e ativados podem ver os links., Clique aqui para se cadastrar... order by 1
Neste exemplo queremos saber se a tabela/coluna número 1 é existente. Se aparecer algum erro na página ela não existe caso contrário ela existe e teremos que dar continuidade ao processo. Façam:
(** ] Apenas usuários registrados e ativados podem ver os links., Clique aqui para se cadastrar... order by 1,2
E assim por diante até encontrarem um erro. Vamos supor que o erro está na tabela/coluna 5 então só existem 4 colunas no banco de dados.
Agora que descobrimos as tabelas/colunas vamos junta-las para obter as informações. Mudaremos de comando..
(** ] Apenas usuários registrados e ativados podem ver os links., Clique aqui para se cadastrar... union all select 1,2,3,4
Quando apertado enter o site modificará a página e aparecerá um número entre os que você colocou(1,2,3,4). Supondo que o número que apareceu foi o 2, modifique a URL da maneira abaixo para saber a versão do banco de dados.
(** ] Apenas usuários registrados e ativados podem ver os links., Clique aqui para se cadastrar... union all select 1,@@version,3,4
Caso o site não aceitar aparecerá um erro.
"union + illegal mix of collations (IMPLICIT + COERCIBLE) ..."
Para “ageitar” esse erro você terá que utilizar uma função chamada convert.
(** ] Apenas usuários registrados e ativados podem ver os links., Clique aqui para se cadastrar... union all select 1,convert(@@version using latin1),3,4/
Depois da descoberta teremos que agora descobrir o nome da tabela/coluna e o dado contido dentro dela. Passarei uma mini-lista contendo os nomes mais utilizados:
user, usuario, admin, member, membro, password, passwd, pwd, user_name
Vamos tentar descobrir o nome e o que contém dentro; Modificando:
(** ] Apenas usuários registrados e ativados podem ver os links., Clique aqui para se cadastrar... union all select 1,2,3,4 from admin
Aqui no exemplo tentamos o nome admin. Se der certo aparecerá a página normalmente com um ou mais números. Caso não, aparecerá erros.
Se o número que apareceu foi “2 e 4” modifique o link tentando colocar palavras como “usuário, username, user, usr..” & “senha, psw, password..”.
Apenas usuários registrados e ativados podem ver os links., Clique aqui para se cadastrar... union all select 1,user,3,psw from admin
Assim aparecerá o login e senha do administrador então depois é so achar a área de login e ser feliz.
(A técnica utilizada aqui não foi a avançada. Espero que gostem.)
Zona101.com & Guiadohacker.com.br