Package: findutils
Version: 4.2.27-2
Severity: important

The select_shell() function in /usr/bin/updatedb has a bug in the way it
calls /bin/su; specifically, it attempts 'su "$LOCALUSER" -s $SHELL false',
which runs '/bin/bash false', thus attempting to execute /bin/false as a
shellscript.  (The exit code 126 and error message 'cannot execute
binary file' are ignored entirely by updatedb.)

The correct usage of su would be to add "-c" after "-s $SHELL" on lines 87
and 91.  This is important if, for instance, the administrator has set
$LOCALUSER's shell to /bin/false (which is how I discovered this bug).

-- System Information:
Debian Release: testing/unstable
  APT prefers testing
  APT policy: (500, 'testing'), (500, 'stable')
Architecture: i386 (i686)
Shell:  /bin/sh linked to /bin/bash
Kernel: Linux 2.6.15-1-k7
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)

Versions of packages findutils depends on:
ii  libc6                         2.3.6-7    GNU C Library: Shared libraries

findutils recommends no packages.

-- no debconf information


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to