SGI Information for VU#2558

File Transfer Protocol allows data connection hijacking via PASV mode race condition



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.

Vendor References




                         SGI Security Advisory

Title    : Multiple Vulnerabilities and Enhancements in ftpd
Number   : 20030304-01-P
Date     : March 24, 2003
Reference: CERT CA-1997-27
Reference: CERT VU#2558
Reference: CERT VU#258721
Reference: CVE CVE-1999-0017
Reference: CVE CVE-1999-0097
Reference: CVE CVE-1999-0351
Reference: SecurityFocus BID#396
Reference: SGI BUGS 856093 856168 872855 878791 879133 880067
Fixed in : IRIX 6.5.20
Fixed in : Patches 4966 or 4999

- -----------------------
- --- Issue Specifics ---
- -----------------------

It has been reported that there are fundamental design issues in the FTP
protocol which exhibit themselves as vulnerabilities in the ftpd daemon.

  1) The "Pizza Thief" exploit, a minor security issue involving FTP
    connections when the PASV mode is being used.

     See the following URLs for additional details:

  2) The "FTP_PrivilegedPort" exploit, a minor security issue involving FTP
    connections when the PORT mode is being used.

     See the following URLs for additional details:

  3) The ftp client can potentially execute server-specified code during

     See the following URLs for additional details:

This bulletin and the patches referenced herein also address the following
enhancements and fixes:

  4) If the -S switch is used with ftpd, any subsequent flags are ignored.

  5) ftpd needs an option to turn banners off

     This has been requested by some entities as a "security by obscurity"

  6) ftpd filename globbing error.

SGI has investigated the issue and recommends the following steps for
neutralizing the exposure.  It is HIGHLY RECOMMENDED that these measures be
implemented on ALL vulnerable SGI systems.

These issues have been corrected with patches and in future releases of IRIX.

- --------------
- --- Impact ---
- --------------

The /usr/etc/ftpd binary is installed by default on IRIX 6.5 systems as part
of eoe.sw.base.

To determine the version of IRIX you are running, execute the following

  # /bin/uname -R

That will return a result similar to the following:

  # 6.5 6.5.16f

The first number ("6.5") is the release name, the second ("6.5.16f" in this
case) is the extended release name.  The extended release name is the
"version" we refer to throughout this document.

- ----------------------------
- --- Temporary Workaround ---
- ----------------------------

There is no effective workaround available for these problems if ftp server
functionality is needed.  If it is not needed, then you can comment it out
of the /etc/inetd.conf file as shown:

  Find the lines in /etc/inetd.conf for ftp:

    ftp     stream  tcp     nowait  root    /usr/etc/ftpd   ftpd -l
   ftp     stream  tcp6    nowait  root    /usr/etc/ftpd   ftpd -l

  Comment them out by putting a "#" character at the beginning of the lines:

    #ftp     stream  tcp     nowait  root    /usr/etc/ftpd   ftpd -l
   #ftp     stream  tcp6    nowait  root    /usr/etc/ftpd   ftpd -l

  Then issue the command "killall -HUP inetd".

Note that it will no longer be possible to connect to the ftp server after
this.  SGI recommends either upgrading to IRIX 6.5.20 when available, or
installing the appropriate patch from the listing below.

- ----------------
- --- Solution ---
- ----------------

SGI has provided patches for these vulnerabilities. Our recommendation is to
upgrade to IRIX 6.5.20 when available, or install the appropriate patch.

   OS Version     Vulnerable?     Patch #      Other Actions
  ----------     -----------     -------      -------------
  IRIX 3.x        unknown                     Note 1
  IRIX 4.x        unknown                     Note 1
  IRIX 5.x        unknown                     Note 1
  IRIX 6.0.x      unknown                     Note 1
  IRIX 6.1        unknown                     Note 1
  IRIX 6.2        unknown                     Note 1
  IRIX 6.3        unknown                     Note 1
  IRIX 6.4        unknown                     Note 1
  IRIX 6.5          yes                       Notes 2 & 3
  IRIX 6.5.1        yes                       Notes 2 & 3
  IRIX 6.5.2        yes                       Notes 2 & 3
  IRIX 6.5.3        yes                       Notes 2 & 3
  IRIX 6.5.4        yes                       Notes 2 & 3
  IRIX 6.5.5        yes                       Notes 2 & 3
  IRIX 6.5.6        yes                       Notes 2 & 3
  IRIX 6.5.7        yes                       Notes 2 & 3
  IRIX 6.5.8        yes                       Notes 2 & 3
  IRIX 6.5.9        yes                       Notes 2 & 3
  IRIX 6.5.10       yes                       Notes 2 & 3
  IRIX 6.5.11       yes                       Notes 2 & 3
  IRIX 6.5.12       yes                       Notes 2 & 3
  IRIX 6.5.13       yes                       Notes 2 & 3
  IRIX 6.5.14       yes                       Notes 2 & 3
  IRIX 6.5.15m      yes            4999       Note 4
  IRIX 6.5.15f      yes            4999       Note 4
  IRIX 6.5.16m      yes            4999       Note 4
  IRIX 6.5.16f      yes            4999       Note 4
  IRIX 6.5.17m      yes            4999       Note 4
  IRIX 6.5.17f      yes            4999       Note 4
  IRIX 6.5.18m      yes            4999       Note 4
  IRIX 6.5.18f      yes            4999       Note 4
  IRIX 6.5.19m      yes            4966       Note 4
  IRIX 6.5.19f      yes            4966       Note 4
  IRIX 6.5.20        no


     1) This version of the IRIX operating has been retired.
       Upgrade to an actively supported IRIX operating system.
       See for more information.

     2) If you have not received an IRIX 6.5.X CD for IRIX 6.5,
       contact your SGI Support Provider or see the URL:

     3) Upgrade to IRIX 6.5.20 when available.

     4) Install the patch 4966 or 4999.

                ##### Patch File Checksums ####

