← Back to CVE Explorer

CVE-2026-4370

Full vulnerability record from the local CVENow database.

Description

A vulnerability was identified in Juju from version 3.2.0 until 3.6.19 and from version 4.0 until 4.0.4, where the internal Dqlite database cluster fails to perform proper TLS client and server authentication. Specifically, the Juju controller's database endpoint does not validate client certificates when a new node attempts to join the cluster. An unauthenticated attacker with network reachability to the Juju controller's Dqlite port can exploit this flaw to join the database cluster. Once joined, the attacker gains full read and write access to the underlying database, allowing for total data compromise.

Severity
CRITICAL
CVSS score
10.0 (v3.1)
Vulnerability status
Analyzed
Source identifier
Published
2026-04-01 09:16:17.717000
Last modified
2026-10-26 21:10:00.170000
View original CVE JSON
{
  "id": "CVE-2026-4370",
  "sourceIdentifier": "[email protected]",
  "published": "2026-04-01T09:16:17.717",
  "lastModified": "2026-10-26T21:10:00.170",
  "vulnStatus": "Analyzed",
  "cveTags": [],
  "descriptions": [
    {
      "lang": "en",
      "value": "A vulnerability was identified in Juju from version 3.2.0 until 3.6.19 and from version 4.0 until 4.0.4, where the internal Dqlite database cluster fails to perform proper TLS client and server authentication. Specifically, the Juju controller's database endpoint does not validate client certificates when a new node attempts to join the cluster. An unauthenticated attacker with network reachability to the Juju controller's Dqlite port can exploit this flaw to join the database cluster. Once joined, the attacker gains full read and write access to the underlying database, allowing for total data compromise."
    },
    {
      "lang": "es",
      "value": "Se identificó una vulnerabilidad en Juju desde la versión 3.2.0 hasta la 3.6.19 y desde la versión 4.0 hasta la 4.0.4, donde el clúster de la base de datos Dqlite interna no realiza una autenticación TLS de cliente y servidor adecuada. Específicamente, el punto final de la base de datos del controlador de Juju no valida los certificados del cliente cuando un nuevo nodo intenta unirse al clúster. Un atacante no autenticado con accesibilidad de red al puerto Dqlite del controlador de Juju puede explotar esta falla para unirse al clúster de la base de datos. Una vez unido, el atacante obtiene acceso completo de lectura y escritura a la base de datos subyacente, lo que permite un compromiso total de los datos."
    }
  ],
  "affected": [
    {
      "source": "[email protected]",
      "affectedData": [
        {
          "vendor": "Canonical",
          "product": "Juju",
          "defaultStatus": "unaffected",
          "collectionURL": "https://github.com/juju/",
          "packageName": "juju",
          "platforms": [
            "Linux"
          ],
          "repo": "https://github.com/juju/juju",
          "versions": [
            {
              "version": "3.2.0",
              "lessThan": "3.6.20",
              "versionType": "semver",
              "status": "affected"
            },
            {
              "version": "4.0",
              "lessThan": "4.0.4",
              "versionType": "semver",
              "status": "affected"
            }
          ]
        }
      ]
    }
  ],
  "metrics": {
    "cvssMetricV31": [
      {
        "source": "[email protected]",
        "type": "Secondary",
        "cvssData": {
          "version": "3.1",
          "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H",
          "baseScore": 10.0,
          "baseSeverity": "CRITICAL",
          "attackVector": "NETWORK",
          "attackComplexity": "LOW",
          "privilegesRequired": "NONE",
          "userInteraction": "NONE",
          "scope": "CHANGED",
          "confidentialityImpact": "HIGH",
          "integrityImpact": "HIGH",
          "availabilityImpact": "HIGH"
        },
        "exploitabilityScore": 3.9,
        "impactScore": 6.0
      }
    ],
    "ssvcV203": [
      {
        "source": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
        "ssvcData": {
          "timestamp": "2026-04-01T13:00:31.628747Z",
          "id": "CVE-2026-4370",
          "options": [
            {
              "exploitation": "poc"
            },
            {
              "automatable": "yes"
            },
            {
              "technicalImpact": "total"
            }
          ],
          "role": "CISA Coordinator",
          "version": "2.0.3"
        }
      }
    ]
  },
  "weaknesses": [
    {
      "source": "[email protected]",
      "type": "Secondary",
      "description": [
        {
          "lang": "en",
          "value": "CWE-295"
        },
        {
          "lang": "en",
          "value": "CWE-306"
        }
      ]
    },
    {
      "source": "[email protected]",
      "type": "Primary",
      "description": [
        {
          "lang": "en",
          "value": "CWE-295"
        }
      ]
    }
  ],
  "configurations": [
    {
      "nodes": [
        {
          "operator": "OR",
          "negate": false,
          "cpeMatch": [
            {
              "vulnerable": true,
              "criteria": "cpe:2.3:a:canonical:juju:*:*:*:*:*:*:*:*",
              "versionStartIncluding": "3.2.0",
              "versionEndExcluding": "3.6.20",
              "matchCriteriaId": "C1E8860B-D8C6-4795-A4F8-5EA1E8CB2381"
            },
            {
              "vulnerable": true,
              "criteria": "cpe:2.3:a:canonical:juju:*:*:*:*:*:*:*:*",
              "versionStartIncluding": "4.0",
              "versionEndExcluding": "4.0.5",
              "matchCriteriaId": "D900BC29-F5B7-4485-BB1D-42E9778D0A82"
            }
          ]
        }
      ]
    }
  ],
  "references": [
    {
      "url": "https://github.com/juju/juju/security/advisories/GHSA-gvrj-cjch-728p",
      "source": "[email protected]",
      "tags": [
        "Exploit",
        "Vendor Advisory"
      ]
    }
  ]
}