search menu icon-carat-right cmu-wordmark

CERT Coordination Center


ProFTPD fails to properly handle newline characters when transferring files in ASCII mode

Vulnerability Note VU#405348

Original Release Date: 2003-10-29 | Last Revised: 2003-10-29

Overview

ProFTPD is a popular free File Transfer Protocol (FTP) server package. A vulnerability in its handling of files transferred in ASCII mode can allow an attacker to compromise the system running the server.

Description

The File Transfer Protocol (FTP) described in RFC959 defines operations for several data types, including ASCII. For this mode of operation, RFC959 states:

... The sender converts the data from an internal character representation to the standard 8-bit NVT-ASCII representation (see the Telnet specification). The receiver will convert the data from the standard form to his own internal form.

In accordance with the NVT standard, the <CRLF> sequence should be used where necessary to denote the end of a line of text. (See the discussion of file structure at the end of the Section on Data Representation and Storage.)...


Researchers at ISS have discovered a flaw in the way that the ProFTP server handles this conversion that results in a vulnerability. According to ISS's bulletin:

A vulnerability exists in the ProFTPD server that can be triggered by remote attackers when transferring files from the FTP server in ASCII mode. The attacker must have the ability to upload a file to the server, and then attempt to download the same file to trigger the vulnerability.

The vulnerability occurs when a file is being transferred in ASCII mode. During a transfer of this type, file data is examined in 1024 byte chunks to check for newline (\) characters. The translation of these newline characters is not handled correctly, and a buffer overflow can manifest if ProFTPD parses a specially crafted file.

Impact

A remote attacker may be able to execute arbitrary code on the vulnerable server with elevated privileges.


NOTE: Exploits for this vulnerability are publicly available and the CERT/CC has received reports of active reconnaissance for vulnerable systems.

Solution

Apply a patch from the vendor

Patches have been released to address this vulnerability. Please see the vendors section of this document for more details.

Workarounds

Disable uploads in the ProFTP daemon. Since exploitation of the vulnerability requires an attacker to place a specially crafted file on the vulnerable system, disabling uploads will prevent them from being able to do this via FTP. Note that this step will not prevent exploitation if the attacker is able to upload the file into the FTP area via some other means, such as ssh or a web form.

Vendor Information

405348
Expand all

Conectiva Linux

Updated:  October 07, 2003

Status

  Vulnerable

Vendor Statement

No statement is currently available from the vendor regarding this vulnerability.

Vendor Information

The vendor has not provided us with any further information regarding this vulnerability.

Addendum

Conectiva, S.A. has released Conectiva Linux Security Announcement CLA-2003:750 in response to this issue. Users are encouraged to review this announcement and apply the patches it refers to.

If you have feedback, comments, or additional information about this vulnerability, please send us email.

Gentoo Linux

Updated:  October 07, 2003

Status

  Vulnerable

Vendor Statement

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

- ------------------------------------------------------------------------
GENTOO LINUX SECURITY ANNOUNCEMENT 200309-16
- ------------------------------------------------------------------------
         PACKAGE : net-ftp/proftpd
         SUMMARY : ASCII File Remote Compromise Vulnerability
            DATE : 2003-09-28 00:37 UTC
         EXPLOIT : remote
VERSIONS AFFECTED : <proftpd-1.2.9_rc2
   FIXED VERSION : =proftpd-1.2.9_rc2
   GENTOO BUG ID : 29452
             CVE : none that we are aware of at this time
- ------------------------------------------------------------------------


SUMMARY:

 ISS X-Force discovered a vulnerability that could be triggered when a
specially crafted file is uploaded to a proftpd server.


 Read the full advisory at:
 http://www.proftpd.org/


SOLUTION:

 It is recommended that all Gentoo Linux users who are running
net-ftp/proftpd upgrade to proftpd-1.29_rc2 as follows


 emerge sync
emerge '>=net-ftp/proftpd-1.2.9_rc2'
emerge clean


