CWE-214: Invocation of Process Using Visible Sensitive Information

Export to Word

Description

A process is invoked with sensitive command-line arguments, environment variables, or other elements that can be seen by other processes on the operating system.

Extended Description

Many operating systems allow a user to list information about processes that are owned by other users. Other users could see information such as command line arguments or environment variable settings. When this data contains sensitive information such as credentials, it might allow other users to launch an attack against the product or related resources.


ThreatScore

Threat Mapped score: 3.25

Industry: Finiancial

Threat priority: P2 - Serious (High)


Observed Examples (CVEs)

Related Attack Patterns (CAPEC)

N/A


Attack TTPs

N/A

Modes of Introduction

Phase Note
Architecture and Design N/A
Implementation REALIZATION: This weakness is caused during implementation of an architectural security tactic.
Operation N/A

Common Consequences

Potential Mitigations

Applicable Platforms


Demonstrative Examples

Intro: In the example below, the password for a keystore file is read from a system property.

Body: If the property is defined on the command line when the program is invoked (using the -D... syntax), the password may be displayed in the OS process list.

String keystorePass = System.getProperty("javax.net.ssl.keyStorePassword"); if (keystorePass == null) { System.err.println("ERROR: Keystore password not specified."); System.exit(-1); } ...

Notes

← Back to CWE list