CVE-2026-12047

MEDIUMNVD 5.43.5
EchelonGraph scoreMEDIUM confidence

Score 3.5 from GitHub Security Advisory published 2026-06-19. NVD baseline CVSS 5.4; sources differ by 1.9.

Triggered by: GitHub Security Advisory CVSS
Sources: epss, ghsa, nvd
Trending — 3 sources updated this week
5.4
EchelonGraph verdictMonitorLow exploitation likelihood right now — keep watching.
  • Lower severity and no public exploit yet
CISA-KEV: Not listedEPSS: 0%CVSS: 5.4Exploit: NoneExposed: 0

No vendor fix yet — apply a workaround or compensating control (WAF / firewall / segmentation) and watch for a patch.

HTML injection in pgAdmin 4's cloud deployment module. The verify_credentials, deploy, regions, and update-server endpoints under /rds/, /azure/, /google/, and the top-level /cloud/ blueprint propagated AWS / Azure / Google SDK exception text — and the related file-resolution and database-commit exception text — into the JSON response body (the info and errormsg fields) without HTML-encoding. The Cloud Wizard frontend rendered these strings through html-react-parser, so an attacker-influenced exception message embedded structural HTML directly into the wizard's DOM.

The reported entry point is /rds/verify_credentials/. An authenticated pgAdmin user submits a crafted access_key whose value contains an payload; AWS STS rejects the credential with an IncompleteSignature exception whose text quotes the access_key verbatim; the pgAdmin backend forwards that text into the JSON info field; the Cloud Wizard's FormFooterMessage parses it as HTML. The browser fetches the iframe's src from an attacker-controlled host, and JavaScript executing inside the cross-origin iframe writes to parent.location, redirecting the victim's pgAdmin tab. Because the injection renders inside pgAdmin's own interface, X-Frame-Options and Content-Security-Policy frame-ancestors do not mitigate it. Baseline impact is self-targeted (the same user who supplied the payload sees the injection); escalation against other authenticated users requires an additional cross-site request-forgery primitive capable of submitting the malformed credential request with a valid X-pgA-CSRFToken in the victim's browser context.

The same unsanitised-error-into-JSON pattern was present across multiple sibling endpoints — Azure's check_cluster_name_availability, every Google endpoint that surfaces SDK errors (verification_ack, projects, regions, instance_types, database_versions, the verify_credentials path-resolution branches), the central /deploy endpoint that bubbles str(e) from deploy_on_rds / deploy_on_azure / deploy_on_google, and update_cloud_server which surfaces the str(e) from a failing db.session.commit — all of which are now covered.

Fix HTML-escapes every external/SDK exception string at the endpoint sink via a new shared sanitize_external_text helper (HTML escape with control-character strip), promoted out of the psycopg3 driver into web/pgadmin/utils/text_sanitize.py. The Cloud Wizard frontend additionally renders its FormFooterMessage in plain-text mode for backend-derived strings, so the value is never parsed as HTML even if a future sink forgets the escape.

This issue affects pgAdmin 4: from 6.6 before 9.16.

CVSS v3
5.4
EG Score
3.5(medium)
EPSS
3.5%
KEV
Not listed

Published

June 19, 2026

Last Modified

June 29, 2026

Advisory Details (2)

Auto-updated Jun 29, 2026
Upstream fix merged — awaiting tagged release. Sources: github_commit.
github_commit

commit 60d149864b5f (pgadmin-org/pgadmin4)

Fix landed in pgadmin-org/pgadmin4 commit 60d149864b5f — awaiting tagged release

https://github.com/pgadmin-org/pgadmin4/commit/60d149864b5fdd99675754c7996637737a24fce3

Vendor Advisories for CVE-2026-12047(1)

These vendors published their own advisory mentioning this CVE — often with vendor-specific remediation steps + affected product lists not in NVD.

Weakness Classification(2)

MITRE Common Weakness Enumeration — the root-cause categories this CVE belongs to.

Data Freshness Timeline

(refreshed 12× in last 7d / 32× in last 30d)

