Bug 986773 - (CVE-2013-4159) CVE-2013-4159 ctdb: /tmp file vulnerability issues
CVE-2013-4159 ctdb: /tmp file vulnerability issues
Status: NEW
Product: Security Response
Classification: Other
Component: vulnerability (Show other bugs)
All Linux
low Severity low
: ---
: ---
Assigned To: Red Hat Product Security
: Security
Depends On: 989026 989027 1102900
Blocks: 986520 1074598
  Show dependency treegraph
Reported: 2013-07-22 00:47 EDT by Kurt Seifried
Modified: 2017-01-26 21:56 EST (History)
8 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed:
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)

  None (edit)
Description Kurt Seifried 2013-07-22 00:47:50 EDT
Kurt Seifried (kseifried@redhat.com) reports:

While looking at various components for Storage I ran across some tmp file issues in ctdb:

./ctdb-	const char *lock_path = "/tmp/.ctdb_socket_lock";
        const char *lock_path = "/tmp/.ctdb_socket_lock";
        struct flock lock;
        int one = 1;
        int sock_size;

        /* in order to ensure that we don't get two nodes with the                                                                                                                                              
           same adddress, we must make the bind() and listen() calls                                                                                                                                            
           atomic. The SO_REUSEADDR setsockopt only prevents double                                                                                                                                             
           binds if the first socket is in LISTEN state  */
        lock_fd = open(lock_path, O_RDWR|O_CREAT, 0666);
        if (lock_fd == -1) {
                DEBUG(DEBUG_CRIT,("Unable to open %s\n", lock_path));
                return -1;
./ctdb-		" >/tmp/ctdb.event.%s.%d", tbuf, getpid());
        sprintf(buf, "{ pstree -p; cat /proc/locks; ls -li /var/ctdb/ /var/ctdb/persistent; }"
                " >/tmp/ctdb.event.%s.%d", tbuf, getpid());
./ctdb-     tmpf=/tmp/`basename $f`.node$i
./ctdb-     tmpf=/tmp/`basename $f`.node$i
shell script, easy to exploit.
shell script, easy to exploit.
./ctdb- defaults to /tmp/ctdb.socket
./ctdb- CTDB_SOCKET=/tmp/ctdb.socket
This appears to be used unsafely later on
./ctdb- CTDB_PATH	"/tmp/ctdb.socket"
This appears to be used unsafely later on

It varies a bit in newer versions but the core problems are present.
Comment 2 Kurt Seifried 2013-08-22 15:13:30 EDT
Upstream bug: https://bugzilla.samba.org/show_bug.cgi?id=10104
Comment 3 Tomas Hoger 2014-03-10 11:28:07 EDT
(In reply to Kurt Seifried from comment #0)
> ./ctdb-
>         const char *lock_path = "/tmp/.ctdb_socket_lock";

Fixed upstream in:

> ./ctdb-
>         sprintf(buf, "{ pstree -p; cat /proc/locks; ls -li /var/ctdb/ /var/ctdb/persistent; }"
>                 " >/tmp/ctdb.event.%s.%d", tbuf, getpid());
>         system(buf);

Removed upstream and replaced by an external script:

> ========================================
> ./ctdb-
> ERRORS="/tmp/diag_err.$$"
>      tmpf=/tmp/`basename $f`.node$i
>      tmpf=/tmp/`basename $f`.node$i

Fixed upstream in:

> ./ctdb-
> BATCHFILE_PRE=/tmp/gdb_backtrace_pre.$$
> BATCHFILE_MAIN=/tmp/gdb_backtrace_main.$$

Removed upstream in:

This only exists in ctdb srpm in Red Hat Enterprise Linux 6, but the script is not shipped as part of ctdb binary packages.

> ./ctdb-
> # defaults to /tmp/ctdb.socket
> # CTDB_SOCKET=/tmp/ctdb.socket

> ./ctdb-
> #define CTDB_PATH	"/tmp/ctdb.socket"

Fixed upstream in:
Comment 7 Kurt Seifried 2014-05-29 15:14:36 EDT
Created ctdb tracking bugs for this issue:

Affects: fedora-all [bug 1102900]
Comment 8 Kurt Seifried 2014-05-30 00:20:47 EDT

Red Hat Storage 2 is now in Extended Life Cycle phase of the support and maintenance life cycle. This issue is not currently planned to be addressed in future updates. For additional information, refer to the Red Hat Enterprise Linux Life Cycle: https://access.redhat.com/site/support/policy/updates/rhs
Comment 9 Stefan Cornelius 2014-06-11 07:17:23 EDT

The Red Hat Security Response Team has rated this issue as having Low security impact. A future update may address this issue. For additional information, refer to the Issue Severity Classification: https://access.redhat.com/security/updates/classification/.
Comment 10 Fedora Update System 2014-12-20 03:36:16 EST
ctdb-2.5.4-2.fc20 has been pushed to the Fedora 20 stable repository.  If problems still persist, please make note of it in this bug report.

Note You need to log in before you can comment on or make changes to this bug.