Severity |
Vulnerability Type |
CWE |
File |
Data Flows |
Detected |
Violated Workflows |
Violation Priority |
Violation SLA |
 High |
Command Injection |
|
|
1 |
2025-09-17 07:59AM |
Code Test |
HIGH |
2025-10-17 |
Vulnerable Code
|
logger.info("Pinging: " + host); |
|
|
|
try { |
|
/* START EXAMPLE VULNERABILITY */ |
|
proc = Runtime.getRuntime().exec(new String[] { "bash", "-c", "ping -c1 " + host }); |
|
/* END EXAMPLE VULNERABILITY */ |
|
|
|
proc.waitFor(5, TimeUnit.SECONDS); |
|
InputStreamReader isr = new InputStreamReader(proc.getInputStream()); |
|
BufferedReader br = new BufferedReader(isr); |
Data Flows (1 detected)
|
public String tools(@RequestParam(value = "host", required = false) String host, @RequestParam(value = "fortunefile", required = false) String fortuneFile, Model model) { |
|
model.addAttribute("ping", host != null ? ping(host) : ""); |
|
private String ping(String host) { |
|
proc = Runtime.getRuntime().exec(new String[] { "bash", "-c", "ping -c1 " + host }); |
|
public String tools(@RequestParam(value = "host", required = false) String host, @RequestParam(value = "fortunefile", required = false) String fortuneFile, Model model) { |
|
model.addAttribute("ping", host != null ? ping(host) : ""); |
|
private String ping(String host) { |
|
proc = Runtime.getRuntime().exec(new String[] { "bash", "-c", "ping -c1 " + host }); |
Secure Code Warrior Training Material
🎓 Training
📺 Videos
📚 Further Reading
|
 High |
Command Injection |
|
|
1 |
2025-09-17 07:59AM |
Code Test |
HIGH |
2025-10-17 |
Vulnerable Code
|
String output = ""; |
|
Process proc; |
|
try { |
|
/* START EXAMPLE VULNERABILITY */ |
|
proc = Runtime.getRuntime().exec(new String[] { "bash", "-c", cmd }); |
|
/* END EXAMPLE VULNERABILITY */ |
|
|
|
proc.waitFor(5, TimeUnit.SECONDS); |
|
InputStreamReader isr = new InputStreamReader(proc.getInputStream()); |
|
BufferedReader br = new BufferedReader(isr); |
Data Flows (1 detected)
|
public String tools(@RequestParam(value = "host", required = false) String host, @RequestParam(value = "fortunefile", required = false) String fortuneFile, Model model) { |
|
model.addAttribute("fortunes", fortune(fortuneFile)); |
|
private String fortune(String fortuneFile) { |
|
String cmd = "/bin/fortune " + fortuneFile; |
|
proc = Runtime.getRuntime().exec(new String[] { "bash", "-c", cmd }); |
|
public String tools(@RequestParam(value = "host", required = false) String host, @RequestParam(value = "fortunefile", required = false) String fortuneFile, Model model) { |
|
model.addAttribute("fortunes", fortune(fortuneFile)); |
|
private String fortune(String fortuneFile) { |
|
String cmd = "/bin/fortune " + fortuneFile; |
|
proc = Runtime.getRuntime().exec(new String[] { "bash", "-c", cmd }); |
Secure Code Warrior Training Material
🎓 Training
📺 Videos
📚 Further Reading
|
 High |
SQL Injection |
|
|
1 |
2025-09-17 07:59AM |
Code Test |
HIGH |
2025-10-17 |
Vulnerable Code
|
connect = DriverManager.getConnection(Constants.create().getJdbcConnectionString()); |
|
|
|
// Find the Blabbers |
|
logger.info(blabbersSql); |
|
blabberQuery = connect.prepareStatement(blabbersSql); |
|
blabberQuery.setString(1, username); |
|
blabberQuery.setString(2, username); |
|
ResultSet blabbersResults = blabberQuery.executeQuery(); |
|
/* END EXAMPLE VULNERABILITY */ |
|
|
Data Flows (1 detected)
|
public String showBlabbers( |
|
String blabbersSql = "SELECT users.username," + " users.blab_name," + " users.created_at," |
|
blabberQuery = connect.prepareStatement(blabbersSql); |
|
public String showBlabbers( |
|
String blabbersSql = "SELECT users.username," + " users.blab_name," + " users.created_at," |
|
blabberQuery = connect.prepareStatement(blabbersSql); |
Secure Code Warrior Training Material
🎓 Training
📺 Videos
📚 Further Reading
|
 High |
SQL Injection |
|
|
1 |
2025-09-17 07:59AM |
Code Test |
HIGH |
2025-10-17 |
Vulnerable Code
|
String sqlQuery = "select username, password, password_hint, created_at, last_login, real_name, blab_name from users where username='" |
|
+ username + "' and password='" + md5(password) + "';"; |
|
sqlStatement = connect.createStatement(); |
|
logger.info("Execute the Statement"); |
|
ResultSet result = sqlStatement.executeQuery(sqlQuery); |
|
/* END EXAMPLE VULNERABILITY */ |
|
|
|
// Did we find exactly 1 user that matched? |
|
if (result.first()) { |
|
logger.info("User Found."); |
Data Flows (1 detected)
|
public String processLogin( |
|
String sqlQuery = "select username, password, password_hint, created_at, last_login, real_name, blab_name from users where username='" |
|
ResultSet result = sqlStatement.executeQuery(sqlQuery); |
|
public String processLogin( |
|
String sqlQuery = "select username, password, password_hint, created_at, last_login, real_name, blab_name from users where username='" |
|
ResultSet result = sqlStatement.executeQuery(sqlQuery); |
Secure Code Warrior Training Material
🎓 Training
📺 Videos
📚 Further Reading
|
 High |
SQL Injection |
|
|
1 |
2025-09-17 07:59AM |
Code Test |
HIGH |
2025-10-17 |
Vulnerable Code
|
|
|
String sql = "SELECT password_hint FROM users WHERE username = '" + username + "'"; |
|
logger.info(sql); |
|
Statement statement = connect.createStatement(); |
|
ResultSet result = statement.executeQuery(sql); |
|
if (result.first()) { |
|
String password = result.getString("password_hint"); |
|
String formatString = "Username '" + username + "' has password: %.2s%s"; |
|
logger.info(formatString); |
|
return String.format( |
Data Flows (1 detected)
|
public String showPasswordHint(String username) { |
|
String sql = "SELECT password_hint FROM users WHERE username = '" + username + "'"; |
|
ResultSet result = statement.executeQuery(sql); |
|
public String showPasswordHint(String username) { |
|
String sql = "SELECT password_hint FROM users WHERE username = '" + username + "'"; |
|
ResultSet result = statement.executeQuery(sql); |
Secure Code Warrior Training Material
🎓 Training
📺 Videos
📚 Further Reading
|
 High |
SQL Injection |
|
|
1 |
2025-09-17 07:59AM |
Code Test |
HIGH |
2025-10-17 |
Vulnerable Code
|
Connection connect = DriverManager.getConnection(Constants.create().getJdbcConnectionString()); |
|
|
|
String sql = "SELECT username FROM users WHERE username = '" + username + "'"; |
|
Statement statement = connect.createStatement(); |
|
ResultSet result = statement.executeQuery(sql); |
|
if (result.first()) { |
|
model.addAttribute("error", "Username '" + username + "' already exists!"); |
|
return "register"; |
|
} else { |
|
return "register-finish"; |
Data Flows (1 detected)
|
public String processRegister( |
|
Utils.setSessionUserName(httpRequest, httpResponse, username); |
|
public static void setSessionUserName(HttpServletRequest request, HttpServletResponse response, String value) { |
|
Utils.setSessionUserName(httpRequest, httpResponse, username); |
|
String sql = "SELECT username FROM users WHERE username = '" + username + "'"; |
|
ResultSet result = statement.executeQuery(sql); |
|
public String processRegister( |
|
Utils.setSessionUserName(httpRequest, httpResponse, username); |
|
public static void setSessionUserName(HttpServletRequest request, HttpServletResponse response, String value) { |
|
Utils.setSessionUserName(httpRequest, httpResponse, username); |
|
String sql = "SELECT username FROM users WHERE username = '" + username + "'"; |
|
ResultSet result = statement.executeQuery(sql); |
Secure Code Warrior Training Material
🎓 Training
📺 Videos
📚 Further Reading
|
 High |
SQL Injection |
|
|
1 |
2025-09-17 07:59AM |
Code Test |
HIGH |
2025-10-17 |
Vulnerable Code
|
query.append("'" + blabName + "'"); |
|
query.append(");"); |
|
|
|
sqlStatement = connect.createStatement(); |
|
sqlStatement.execute(query.toString()); |
|
logger.info(query.toString()); |
|
/* END EXAMPLE VULNERABILITY */ |
|
|
|
emailUser(username); |
|
} catch (SQLException | ClassNotFoundException ex) { |
Data Flows (1 detected)
|
public String processRegisterFinish( |
|
query.append("'" + blabName + "'"); |
|
sqlStatement.execute(query.toString()); |
|
public String processRegisterFinish( |
|
query.append("'" + blabName + "'"); |
|
sqlStatement.execute(query.toString()); |
Secure Code Warrior Training Material
🎓 Training
📺 Videos
📚 Further Reading
|
 High |
Path/Directory Traversal |
|
|
1 |
2025-09-17 07:59AM |
Code Test |
HIGH |
2025-10-17 |
Vulnerable Code
|
InputStream inputStream = null; |
|
OutputStream outStream = null; |
|
try { |
|
File downloadFile = new File(path); |
|
inputStream = new FileInputStream(downloadFile); |
|
|
|
// get MIME type of the file |
|
String mimeType = context.getMimeType(path); |
|
if (mimeType == null) { |
|
// set to binary type if MIME mapping not found |
Data Flows (1 detected)
|
public String downloadImage( |
|
String path = context.getRealPath("/resources/images") + File.separator + imageName; |
|
File downloadFile = new File(path); |
|
inputStream = new FileInputStream(downloadFile); |
|
public String downloadImage( |
|
String path = context.getRealPath("/resources/images") + File.separator + imageName; |
|
File downloadFile = new File(path); |
|
inputStream = new FileInputStream(downloadFile); |
Secure Code Warrior Training Material
🎓 Training
📺 Videos
📚 Further Reading
|
 High |
Unsafe Format String |
|
|
1 |
2025-09-17 07:59AM |
Code Test |
HIGH |
2025-10-17 |
Vulnerable Code
|
if (result.first()) { |
|
String password = result.getString("password_hint"); |
|
String formatString = "Username '" + username + "' has password: %.2s%s"; |
|
logger.info(formatString); |
|
return String.format( |
|
formatString, |
|
password, |
|
String.format("%0" + (password.length() - 2) + "d", 0).replace("0", "*")); |
|
} else { |
|
return "No password found for " + username; |
Data Flows (1 detected)
|
public String showPasswordHint(String username) { |
|
String formatString = "Username '" + username + "' has password: %.2s%s"; |
|
public String showPasswordHint(String username) { |
|
String formatString = "Username '" + username + "' has password: %.2s%s"; |
Secure Code Warrior Training Material
|
 High |
Path/Directory Traversal |
|
|
1 |
2025-09-17 07:59AM |
Code Test |
HIGH |
2025-10-17 |
Vulnerable Code
|
String path = imageDir + username + extension; |
|
|
|
logger.info("Saving new profile image: " + path); |
|
|
|
file.transferTo(new File(path)); // will delete any existing file first |
|
} catch (IllegalStateException | IOException ex) { |
|
logger.error(ex); |
|
} |
|
} |
|
|
Data Flows (1 detected)
|
public String processProfile( |
|
String extension = file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf(".")); |
|
String path = imageDir + username + extension; |
|
file.transferTo(new File(path)); // will delete any existing file first |
|
public String processProfile( |
|
String extension = file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf(".")); |
|
String path = imageDir + username + extension; |
|
file.transferTo(new File(path)); // will delete any existing file first |
Secure Code Warrior Training Material
🎓 Training
📺 Videos
📚 Further Reading
|
Code Security Report
Scan Metadata
Latest Scan: 2025-09-17 07:58AM
Total Findings: 74 | New Findings: 0 | Resolved Findings: 0
Tested Project Files: 31
Detected Programming Languages: 2 (Java*, JavaScript / TypeScript*)
Most Relevant Findings
verademo/app/src/main/java/com/veracode/verademo/controller/ToolsController.java
Lines 49 to 58 in f9e0dc6
Data Flows (1 detected)
verademo/app/src/main/java/com/veracode/verademo/controller/ToolsController.java
Line 34 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/controller/ToolsController.java
Line 35 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/controller/ToolsController.java
Line 45 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/controller/ToolsController.java
Line 53 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/controller/ToolsController.java
Line 34 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/controller/ToolsController.java
Line 35 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/controller/ToolsController.java
Line 45 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/controller/ToolsController.java
Line 53 in f9e0dc6
🎓 Training
📺 Videos
📚 Further Reading
verademo/app/src/main/java/com/veracode/verademo/controller/ToolsController.java
Lines 79 to 88 in f9e0dc6
Data Flows (1 detected)
verademo/app/src/main/java/com/veracode/verademo/controller/ToolsController.java
Line 34 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/controller/ToolsController.java
Line 40 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/controller/ToolsController.java
Line 76 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/controller/ToolsController.java
Line 77 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/controller/ToolsController.java
Line 83 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/controller/ToolsController.java
Line 34 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/controller/ToolsController.java
Line 40 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/controller/ToolsController.java
Line 76 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/controller/ToolsController.java
Line 77 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/controller/ToolsController.java
Line 83 in f9e0dc6
🎓 Training
📺 Videos
📚 Further Reading
verademo/app/src/main/java/com/veracode/verademo/controller/BlabController.java
Lines 460 to 469 in f9e0dc6
Data Flows (1 detected)
verademo/app/src/main/java/com/veracode/verademo/controller/BlabController.java
Line 426 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/controller/BlabController.java
Line 450 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/controller/BlabController.java
Line 464 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/controller/BlabController.java
Line 426 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/controller/BlabController.java
Line 450 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/controller/BlabController.java
Line 464 in f9e0dc6
🎓 Training
📺 Videos
📚 Further Reading
verademo/app/src/main/java/com/veracode/verademo/controller/UserController.java
Lines 161 to 170 in f9e0dc6
Data Flows (1 detected)
verademo/app/src/main/java/com/veracode/verademo/controller/UserController.java
Line 130 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/controller/UserController.java
Line 161 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/controller/UserController.java
Line 165 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/controller/UserController.java
Line 130 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/controller/UserController.java
Line 161 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/controller/UserController.java
Line 165 in f9e0dc6
🎓 Training
📺 Videos
📚 Further Reading
verademo/app/src/main/java/com/veracode/verademo/controller/UserController.java
Lines 245 to 254 in f9e0dc6
Data Flows (1 detected)
verademo/app/src/main/java/com/veracode/verademo/controller/UserController.java
Line 234 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/controller/UserController.java
Line 246 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/controller/UserController.java
Line 249 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/controller/UserController.java
Line 234 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/controller/UserController.java
Line 246 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/controller/UserController.java
Line 249 in f9e0dc6
🎓 Training
📺 Videos
📚 Further Reading
verademo/app/src/main/java/com/veracode/verademo/controller/UserController.java
Lines 306 to 315 in f9e0dc6
Data Flows (1 detected)
verademo/app/src/main/java/com/veracode/verademo/controller/UserController.java
Line 294 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/controller/UserController.java
Line 300 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/utils/Utils.java
Line 27 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/controller/UserController.java
Line 300 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/controller/UserController.java
Line 308 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/controller/UserController.java
Line 310 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/controller/UserController.java
Line 294 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/controller/UserController.java
Line 300 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/utils/Utils.java
Line 27 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/controller/UserController.java
Line 300 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/controller/UserController.java
Line 308 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/controller/UserController.java
Line 310 in f9e0dc6
🎓 Training
📺 Videos
📚 Further Reading
verademo/app/src/main/java/com/veracode/verademo/controller/UserController.java
Lines 370 to 379 in f9e0dc6
Data Flows (1 detected)
verademo/app/src/main/java/com/veracode/verademo/controller/UserController.java
Line 332 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/controller/UserController.java
Line 370 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/controller/UserController.java
Line 374 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/controller/UserController.java
Line 332 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/controller/UserController.java
Line 370 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/controller/UserController.java
Line 374 in f9e0dc6
🎓 Training
📺 Videos
📚 Further Reading
verademo/app/src/main/java/com/veracode/verademo/controller/UserController.java
Lines 663 to 672 in f9e0dc6
Data Flows (1 detected)
verademo/app/src/main/java/com/veracode/verademo/controller/UserController.java
Line 643 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/controller/UserController.java
Line 659 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/controller/UserController.java
Line 666 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/controller/UserController.java
Line 667 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/controller/UserController.java
Line 643 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/controller/UserController.java
Line 659 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/controller/UserController.java
Line 666 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/controller/UserController.java
Line 667 in f9e0dc6
🎓 Training
📺 Videos
📚 Further Reading
verademo/app/src/main/java/com/veracode/verademo/controller/UserController.java
Lines 250 to 259 in f9e0dc6
Data Flows (1 detected)
verademo/app/src/main/java/com/veracode/verademo/controller/UserController.java
Line 234 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/controller/UserController.java
Line 252 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/controller/UserController.java
Line 254 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/controller/UserController.java
Line 234 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/controller/UserController.java
Line 252 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/controller/UserController.java
Line 254 in f9e0dc6
🎓 Training
verademo/app/src/main/java/com/veracode/verademo/controller/UserController.java
Lines 625 to 634 in f9e0dc6
Data Flows (1 detected)
verademo/app/src/main/java/com/veracode/verademo/controller/UserController.java
Line 524 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/controller/UserController.java
Line 624 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/controller/UserController.java
Line 625 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/controller/UserController.java
Line 629 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/controller/UserController.java
Line 524 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/controller/UserController.java
Line 624 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/controller/UserController.java
Line 625 in f9e0dc6
verademo/app/src/main/java/com/veracode/verademo/controller/UserController.java
Line 629 in f9e0dc6
🎓 Training
📺 Videos
📚 Further Reading
Findings Overview