p PatchFirst

PatchFirst · Latest vulnerabilities

mysql2 vulnerabilities

Vulnerabilities published for mysql2 in the last 30 days: 0. Listed in the KEV catalogue: 0.

Filter vulnerabilities
Clear filters

Vulnerabilities: 7

  1. GHSA-3f6p-5ww8-9rcr

    High · CVSS 8.2Fix available

    MySQL2: Auth Plugin Downgrade to mysql_clear_password Leaks Plaintext Credentials

    ## Summary A rogue MySQL server (or MITM) can force mysql2 to send credentials in **plaintext** by requesting an auth switch to `mysql_clear_password`. The driver complies without verifying that TLS is active. ## Details `mysql_clear_password` is registered as a default standard plugin in `lib/commands/auth_switch.js` (line 21). When a server sends an AuthSwitchRequest (0xFE) requesting `mysql_clear_password`, the driver executes it without checking for TLS. The plugin (`lib/auth_plugins/mysql_clear_password.js`) returns `Buffer.from(password + '\0')`. Note: `caching_sha2_password` plugin DOES check for SSL before sending cleartext (line

    • Update to 3.22.0
    Published Updated
  2. GHSA-rgwj-5xj2-c3m3

    Medium · CVSS 5.9Fix available

    MySQL2: Unbounded zlib inflate in compressed MySQL protocol handler allows decompression-bomb DoS

    ## Vulnerability Details **File**: `lib/compressed_protocol.js` **Line**: 43 (`zlib.inflate(body, (err, data) => { ... })` inside `handleCompressedPacket`) ### Root Cause When a connection is created with `compress: true` (and the server advertises `CLIENT_COMPRESS`), every incoming packet is unwrapped by `handleCompressedPacket()` in `lib/compressed_protocol.js`, which calls: ```js zlib.inflate(body, (err, data) => { ... }); ``` No options object (in particular, no `maxOutputLength`) is passed. Node's zlib convenience methods default `maxOutputLength` to `buffer.kMaxLength`, which on this platform is `Number.MAX_SAFE_INTEGER` — i.e. effe

    • Update to 3.23.1
    Published Updated
  3. CVE-2024-21507

    Medium · CVSS 6.5EPSS 0.74%Fix available

    CVE-2024-21507

    Versions of the package mysql2 before 3.9.3 are vulnerable to Improper Input Validation through the keyFromFields function, resulting in cache poisoning. An attacker can inject a colon (:) character within a value of the attacker-crafted key.

    • Update to 3.9.3
    Published Updated

Check your server

Check your installed stack and versions against the current vulnerability feeds.

Check your server →