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

[Perl] DH Secret Finder 0.8

  • 3 Respuestas
  • 3787 Vistas

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

Desconectado BigBear

  • *
  • Underc0der
  • Mensajes: 543
  • Actividad:
    0%
  • Reputación 3
    • Ver Perfil
« en: Enero 22, 2017, 09:36:42 am »
Un script en Perl que sirve como buscador de archivos web , tiene las siguientes opciones :

  • Buscar panel de administracion
  • Buscar dominios
  • Buscar directorios importantes
  • Buscar archivos importantes
  • Buscar PHP Shells
  • Guardar todo en logs


El codigo :

Código: Perl
  1. # !usr/bin/perl
  2. # DH Secret Finder 0.8
  3. # (C) Doddy Hackman 2016
  4. # Credits for the arrays :
  5. # Dirs : directory-list-2.3-small.txt - Copyright 2007 James Fisher
  6. # Files : Based in wfuzz-1.4
  7. # Link for Files : https://raw.githubusercontent.com/tuwid/darkc0de-old-stuff/master/wfuzz-1.4/wordlists/common.txt
  8. # Shells : Based in https://github.com/bhavyanshu/Shell-Finder
  9.  
  10. use LWP::UserAgent;
  11. use Getopt::Long;
  12. use Color::Output;
  13. Color::Output::Init;
  14.  
  15. GetOptions(
  16.         "panels"   => \$panels,
  17.         "domains"   => \$domains,
  18.     "dirs"  => \$dirs,
  19.     "files"   => \$files,
  20.     "shells"   => \$shells,
  21.         "url=s"   => \$url,
  22.     "savefile=s"  => \$savefile,
  23.     "verbose"  => \$verbose
  24. );
  25.  
  26. head();
  27.  
  28. if ($panels) {
  29.         if($panels && $url) {
  30.                 search($url,"panel");
  31.         } else {
  32.                 sintax();
  33.         }      
  34. }
  35. elsif ($domains) {
  36.         if($domains && $url) {
  37.                 search($url,"domain");
  38.         } else {
  39.                 sintax();
  40.         }
  41. }
  42. elsif ($dirs) {
  43.         if($dirs && $url) {
  44.                 search($url,"dir");
  45.         } else {
  46.                 sintax();
  47.         }
  48. }
  49. elsif ($files) {
  50.         if($files && $url) {
  51.                 search($url,"file");
  52.         } else {
  53.                 sintax();
  54.         }
  55. }
  56. elsif ($shells) {
  57.         if($shells && $url) {
  58.                 search($url,"shell");
  59.         } else {
  60.                 sintax();
  61.         }
  62. }
  63. else {
  64.     sintax();
  65. }
  66.  
  67. copyright();
  68.  
  69. # Functions
  70.  
  71. sub search {
  72.         my ($url,$type) = @_;
  73.        
  74.         my $wordlist = "";
  75.         my $name = "";
  76.        
  77.         if($type eq "panel") {
  78.                 $wordlist = "wordlists/panels.txt";
  79.                 $name = "Panels";
  80.         } elsif($type eq "domain") {
  81.                 $wordlist = "wordlists/domains.txt";
  82.                 $name = "Domains";
  83.         } elsif($type eq "dir") {
  84.                 $wordlist = "wordlists/directories.txt";
  85.                 $name = "Directories";
  86.         } elsif($type eq "file") {
  87.                 $wordlist = "wordlists/files.txt";
  88.                 $name = "Files";
  89.         } elsif($type eq "shell") {
  90.                 $wordlist = "wordlists/shells.txt";
  91.                 $name = "Shells";
  92.         } else {
  93.                 $wordlist = "wordlists/panels.txt";
  94.                 $name = "Panels";
  95.         }
  96.        
  97.         my $cantidad = 0;
  98.        
  99.         if(-f $wordlist) {
  100.                 printear_titulo("[+] Loading Wordlist ...\n");
  101.                 my @wordlist = load_wordlist($wordlist);
  102.                 printear("\n[+] Wordlist Loaded : ");
  103.                 print int(@wordlist)." lines\n";
  104.                 printear_logo("\n[+] Searching $name in $url ...\n\n");
  105.                 for my $line(@wordlist) {
  106.                         chomp $line;
  107.                         my $link = "";
  108.                         if($type eq "domain") {
  109.                                 $link = $line.".".$url;
  110.                         } else {
  111.                                 $link = $url."/".$line;
  112.                         }
  113.                         if(check_page($link)) {
  114.                                 if($verbose) {
  115.                                         printear("[+] Checking ");
  116.                                         printear_logo("$link : ");
  117.                                         printear_azul("OK\n");
  118.                                 } else {
  119.                                         printear_azul("[+] Link : $link\n");
  120.                                 }
  121.                                 $cantidad++;
  122.                                 if($savefile) {
  123.                                         savefile($savefile,"[+] Link : $link");
  124.                                 }
  125.                         } else {
  126.                                 if($verbose) {
  127.                                         printear("[+] Checking ");
  128.                                         printear_logo("$link : ");
  129.                                         printear_rojo("FAIL\n");
  130.                                 }
  131.                         }
  132.                 }
  133.                 printear("\n[+] $name Found : ");
  134.                 print "$cantidad\n";
  135.                 if($cantidad eq "0") {
  136.                         printear("\n[-] $name not found\n");
  137.                 }
  138.                 if($savefile) {
  139.                         printear_logo("\n[+] Logs $savefile saved\n");
  140.                 }
  141.                 printear_titulo("\n[+] Finished\n");
  142.         } else {
  143.                 printear_rojo("\n[-] Wordlist not exists");
  144.         }
  145. }
  146.  
  147. # More Functions
  148.  
  149. sub check_page {
  150.         my $url = shift;
  151.         my $nave = LWP::UserAgent->new(ssl_opts => {verify_hostname => 0,SSL_verify_mode => IO::Socket::SSL::SSL_VERIFY_NONE});
  152.         $nave->agent("Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:25.0) Gecko/20100101 Firefox/25.0");
  153.         $nave->timeout(10);    
  154.         my $code = $nave->get($url);
  155.         if ($code->is_success) {
  156.                 return 1;
  157.         } else {
  158.                 return 0;
  159.         }
  160. }
  161.  
  162. sub load_wordlist {
  163.     my @result;
  164.     my @words;
  165.     open( FILE, $_[0] );
  166.     @words = <FILE>;
  167.     close FILE;
  168.     for (@words) {
  169.         push( @result, $_ );
  170.     }
  171.     return (@result);
  172. }
  173.  
  174. sub savefile {
  175.         my ($filename,$text) = @_;
  176.         open( SAVE, ">>" . $filename );
  177.         print SAVE $text . "\n";
  178.         close SAVE;
  179. }
  180.  
  181. sub printear {
  182.     cprint( "\x036" . $_[0] . "\x030" );
  183. }
  184.  
  185. sub printear_logo {
  186.     cprint( "\x037" . $_[0] . "\x030" );
  187. }
  188.  
  189. sub printear_titulo {
  190.     cprint( "\x0310" . $_[0] . "\x030" );
  191. }
  192.  
  193. sub printear_rojo {
  194.     cprint( "\x035" . $_[0] . "\x030" );
  195. }
  196.  
  197. sub printear_azul {
  198.     cprint( "\x033" . $_[0] . "\x030" );
  199. }
  200.  
  201. sub sintax {
  202.     printear("[+] Sintax : ");
  203.     print "perl $0 <option> <value>\n";
  204.     printear("\n[+] Options : \n\n");
  205.     print "-panel -url <url> : Find panel administration in the URL\n";
  206.     print "-domain -url <url> : Find domains in the URL\n";
  207.     print "-dirs -url <url> : Find directories in the URL\n";
  208.     print "-files -url <url> : Find files in the URL\n";
  209.         print "-shells -url <url> : Find shells in the URL\n";
  210.         print "-savefile <filename> : Save results\n";
  211.     printear("\n[+] Example : ");
  212.     print "perl secret_finder.pl -shells http://localhost/ -savefile results.txt\n";
  213.     copyright();
  214. }
  215.  
  216. sub head {
  217.     printear_logo("\n-- == DH Secret Finder 0.8 == --\n\n\n");
  218. }
  219.  
  220. sub copyright {
  221.     printear_logo("\n\n-- == (C) Doddy Hackman 2016 == --\n\n");
  222.     exit(1);
  223. }
  224.  
  225. #The End ?
  226.  

