CVE-2026-104055 (GCVE-0-2026-104055)

Vulnerability from cvelistv5 – Published: 2026-10-02 20:35 – Updated: 2026-10-02 20:35
VLAI
Title
Monitoring-user password logged in cleartext by postgres_exporter in postgresql VM charm
Summary
The postgresql-operator charm runs a Prometheus postgres_exporter to collect database metrics using a dedicated "monitoring" PostgreSQL user. On database connection errors, the exporter writes the monitoring user's password in cleartext to its logs. Any actor able to read those logs can recover the password, which grants read-only pg_monitor access to PostgreSQL. This is fixed in the dev track (14/edge) in revisions 1189 (arm64) and 1190 (amd64), and in the stable track (14/stable) in revisions 1216 (arm64) and 1217 (amd64).
CWE
  • CWE-532 - Insertion of sensitive information into log file
Impacted products
Vendor Product Version CPE status
Canonical postgresql-operator Affected: 0 , < 1189 (charm-revision)
Affected: 0 , < 1190 (charm-revision)
Affected: 0 , < 1216 (charm-revision)
Affected: 0 , < 1217 (charm-revision)
guessed Create a notification for this product.
Show details on NVD website

{
  "containers": {
    "cna": {
      "affected": [
        {
          "collectionURL": "https://charmhub.io/postgresql",
          "defaultStatus": "unaffected",
          "packageName": "charmed-postgresql",
          "platforms": [
            "Linux"
          ],
          "product": "postgresql-operator",
          "repo": "https://github.com/canonical/postgresql-operator",
          "vendor": "Canonical",
          "versions": [
            {
              "lessThan": "1189",
              "status": "affected",
              "version": "0",
              "versionType": "charm-revision"
            },
            {
              "lessThan": "1190",
              "status": "affected",
              "version": "0",
              "versionType": "charm-revision"
            },
            {
              "lessThan": "1216",
              "status": "affected",
              "version": "0",
              "versionType": "charm-revision"
            },
            {
              "lessThan": "1217",
              "status": "affected",
              "version": "0",
              "versionType": "charm-revision"
            }
          ]
        }
      ],
      "credits": [
        {
          "lang": "en",
          "type": "reporter",
          "value": "Allan Vidal"
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "The postgresql-operator charm runs a Prometheus postgres_exporter to collect database metrics using a dedicated \"monitoring\" PostgreSQL user. On database connection errors, the exporter writes the monitoring user\u0027s password in cleartext to its logs. Any actor able to read those logs can recover the password, which grants read-only pg_monitor access to PostgreSQL. This is fixed in the dev track (14/edge) in revisions 1189 (arm64) and 1190 (amd64), and in the stable track (14/stable) in revisions 1216 (arm64) and 1217 (amd64)."
        }
      ],
      "impacts": [
        {
          "capecId": "CAPEC-37",
          "descriptions": [
            {
              "lang": "en",
              "value": "CAPEC-37 Retrieve Embedded Sensitive Data"
            }
          ]
        }
      ],
      "metrics": [
        {
          "cvssV4_0": {
            "Automatable": "NOT_DEFINED",
            "Recovery": "NOT_DEFINED",
            "Safety": "NOT_DEFINED",
            "attackComplexity": "LOW",
            "attackRequirements": "NONE",
            "attackVector": "NETWORK",
            "baseScore": 5.3,
            "baseSeverity": "MEDIUM",
            "exploitMaturity": "NOT_DEFINED",
            "privilegesRequired": "LOW",
            "providerUrgency": "NOT_DEFINED",
            "subAvailabilityImpact": "NONE",
            "subConfidentialityImpact": "NONE",
            "subIntegrityImpact": "NONE",
            "userInteraction": "NONE",
            "valueDensity": "NOT_DEFINED",
            "vectorString": "CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N",
            "version": "4.0",
            "vulnAvailabilityImpact": "NONE",
            "vulnConfidentialityImpact": "LOW",
            "vulnIntegrityImpact": "NONE",
            "vulnerabilityResponseEffort": "NOT_DEFINED"
          },
          "format": "CVSS",
          "scenarios": [
            {
              "lang": "en",
              "value": "GENERAL"
            }
          ]
        }
      ],
      "problemTypes": [
        {
          "descriptions": [
            {
              "cweId": "CWE-532",
              "description": "CWE-532 Insertion of sensitive information into log file",
              "lang": "en",
              "type": "CWE"
            }
          ]
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-10-02T20:35:50.514Z",
        "orgId": "cc1ad9ee-3454-478d-9317-d3e869d708bc",
        "shortName": "canonical"
      },
      "references": [
        {
          "tags": [
            "vendor-advisory"
          ],
          "url": "https://github.com/canonical/postgresql-operator/security/advisories/GHSA-rcx7-7rh5-r542"
        },
        {
          "tags": [
            "patch"
          ],
          "url": "https://github.com/canonical/postgresql-operator/pull/1863"
        },
        {
          "tags": [
            "patch"
          ],
          "url": "https://github.com/canonical/charmed-postgresql-snap/pull/305"
        },
        {
          "tags": [
            "patch"
          ],
          "url": "https://github.com/canonical/charmed-postgresql-snap/pull/307"
        }
      ],
      "source": {
        "discovery": "INTERNAL"
      },
      "title": "Monitoring-user password logged in cleartext by postgres_exporter in postgresql VM charm",
      "x_generator": {
        "engine": "cvelib 1.8.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "cc1ad9ee-3454-478d-9317-d3e869d708bc",
    "assignerShortName": "canonical",
    "cveId": "CVE-2026-104055",
    "datePublished": "2026-10-02T20:35:50.514Z",
    "dateReserved": "2026-10-01T18:01:17.865Z",
    "dateUpdated": "2026-10-02T20:35:50.514Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2",
  "vulnerability-lookup:meta": {
    "nvd": {
      "cve": {
        "affected": [
          {
            "affectedData": [
              {
                "collectionURL": "https://charmhub.io/postgresql",
                "defaultStatus": "unaffected",
                "packageName": "charmed-postgresql",
                "platforms": [
                  "Linux"
                ],
                "product": "postgresql-operator",
                "repo": "https://github.com/canonical/postgresql-operator",
                "vendor": "Canonical",
                "versions": [
                  {
                    "lessThan": "1189",
                    "status": "affected",
                    "version": "0",
                    "versionType": "charm-revision"
                  },
                  {
                    "lessThan": "1190",
                    "status": "affected",
                    "version": "0",
                    "versionType": "charm-revision"
                  },
                  {
                    "lessThan": "1216",
                    "status": "affected",
                    "version": "0",
                    "versionType": "charm-revision"
                  },
                  {
                    "lessThan": "1217",
                    "status": "affected",
                    "version": "0",
                    "versionType": "charm-revision"
                  }
                ]
              }
            ],
            "source": "security@ubuntu.com"
          }
        ],
        "cveTags": [],
        "descriptions": [
          {
            "lang": "en",
            "value": "The postgresql-operator charm runs a Prometheus postgres_exporter to collect database metrics using a dedicated \"monitoring\" PostgreSQL user. On database connection errors, the exporter writes the monitoring user\u0027s password in cleartext to its logs. Any actor able to read those logs can recover the password, which grants read-only pg_monitor access to PostgreSQL. This is fixed in the dev track (14/edge) in revisions 1189 (arm64) and 1190 (amd64), and in the stable track (14/stable) in revisions 1216 (arm64) and 1217 (amd64)."
          }
        ],
        "id": "CVE-2026-104055",
        "lastModified": "2026-10-02T21:16:54.607",
        "metrics": {
          "cvssMetricV40": [
            {
              "cvssData": {
                "Automatable": "NOT_DEFINED",
                "Recovery": "NOT_DEFINED",
                "Safety": "NOT_DEFINED",
                "attackComplexity": "LOW",
                "attackRequirements": "NONE",
                "attackVector": "NETWORK",
                "availabilityRequirement": "NOT_DEFINED",
                "baseScore": 5.3,
                "baseSeverity": "MEDIUM",
                "confidentialityRequirement": "NOT_DEFINED",
                "exploitMaturity": "NOT_DEFINED",
                "integrityRequirement": "NOT_DEFINED",
                "modifiedAttackComplexity": "NOT_DEFINED",
                "modifiedAttackRequirements": "NOT_DEFINED",
                "modifiedAttackVector": "NOT_DEFINED",
                "modifiedPrivilegesRequired": "NOT_DEFINED",
                "modifiedSubAvailabilityImpact": "NOT_DEFINED",
                "modifiedSubConfidentialityImpact": "NOT_DEFINED",
                "modifiedSubIntegrityImpact": "NOT_DEFINED",
                "modifiedUserInteraction": "NOT_DEFINED",
                "modifiedVulnAvailabilityImpact": "NOT_DEFINED",
                "modifiedVulnConfidentialityImpact": "NOT_DEFINED",
                "modifiedVulnIntegrityImpact": "NOT_DEFINED",
                "privilegesRequired": "LOW",
                "providerUrgency": "NOT_DEFINED",
                "subAvailabilityImpact": "NONE",
                "subConfidentialityImpact": "NONE",
                "subIntegrityImpact": "NONE",
                "userInteraction": "NONE",
                "valueDensity": "NOT_DEFINED",
                "vectorString": "CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:N/VA:N/SC:N/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",
                "version": "4.0",
                "vulnAvailabilityImpact": "NONE",
                "vulnConfidentialityImpact": "LOW",
                "vulnIntegrityImpact": "NONE",
                "vulnerabilityResponseEffort": "NOT_DEFINED"
              },
              "source": "security@ubuntu.com",
              "type": "Secondary"
            }
          ]
        },
        "published": "2026-10-02T21:16:54.607",
        "references": [
          {
            "source": "security@ubuntu.com",
            "url": "https://github.com/canonical/charmed-postgresql-snap/pull/305"
          },
          {
            "source": "security@ubuntu.com",
            "url": "https://github.com/canonical/charmed-postgresql-snap/pull/307"
          },
          {
            "source": "security@ubuntu.com",
            "url": "https://github.com/canonical/postgresql-operator/pull/1863"
          },
          {
            "source": "security@ubuntu.com",
            "url": "https://github.com/canonical/postgresql-operator/security/advisories/GHSA-rcx7-7rh5-r542"
          }
        ],
        "sourceIdentifier": "security@ubuntu.com",
        "vulnStatus": "Received",
        "weaknesses": [
          {
            "description": [
              {
                "lang": "en",
                "value": "CWE-532"
              }
            ],
            "source": "security@ubuntu.com",
            "type": "Secondary"
          }
        ]
      }
    }
  }
}



Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading…

Loading…

Loading…

Forecast uses a logistic model when the trend is rising, or an exponential decay model when the trend is falling. Fitted via linearized least squares.

Sightings

Author Source Type Date Other

Nomenclature

  • Seen: The vulnerability was mentioned, discussed, or observed by the user.
  • Confirmed: The vulnerability has been validated from an analyst's perspective.
  • Published Proof of Concept: A public proof of concept is available for this vulnerability.
  • Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
  • Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
  • Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
  • Not confirmed: The user expressed doubt about the validity of the vulnerability.
  • Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.

Loading…

Loading…

Loading…

Related by attack behaviour

Vulnerabilities whose description is nearest to this one in the vector space of the CIRCL/vulnerability-attack-technique-biencoder model. This is a similarity search over the bi-encoder space (plain cosine), not a classification, and it has no measured accuracy.


Loading…