Results 1 to 9 of 9

Thread: Suid root seems not to work - Getting SUIDcidal ;-)

  1. #1
    Junior Member
    Join Date
    Jul 2005
    Posts
    2

    Suid root seems not to work - Getting SUIDcidal ;-)

    Greetings!

    As I'm using Kanotix (which doesn't seem to have such an extensive forum) and it's based on Knoppix, I figure I'll post this question here.

    For a program which will use the parallel port for digital I/O, I'm trying to get access to the port WITHOUT being root (no sudo, either). For this, I've compiled a simple program in C, but it keeps complaining it has no permissions to access the port (/dev/parport0). Port permissions are as follows:

    Code:
    crw-rw-rw-  1 root root 99, 0 Feb  9 19:40 /dev/parport0
    The program has been compiled using gcc -O1 -o test test.c, after which I've issued (as root):

    Code:
    chown root:users test
    chmod u+s test
    I figured it should work now, but it doesn't. Keeps complaining about permissions.

    Furthermore I've tried creating a file foo.txt and done chmod 600 foo.txt. Then made an executable script bar.sh, which just cat's foo.txt. Then:

    Code:
    chown root:users bar.sh
    chmod u+s bar.sh
    Executing bar.sh also gives permission errors. So in other words: what gives? I'm stumped, but I've probably misunderstood how suid root works. Any help would be greatly appreciated.

    Thanks in advance,

    Marc.

  2. #2
    Junior Member
    Join Date
    Jul 2005
    Posts
    2

    Solved - sort of

    Well, that wasn't too hard. After putting my program in a directory in the path, all seems well. OTOH, it doesn't work when it's in a directory that only belongs to my personal path. Does it have to be in the root's path somewhere?

  3. #3
    Senior Member registered user
    Join Date
    Nov 2002
    Location
    USA, IL
    Posts
    1,041

    Re: Solved - sort of

    That's weird, man.

    Quote Originally Posted by mvandoornik
    Well, that wasn't too hard. After putting my program in a directory in the path, all seems well. OTOH, it doesn't work when it's in a directory that only belongs to my personal path. Does it have to be in the root's path somewhere?

  4. #4
    Senior Member registered user
    Join Date
    Aug 2003
    Posts
    126
    If Kanotix is similar Knoppix I guess the $PATH variable for root has a different (more restricted) set of paths to a normal user. This is partly for security.
    This can be tested by
    Code:
    $PATH
    followed by <enter> at a terminal window. Do this for root and for a normal user and see if this helps explain what has happened.

  5. #5
    Senior Member registered user
    Join Date
    Nov 2002
    Location
    USA, IL
    Posts
    1,041
    I think you meant:
    echo $PATH

    Quote Originally Posted by markpreston
    If Kanotix is similar Knoppix I guess the $PATH variable for root has a different (more restricted) set of paths to a normal user. This is partly for security.
    This can be tested by
    Code:
    $PATH
    followed by <enter> at a terminal window. Do this for root and for a normal user and see if this helps explain what has happened.

  6. #6
    Senior Member registered user
    Join Date
    Apr 2004
    Location
    Germany
    Posts
    100
    > Executing bar.sh also gives permission errors.

    The suid permission bit is ignored for scripts for security reasons. Suid for "true" executables only give the *effective* UID,
    not the *real* UID. This can make a difference, e.g. as in cpio.

  7. #7
    Senior Member registered user
    Join Date
    Aug 2003
    Posts
    126
    Hi Dave,
    $PATH alone works as well for this.
    mark@z:~$ $PATH
    bash: /home/mark/.dist/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin:/usr/local/sbin:/usr/local/bin:/usr/games:.: No such file or directory
    mark@z:~$
    mark@z:~$ su
    Password:
    root@z:/home/mark# $PATH
    bash: /sbin:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin:/usr/local/sbin:/usr/local/bin:/usr/games: No such file or directory
    root@z:/home/mark#
    I think you meant:
    echo $PATH

  8. #8
    Senior Member registered user
    Join Date
    Nov 2002
    Location
    USA, IL
    Posts
    1,041
    --Yes, but it's not proper *nix form to try and _execute_ your PATH variable. Somebody could attack you that way.

    Quote Originally Posted by markpreston
    Hi Dave,
    $PATH alone works as well for this.
    mark@z:~$ $PATH
    bash: /home/mark/.dist/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin:/usr/local/sbin:/usr/local/bin:/usr/games:.: No such file or directory
    mark@z:~$
    mark@z:~$ su
    Password:
    root@z:/home/mark# $PATH
    bash: /sbin:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin:/usr/local/sbin:/usr/local/bin:/usr/games: No such file or directory
    root@z:/home/mark#
    I think you meant:
    echo $PATH

  9. #9
    Senior Member registered user
    Join Date
    Aug 2003
    Posts
    126
    Quote Originally Posted by Dave_Bechtel
    --Yes, but it's not proper *nix form to try and _execute_ your PATH variable. Somebody could attack you that way.
    Thanks Dave,
    At least I now know what you were concerned about.
    Regards,
    Mark

