Bug 1036136 - tmux: local denial of service by creating /tmp/tmux-$UID files
tmux: local denial of service by creating /tmp/tmux-$UID files
Status: CLOSED WONTFIX
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: tmux (Show other bugs)
7.0
Unspecified Unspecified
high Severity unspecified
: rc
: ---
Assigned To: David Cantrell
Release Test Team
:
Depends On: 753882
Blocks: 1036120
  Show dependency treegraph
 
Reported: 2013-11-29 09:24 EST by Florian Weimer
Modified: 2016-05-23 10:39 EDT (History)
3 users (show)

See Also:
Fixed In Version: tmux-1.8-5.el7
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
: 1264783 (view as bug list)
Environment:
Last Closed: 2016-05-23 10:24:39 EDT
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)


External Trackers
Tracker ID Priority Status Summary Last Updated
Debian BTS 529082 None None None Never

  None (edit)
Description Florian Weimer 2013-11-29 09:24:07 EST
This has already been reported as a Debian bug, <http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=529082>.  If another user creates a path /tmp/tmux-$UID, user $UID cannot start tmux.

An easy fix would use XDG_RUNTIME_DIR by default, but that depends on fixing bug 753882.
Comment 3 David Cantrell 2014-08-12 14:50:03 EDT
Denied by PM for 7.1, moving to 7.2 planning list.  :/
Comment 5 David Cantrell 2015-07-17 14:06:20 EDT
Denied by PM for 7.2, moving to the 7.3 planning list.
Comment 7 David Cantrell 2016-02-08 06:23:58 EST
Tired of dragging this one forward and never getting it approved.  Approving for 7.3.  Will implement what Debian did for this problem so there is at least some consistency across vendors (plus, Debian's fix has been present in their packages since 2009).
Comment 12 Tomas Hoger 2016-05-20 09:38:45 EDT
(In reply to Florian Weimer from comment #0)
> An easy fix would use XDG_RUNTIME_DIR by default

And that is not the fix we're trying to apply.  Instead, there are attempts to move socket file to /run and make tmux sgid to be able to write there.

I do not believe upstream tests or supports running tmux as sgid.  I see that both Debian and Fedora used to have sgid tmux at some point, but abandoned the idea.

Fedora:

http://pkgs.fedoraproject.org/cgit/rpms/tmux.git/commit/?id=d659dacd7ed7df042c3c844a93f92961e978981f

Debian has this in NEWS.Debian:

tmux (1.4-7) unstable; urgency=low

  Starting with version 1.4-7, tmux is no longer installed setgid utmp and
  server sockets are no longer placed under /var/run/tmux, reverting to
  the default upstream behavior (sockets in a user directory under /tmp).

  We recommend that you close any open tmux sessions before proceeding
  with the upgrade. If necessary, old servers can be accessed after the
  upgrade with e.g. "tmux -S /var/run/tmux/tmux-`id -u`/default attach".

 -- Romain Francoise <rfrancoise@debian.org>  Sat, 16 Apr 2011 19:16:23 +0200

SUSE also rejected setgid approach, afaics:

https://bugzilla.novell.com/show_bug.cgi?id=567398#c3


Do we have a reason to believe that the approach that turned out to be wrong for both Fedora and Debian is the right thing to do for RHEL?

Florian, any thoughts from you as the reporter of this issue?
Comment 13 David Cantrell 2016-05-23 10:24:39 EDT
Following upstream and other major distributions and not installing tmux as setgid.

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