...
| Code Block | ||
|---|---|---|
| ||
/* Drop superuser privileges in incorrect order */ if(setuid(getuid()); == -1) { /* handle error condition */ } if(setgid(getgid())); == -1) { /* handle error condition */ } /* It is still possible to regain group privileges due to incorrect relinquishment order */ |
...
| Code Block | ||
|---|---|---|
| ||
/* Drop superuser privileges in correct order */ if(setgid(getgid())); == -1) { /* handle error condition */ } if(setuid(getuid())); == -1) { /* handle error condition */ } /* Not possible to regain group privileges due to correct relinquishment order */ |
...