- - - ---------------------------------------------------------------------
solar@gentoo.org
aliz@gentoo.org - GnuPG key is available at http://dev.gentoo.org/~aliz
- - - ---------------------------------------------------------------------


-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.3 (GNU/Linux)


iD8DBQE/eEBbfT7nyhUpoZMRArDnAKCFlLbPmeC/S05/0EG1pqJc9BbClACgjPY6
OintOPB6pXf211OQxsUC7Tg=
=+hmK
-----END PGP SIGNATURE-----

Vendor Information

The vendor has not provided us with any further information regarding this vulnerability.

Addendum

The CERT/CC has no additional comments at this time.

If you have feedback, comments, or additional information about this vulnerability, please send us email.

MandrakeSoft

Updated:  October 07, 2003

Status

  Vulnerable

Vendor Statement

No statement is currently available from the vendor regarding this vulnerability.

Vendor Information

The vendor has not provided us with any further information regarding this vulnerability.

Addendum

The Linux Mandrake Security Team has released Mandrake Linux Security Update Advisory MDKSA-2003:095 in response to this issue. Users are encouraged to review this advisory and apply the patches it refers to.

If you have feedback, comments, or additional information about this vulnerability, please send us email.

OpenPKG

Updated:  October 07, 2003

Status

  Vulnerable

Vendor Statement

No statement is currently available from the vendor regarding this vulnerability.

Vendor Information

The vendor has not provided us with any further information regarding this vulnerability.

Addendum

The OpenPKG development team has released OpenPKG Security Advisory OpenPKG-SA-2003.043 in response to this issue. Users are encouraged to review this advisory and apply the patches it refers to.

If you have feedback, comments, or additional information about this vulnerability, please send us email.

ProFTPD

Updated:  October 07, 2003

Status

  Vulnerable

Vendor Statement

No statement is currently available from the vendor regarding this vulnerability.

Vendor Information

The vendor has not provided us with any further information regarding this vulnerability.

Addendum

The following versions of ProFTPD are believed to be affected:


    ProFTPD 1.2.7
    ProFTPD 1.2.8
    ProFTPD 1.2.8rc1
    ProFTPD 1.2.8rc2
    ProFTPD 1.2.9rc1
    ProFTPD 1.2.9rc2

The ProFTPD development team has released the following versions which contain a patch for this vulnerability:
    ProFTPD 1.2.7p
    ProFTPD 1.2.8p
    ProFTPD 1.2.9rc1p
    ProFTPD 1.2.9rc2p

Users employing the ProFTPD software built from the distribution source code are encouraged to upgrade to one of the patched versions above.

If you have feedback, comments, or additional information about this vulnerability, please send us email.

Slackware

Updated:  October 07, 2003

Status

  Vulnerable

Vendor Statement

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

[slackware-security]  ProFTPD Security Advisory (SSA:2003-259-02)

Upgraded ProFTPD packages are available for Slackware 8.1, 9.0 and
- -current.  These fix a security issue where an attacker could gain
a root shell by downloading a specially crafted file.



Here are the details from the Slackware 9.0 ChangeLog:
+--------------------------+
Tue Sep 23 14:43:10 PDT 2003
n/proftpd-1.2.8p-i486-1.tgz:  Upgraded to proftpd-1.2.8p (patched).
 This fixes a security problem in ProFTPD.  From http://www.proftpd.org:


    X-Force Research at ISS has discovered a remote exploit in ProFTPD's
   handling of ASCII translations that an attacker, by downloading a
   carefully crafted file, can exploit and gain a root shell.  The source
   distributions on ftp.proftpd.org have all been replaced with patched
   versions. All ProFTPD users are strongly urged to upgrade to one of
   the patched versions as soon as possible.


  Note that the upgraded package does not change the displayed version
 number to 1.2.8p (it remains 1.2.8), but we've verified the source code
 to make sure that this is in fact the patched version.  We recommend all
 sites running ProFTPD upgrade to the new package right away.
 (* Security fix *)
