Vulnerability advisory

CVE-2024-27304

pgx SQL Injection via Protocol Message Size Overflow

Published Updated OSV record ↗

Also known as GHSA-7jwh-3vrq-q3m8GHSA-mrww-27vc-gghvGO-2024-2606

Severity
  • CVSS 3.xCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

Affected versions

Repository

Affected commitsFixed by commit
GIT github.com/jackc/pgproto3 ↗
All commits before 945c2126f6db8f3bea7eeebe307c01fe92bca007945c2126f6db8f3bea7eeebe307c01fe92bca007
GIT github.com/jackc/pgx ↗
All commits before 14690df4c533758df97f7cc561cb9062155045c614690df4c533758df97f7cc561cb9062155045c6
4fc4f9a60337af3bd7c6abdf6c71460712d112fc to before da6f2c98f2664b215b40b1606551fdfcc7f3ea5cda6f2c98f2664b215b40b1606551fdfcc7f3ea5c
Not specifiedadbb38f298c76e283ffc7c7a3f571036fea47fd4
Not specifiedc543134753a0c5d22881c12404025724cb05ffd8
Not specifiedf94eb0e2f96782042c96801b5ac448f44f0a81df
Also listed as affected (91)
  • v2.3.2
  • v2.3.1
  • v2.3.0
  • v2.2.0
  • v2.1.1
  • v2.1.0
  • v2.0.7
  • v2.0.6
  • v2.0.5
  • v2.0.4
  • v2.0.3
  • v2.0.2
  • v2.0.1
  • v2.0.0
  • v2.0.0-rc3
  • v2.0.0-rc2
  • v2.0.0-rc1
  • v2.0.0-alpha1
  • v1.1.0
  • v1.0.0
  • v4.18.1
  • v5.5.3
  • v5.5.2
  • v5.5.1
  • v5.5.0
  • v5.4.3
  • v5.4.2
  • v5.4.1
  • v5.4.0
  • v5.3.1
  • v5.3.0
  • v4.18.0
  • v5.2.0
  • v5.1.1
  • v5.1.0
  • v5.0.4
  • v5.0.3
  • v5.0.2
  • v5.0.1
  • v5.0.0
  • v4.17.2
  • v4.17.1
  • v4.17.0
  • v4.16.1
  • v4.16.0
  • v4.15.0
  • v4.14.1
  • v4.14.0
  • v4.13.0
  • v4.12.0
  • v4.11.0
  • v4.10.1
  • v4.10.0
  • v4.9.2
  • v4.9.1
  • v4.9.0
  • v4.8.1
  • v4.8.0
  • v4.7.2
  • v4.7.1
  • v4.7.0
  • v4.6.0
  • v4.5.0
  • v4.4.1
  • v4.4.0
  • v4.3.0
  • v4.2.1
  • v4.2.0
  • v4.1.2
  • v4.1.1
  • v4.1.0
  • v4.0.1
  • v4.0.0
  • v4.0.0-rc2
  • v4.0.0-rc1
  • v4.0.0-pre2
  • v4.0.0-pre1
  • v3.2.0
  • v3.1.0
  • v3.0.1
  • v3.0.0
  • v2.11.0
  • v2.10.0
  • v2.9.0
  • v2.8.1
  • v2.8.0
  • v2.7.1
  • v2.7.0
  • v2.6.0
  • v2.5.0
  • v2.4.0

Description

pgx is a PostgreSQL driver and toolkit for Go. SQL injection can occur if an attacker can cause a single query or bind message to exceed 4 GB in size. An integer overflow in the calculated message size can cause the one large message to be sent as multiple messages under the attacker's control. The problem is resolved in v4.18.2 and v5.5.4. As a workaround, reject user input large enough to cause a single query or bind message to exceed 4 GB in size.

References

  • Codex
  • Claude Code
  • VS Code
  • GitHub Copilot
  • Cursor
  • Cline
  • Windsurf
  • Google Anti-gravity
  • OpenCode
  • Pi
  • Gemini CLI
  • Hermes Agent
  • Zed
  • Junie
  • Qwen Code
  • Kiro
  • Kilo Code
  • Factory Droid

Set up GitHits for your agents

Run this command:

<> bash
npx githits@latest init

What happens next:

  1. Opens your browser to authorize GitHits
  2. Asks whether to set up GitHits at the user or project level
  3. Detects your supported AI coding tools
  4. Lets you choose which tools to configure
  5. Configures the selected tools