From 0cce49506af3155934cefae792d99c5b643177b7 Mon Sep 17 00:00:00 2001 From: Jeremy Long Date: Sat, 10 Dec 2016 19:58:05 -0500 Subject: [PATCH] added validation --- .../analyzer/RubyBundleAuditAnalyzer.java | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/dependency-check-core/src/main/java/org/owasp/dependencycheck/analyzer/RubyBundleAuditAnalyzer.java b/dependency-check-core/src/main/java/org/owasp/dependencycheck/analyzer/RubyBundleAuditAnalyzer.java index 2376e7d80..82f737fd4 100644 --- a/dependency-check-core/src/main/java/org/owasp/dependencycheck/analyzer/RubyBundleAuditAnalyzer.java +++ b/dependency-check-core/src/main/java/org/owasp/dependencycheck/analyzer/RubyBundleAuditAnalyzer.java @@ -114,8 +114,16 @@ public class RubyBundleAuditAnalyzer extends AbstractFileTypeAnalyzer { throw new AnalysisException(String.format("%s should have been a directory.", folder.getAbsolutePath())); } final List args = new ArrayList(); - final String bundleAuditPath = Settings.getString(Settings.KEYS.ANALYZER_BUNDLE_AUDIT_PATH); - args.add(null == bundleAuditPath ? "bundle-audit" : bundleAuditPath); + String bundleAuditPath = Settings.getString(Settings.KEYS.ANALYZER_BUNDLE_AUDIT_PATH); + File bundleAudit = null; + if (bundleAuditPath != null) { + bundleAudit = new File(bundleAuditPath); + if (!bundleAudit.isFile()) { + LOGGER.warn("Supplied `bundleAudit` path is incorrect: " + bundleAuditPath); + bundleAudit = null; + } + } + args.add(bundleAudit != null && bundleAudit.isFile() ? bundleAudit.getAbsolutePath() : "bundle-audit"); args.add("check"); args.add("--verbose"); final ProcessBuilder builder = new ProcessBuilder(args);