comment
IRC Chat
play_arrow
Este sitio utiliza cookies propias y de terceros. Si continúa navegando consideramos que acepta el uso de cookies. OK Más Información.

Generador de wordlists personalizadas

  • 0 Respuestas
  • 796 Vistas

0 Usuarios y 2 Visitantes están viendo este tema.

Desconectado Syst3m-c0d3r

  • *
  • Underc0der
  • Mensajes: 2
  • Actividad:
    0%
  • Reputación 0
    • Ver Perfil
« en: Noviembre 14, 2018, 11:37:33 pm »
Hola a todos! Les dejo un generador de wordlists personalizadas para bruteforce que hice en PHP, espero que les sirva! Saludos
Cualquier consulta/critica es bienvenida

Github: https://github.com/syst3m-c0d3r/Custom-Wordlist-Generator


Código: PHP
  1.  
  2. <?php
  3.  
  4. /*                                CWG
  5.                 CUSTOM WORDLIST GENERATOR
  6.                          By Syst3m-c0d3r
  7.                 syst3m-c0d3r@protonmail.com
  8. */
  9.  
  10.  
  11. if(isset($_POST['generar'])){
  12.         $datos=array();
  13.         $valores_no_vacios = -1; // -1 porque el submit no es un dato  
  14.         foreach($_POST as $form => $valor) {
  15.                 if(!empty($valor) && $valor!="Generar" && $form!="longitud" && $form!="fecha" ){
  16.                         if($_POST['otros']==""){
  17.                                 $valores_no_vacios++;
  18.                                 // La cantidad de inputs con informacion
  19.                                 $datos[$valores_no_vacios]=$valor;      // tengo todos los datos del post en un array
  20.                         }else{
  21.                                 $key=$_POST['otros'];
  22.                                 $explo=explode(",", $key);
  23.                                 $cant=count($explo);
  24.                                 if($cant=="1"){
  25.                                         $valores_no_vacios++;
  26.                                         $datos[$valores_no_vacios]=$valor;
  27.                                 }else{
  28.                                         $valores_no_vacios++;
  29.                                         if($form!="otros"){
  30.                                                 $datos[$valores_no_vacios]=$valor;
  31.                                         }else{
  32.                                                 for($i=0;$i<$cant;$i++){
  33.                                                         $datos[$valores_no_vacios]=$explo[$i];
  34.                                                         $valores_no_vacios++;
  35.                                                 }
  36.                                                 $valores_no_vacios=$valores_no_vacios-1;
  37.                                         }
  38.                                 }
  39.                         }
  40.                 }
  41.     }
  42.         $fecha=$_POST['fecha'];
  43.         $datos[$valores_no_vacios+1]=$fecha;
  44.         $datos[$valores_no_vacios+2]=substr($fecha, 4, 4); //YYYY
  45.         $datos[$valores_no_vacios+3]=substr($fecha, 6, 2); //YY
  46.         $datos[$valores_no_vacios+4]=substr($fecha, 0, 4).substr($fecha, 6, 2);  // DDMMYY
  47.        
  48.         // -------------------------- FIN DE RECOLECCION DE DATOS --------------------------
  49.  
  50.         // -------------------------- COMIENZO GUARDADO DE DATOS --------------------------
  51.        
  52.         $nombre=$_POST['nombre'];
  53.         $long=$_POST['longitud'];
  54.         $fo=fopen($nombre.".txt", 'a');
  55.         $tot=count($datos); //Cantidad de datos dentro del array $datos
  56.  
  57.         // empiezo a combinar
  58.        
  59.         for($i=0;$i<$tot;$i++){
  60.                 if(strlen($datos[$i])>=$long){ 
  61.                         if($i+1<=$tot){
  62.                                 fwrite($fo, $datos[$i]."\r\n");  //Escribo todas las palabras sin combinar     
  63.                         }
  64.                 }
  65.         }
  66.         //Combinaciones 2 palabras para datos[n]
  67.         for($d=0;$d<($tot*$tot);$d++){ 
  68.                 for($i=0;$i<$tot;$i++){
  69.                         if(strlen($datos[$i])>=$long){ 
  70.                                 if($d<$tot){
  71.                                         fwrite($fo, $datos[$d].$datos[$i]."\r\n");
  72.                                 }                      
  73.                         }
  74.                 }      
  75.         }
  76.         //Combinaciones 3 palabras para datos[n]
  77.         for($d=0;$d<($tot*$tot);$d++){ 
  78.                 for($i=0;$i<$tot;$i++){
  79.                         if(strlen($datos[$i])>=$long){ 
  80.                                 if($d<$tot){
  81.                                         if($i+1<$tot){
  82.                                                 fwrite($fo, $datos[$d].$datos[$i].$datos[$i+1]."\r\n");
  83.                                                 fwrite($fo, $datos[$d].$datos[$i+1].$datos[$i]."\r\n");
  84.                                         }
  85.                                 }                      
  86.                         }
  87.                 }      
  88.         }
  89.         //Combinaciones 4 palabras para datos[n]
  90.         for($d=0;$d<($tot*$tot);$d++){ 
  91.                 for($i=0;$i<$tot;$i++){
  92.                         if(strlen($datos[$i])>=$long){ 
  93.                                 if($d<$tot){
  94.                                         if($i+2<$tot){
  95.                                                 fwrite($fo, $datos[$d].$datos[$i].$datos[$i+1].$datos[$i+2]."\r\n");
  96.                                                 fwrite($fo, $datos[$d].$datos[$i].$datos[$i+2].$datos[$i+1]."\r\n");
  97.                                         }
  98.                                 }                      
  99.                         }
  100.                 }      
  101.         }      
  102.         fclose($fo);                   
  103. }
  104. ?>
  105.  
  106. <html>
  107. <head>
  108. <link rel="stylesheet" type="text/css" href="styles/styles.css">
  109. <style>
  110. .alert {
  111.     padding: 20px;
  112.     background-color: #4CAF50; /* Red */
  113.     color: white;
  114.     margin-bottom: 15px;
  115.         overflow:hidden;
  116.         font-family:fixedsyxed;
  117. }
  118. .closebtn {
  119.     margin-left: 15px;
  120.     color: white;
  121.     font-weight: bold;
  122.     float: right;
  123.     font-size: 22px;
  124.     line-height: 20px;
  125.     cursor: pointer;
  126.     transition: 0.3s;
  127. }
  128. .closebtn:hover {
  129.     color: black;
  130. }
  131. .copy{
  132.         text-align:center;
  133.         font-size:100%;
  134.         font-family:fixedsyxed;
  135.         color:red;
  136. }
  137. </style>
  138. </head>
  139. <body>
  140.  
  141. <?php
  142. if(isset($_POST['generar'])){
  143. echo '<div class="alert">
  144.  <span class="closebtn" onclick="this.parentElement.style.display=\'none\';">&times;</span>
  145.  Wordlist generada correctamente en: '.$nombre.'.txt
  146. </div>';
  147. }
  148. ?>
  149. <div class="class1">
  150.  
  151. <h1>Custom Wordlist Generator</h1>
  152. <hr>
  153. <center>Introducir todos los datos sin espacios<br>
  154. Los datos con <font color="red">(*)</font> son obligatorios<br>
  155. Dejar en blanco los datos no conocidos<br>
  156. Se recomienda usar minusculas<br>
  157. El archivo se generara en /[nombre].txt<div class="copy">Syst3m-c0d3r</div>
  158. <hr style="margin-top:20px;">
  159. <br></center>
  160.  
  161. <div class="divform">
  162. <form method="POST" action="">
  163. Longitud minima<font color="red">(*)</font>:<br>
  164. <input type="text" name="longitud" placeholder="6" required><br>
  165. Nombre<font color="red">(*)</font>:<br>
  166. <input type="text" name="nombre" placeholder="Nombre" required><br>
  167. Segundo nombre:<br>
  168. <input type="text" name="secnombre" placeholder="Segundo nombre"><br>
  169. Apellido<font color="red">(*)</font>:<br>
  170. <input type="text" name="apellido" placeholder="Apellido" required><br>
  171. Apodo:<br>
  172. <input type="text" name="apodo" placeholder="Apodo"><br>
  173. Fecha de nacimiento<font color="red">(*)</font>:<br>
  174. <input type="text" name="fecha" placeholder="Formato: DDMMAAAA" required><br>
  175. Telefono:<br>
  176. <input type="text" name="telefono" placeholder="Numero de telefono fijo"><br>
  177. Celular:<br>
  178. <input type="text" name="celular" placeholder="Numero de celular"><br>
  179. DNI:<br>
  180. <input type="text" name="dni" placeholder="Numero de DNI"><br>
  181. Otros:<br>
  182. <input type="text" style="width:100%" name="otros" placeholder="Introducir palabras claves separadas por comas sin espacio, ejemplo: acdc,riverplate,juan,nombredelamascota"><br>
  183. <input type="submit" name="generar" value="Generar">
  184. </form>
  185. </div>
  186. </div>
  187.  
  188. </body>
  189. </html>
  190.  
  191.  


