diff --git a/dependency-check-core/src/main/java/org/owasp/dependencycheck/analyzer/AbstractSuppressionAnalyzer.java b/dependency-check-core/src/main/java/org/owasp/dependencycheck/analyzer/AbstractSuppressionAnalyzer.java index 4667d5f78..f670c0094 100644 --- a/dependency-check-core/src/main/java/org/owasp/dependencycheck/analyzer/AbstractSuppressionAnalyzer.java +++ b/dependency-check-core/src/main/java/org/owasp/dependencycheck/analyzer/AbstractSuppressionAnalyzer.java @@ -155,6 +155,11 @@ public abstract class AbstractSuppressionAnalyzer extends AbstractAnalyzer { } } if (file != null) { + if (!file.exists()) { + final String msg = String.format("Suppression file '%s' does not exists", file.getPath()); + LOGGER.warn(msg); + throw new SuppressionParseException(msg); + } try { rules.addAll(parser.parseSuppressionRules(file)); LOGGER.debug("{} suppression rules were loaded.", rules.size()); @@ -168,6 +173,8 @@ public abstract class AbstractSuppressionAnalyzer extends AbstractAnalyzer { throwSuppressionParseException("Unable to fetch the configured suppression file", ex); } catch (MalformedURLException ex) { throwSuppressionParseException("Configured suppression file has an invalid URL", ex); + } catch (SuppressionParseException ex) { + throw ex; } catch (IOException ex) { throwSuppressionParseException("Unable to create temp file for suppressions", ex); } finally {