[Perl] Codificator 0.2

Iniciado por BigBear, Julio 07, 2012, 11:02:45 AM

Tema anterior - Siguiente tema

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

Nueva version de este script para codificar y decodificar en :

  • Hex
  • SHA1
  • MD5 (solo encode)
  • Base64
  • ASCII
  • URL

    El codigo

    Código: perl

    #!usr/bin/perl
    #Codificator 0.2
    #Coded By Doddy H
    #This tool encode in :
    #
    #Hex
    #MD5
    #Base64
    #ASCII
    #URL
    #
    #

    use Digest::MD5;
    use Digest::SHA1;
    use MIME::Base64;
    use URI::Escape;

    sub head {
        clean();
        print q(



      @@@            @ @   @ @             @           
    @   @           @    @                @           
    @       @@@   @@ @ @ @@@ @  @@@   @@@ @@@  @@@  @ @
    @      @   @ @  @@ @  @  @ @   @ @   @ @  @   @ @@
    @      @   @ @   @ @  @  @ @      @@@@ @  @   @ @ 
    @      @   @ @   @ @  @  @ @     @   @ @  @   @ @ 
    @   @ @   @ @  @@ @  @  @ @   @ @  @@ @  @   @ @ 
      @@@   @@@   @@ @ @  @  @  @@@   @@ @ @@  @@@  @ 



    );
    }

    head();
    print "\n[+] Options\n\n";
    print q(
    1 - MD5 encode
    2 - Base64 encode
    3 - Base64 decode
    4 - Ascii encode
    5 - Ascii decode
    6 - Hex encode
    7 - Hex decode
    8 - URL encode
    9 - URL decode
    10 - Exit

    );
    while (true) {
        print "\n\n[+] Option : ";
        chomp( my $op = <stdin> );
        print "\n\n";
        if ( $op eq 1 ) {
            print "[+] String : ";
            chomp( my $string = <stdin> );
            print "\n\n[+] MD5 : " . Digest::MD5->md5_hex($string) . "\n\n";
        }
        elsif ( $op eq 2 ) {
            print "[+] String : ";
            chomp( my $string = <stdin> );
            print "\n\n[+] Base64 : " . encode_base64($string);
        }
        elsif ( $op eq 3 ) {
            print "[+] String : ";
            chomp( my $string = <stdin> );
            print "\n\n[+] Base64 Decode : " . decode_base64($string) . "\n";
        }
        elsif ( $op eq 4 ) {
            print "[+] String : ";
            chomp( my $string = <stdin> );
            print "\n\n[+] Ascii : " . join ',', unpack "U*", $string;
            print "\n";
        }
        elsif ( $op eq 5 ) {
            print "[+] String : ";
            chomp( my $string = <stdin> );
            print "\n\n[+] Ascii decode : " . join q[], map { chr } split q[,],
              $string . "\n";
            print "\n";
        }
        elsif ( $op eq 6 ) {
            print "[+] String : ";
            chomp( my $string = <stdin> );
            $hex = "0x";
            for ( split //, $string ) {
                $hex .= sprintf "%x", ord;
            }
            print "\n\n[+] Hex : " . $hex . "\n";
        }
        elsif ( $op eq 7 ) {
            print "[+] String : ";
            chomp( my $string = <stdin> );
            $string =~ s/^0x//;
            $encode = join q[], map { chr hex } $string =~ /../g;
            print "\n\n[+] Hex decode : " . $encode . "\n";
        }
        elsif ( $op eq 8 ) {
            print "[+] String : ";
            chomp( my $string = <stdin> );
            print "\n\n[+] URL Encode : " . uri_escape($string) . "\n";
        }
        elsif ( $op eq 9 ) {
            print "[+] String : ";
            chomp( my $string = <stdin> );
            print "\n\n[+] URL Decode : " . uri_unescape($string) . "\n";
        }
        elsif ( $op eq 10 ) {
            copyright();
            exit(1);
        }
        else {
            print "[+] Write good stupid !\n";
        }
    }

    sub clean {
        my $os = $^O;
        if ( $os =~ /Win32/ig ) {
            system("cls");
        }
        else {
            system("clear");
        }
    }

    sub copyright {
        print "\n-- == Doddy Hackman 2012 == --\n\n";
        <stdin>;
        exit(1);
    }

    # The End ?