Si quieren bajar el programa lo pueden hacer de aca :

SourceForge.
Github.

Eso seria todo.

Desconectado JETY

  • *
  • Underc0der
  • Mensajes: 1
  • Actividad:
    0%
  • Reputación 0
    • Ver Perfil
« Respuesta #1 en: Enero 22, 2017, 09:55:02 pm »
Bastante tiempo ya de conocerte y sigues desarrollando herramientas de calidad.

Desconectado BigBear

  • *
  • Underc0der
  • Mensajes: 543
  • Actividad:
    0%
  • Reputación 3
    • Ver Perfil
« Respuesta #2 en: Febrero 09, 2017, 08:40:05 pm »
ok , gracias por comentar JETY.

Desconectado Leo_Al

  • *
  • Underc0der
  • Mensajes: 14
  • Actividad:
    0%
  • Reputación 0
    • Ver Perfil
    • Email
  • Skype: wayercreew
« Respuesta #3 en: Febrero 09, 2017, 09:24:32 pm »
Gracias!! Seguí desarrollando herramientas como esta

 

¿Te gustó el post? COMPARTILO!



Tutorial perl desde cero By: Black Poision & Painboy

Iniciado por ProcessKill

Respuestas: 2
Vistas: 3812
Último mensaje Septiembre 02, 2011, 09:43:36 pm
por blozzter
[Perl] Verificando si es root para correr un script

Iniciado por c1st

Respuestas: 1
Vistas: 1944
Último mensaje Octubre 07, 2012, 06:01:39 pm
por ANTRAX
[Perl] Half Life Servers List 0.1

Iniciado por BigBear

Respuestas: 0
Vistas: 1497
Último mensaje Noviembre 12, 2012, 07:31:50 pm
por BigBear
[Perl] Counter Strike 1.6 Servers List

Iniciado por BigBear

Respuestas: 0
Vistas: 1443
Último mensaje Noviembre 12, 2012, 07:32:11 pm
por BigBear
[Perl] Iframe DDos Attack Tool

Iniciado por BigBear

Respuestas: 0
Vistas: 1623
Último mensaje Julio 03, 2011, 10:06:45 pm
por BigBear