Each row is a source pipeline that fetched or updated this CVE on that date, with what changed. For example, "NVD update" means NVD published or revised its analysis for this CVE; "MITRE cvelistV5" means we ingested or refreshed it from the CNA feed. Most recent first.

  1. 2026-07-06 16:27 UTCEPSS rescore
  2. 2026-07-06 02:23 UTCEPSS rescore
  3. 2026-07-05 16:32 UTCEG score recompute
  4. 2026-07-05 16:32 UTCGHSA enrichment
  5. 2026-07-05 02:30 UTCEPSS rescore
  6. 2026-07-05 02:30 UTCEPSS rescore
  7. 2026-07-04 06:31 UTCEPSS rescore
  8. 2026-07-02 21:46 UTCEG score recompute
  9. 2026-07-02 21:46 UTCGHSA enrichment
  10. 2026-07-01 15:06 UTCEPSS rescore
  11. 2026-07-01 15:06 UTCEPSS rescore
  12. 2026-06-30 23:22 UTCEPSS rescore
  13. 2026-06-30 03:10 UTCEG score recompute
  14. 2026-06-30 03:10 UTCGHSA enrichment
  15. 2026-06-29 15:26 UTCNVD updateCVSS v3 → 5.4 · severity → MEDIUM
  16. 2026-06-29 14:06 UTCEPSS rescore
  17. 2026-06-28 14:07 UTCEPSS rescore
  18. 2026-06-28 04:56 UTCEPSS rescore
  19. 2026-06-28 04:56 UTCEPSS rescore
  20. 2026-06-27 08:34 UTCEG score recompute
  21. 2026-06-27 08:34 UTCGHSA enrichment
  22. 2026-06-27 03:08 UTCEPSS rescore
  23. 2026-06-25 13:49 UTCEPSS rescore
  24. 2026-06-24 14:05 UTCEPSS rescore
  25. 2026-06-24 13:57 UTCEG score recompute
Show 7 more
  1. 2026-06-24 13:57 UTCGHSA enrichment
  2. 2026-06-23 21:32 UTCEPSS rescore
  3. 2026-06-22 21:36 UTCNVD updateCVSS v4 → 4.8 · severity → LOW
  4. 2026-06-21 19:21 UTCEG score recompute
  5. 2026-06-21 19:21 UTCGHSA enrichment
  6. 2026-06-19 00:44 UTCEG score recompute
  7. 2026-06-19 00:44 UTCGHSA enrichment

Frequently asked(5)

What is CVE-2026-12047?
CVE-2026-12047 is a medium vulnerability published on June 19, 2026. HTML injection in pgAdmin 4's cloud deployment module. The verify_credentials, deploy, regions, and update-server endpoints under /rds/, /azure/, /google/, and the top-level /cloud/ blueprint propagated AWS / Azure / Google SDK exception text — and the related file-resolution and database-commit…
When was CVE-2026-12047 disclosed?
CVE-2026-12047 was first published in the National Vulnerability Database on June 19, 2026, with the most recent update on June 29, 2026. EchelonGraph re-ingests CVE updates from NVD on a 2-hour cycle, so this page reflects the latest published state.
Is CVE-2026-12047 actively exploited?
CVE-2026-12047 is not currently on CISA's Known Exploited Vulnerabilities catalog. FIRST EPSS estimates a 3.5% percentile likelihood of exploitation in the next 30 days — higher percentiles indicate greater predicted risk.
What is the CVSS score of CVE-2026-12047?
CVE-2026-12047 has a CVSS v3 base score of 5.4 (NVD). EchelonGraph synthesises NVD + CISA KEV + FIRST EPSS + GHSA into a combined EG score of 3.5.
How do I remediate CVE-2026-12047?
Patch to the fixed version published by the affected vendor. Where vendor advisories exist for CVE-2026-12047, EchelonGraph cross-links them in the Vendor Advisories panel below — those typically contain the canonical remediation steps, fixed version numbers, and any vendor-specific mitigations.

Dependency Blast Radius

Explore the affected products and dependency analysis for CVE-2026-12047

Explore →

Is Your Infrastructure Affected by CVE-2026-12047?

EchelonGraph automatically scans your cloud infrastructure and maps CVE exposure using blast radius analysis.