Tutorial :Check if a file is setuid root in Python



Question:

I'm trying to check if a file has the setuid bit in Python.

The stat doc mentions a S_ISUID function but it only works with os.chmod(), not to actually read the setuid bit. It also lists S_IMODE, but I have no idea how to interpret it.

How can I easily check if a file as the setuid root bit set?


Solution:1

stat.S_ISUID is the mode bit for 'setuid'. You compare the stat result's mode to see if it contains that bit:

>>> ping = os.stat('/bin/ping')  >>> ping.st_mode & stat.S_ISUID  2048  >>> echo = os.stat('/bin/echo')  >>> echo.st_mode & stat.S_ISUID  0  

Note:If u also have question or solution just comment us below or mail us on toontricks1994@gmail.com
Previous
Next Post »