10 More Discussions You Might Find Interesting
1. UNIX for Beginners Questions & Answers
Just learning about the privilege escalation method provided by setuid. Correct me if I am wrong but what it does is change the uid of the current process to whatever uid I set. Right ?
So what stops me from writing my own C program and calling setuid(0) within it and gaining root privileges ?
... (2 Replies)
Discussion started by: sreyan32
2 Replies
2. UNIX for Dummies Questions & Answers
Can anyone explain me difference between setuid and sticky bit? and also between setuid and chown? (3 Replies)
Discussion started by: kkalyan
3 Replies
3. AIX
as far as i understand, if sticky bit is set on a directory, the files created under tht directory cannot be deleted by ordinary user...
but we can do ths by permission itself,,, tht's assign only read permission to tht dirrectory
wht 's the difference? (1 Reply)
Discussion started by: udtyuvaraj
1 Replies
4. Shell Programming and Scripting
I want a file I create to not be deletable by other users so I created a sticky bit by chmod 1644 on the file. chown'd it to root and then tried to delete (via GUI drag to trash and empty) as a non root user and it let me. is sticky bit only good for terminal deletes or something? (4 Replies)
Discussion started by: glev2005
4 Replies
5. UNIX for Advanced & Expert Users
Hi,
I understand the purpose of sticky bit on directories. But I am not very clear about what the sticky bit do on a file.
Can any one explain me in detail and with example please.
Thanks in advance. (1 Reply)
Discussion started by: praveen_b744
1 Replies
6. UNIX for Dummies Questions & Answers
Hi ,
I am having file permision as
drwxrwsr_x
I kwo for deleting a file in the diretory i need w permsion as well ..
Say if i am having the permsion as
drwxrwsrwx - wil any one can delete the files in the directory ..
And one more question what is the s doing there ..... (2 Replies)
Discussion started by: arunkumar_mca
2 Replies
7. Shell Programming and Scripting
Hi frns,
What is command to list out all dir's for which sticky bit has been set.
Regards,
Manu (2 Replies)
Discussion started by: manu.vmr
2 Replies
8. UNIX for Dummies Questions & Answers
I have the sticky bit set on my /tmp directory, but users are still able to remove files that are not owned by them. Does the /etc/group file get invloved in securing these files ?? (1 Reply)
Discussion started by: rob11g
1 Replies
9. UNIX for Dummies Questions & Answers
What command string would you use to set the sticky bit on a directory that you own? (2 Replies)
Discussion started by: mma_buc_98
2 Replies
10. UNIX for Dummies Questions & Answers
I have a questions, whose answer may be very obvious:
Of what use is the sticky-bit permission on a Unix system?
I have looked at the chmod(1) man page on our HP-UX playground
system, and haven't been given much explanation:
Add or delete the save-text-image-on-file-
execution (sticky... (3 Replies)
Discussion started by: LivinFree
3 Replies
SETUID(2) Linux Programmer's Manual SETUID(2)
NAME
setuid - set user identity
SYNOPSIS
#include <sys/types.h>
#include <unistd.h>
int setuid(uid_t uid);
DESCRIPTION
setuid sets the effective user ID of the current process. If the effective userid of the caller is root, the real and saved user ID's are
also set.
Under Linux, setuid is implemented like the POSIX version with the _POSIX_SAVED_IDS feature. This allows a setuid (other than root) pro-
gram to drop all of its user privileges, do some un-privileged work, and then re-engage the original effective user ID in a secure manner.
If the user is root or the program is setuid root, special care must be taken. The setuid function checks the effective uid of the caller
and if it is the superuser, all process related user ID's are set to uid. After this has occurred, it is impossible for the program to
regain root privileges.
Thus, a setuid-root program wishing to temporarily drop root privileges, assume the identity of a non-root user, and then regain root priv-
ileges afterwards cannot use setuid. You can accomplish this with the (non-POSIX, BSD) call seteuid.
RETURN VALUE
On success, zero is returned. On error, -1 is returned, and errno is set appropriately.
ERRORS
EPERM The user is not the super-user, and uid does not match the real or saved user ID of the calling process.
CONFORMING TO
SVr4, SVID, POSIX.1. Not quite compatible with the 4.4BSD call, which sets all of the real, saved, and effective user IDs. SVr4 documents
an additional EINVAL error condition.
LINUX-SPECIFIC REMARKS
Linux has the concept of filesystem user ID, normally equal to the effective user ID. The setuid call also sets the filesystem user ID of
the current process. See setfsuid(2).
If uid is different from the old effective uid, the process will be forbidden from leaving core dumps.
SEE ALSO
getuid(2), setreuid(2), seteuid(2), setfsuid(2)
Linux 1.1.36 1994-07-29 SETUID(2)