Extrato de Programas e vulnerabilidades Set-UID :
– Recall that system() invokes /bin/sh first. In Fedora, it execv /bin/sh with arguments "sh", "-c" and the user provided string.
– In Fedora, /bin/sh (actually bash) ignores the Set-UID bit option. Therefore, when invok- ing system (cmd) in a Set-UID program, cmd will not be executed with the root privilege, unless cmd itself is a Set-UID program. The following code in bash drops the Set-UID bit. Actually, I cannot think of any legitimate reason why we need to allow Set-UID shell program. Fedora is doing the right thing; many other Unix OSes have not done this.
De acordo com isso, 1.out não está definido como uid e a.out descarta privilégios antes de executá-lo.