+--------------------------+



WHERE TO FIND THE NEW PACKAGES:
+-----------------------------+


Updated package for Slackware 8.1:
ftp://ftp.slackware.com/pub/slackware/slackware-8.1/patches/packages/proftpd-1.2.8p-i386-1.tgz


Updated package for Slackware 9.0:
ftp://ftp.slackware.com/pub/slackware/slackware-9.0/patches/packages/proftpd-1.2.8p-i386-1.tgz


Updated package for Slackware -current:
ftp://ftp.slackware.com/pub/slackware/slackware-current/slackware/n/proftpd-1.2.8p-i486-1.tgz



MD5 SIGNATURES:
+-------------+


Slackware 8.1 package:
8b31d10bab91a0d4a22c7eac69a90087  proftpd-1.2.8p-i386-1.tgz


Slackware 9.0 package:
391d5e24bade1ff98281465d230ddad5  proftpd-1.2.8p-i386-1.tgz


Slackware -current package:
2636a2306a6acb0d8726995de9013678  proftpd-1.2.8p-i486-1.tgz



INSTALLATION INSTRUCTIONS:
+------------------------+


Upgrade using upgradepkg (as root):
# upgradepkg proftpd-1.2.8p-i386-1.tgz




+-----+

Slackware Linux Security Team
http://slackware.com/gpg-key
security@slackware.com


+------------------------------------------------------------------------+
| HOW TO REMOVE YOURSELF FROM THIS MAILING LIST:                         |
+------------------------------------------------------------------------+
| Send an email to majordomo@slackware.com with this text in the body of |
| the email message:                                                     |
|                                                                        |
|   unsubscribe slackware-security                                       |
|                                                                        |
| You will get a confirmation message back.  Follow the instructions to  |
| complete the unsubscription.  Do not reply to this message to          |
| unsubscribe!                                                           |
+------------------------------------------------------------------------+


-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.3 (GNU/Linux)


iD8DBQE/cS5vakRjwEAQIjMRAkFrAJwJKwrmG8uQcfV7F2t7iYLJc0Ct2wCfU+Ju
iXVgdLU5x2/hPLKAZqo0qXU=
=IFC8
-----END PGP SIGNATURE-----

Vendor Information

The vendor has not provided us with any further information regarding this vulnerability.

Addendum

The CERT/CC has no additional comments at this time.

If you have feedback, comments, or additional information about this vulnerability, please send us email.

Trustix Secure Linux

Updated:  October 07, 2003

Status

  Vulnerable

Vendor Statement

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

- --------------------------------------------------------------------------
Trustix Secure Linux Security Advisory #2003-0037


Package name:      proftpd
Summary:           remote exploit if upload enabled
Date:              2003-09-27
Affected versions: TSL 1.2, 1.5, 2.0


- --------------------------------------------------------------------------
Package description:
 ProFTPd is an enhanced FTP server with a focus toward simplicity,
 security, and ease of configuration.  It features a very Apache-like
 configuration syntax, and a highly customizable server infrastructure,
 including support for multiple 'virtual' FTP servers, anonymous FTP, and
 permission-based directory visibility.



Problem description:
 An error exists in the ASCII upload handling of Proftpd version 1.2.7
 and later that can be used to trigger an buffer overflow and thus
 execute arbitrary code.  This has now been fixed.


Action:
 We recommend that all systems with this package installed be upgraded.
 Please note that if you do not need the functionality provided by this
 package, you may want to remove it from your system.



Location:
 All TSL updates are available from
 <URI:http://www.trustix.net/pub/Trustix/updates/>
 <URI:ftp://ftp.trustix.net/pub/Trustix/updates/>



About Trustix Secure Linux:
 Trustix Secure Linux is a small Linux distribution for servers. With focus
 on security and stability, the system is painlessly kept safe and up to
 date from day one using swup, the automated software updater.



