Scientific Linux Security Update : lftp on SL5.x i386/x86_64

This script is Copyright (C) 2012 Tenable Network Security, Inc.

Synopsis :

The remote Scientific Linux host is missing a security update.

Description :

CVE-2007-2348 lftp mirror --script does not escape names and targets
of symbolic links

It was discovered that lftp did not properly escape shell
metacharacters when generating shell scripts using the 'mirror
--script' command. A mirroring script generated to download files from
a malicious FTP server could allow an attacker controlling the FTP
server to run an arbitrary command as the user running lftp.

This update also fixes the following bugs :

- when using the 'mirror' or 'get' commands with the '-c'
option, lftp did not check for some specific conditions
that could result in the program becoming unresponsive,
hanging and the command not completing. For example,
when waiting for a directory listing, if lftp received a
'226' message, denoting an empty directory, it
previously ignored the message and kept waiting. With
this update, these conditions are properly checked for
and lftp no longer hangs when '-c' is used with 'mirror'
or 'get'. (BZ#422881)

- when using the 'put', 'mput' or 'reput' commands over a
Secure FTP (SFTP) connection, specifying the '-c' option
sometimes resulted in corrupted files of incorrect size.
With this update, using these commands over SFTP with
the '-c' option works as expected, and transferred files
are no longer corrupted in the transfer process.

- previously, LFTP linked to the OpenSSL library.
OpenSSL's license is, however, incompatible with LFTP's
GNU GPL license and LFTP does not include an exception
allowing OpenSSL linking. With this update, LFTP links
to the GnuTLS (GNU Transport Layer Security) library,
which is released under the GNU LGPL license. Like
OpenSSL, GnuTLS implements the SSL and TLS protocols, so
functionality has not changed. (BZ#458777)

- running 'help mirror' from within lftp only presented a
sub-set of the available options compared to the full
list presented in the man page. With this update,
running 'help mirror' in lftp presents the same list of
mirror options as is available in the Commands section
of the lftp man page. (BZ#461922)

- LFTP imports gnu-lib from upstream. Subsequent to
gnu-lib switching from GNU GPLv2 to GNU GPLv3, the LFTP
license was internally inconsistent, with LFTP licensed
as GNU GPLv2 but portions of the package apparently
licensed as GNU GPLv3 because of changes made by the
gnu-lib import. With this update, LFTP itself switches
to GNU GPLv3, resolving the inconsistency. (BZ#468858)

- when the 'ls' command was used within lftp to present a
directory listing on a remote system connected to via
HTTP, file names containing spaces were presented
incorrectly. This update corrects this behavior.

- the default alias 'edit' did not define a default
editor. If EDITOR was not set in advance by the system,
lftp attempted to execute '~/.lftp/edit.tmp.$$' (which
failed because the file is not set to executable). The
edit alias also did not support tab-completion of file
names and incorrectly interpreted file names containing
spaces. The updated package defines a default editor
(vi) in the absence of a system-defined EDITOR. The edit
alias now also supports tab-completion and handles file
names containing spaces correctly for both downloading
and uploading. (BZ#504594)

Note: This update upgrades LFTP from version 3.7.3 to upstream version
3.7.11, which incorporates a number of further bug fixes to those
noted above. For details regarding these fixes, refer to the
'/usr/share/doc/lftp-3.7.11/NEWS' file after installing this update.

See also :

Solution :

Update the affected lftp package.

Risk factor :

Medium / CVSS Base Score : 6.8

Family: Scientific Linux Local Security Checks

Nessus Plugin ID: 60654 ()

Bugtraq ID:

CVE ID: CVE-2007-2348

Ready to Amp Up Your Nessus Experience?

Get Nessus Professional to scan unlimited IPs, run compliance checks & more

Buy Nessus Professional Now