Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improper Neutralization of Special Elements used in an OS Command ('OS Command Injection') [VID:78:com/scalesec/vulnado/Cowsay.java:16] #4

Open
veracode-workflow-app bot opened this issue Dec 18, 2024 · 0 comments
Labels
Veracode Pipeline Scan A Veracode Flaw found during a Pipeline Scan VeracodeFlaw: Very High A Veracode Flaw, Very High severity

Comments

@veracode-workflow-app
Copy link

processBuilder.command("bash", "-c", cmd);
StringBuilder output = new StringBuilder();
try {
Process process = processBuilder.start();
BufferedReader reader = new BufferedReader(new InputStreamReader(process.getInputStream()));
String line;
while ((line = reader.readLine()) != null) {
output.append(line + "\n");

Filename: com/scalesec/vulnado/Cowsay.java

Line: 16

CWE: 78 (Improper Neutralization of Special Elements used in an OS Command ('OS Command Injection'))

This call to java.lang.ProcessBuilder.start() contains a command injection flaw. The argument to the function is constructed using untrusted input. If an attacker is allowed to specify all or part of the command, it may be possible to execute commands on the server with the privileges of the executing process. The level of exposure depends on the effectiveness of input validation routines, if any. start() was called on the processBuilder object, which contains tainted data. The tainted data originated from an earlier call to AnnotationVirtualController.vc_annotation_entry. Validate all untrusted input to ensure that it conforms to the expected format, using centralized data validation routines when possible. When using blocklists, be sure that the sanitizing routine performs a sufficient number of iterations to remove all instances of disallowed characters. Most APIs that execute system commands also have a "safe" version of the method that takes an array of strings as input rather than a single string, which protects against some forms of command injection. References: CWE OWASP/nDon't know how to fix this? Don't know why this was reported?
Get Assistance from Veracode

@veracode-workflow-app veracode-workflow-app bot added Veracode Pipeline Scan A Veracode Flaw found during a Pipeline Scan VeracodeFlaw: Very High A Veracode Flaw, Very High severity labels Dec 18, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Veracode Pipeline Scan A Veracode Flaw found during a Pipeline Scan VeracodeFlaw: Very High A Veracode Flaw, Very High severity
Projects
None yet
Development

No branches or pull requests

0 participants