Similar Threads

  1. GUI Config editors not work as root.
    By pterandon in forum General Support
    Replies: 0
    Last Post: 06-04-2006, 03:41 AM
  2. Help - root-shell and su and sudo command do not work
    By GameMage in forum General Support
    Replies: 2
    Last Post: 11-12-2005, 06:44 AM
  3. KDE sys notification sounds work in root but not in user
    By lestat730 in forum Hdd Install / Debian / Apt
    Replies: 8
    Last Post: 01-20-2005, 07:05 AM
  4. language settings work only for root for some applications
    By jackren in forum Hdd Install / Debian / Apt
    Replies: 0
    Last Post: 08-29-2003, 01:02 PM
  5. Replies: 6
    Last Post: 01-27-2003, 05:18 PM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  


Samsung MLT-R116 Imaging Unit Xpress M2625 M2675 M2825 M2875 M2885 M3015 OEM NEW picture

Samsung MLT-R116 Imaging Unit Xpress M2625 M2675 M2825 M2875 M2885 M3015 OEM NEW

$49.99



samsung 350xba-K05 Chrome book 4 128GB 4G Ram Intel Celeron N4000 picture

samsung 350xba-K05 Chrome book 4 128GB 4G Ram Intel Celeron N4000

$149.00



Samsung Galaxy Tab A11+ 11in 6GB RAM 256MB Wi‑Fi + 5G Tablet Gray picture

Samsung Galaxy Tab A11+ 11in 6GB RAM 256MB Wi‑Fi + 5G Tablet Gray

$199.00



Samsung Galaxy Tab Active 3/  64 gig/WIFI picture

Samsung Galaxy Tab Active 3/ 64 gig/WIFI

$85.00



Samsung SCXSTP000, SCX-STP000 (Swingline Staple Cartridge - 3 Refills) picture

Samsung SCXSTP000, SCX-STP000 (Swingline Staple Cartridge - 3 Refills)

$57.99



Magnetic Leather Flip Case with Stand for Samsung Tab S9 S9+ S10+ S10 Ultra picture

Magnetic Leather Flip Case with Stand for Samsung Tab S9 S9+ S10+ S10 Ultra

$20.99



Kids Case for Samsung Galaxy Tab A9+/A9 plus 11 Inch 2023 Case, with Strap, Shoc picture

Kids Case for Samsung Galaxy Tab A9+/A9 plus 11 Inch 2023 Case, with Strap, Shoc

$27.99



Samsung PC4-2666V 16GB 2Rx8 RAM DDR4 2666MHz M471A2K43CB1-CTD picture

Samsung PC4-2666V 16GB 2Rx8 RAM DDR4 2666MHz M471A2K43CB1-CTD

$59.99



Samsung Chomrebook XE350XBA-K02US LCD Screen FHD Display 15.6

Samsung Chomrebook XE350XBA-K02US LCD Screen FHD Display 15.6" XE350XBA-K03US

$51.77



Original for Samsung NP950QCG-K01US LCD Screen Touch Full Top Assembly FHD Blue picture

Original for Samsung NP950QCG-K01US LCD Screen Touch Full Top Assembly FHD Blue

$299.00