...
| 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 */
|
Risk Assessment
...