检查文件是否在Python setuid root的
题
我想检查文件是否具有setuid位Python编写的。
静DOC 提到了S_ISUID
功能,但它仅与os.chmod()
工作,不实际读取setuid位。它还列出S_IMODE
,但我不知道如何解释它。
如何容易地检查文件是否为根的setuid比特集合?
解决方案
stat.S_ISUID是关于 '的setuid' 模式位。你比较的统计结果的模式,看它是否包含位:
>>> ping = os.stat('/bin/ping')
>>> ping.st_mode & stat.S_ISUID
2048
>>> echo = os.stat('/bin/echo')
>>> echo.st_mode & stat.S_ISUID
0
不隶属于 StackOverflow