CVE-2023-40889
Heap-based buffer overflow in ZBar
A heap-based buffer overflow exists in the qr_reader_match_centers function of ZBar 0.23.90. Specially crafted QR codes may lead to information disclosure and/or arbitrary code execution. To trigger this vulnerability, an attacker can digitally input the malicious QR code, or prepare it to be physically scanned by the vulnerable scanner.
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- Low
- Privileges needed
- None
- User interaction
- None
What an attacker can affect
- Confidentiality
- High
- Integrity
- High
- Availability
- High
Exploit likelihood
What each source reports
NVD Score used
9.8
A heap-based buffer overflow exists in the qr_reader_match_centers function of ZBar 0.23.90. Specially crafted QR codes may lead to information disclosure and/or arbitrary code execution. To trigger this vulnerability, an attacker can digitally input the malicious QR code, or prepare it to be physically scanned by the vulnerable scanner.
- Record
CVE-2023-40889- CVSS 3.1
- 9.8 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Weakness
- CWE-787
- Updated
- 2026-11-02
CVE List No score
A heap-based buffer overflow exists in the qr_reader_match_centers function of ZBar 0.23.90. Specially crafted QR codes may lead to information disclosure and/or arbitrary code execution. To trigger this vulnerability, an attacker can digitally input the malicious QR code, or prepare it to be physically scanned by the vulnerable scanner.
- Record
CVE-2023-40889- Updated
- 2026-11-02
EUVDEUVD-2023-2327 No score
A heap-based buffer overflow exists in the qr_reader_match_centers function of ZBar 0.23.90. Specially crafted QR codes may lead to information disclosure and/or arbitrary code execution. To trigger this vulnerability, an attacker can digitally input the malicious QR code, or prepare it to be physically scanned by the vulnerable scanner.
- Record
EUVD-2023-2327- Updated
- 2026-11-02
GitHub AdvisoriesGHSA-mhp6-jvpx-2p4m
9.8
Heap-based buffer overflow in ZBar
A heap-based buffer overflow exists in the qr_reader_match_centers function of ZBar 0.23.90. Specially crafted QR codes may lead to information disclosure and/or arbitrary code execution. To trigger this vulnerability, an attacker can digitally input the malicious QR code, or prepare it to be physically scanned by the vulnerable scanner.
- Record
GHSA-mhp6-jvpx-2p4m- CVSS 3.1
- 9.8 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Weakness
- CWE-122, CWE-787
- Updated
- 2026-11-02
OSVALPINE-CVE-2023-40889
9.8
A heap-based buffer overflow exists in the qr_reader_match_centers function of ZBar 0.23.90. Specially crafted QR codes may lead to information disclosure and/or arbitrary code execution. To trigger this vulnerability, an attacker can digitally input the malicious QR code, or prepare it to be physically scanned by the vulnerable scanner.
- Record
ALPINE-CVE-2023-40889- CVSS 3.1
- 9.8 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-03
OSVDEBIAN-CVE-2023-40889
9.8
A heap-based buffer overflow exists in the qr_reader_match_centers function of ZBar 0.23.90. Specially crafted QR codes may lead to information disclosure and/or arbitrary code execution. To trigger this vulnerability, an attacker can digitally input the malicious QR code, or prepare it to be physically scanned by the vulnerable scanner.
- Record
DEBIAN-CVE-2023-40889- CVSS 3.1
- 9.8 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
Show 12 moreShow less
OSVGHSA-mhp6-jvpx-2p4m
9.8
Heap-based buffer overflow in ZBar
A heap-based buffer overflow exists in the qr_reader_match_centers function of ZBar 0.23.90. Specially crafted QR codes may lead to information disclosure and/or arbitrary code execution. To trigger this vulnerability, an attacker can digitally input the malicious QR code, or prepare it to be physically scanned by the vulnerable scanner.
- Record
GHSA-mhp6-jvpx-2p4m- CVSS 3.1
- 9.8 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Weakness
- CWE-122, CWE-787
- Updated
- 2026-11-02
OSVOESA-2024-1155
9.8
zbar security update
ZBar is an open source software suite for reading bar codes from various sources, such as video streams, image files and raw intensity sensors. It supports many popular symbologies (types of bar codes) including EAN-13/UPC-A, UPC-E, EAN-8, Code 128, Code 39, Interleaved 2 of 5 and QR Code.
Security Fix(es):
A heap-based buffer overflow exists in the qr_reader_match_centers function of ZBar 0.23.90. Specially crafted QR codes may lead to information disclosure and/or arbitrary code execution. To trigger this vulnerability, an attacker can digitally input the malicious QR code, or prepare it to be physically scanned by the vulnerable scanner.(CVE-2023-40889)
A stack-based buffer overflow vulnerability exists in the lookup_sequence function of ZBar 0.23.90. Specially crafted QR codes may lead to information disclosure and/or arbitrary code execution. To trigger this vulnerability, an attacker can digitally input the malicious QR code, or prepare it to be physically scanned by the vulnerable scanner.(CVE-2023-40890)
- Record
OESA-2024-1155- CVSS 3.1
- 9.8 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
OSVOESA-2024-1156
9.8
zbar security update
ZBar is an open source software suite for reading bar codes from various sources, such as video streams, image files and raw intensity sensors. It supports many popular symbologies (types of bar codes) including EAN-13/UPC-A, UPC-E, EAN-8, Code 128, Code 39, Interleaved 2 of 5 and QR Code.
Security Fix(es):
A heap-based buffer overflow exists in the qr_reader_match_centers function of ZBar 0.23.90. Specially crafted QR codes may lead to information disclosure and/or arbitrary code execution. To trigger this vulnerability, an attacker can digitally input the malicious QR code, or prepare it to be physically scanned by the vulnerable scanner.(CVE-2023-40889)
A stack-based buffer overflow vulnerability exists in the lookup_sequence function of ZBar 0.23.90. Specially crafted QR codes may lead to information disclosure and/or arbitrary code execution. To trigger this vulnerability, an attacker can digitally input the malicious QR code, or prepare it to be physically scanned by the vulnerable scanner.(CVE-2023-40890)
- Record
OESA-2024-1156- CVSS 3.1
- 9.8 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
OSVOESA-2024-1157
9.8
zbar security update
ZBar is an open source software suite for reading bar codes from various sources, such as video streams, image files and raw intensity sensors. It supports many popular symbologies (types of bar codes) including EAN-13/UPC-A, UPC-E, EAN-8, Code 128, Code 39, Interleaved 2 of 5 and QR Code.
Security Fix(es):
A heap-based buffer overflow exists in the qr_reader_match_centers function of ZBar 0.23.90. Specially crafted QR codes may lead to information disclosure and/or arbitrary code execution. To trigger this vulnerability, an attacker can digitally input the malicious QR code, or prepare it to be physically scanned by the vulnerable scanner.(CVE-2023-40889)
A stack-based buffer overflow vulnerability exists in the lookup_sequence function of ZBar 0.23.90. Specially crafted QR codes may lead to information disclosure and/or arbitrary code execution. To trigger this vulnerability, an attacker can digitally input the malicious QR code, or prepare it to be physically scanned by the vulnerable scanner.(CVE-2023-40890)
- Record
OESA-2024-1157- CVSS 3.1
- 9.8 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
OSVOESA-2024-1158
9.8
zbar security update
ZBar is an open source software suite for reading bar codes from various sources, such as video streams, image files and raw intensity sensors. It supports many popular symbologies (types of bar codes) including EAN-13/UPC-A, UPC-E, EAN-8, Code 128, Code 39, Interleaved 2 of 5 and QR Code.
Security Fix(es):
A heap-based buffer overflow exists in the qr_reader_match_centers function of ZBar 0.23.90. Specially crafted QR codes may lead to information disclosure and/or arbitrary code execution. To trigger this vulnerability, an attacker can digitally input the malicious QR code, or prepare it to be physically scanned by the vulnerable scanner.(CVE-2023-40889)
A stack-based buffer overflow vulnerability exists in the lookup_sequence function of ZBar 0.23.90. Specially crafted QR codes may lead to information disclosure and/or arbitrary code execution. To trigger this vulnerability, an attacker can digitally input the malicious QR code, or prepare it to be physically scanned by the vulnerable scanner.(CVE-2023-40890)
- Record
OESA-2024-1158- CVSS 3.1
- 9.8 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
OSVPYSEC-2026-576
9.8
Heap-based buffer overflow in ZBar
A heap-based buffer overflow exists in the qr_reader_match_centers function of ZBar 0.23.90. Specially crafted QR codes may lead to information disclosure and/or arbitrary code execution. To trigger this vulnerability, an attacker can digitally input the malicious QR code, or prepare it to be physically scanned by the vulnerable scanner.
- Record
PYSEC-2026-576- CVSS 3.1
- 9.8 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
OSVUBUNTU-CVE-2023-40889
9.8
A heap-based buffer overflow exists in the qr_reader_match_centers function of ZBar 0.23.90. Specially crafted QR codes may lead to information disclosure and/or arbitrary code execution. To trigger this vulnerability, an attacker can digitally input the malicious QR code, or prepare it to be physically scanned by the vulnerable scanner.
- Record
UBUNTU-CVE-2023-40889- CVSS 3.1
- 9.8 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
OSV No score
A heap-based buffer overflow exists in the qr_reader_match_centers function of ZBar 0.23.90. Specially crafted QR codes may lead to information disclosure and/or arbitrary code execution. To trigger this vulnerability, an attacker can digitally input the malicious QR code, or prepare it to be physically scanned by the vulnerable scanner.
- Record
CVE-2023-40889- Updated
- 2026-11-02
OSVMGASA-2024-0374 No score
Updated zbar packages fix security vulnerabilities
A heap-based buffer overflow exists in the qr_reader_match_centers function of ZBar 0.23.90. Specially crafted QR codes may lead to information disclosure and/or arbitrary code execution. To trigger this vulnerability, an attacker can digitally input the malicious QR code, or prepare it to be physically scanned by the vulnerable scanner. CVE-2023-40889 A stack-based buffer overflow vulnerability exists in the lookup_sequence function of ZBar 0.23.90. Specially crafted QR codes may lead to information disclosure and/or arbitrary code execution. To trigger this vulnerability, an attacker can digitally input the malicious QR code, or prepare it to be physically scanned by the vulnerable scanner. CVE-2023-40890
- Record
MGASA-2024-0374- Updated
- 2026-11-02
OSVopenSUSE-SU-2024:13525-1 No score
libzbar-devel-0.23.90-5.1 on GA media
These are all security issues fixed in the libzbar-devel-0.23.90-5.1 package on the GA media of openSUSE Tumbleweed.
- Record
openSUSE-SU-2024:13525-1- Updated
- 2026-11-02
OSVSUSE-SU-2023:4948-1 No score
Security update for zbar
This update for zbar fixes the following issues:
- CVE-2023-40889: Fixed heap-based buffer overflow in the qr_reader_match_centers function (bsc#1214770).
- CVE-2023-40890: Fixed stack-based buffer overflow in the lookup_sequence function (bsc#1214771).
- Record
SUSE-SU-2023:4948-1- Updated
- 2026-11-02
OSVUSN-7118-1 No score
zbar vulnerabilities
It was discovered that ZBar did not properly handle certain QR codes. If a user or automated system using ZBar were tricked into opening a specially crafted file, an attacker could possibly use this to obtain sensitive information. (CVE-2023-40889)
It was discovered that ZBar did not properly handle certain QR codes. If a user or automated system using ZBar were tricked into opening a specially crafted file, an attacker could possibly use this to obtain sensitive information. This issue only affected Ubuntu 20.04 LTS, and Ubuntu 22.04 LTS. (CVE-2023-40890)
- Record
USN-7118-1- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
zbarPyPI |
through 0.23.90 | None known |
zbarAlpine:v3.19 |
before 0.23.93-r0 | 0.23.93-r0 |
zbarAlpine:v3.20 |
before 0.23.93-r0 | 0.23.93-r0 |
zbarAlpine:v3.21 |
before 0.23.93-r0 | 0.23.93-r0 |
zbarAlpine:v3.22 |
before 0.23.93-r0 | 0.23.93-r0 |
zbarAlpine:v3.23 |
before 0.23.93-r0 | 0.23.93-r0 |
zbarAlpine:v3.24 |
before 0.23.93-r0 | 0.23.93-r0 |
zbarDebian:12 |
before 0.23.92-7+deb12u1, plus listed versions 0.23.92-7 |
0.23.92-7+deb12u1 |
zbarDebian:13 |
before 0.23.92-9 | 0.23.92-9 |
zbarDebian:14 |
before 0.23.92-9 | 0.23.92-9 |
Show 22 moreShow less
| Package | Affected | Fixed |
|---|---|---|
zbarDebian:10 |
before 0.22-1+deb10u1, plus listed versions 0.22-1 |
0.22-1+deb10u1 |
zbarDebian:11 |
before 0.23.90-1+deb11u1, plus listed versions 0.23.90-1 |
0.23.90-1+deb11u1 |
zbarPyPI |
through 0.23.90, plus listed versions 0.10 |
None known |
zbarMageia:9 |
before 0.23.93-1.mga9 | 0.23.93-1.mga9 |
zbaropenEuler:22.03-LTS-SP2 |
before 0.23.93-1.oe2203sp2 | 0.23.93-1.oe2203sp2 |
zbaropenEuler:22.03-LTS-SP3 |
before 0.23.93-1.oe2203sp3 | 0.23.93-1.oe2203sp3 |
zbaropenEuler:22.03-LTS |
before 0.22-5.oe2203 | 0.22-5.oe2203 |
zbaropenEuler:22.03-LTS-SP1 |
before 0.23.93-1.oe2203sp1 | 0.23.93-1.oe2203sp1 |
zbarSUSE:Linux Enterprise Module for Desktop Applications 15 SP5 |
before 0.23.1-150300.3.3.1 | 0.23.1-150300.3.3.1 |
zbarSUSE:Linux Enterprise Module for Package Hub 15 SP5 |
before 0.23.1-150300.3.3.1 | 0.23.1-150300.3.3.1 |
zbarSUSE:Linux Enterprise Real Time 15 SP4 |
before 0.23.1-150300.3.3.1 | 0.23.1-150300.3.3.1 |
zbaropenSUSE:Leap 15.4 |
before 0.23.1-150300.3.3.1 | 0.23.1-150300.3.3.1 |
zbaropenSUSE:Leap 15.5 |
before 0.23.1-150300.3.3.1 | 0.23.1-150300.3.3.1 |
zbarUbuntu:14.04:LTS |
All versions, plus listed versions 0.10+doc-90.10+doc-9build1 |
None known |
zbarUbuntu:Pro:16.04:LTS |
before 0.10+doc-10ubuntu1+esm1, plus listed versions 0.10+doc-10build10.10+doc-10build20.10+doc-10ubuntu1 |
0.10+doc-10ubuntu1+esm1 |
zbarUbuntu:Pro:18.04:LTS |
before 0.10+doc-10.1ubuntu0.1~esm1, plus listed versions 0.10+doc-10.1build2 |
0.10+doc-10.1ubuntu0.1~esm1 |
zbarUbuntu:Pro:20.04:LTS |
before 0.23-1.3ubuntu0.1~esm1, plus listed versions 0.23-1.10.23-1.20.23-1.3 |
0.23-1.3ubuntu0.1~esm1 |
zbarUbuntu:Pro:22.04:LTS |
before 0.23.92-4ubuntu0.1~esm1, plus listed versions 0.23.90-10.23.92-40.23.92-4build2 |
0.23.92-4ubuntu0.1~esm1 |
zbarUbuntu:25.10 |
All versions, plus listed versions 0.23.93-70.23.93-8 |
None known |
zbarUbuntu:26.10 |
All versions, plus listed versions 0.23.93-9ubuntu10.23.93-9ubuntu2 |
None known |
zbarUbuntu:26.04:LTS |
All versions, plus listed versions 0.23.93-80.23.93-9ubuntu1 |
None known |
zbaropenSUSE:Tumbleweed |
before 0.23.90-5.1 | 0.23.90-5.1 |
History
| Recorded | Changed | Sources |
|---|---|---|
| affected, aliases, references | OSV | |
| first indexed | CVE List, EUVD, GitHub Advisories, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2023-40889 is a critical vulnerability (CVSS 9.8) in Zbar Project Zbar, published August 29, 2023. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 1.75%, the 77th percentile. Fixed in zbar 0.23.93-r0.
References
hackmd.io/%40cspl/B1ZkFZv23
lists.debian.org/debian-lts-announce/2023/12/msg00001.html
lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/25LZZQJGGZRPLKTRNRNOTAFQJIPS7WRP
lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/DC7V5YCLCPB36J2KY6WLZCABFLBRB665
lists.fedoraproject.org/archives/list/[email protected]/message/DC7V5YCLCPB36J2KY6WLZCABFLBRB665
nvd.nist.gov/vuln/detail/CVE-2023-40889
Show 23 moreShow less
hackmd.io/@cspl/B1ZkFZv23
github.com/advisories/GHSA-mhp6-jvpx-2p4m
security.alpinelinux.org/vuln/CVE-2023-40889
github.com/CVEProject/cvelistV5/tree/main/cves/2023/40xxx/CVE-2023-40889.json
security-tracker.debian.org/tracker/CVE-2023-40889
github.com/mchehab/zbar
advisories.mageia.org/MGASA-2024-0374.html
bugs.mageia.org/show_bug.cgi?id=33790
ubuntu.com/security/notices/USN-7118-1
openeuler.org/en/security/safety-bulletin/detail.html?id=openEuler-SA-2024-1155
nvd.nist.gov/vuln/detail/CVE-2023-40890
openeuler.org/en/security/safety-bulletin/detail.html?id=openEuler-SA-2024-1156
openeuler.org/en/security/safety-bulletin/detail.html?id=openEuler-SA-2024-1157
openeuler.org/en/security/safety-bulletin/detail.html?id=openEuler-SA-2024-1158
pypi.org/project/zbar
suse.com/support/update/announcement/2023/suse-su-20234948-1
bugzilla.suse.com/1214770
bugzilla.suse.com/1214771
suse.com/security/cve/CVE-2023-40889
suse.com/security/cve/CVE-2023-40890
ubuntu.com/security/CVE-2023-40889
cve.org/CVERecord?id=CVE-2023-40889
ubuntu.com/security/CVE-2023-40890