Skip to content

NPE when processing CVE-2025-32915 #7887

@timnieder

Description

@timnieder

Precondition

  • I checked the issues list for existing open or closed reports of the same problem.

Describe the bug
When updating the database dependency check fails during processing of CVE-2025-32915.
This is because of a (I presume) malformed cve configuration.

Version of dependency-check used
12.1.3, cli & maven

Log file

Log output
[ERROR] Failed to process CVE-2025-32915
java.lang.NullPointerException
    at java.util.stream.ReferencePipeline$7$1.accept (ReferencePipeline.java:273)
    at java.util.stream.ReferencePipeline$3$1.accept (ReferencePipeline.java:197)
    at java.util.ArrayList$ArrayListSpliterator.forEachRemaining (ArrayList.java:1708)
    at java.util.stream.AbstractPipeline.copyInto (AbstractPipeline.java:509)
    at java.util.stream.AbstractPipeline.wrapAndCopyInto (AbstractPipeline.java:499)
    at java.util.stream.ReduceOps$ReduceOp.evaluateSequential (ReduceOps.java:921)
    at java.util.stream.AbstractPipeline.evaluate (AbstractPipeline.java:234)
    at java.util.stream.ReferencePipeline.collect (ReferencePipeline.java:682)
    at org.owasp.dependencycheck.data.nvd.ecosystem.CveEcosystemMapper.hasMultipleVendorProductConfigurations (CveEcosystemMapper.java:93)
    at org.owasp.dependencycheck.data.nvd.ecosystem.CveEcosystemMapper.getEcosystem (CveEcosystemMapper.java:66)
    at org.owasp.dependencycheck.data.update.nvd.api.NvdApiProcessor.updateCveDb (NvdApiProcessor.java:119)
    at org.owasp.dependencycheck.data.update.nvd.api.NvdApiProcessor.call (NvdApiProcessor.java:102)
    at org.owasp.dependencycheck.data.update.nvd.api.NvdApiProcessor.call (NvdApiProcessor.java:40)
    at java.util.concurrent.FutureTask.run (FutureTask.java:317)
    at java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1144)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run (ThreadPoolExecutor.java:642)
    at java.lang.Thread.run (Thread.java:1583)
CVE Definition

Link: https://services.nvd.nist.gov/rest/json/cves/2.0?cveId=CVE-2025-32915

