Bug 353341 - /sbin/ifup and /sbin/ifdown check $UID and not $EUID when looking for user permissions; fails when running SUID-root.
/sbin/ifup and /sbin/ifdown check $UID and not $EUID when looking for user pe...
Product: Fedora
Classification: Fedora
Component: initscripts (Show other bugs)
i386 Linux
low Severity medium
: ---
: ---
Assigned To: Bill Nottingham
Fedora Extras Quality Assurance
Depends On:
  Show dependency treegraph
Reported: 2007-10-25 18:05 EDT by Chris Ruvolo
Modified: 2014-03-16 23:11 EDT (History)
2 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2008-05-06 15:47:34 EDT
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 Chris Ruvolo 2007-10-25 18:05:20 EDT
Description of problem:

When running /sbin/ifup or /sbin/ifdown via a SUID-root binary, the $UID value
is still set to the user's UID, but the $EUID value is set to 0.  This prevents
the ifdown or ifup scripts from completing.  Instead they give the message:

"Users cannot control this device."

This should obviously not be the case since the EUID is 0.

Version-Release number of selected component (if applicable):

FC6: initscripts-8.45.3-1

How reproducible:

Every time.

Steps to Reproduce:
1. make sure interface config has USERCTL=no
2. make a suid-root binary that operates under euid=0 but uid=X, and calls
3. run the suid-root binary to bring up/down the interface
Actual results:

Users cannot control this device.

Expected results:

interface goes up/down

Additional info:

Workaround is to add USERCTL=yes to the ifcfg-<iface> file, but this makes
security problems.
Comment 1 Bill Nottingham 2007-10-26 12:02:09 EDT
Why is that any more security problems that a different setuid helper?
Comment 2 Chris Ruvolo 2007-10-26 14:50:54 EDT
Hi Bill,

Thanks for looking at this.  My USERCTL=yes security concern is that any user
can then manage the interface in general, which is not what I want.  My suid
wrapper is only for specific conditions.

Do you agree that checking $EUID is the correct action here?

Comment 3 Bug Zapper 2008-04-04 03:39:08 EDT
Fedora apologizes that these issues have not been resolved yet. We're
sorry it's taken so long for your bug to be properly triaged and acted
on. We appreciate the time you took to report this issue and want to
make sure no important bugs slip through the cracks.

If you're currently running a version of Fedora Core between 1 and 6,
please note that Fedora no longer maintains these releases. We strongly
encourage you to upgrade to a current Fedora release. In order to
refocus our efforts as a project we are flagging all of the open bugs
for releases which are no longer maintained and closing them.

If this bug is still open against Fedora Core 1 through 6, thirty days
from now, it will be closed 'WONTFIX'. If you can reporduce this bug in
the latest Fedora version, please change to the respective version. If
you are unable to do this, please add a comment to this bug requesting
the change.

Thanks for your help, and we apologize again that we haven't handled
these issues to this point.

The process we are following is outlined here:

We will be following the process here:
http://fedoraproject.org/wiki/BugZappers/HouseKeeping to ensure this
doesn't happen again.

And if you'd like to join the bug triage team to help make things
better, check out http://fedoraproject.org/wiki/BugZappers
Comment 4 Bug Zapper 2008-05-06 15:47:32 EDT
This bug is open for a Fedora version that is no longer maintained and
will not be fixed by Fedora. Therefore we are closing this bug.

If you can reproduce this bug against a currently maintained version of
Fedora please feel free to reopen thus bug against that version.

Thank you for reporting this bug and we are sorry it could not be fixed.

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