...
There is no portable or guaranteed way to clear out the environment under Windows. Following the recommendations of ENV04-A. Do not call system() if you do not need a command processor, care should be taken to use _execle(), _execlpe(), _execve(), or _execvpe() instead of system() because they allow the the environment to be explicitly specified.
Risk Assessment
Invoking an external program in an attacker-controlled environment is dangerous.
Recommendation | Severity | Likelihood | Remediation Cost | Priority | Level |
|---|---|---|---|---|---|
ENV03-A | high | likely | high | P9 | L2 |
Automated Detection
Compass/ROSE could detect violations of this recommendation. It should ensure that any call to system() or the exec() family (excluding those functions that provide their own environment) is preceded by a call to clearenv().
Risk Assessment
Invoking an external program in an attacker-controlled environment is dangerous.
...
Recommendation
...
Severity
...
Likelihood
...
Remediation Cost
...
Priority
...
Level
...
ENV03-A
...
high
...
likely
...
high
...
P9
...
Related Vulnerabilities
Search for vulnerabilities resulting from the violation of this rule on the CERT website.
...