{
      "cve": {
        "id": "CVE-2025-32915",
        "sourceIdentifier": "security@checkmk.com",
        "published": "2025-05-22T15:16:04.870",
        "lastModified": "2025-08-22T19:43:46.320",
        "vulnStatus": "Analyzed",
        "cveTags": [],
        "descriptions": [
          {
            "lang": "en",
            "value": "Packages downloaded by Checkmk's automatic agent updates on Linux and Solaris have incorrect permissions in Checkmk < 2.4.0p1, < 2.3.0p32, < 2.2.0p42 and <= 2.1.0p49 (EOL). This allows a local attacker to read sensitive data."
          },
          {
            "lang": "es",
            "value": "Los paquetes descargados por las actualizaciones automáticas del agente de Checkmk en Linux y Solaris tienen permisos incorrectos en Checkmk &lt; 2.4.0p1, &lt; 2.3.0p32, &lt; 2.2.0p42 y &lt;= 2.1.0p49 (EOL). Esto permite que un atacante local acceda a datos confidenciales."
          }
        ],
        "metrics": {
          "cvssMetricV40": [
            {
              "source": "security@checkmk.com",
              "type": "Secondary",
              "cvssData": {
                "version": "4.0",
                "vectorString": "CVSS:4.0/AV:L/AC:L/AT:P/PR:L/UI:N/VC:N/VI:N/VA:N/SC:H/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X",
                "attackVector": "LOCAL",
                "attackComplexity": "LOW",
                "attackRequirements": "PRESENT",
                "privilegesRequired": "LOW",
                "userInteraction": "NONE",
                "vulnerableSystemConfidentiality": "NONE",
                "vulnerableSystemIntegrity": "NONE",
                "vulnerableSystemAvailability": "NONE",
                "subsequentSystemConfidentiality": "HIGH",
                "subsequentSystemIntegrity": "NONE",
                "subsequentSystemAvailability": "NONE",
                "exploitMaturity": "NOT_DEFINED",
                "confidentialityRequirements": "NOT_DEFINED",
                "integrityRequirements": "NOT_DEFINED",
                "availabilityRequirements": "NOT_DEFINED",
                "modifiedAttackVector": "NOT_DEFINED",
                "modifiedAttackComplexity": "NOT_DEFINED",
                "modifiedAttackRequirements": "NOT_DEFINED",
                "modifiedPrivilegesRequired": "NOT_DEFINED",
                "modifiedUserInteraction": "NOT_DEFINED",
                "modifiedVulnerableSystemConfidentiality": "NOT_DEFINED",
                "modifiedVulnerableSystemIntegrity": "NOT_DEFINED",
                "modifiedVulnerableSystemAvailability": "NOT_DEFINED",
                "modifiedSubsequentSystemConfidentiality": "NOT_DEFINED",
                "modifiedSubsequentSystemIntegrity": "NOT_DEFINED",
                "modifiedSubsequentSystemAvailability": "NOT_DEFINED",
                "safety": "NOT_DEFINED",
                "automatable": "NOT_DEFINED",
                "recovery": "NOT_DEFINED",
                "valueDensity": "NOT_DEFINED",
                "vulnerabilityResponseEffort": "NOT_DEFINED",
                "providerUrgency": "NOT_DEFINED",
                "baseScore": 4.3,
                "baseSeverity": "MEDIUM",
                "vulnConfidentialityImpact": "NONE",
                "vulnIntegrityImpact": "NONE",
                "vulnAvailabilityImpact": "NONE",
                "subConfidentialityImpact": "HIGH",
                "subIntegrityImpact": "NONE",
                "subAvailabilityImpact": "NONE",
                "confidentialityRequirement": "NOT_DEFINED",
                "integrityRequirement": "NOT_DEFINED",
                "availabilityRequirement": "NOT_DEFINED",
                "modifiedVulnConfidentialityImpact": "NOT_DEFINED",
                "modifiedVulnIntegrityImpact": "NOT_DEFINED",
                "modifiedVulnAvailabilityImpact": "NOT_DEFINED",
                "modifiedSubConfidentialityImpact": "NOT_DEFINED",
                "modifiedSubIntegrityImpact": "NOT_DEFINED",
                "modifiedSubAvailabilityImpact": "NOT_DEFINED",
                "Safety": "NOT_DEFINED",
                "Automatable": "NOT_DEFINED",
                "Recovery": "NOT_DEFINED"
              }
            }
          ],
          "cvssMetricV31": [
            {
              "source": "nvd@nist.gov",
              "type": "Primary",
              "cvssData": {
                "version": "3.1",
                "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N",
                "attackVector": "LOCAL",
                "attackComplexity": "LOW",
                "privilegesRequired": "LOW",
                "userInteraction": "NONE",
                "scope": "UNCHANGED",
                "confidentialityImpact": "HIGH",
                "integrityImpact": "NONE",
                "availabilityImpact": "NONE",
                "baseScore": 5.5,
                "baseSeverity": "MEDIUM"
              },
              "exploitabilityScore": 1.8,
              "impactScore": 3.6
            }
          ]
        },
        "weaknesses": [
          {
            "source": "security@checkmk.com",
            "type": "Secondary",
            "description": [
              {
                "lang": "en",
                "value": "CWE-732"
              }
            ]
          }
        ],
        "configurations": [
          {}
        ],
        "references": [
          {
            "url": "https://checkmk.com/werk/17099",
            "source": "security@checkmk.com",
            "tags": [
              "Vendor Advisory"
            ]
          }
        ]
      }
    },

To Reproduce
Steps to reproduce the behavior:

  1. (Optional if clean db) Purge local cve database
  2. Update CVE db
  3. Check log output

Expected behavior
CVE is properly parsed.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions