Further, they should not execute any program whose name does not begin with a slash. In al cases they should check their arguments very carefully. They should not cal any of these dangerous subroutines: execip execvp popen system The last two of these can (as we saw above) can involve execution of extra shels not intended by the programmer. Each cal to any of the above, or ot any other form of exec should be preceded by a setuid(getuid()) if at all possible.
https://media.mstdn.social/media_attachments/files/113/794/849/555/105/152/original/c1cbe61ac02770a7.png