The actual patch will be a tar file containing the following files:

Filename:                 README.patch.4966
Algorithm #1 (sum -r):    30429 9 README.patch.4966
Algorithm #2 (sum):       5685 9 README.patch.4966
MD5 checksum:             39DDB6631D6C1B480ACC1A3968F26068

Filename:                 patchSG0004966
Algorithm #1 (sum -r):    42639 2 patchSG0004966
Algorithm #2 (sum):       2056 2 patchSG0004966
MD5 checksum:             E687D985CC484946F14F50DBFFBD594C

Filename:                 patchSG0004966.eoe_man
Algorithm #1 (sum -r):    25807 24 patchSG0004966.eoe_man
Algorithm #2 (sum):       24005 24 patchSG0004966.eoe_man
MD5 checksum:             BB6BEE93FBD08DFB9BF54E423F4C8D8B

Filename:                 patchSG0004966.eoe_sw
Algorithm #1 (sum -r):    11787 243 patchSG0004966.eoe_sw
Algorithm #2 (sum):       20503 243 patchSG0004966.eoe_sw
MD5 checksum:             5274BFF4AE60481CDB2D86E2935AB2EC

Filename:                 patchSG0004966.idb
Algorithm #1 (sum -r):    20861 2 patchSG0004966.idb
Algorithm #2 (sum):       57507 2 patchSG0004966.idb
MD5 checksum:             72C2E78FC7E0CEAFC9BA1FEEC68A98A7

Filename:                 README.patch.4999
Algorithm #1 (sum -r):    56850 9 README.patch.4999
Algorithm #2 (sum):       16454 9 README.patch.4999
MD5 checksum:             E601761F27690973ED6F62DEFC1D3EBD

Filename:                 patchSG0004999
Algorithm #1 (sum -r):    29824 4 patchSG0004999
Algorithm #2 (sum):       50625 4 patchSG0004999
MD5 checksum:             3161FF9FA27C290151AC0777FCBED5D2

Filename:                 patchSG0004999.eoe_man
Algorithm #1 (sum -r):    63013 23 patchSG0004999.eoe_man
Algorithm #2 (sum):       18912 23 patchSG0004999.eoe_man
MD5 checksum:             93A9E7416CDFF51C00A904B37716BE14

Filename:                 patchSG0004999.eoe_sw
Algorithm #1 (sum -r):    47031 227 patchSG0004999.eoe_sw
Algorithm #2 (sum):       9364 227 patchSG0004999.eoe_sw
MD5 checksum:             A030266BFE7636F6BE58B29AE4E37338

Filename:                 patchSG0004999.idb
Algorithm #1 (sum -r):    16581 2 patchSG0004999.idb
Algorithm #2 (sum):       57620 2 patchSG0004999.idb
MD5 checksum:             C98A4A3F5550DF0B09CEE17A8C8102A3

- ------------------------
- --- Acknowledgments ----
- ------------------------

SGI wishes to thank Security Focus, CERT, and the users of the Internet
Community at large for their assistance in this matter.

- -------------
- --- Links ---
- -------------

SGI Security Advisories can be found at: and

SGI Security Patches can be found at: and

SGI patches for IRIX can be found at the following patch servers: and

SGI freeware updates for IRIX can be found at:

SGI fixes for SGI open sourced code can be found on:

SGI patches and RPMs for Linux can be found at: or

SGI patches for Windows NT or 2000 can be found at:

IRIX 5.2-6.4 Recommended/Required Patch Sets can be found at: and

IRIX 6.5 Maintenance Release Streams can be found at:

IRIX 6.5 Software Update CDs can be obtained from:

The primary SGI anonymous FTP site for security advisories and patches is (  Security advisories and patches are
located under the URL

For security and patch management reasons, (mirrors security FTP repository) lags behind and does not do a
real-time update.

- -----------------------------------------
- --- SGI Security Information/Contacts ---
- -----------------------------------------

If there are questions about this document, email can be sent to


SGI provides security information and patches for use by the entire SGI
community.  This information is freely available to any person needing the
information and is available via anonymous FTP and the Web.

The primary SGI anonymous FTP site for security advisories and patches is (  Security advisories and patches are
located under the URL

The SGI Security Headquarters Web page is accessible at the URL:

For issues with the patches on the FTP sites, email can be sent to

For assistance obtaining or working with security patches, please
contact your SGI support provider.


SGI provides a free security mailing list service called wiretap and
encourages interested parties to self-subscribe to receive (via email) all
SGI Security Advisories when they are released. Subscribing to the mailing
list can be done via the Web
( or by sending email to
SGI as outlined below.

% mail
subscribe wiretap <YourEmailAddress>

In the example above, <YourEmailAddress> is the email address that you wish
the mailing list information sent to.  The word end must be on a separate
line to indicate the end of the body of the message. The control-d (^d) is
used to indicate to the mail program that you are finished composing the
mail message.


SGI provides a comprehensive customer World Wide Web site. This site is
located at .


If there are general security questions on SGI systems, email can be sent to

For reporting *NEW* SGI security issues, email can be sent to or contact your SGI support provider.  A support
contract is not required for submitting a security report.

     This information is provided freely to all interested parties
     and may be redistributed provided that it is not altered in any
     way, SGI is appropriately credited and the document retains and
     includes its valid PGP signature.

Version: 2.6.2


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