Command executed from externally controlled path
Path argument from an unsecure source
Description
This defect occurs when the path to a command executed in the program is constructed from external sources.
Risk
An attacker can:
Change the command that the program executes, possibly to a command that only the attack can control.
Change the environment in which the command executes, by which the attacker controls what the command means and does.
Fix
Before calling the command, validate the path to make sure that it is the intended location.
Extend Checker
By default, Polyspace® assumes that data from external
sources are tainted. See Sources of Tainting in a Polyspace Analysis. To consider any data that does not originate in
the current scope of Polyspace analysis as tainted,
use the command line option -consider-analysis-perimeter-as-trust-boundary
.
Examples
Result Information
Group: Tainted Data |
Language: C | C++ |
Default: Off |
Command-Line Syntax: TAINTED_PATH_CMD |
Impact: Medium |
Version History
Introduced in R2015b
See Also
Execution of externally controlled command
| Use of externally controlled environment variable
| Host change using externally controlled elements
| Library loaded from externally controlled path
| Find defects
(-checkers)
| -consider-analysis-perimeter-as-trust-boundary
Topics
- Interpret Bug Finder Results in Polyspace Desktop User Interface
- Interpret Bug Finder Results in Polyspace Access Web Interface (Polyspace Access)
- Address Results in Polyspace User Interface Through Bug Fixes or Justifications
- Address Results in Polyspace Access Through Bug Fixes or Justifications (Polyspace Access)
- Sources of Tainting in a Polyspace Analysis
- Modify Default Behavior of Bug Finder Checkers