styles.css:
Código: CSS
  1. body{
  2.         background-color:black;
  3.         background-image: url("../img/back.png");
  4.         background-width:100%;
  5.         background-repeat:no-repeat;
  6.         background-attachment:fixed;
  7. }
  8. h1{
  9.         font-family:fixedsyxed;
  10.         color:red;
  11.         text-align:center;
  12.         font-size:200%;
  13.         letter-spacing:5px;
  14. }
  15. @font-face {
  16.     font-family: 'fixedsyxed';
  17.     src: url('fixedsys.ttf') format('truetype');
  18. }
  19. .class1{
  20.         background-color:white;
  21.         padding:10px;
  22.         padding-left:60px;
  23.         margin:30px;
  24.         margin-left:150px;
  25.         margin-right:150px;
  26.         font-family:fixedsyxed;
  27.         font-color:darkgray;
  28.         font-size:120%;
  29.         text-align:left;
  30.         opacity:0.9;
  31.         border-radius:7px;
  32.         overflow:hidden;
  33. }
  34. input[type=text], select {
  35.         font-family:fixedsyxed;
  36.         font-size:20px;
  37.     padding: 12px 20px;
  38.     margin: 8px 0;
  39.     display: inline-block;
  40.     border: 1px solid #ccc;
  41.     border-radius: 4px;
  42.     box-sizing: border-box;
  43.         width:100%;
  44. }
  45. .divform {
  46.     border-radius: 5px;
  47.     padding: 10px;
  48.        
  49. }
  50.  
  51. input:hover{
  52.         border-color:red;
  53. }
  54. input[type=submit] {
  55.     width: 100%;
  56.     background-color: grey;
  57.     color: white;
  58.     padding: 14px 20px;
  59.     margin: 8px 0;
  60.     border: none;
  61.     border-radius: 4px;
  62.     cursor: pointer;
  63.         font-family:fixedsyxed;
  64.         font-size:20px;
  65. }
  66. input[type=submit]:hover {
  67.         background-color:red;
  68.         font-family:fixedsyxed;
  69. }
  70. hr{
  71.           border: 0.5px solid red;
  72.           margin-bottom:20px;
  73. }
  74.  
« Última modificación: Noviembre 14, 2018, 11:59:02 pm por Syst3m-c0d3r »

 

¿Te gustó el post? COMPARTILO!