cpdb-libs vulnerable to buffer overflows via scanf
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- None
- Attack complexity
- Low
- Impact type
- Code execution
- Confidentiality · integrity · availability
- High · High · High
- Fix status
- No fix listed
Attack profile from CVSS 3.1 · CNA. Fix status from CNA. Impact type from CWE-121 and the CVSS impact.
Summary
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.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- Poc
- Automatable
- Yes
- Technical impact
- Total
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| OpenPrinting | cpdb-libs | 1.0 – 2.0b4 | — | No fix listed | CNA |
- cpdb-libs VendorOpenPrinting Affected 1.0 – 2.0b4 Fixed in — No fix listed CNA
CPE configurations NVD · 5
| CPE | Versions | Role | Vendor |
|---|---|---|---|
| cpe:2.3:a:openprinting:cpdb-libs:*:*:*:*:*:*:*:* | 1.0 to before 2.0 | Vulnerable | OpenPrinting |
| cpe:2.3:a:openprinting:cpdb-libs:2.0:beta1:*:*:*:*:*:* | 2.0 beta1 | Vulnerable | OpenPrinting |
| cpe:2.3:a:openprinting:cpdb-libs:2.0:beta2:*:*:*:*:*:* | 2.0 beta2 | Vulnerable | OpenPrinting |
| cpe:2.3:a:openprinting:cpdb-libs:2.0:beta3:*:*:*:*:*:* | 2.0 beta3 | Vulnerable | OpenPrinting |
| cpe:2.3:a:openprinting:cpdb-libs:2.0:beta4:*:*:*:*:*:* | 2.0 beta4 | Vulnerable | OpenPrinting |
- cpe:2.3:a:openprinting:cpdb-libs:*:*:*:*:*:*:*:* Versions 1.0 to before 2.0 Vulnerable ·OpenPrinting
- cpe:2.3:a:openprinting:cpdb-libs:2.0:beta1:*:*:*:*:*:* Versions 2.0 beta1 Vulnerable ·OpenPrinting
- cpe:2.3:a:openprinting:cpdb-libs:2.0:beta2:*:*:*:*:*:* Versions 2.0 beta2 Vulnerable ·OpenPrinting
- cpe:2.3:a:openprinting:cpdb-libs:2.0:beta3:*:*:*:*:*:* Versions 2.0 beta3 Vulnerable ·OpenPrinting
- cpe:2.3:a:openprinting:cpdb-libs:2.0:beta4:*:*:*:*:*:* Versions 2.0 beta4 Vulnerable ·OpenPrinting
Remediation
No fixed version listed by the sources yet.
Timeline
- 2026-10-02 Threatist record created from CVE-2023-34095
References
Exploit 2
Other 3
- https://github.com/OpenPrinting/cpdb-libs/blob/85555fba64d34f53a2fce099b0488904cc48ed35/cpdb/cpdb-frontend.c#L372
- https://github.com/OpenPrinting/cpdb-libs/blob/85555fba64d34f53a2fce099b0488904cc48ed35/tools/cpdb-text-frontend.c#L362
- https://github.com/OpenPrinting/cpdb-libs/blob/85555fba64d34f53a2fce099b0488904cc48ed35/tools/cpdb-text-frontend.c#L453
Sources
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences