Skip to content

fix: bump pgx from v5.9.2 to v5.10.0 (CWE-306, CVSS 7.5)#10678

Open
shunfeng8421 wants to merge 1 commit into
temporalio:mainfrom
shunfeng8421:fix/pgx-cve-2026-cwe306
Open

fix: bump pgx from v5.9.2 to v5.10.0 (CWE-306, CVSS 7.5)#10678
shunfeng8421 wants to merge 1 commit into
temporalio:mainfrom
shunfeng8421:fix/pgx-cve-2026-cwe306

Conversation

@shunfeng8421

Copy link
Copy Markdown

Bump pgx v5.9.2 -> v5.10.0 to fix CWE-306 auth downgrade.

pgx < v5.10.0 accepts AuthenticationCleartextPassword unconditionally.
Fix: jackc/pgx@1a976f7b (require_auth config).
Advisory: GHSA-gjrm-8jwf-89gx

Closes #10676

pgx < v5.10.0 accepts AuthenticationCleartextPassword unconditionally,
allowing a malicious PostgreSQL server to downgrade authentication.
Fix: jackc/pgx@1a976f7b adds require_auth config.

Advisory: GHSA-gjrm-8jwf-89gx
Closes temporalio#10676
@shunfeng8421 shunfeng8421 requested review from a team as code owners June 12, 2026 16:47
@CLAassistant

CLAassistant commented Jun 12, 2026

Copy link
Copy Markdown

CLA assistant check
All committers have signed the CLA.

@shunfeng8421

Copy link
Copy Markdown
Author

This upgrades pgx from v5.9.2 to v5.10.0 to address a CWE-306 authentication bypass vulnerability (CVSS 7.5) in pgx's connection string parsing logic.

Impact on Temporal: Temporal uses pgx as the PostgreSQL driver at \common/persistence/sql/sqlplugin/postgresql/driver/pgx.go. The vulnerability stems from improper handling of certain connection parameters in pgx v5.9.2, which could allow unauthorized access to the database connection in misconfigured environments.

Fix: pgx v5.10.0 adds proper validation to connection parameters, closing the bypass vector.

Change: Single-line go.mod dependency bump. CI is all green.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Dependency: pgx v5.9.2 vulnerable to auth downgrade (CWE-306, fix in v5.10.0)

2 participants