I just took the RH133 course with Mr. Day at your HQ site this week and found an item that seemed a bit buggy. The instructor informed us that if you were to take "execute" away from /usr/bin/passwd, the SUID bit would go from a small 's' to a capital 'S' thus indicating a problem. This did infact happen. However, he also did say that neither the typical user nor root would be able to execute /usr/bin/passwd. When I tried it though, even though the user account wasn't able to execute /usr/bin/passwd I found that root still could. Was he wrong? Or is this a bug? Thanks.
First of all, this is in no way related to binutils. Second, it depends how you "took away" execute bit. If any of the owner/group/other execute bits are set, root (passwd is owned by root:root) is allowed to execute it.