Automatic updates:
 Users of the SWUP tool can enjoy having updates automatically
 installed using 'swup --upgrade'.



Public testing:
 These packages have been available for public testing for some time.
 If you want to contribute by testing the various packages in the
 testing tree, please feel free to share your findings on the
 tsl-discuss mailinglist.
 The testing tree is located at
 <URI:http://www.trustix.net/pub/Trustix/testing/>
 <URI:ftp://ftp.trustix.net/pub/Trustix/testing/>


  You may also use swup for public testing of updates for TSL 2.0 and later:
 
 site {
     class = 0
     location = "http://snow.trustix.org/cloud/rdfs/latest.rdf"
     regexp = ".*"
 }
 


Questions?
 Check out our mailing lists:
 <URI:http://www.trustix.net/support/>



Verification:
 This advisory along with all TSL packages are signed with the TSL sign key.
 This key is available from:
 <URI:http://www.trustix.net/TSL-GPG-KEY>


  The advisory itself is available from the errata pages at
 <URI:http://www.trustix.net/errata/trustix-1.2/>,
 <URI:http://www.trustix.net/errata/trustix-1.5/> and
 <URI:http://www.trustix.net/errata/trustix-2.0/>
 or directly at
 <URI:http://www.trustix.net/errata/misc/2003/TSL-2003-0037-proftpd.asc.txt>



MD5sums of the packages:
- --------------------------------------------------------------------------
429165d5e6335e8ee002184ae91d3fa9  ./1.2/RPMS/proftpd-1.2.8-10tr.i586.rpm
ffc555898ba64d98ccdbc63965ebb5b8  ./1.2/SRPMS/proftpd-1.2.8-10tr.src.rpm
0f8bb15841f731d1e8871d2c12736680  ./1.5/RPMS/proftpd-1.2.8-10tr.i586.rpm
ffc555898ba64d98ccdbc63965ebb5b8  ./1.5/SRPMS/proftpd-1.2.8-10tr.src.rpm
6656d385bc41273678a4b426fb4ba2db  ./2.0/RPMS/proftpd-1.2.8-9tr.i586.rpm
842153ad2b1a982568af28c5be0ff2be  ./2.0/SRPMS/proftpd-1.2.8-9tr.src.rpm
- --------------------------------------------------------------------------



Trustix Security Team

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.2 (GNU/Linux)


iD8DBQE/d4s4wRTcg4BxxS0RApmLAJ9aIc0mGD+EnkcUidG4ELy/l231LACfTu4u
V4Mm+20WMFg18KhTVn42Vlg=
=T2SV
-----END PGP SIGNATURE-----

Vendor Information

The vendor has not provided us with any further information regarding this vulnerability.

Addendum

The CERT/CC has no additional comments at this time.

If you have feedback, comments, or additional information about this vulnerability, please send us email.

TurboLinux

Updated:  October 07, 2003

Status

  Vulnerable

Vendor Statement

No statement is currently available from the vendor regarding this vulnerability.

Vendor Information

The vendor has not provided us with any further information regarding this vulnerability.

Addendum

The TurboLinux Security Team has released Turbolinux Security Advisory TLSA-2003-54 in response to this issue. Users are encouraged to review this advisory and apply the patches it refers to.

If you have feedback, comments, or additional information about this vulnerability, please send us email.


CVSS Metrics

Group Score Vector
Base N/A N/A
Temporal N/A N/A
Environmental N/A

References

Credit

This vulnerability was discovered and researched by Mark Dowd from Internet Security Systems' (ISS) X-Force. The information was originally published by ISS

This document was written by Chad R Dougherty based on information published by ISS.

Other Information

CVE IDs: CVE-2003-0831
Severity Metric: 35.27
Date Public: 2003-09-23
Date First Published: 2003-10-29
Date Last Updated: 2003-10-29 16:21 UTC
Document Revision: 9

Sponsored by the Department of Homeland Security Office of Cybersecurity and Communications.