CVE-2025-67269
An integer underflow vulnerability exists in the `nextstate()` function in `gpsd/packet.c` of gpsd versions prior to commit `ffa1d6f40bca0b035fc7f5e563160ebb67199da7`.
Does this matter?
High impact if exploited, but EPSS currently rates exploitation as unlikely (0.55%). Schedule it in the normal patch cycle and watch for a rise in EPSS or a public exploit.
Description
An integer underflow vulnerability exists in the `nextstate()` function in `gpsd/packet.c` of gpsd versions prior to commit `ffa1d6f40bca0b035fc7f5e563160ebb67199da7`. When parsing a NAVCOM packet, the payload length is calculated using `lexer->length = (size_t)c - 4` without checking if the input byte `c` is less than 4. This results in an unsigned integer underflow, setting `lexer->length` to a very large value (near `SIZE_MAX`). The parser then enters a loop attempting to consume this massive number of bytes, causing 100% CPU utilization and a Denial of Service (DoS) condition.
- CVSS 3.1
- 7.5 HIGHCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
- EPSS
- 0.55% probability · 44th percentile
- CISA KEV
- Not listed
- Weakness
- CWE-191
- Affected
- gpsd project/gpsd
- Source
- cve@mitre.org
References
- https://github.com/Jaenact/gspd_cve/blob/main/CVE-2025-67269/README.mdExploit, Third Party Advisory
- https://gitlab.com/gpsd/gpsdProduct
- https://gitlab.com/gpsd/gpsd/-/commit/ffa1d6f40bca0b035fc7f5e563160ebb67199da7Patch
- https://access.redhat.com/errata/RHSA-2026:0770
- https://access.redhat.com/errata/RHSA-2026:0771
- https://access.redhat.com/security/cve/CVE-2025-67269
- https://bugzilla.redhat.com/show_bug.cgi?id=2426810
- https://security.access.redhat.com/data/csaf/v2/vex/2025/cve-2025-67269.json
Source: NVD record, EPSS from FIRST.org, KEV from CISA. Refreshed daily.