Vulnerability · Published Jun 14, 2023 · Assigned by GitHub_M
CVE-2023-34095cpdb-libs vulnerable to buffer overflows via scanf
Critical 9.8
In plain English
A critical-severity stack buffer overflow in cpdb-libs from OpenPrinting. Proof-of-concept exploit code is public. The chance it is exploited in the next 30 days is estimated at 1.5% (higher than 75% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.
Official description
cpdb-libs provides frontend and backend libraries for the Common Printing Dialog Backends (CPDB) project. In versions 1.0 through 2.0b4, cpdb-libs is vulnerable to buffer overflows via improper use of `scanf(3)`. cpdb-libs uses the `fscanf()` and `scanf()` functions to parse command lines and configuration files, dropping the read string components into fixed-length buffers, but does not limit the length of the strings to be read by `fscanf()` and `scanf()` causing buffer overflows when a string is longer than 1023 characters. A patch for this issue is available at commit f181bd1f14757c2ae0f17cc76dc20421a40f30b7. As all buffers have a length of 1024 characters, the patch limits the maximum string length to be read to 1023 by replacing all occurrences of `%s` with `%1023s` in all calls of the `fscanf()` and `scanf()` functions.
Affected packages & fixed versions
| Ecosystem | Package | Fixed in | Advisory |
|---|---|---|---|
| Debian:12 | cpdb-libs | 1.2.0-2+deb12u1 | DEBIAN-CVE-2023-34095 |
| Debian:13 | cpdb-libs | 1.2.0-3 | DEBIAN-CVE-2023-34095 |
| Debian:14 | cpdb-libs | 1.2.0-3 | DEBIAN-CVE-2023-34095 |
| Ubuntu:22.04:LTS | cpdb-libs | 1.2.0-0ubuntu8.1.22.04.1 | USN-6204-1 |
| Ubuntu:22.04:LTS | cpdb-libs | 1.2.0-0ubuntu8.1.22.04.1 | UBUNTU-CVE-2023-34095 |
Affected products (as reported)
| Vendor | Product | Versions |
|---|---|---|
| OpenPrinting | cpdb-libs | >= 1.0, <= 2.0b4 |
Weakness: CWE-121 · Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
References
- https://github.com/OpenPrinting/cpdb-libs/security/advisories/GHSA-25j7-9gfc-f46x x_refsource_CONFIRM
- https://github.com/OpenPrinting/cpdb-libs/commit/f181bd1f14757c2ae0f17cc76dc20421a40f30b7 x_refsource_MISC
- https://github.com/OpenPrinting/cpdb-libs/blob/85555fba64d34f53a2fce099b0488904cc48ed35/cpdb/cpdb-frontend.c#L372 x_refsource_MISC
- https://github.com/OpenPrinting/cpdb-libs/blob/85555fba64d34f53a2fce099b0488904cc48ed35/tools/cpdb-text-frontend.c#L362 x_refsource_MISC
- https://github.com/OpenPrinting/cpdb-libs/blob/85555fba64d34f53a2fce099b0488904cc48ed35/tools/cpdb-text-frontend.c#L453 x_refsource_MISC
- http://www.openwall.com/lists/oss-security/2023/06/14/7