Vérifiez si un fichier est suid root en Python
Question
Je suis en train de vérifier si un fichier a le bit setuid en Python.
Le doc stat mentionne une fonction S_ISUID
mais il ne fonctionne qu'avec os.chmod()
, non à lire en fait le bit setuid. Il énumère également S_IMODE
, mais je ne sais pas comment l'interpréter.
Comment puis-je vérifier facilement si un fichier comme le bit setuid root?
La solution
stat.S_ISUID est le bit de mode pour 'setuid'. Vous comparez le mode du résultat de stat pour voir si elle contient ce 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
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow