CVE-2016-2191
The bmp_read_rows function in pngxtern/pngxrbmp.c in OptiPNG before 0.7.6 allows remote attackers...
The bmp_read_rows function in pngxtern/pngxrbmp.c in OptiPNG before 0.7.6 allows remote attackers to cause a denial of service (invalid memory write and crash) via a series of delta escapes in a crafted BMP image.
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- Low
- Privileges needed
- None
- User interaction
- Required
What an attacker can affect
- Confidentiality
- None
- Integrity
- None
- Availability
- High
Exploit likelihood
What each source reports
NVD Score used
6.5
The bmp_read_rows function in pngxtern/pngxrbmp.c in OptiPNG before 0.7.6 allows remote attackers to cause a denial of service (invalid memory write and crash) via a series of delta escapes in a crafted BMP image.
- Record
CVE-2016-2191- CVSS 3.0
- 6.5 Medium
CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H - CVSS 2.0
- 4.3 Medium
AV:N/AC:M/Au:N/C:N/I:N/A:P - Weakness
- CWE-119
- Updated
- 2026-11-02
CVE List No score
The bmp_read_rows function in pngxtern/pngxrbmp.c in OptiPNG before 0.7.6 allows remote attackers to cause a denial of service (invalid memory write and crash) via a series of delta escapes in a crafted BMP image.
- Record
CVE-2016-2191- Updated
- 2026-11-02
EUVDEUVD-2016-3275 No score
The bmp_read_rows function in pngxtern/pngxrbmp.c in OptiPNG before 0.7.6 allows remote attackers to cause a denial of service (invalid memory write and crash) via a series of delta escapes in a crafted BMP image.
- Record
EUVD-2016-3275- Updated
- 2026-11-03
GitHub AdvisoriesGHSA-j2h5-f8x6-m62x
6.5
The bmp_read_rows function in pngxtern/pngxrbmp.c in OptiPNG before 0.7.6 allows remote attackers...
The bmp_read_rows function in pngxtern/pngxrbmp.c in OptiPNG before 0.7.6 allows remote attackers to cause a denial of service (invalid memory write and crash) via a series of delta escapes in a crafted BMP image.
- Record
GHSA-j2h5-f8x6-m62x- CVSS 3.0
- 6.5 Medium
CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H - Weakness
- CWE-119
- Updated
- 2026-11-02
OSV
6.5
The bmp_read_rows function in pngxtern/pngxrbmp.c in OptiPNG before 0.7.6 allows remote attackers to cause a denial of service (invalid memory write and crash) via a series of delta escapes in a crafted BMP image.
- Record
CVE-2016-2191- CVSS 3.0
- 6.5 Medium
CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H - Updated
- 2026-11-02
OSVDEBIAN-CVE-2016-2191
6.5
The bmp_read_rows function in pngxtern/pngxrbmp.c in OptiPNG before 0.7.6 allows remote attackers to cause a denial of service (invalid memory write and crash) via a series of delta escapes in a crafted BMP image.
- Record
DEBIAN-CVE-2016-2191- CVSS 3.0
- 6.5 Medium
CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H - Updated
- 2026-11-02
Show 4 moreShow less
OSVUBUNTU-CVE-2016-2191
6.5
The bmp_read_rows function in pngxtern/pngxrbmp.c in OptiPNG before 0.7.6 allows remote attackers to cause a denial of service (invalid memory write and crash) via a series of delta escapes in a crafted BMP image.
- Record
UBUNTU-CVE-2016-2191- CVSS 3.0
- 6.5 Medium
CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H - Updated
- 2026-11-02
OSVMGASA-2016-0135 No score
Updated optipng packages fix security vulnerabilities
An updated optipng package fixes a number of bugs and security vulnerabilities.
CVE-2015-7802 - Buffer over-read issue CVE-2016-2191 - An invalid write and segmentation fault may occur while processing bitmap images
- Record
MGASA-2016-0135- Updated
- 2026-11-02
OSVopenSUSE-SU-2024:10140-1 No score
optipng-0.7.6-1.4 on GA media
These are all security issues fixed in the optipng-0.7.6-1.4 package on the GA media of openSUSE Tumbleweed.
- Record
openSUSE-SU-2024:10140-1- Updated
- 2026-11-02
OSVUSN-2951-1 No score
optipng vulnerabilities
Gustavo Grieco discovered that OptiPNG incorrectly handled memory. A remote attacker could use this issue with a specially crafted image file to cause OptiPNG to crash, resulting in a denial of service. (CVE-2015-7801)
Gustavo Grieco discovered that OptiPNG incorrectly handled memory. A remote attacker could use this issue with a specially crafted image file to cause OptiPNG to crash, resulting in a denial of service. (CVE-2015-7802)
Hans Jerry Illikainen discovered that OptiPNG incorrectly handled memory. A remote attacker could use this issue with a specially crafted image file to cause OptiPNG to crash, resulting in a denial of service, or possibly execute arbitrary code. (CVE-2016-2191)
Henri Salo discovered that OptiPNG incorrectly handled memory. A remote attacker could use this issue with a specially crafted image file to cause OptiPNG to crash, resulting in a denial of service, or possibly execute arbitrary code. (CVE-2016-3981)
Henri Salo discovered that OptiPNG incorrectly handled memory. A remote attacker could use this issue with a specially crafted image file to cause OptiPNG to crash, resulting in a denial of service, or possibly execute arbitrary code. (CVE-2016-3982)
- Record
USN-2951-1- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
optipngDebian:12 |
before 0.7.6-1 | 0.7.6-1 |
optipngDebian:13 |
before 0.7.6-1 | 0.7.6-1 |
optipngDebian:14 |
before 0.7.6-1 | 0.7.6-1 |
optipngDebian:7 From an advisory covering 3 CVEs |
before 0.6.4-1+deb7u2, plus listed versions 0.6.4-10.6.4-1+deb7u1 |
0.6.4-1+deb7u2 |
optipngDebian:8 From an advisory covering 3 CVEs |
before 0.7.5-1+deb8u1, plus listed versions 0.7.5-1 |
0.7.5-1+deb8u1 |
optipngMageia:5 From an advisory covering 2 CVEs |
before 0.7.6-1.mga5 | 0.7.6-1.mga5 |
optipngUbuntu:14.04:LTS |
before 0.6.4-1ubuntu0.14.04.1, plus listed versions 0.6.4-1build1 |
0.6.4-1ubuntu0.14.04.1 |
optipngUbuntu:14.04:LTS From an advisory covering 5 CVEs |
before 0.6.4-1ubuntu0.14.04.1, plus listed versions 0.6.4-1build1 |
0.6.4-1ubuntu0.14.04.1 |
optipngopenSUSE:Tumbleweed |
before 0.7.6-1.4 | 0.7.6-1.4 |
History
| Recorded | Changed | Sources |
|---|---|---|
| affected, facts | ||
| aliases | EUVD | |
| first indexed | CVE List, GitHub Advisories, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2016-2191 is a medium vulnerability (CVSS 6.5) in Optipng, published April 7, 2016. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 3.52%, the 89th percentile. Fixed in optipng 0.7.6-1.
References
sourceforge.net/p/optipng/bugs/59
openwall.com/lists/oss-security/2016/04/04/2
lists.opensuse.org/opensuse-updates/2016-04/msg00065.html
debian.org/security/2016/dsa-3546
ubuntu.com/usn/USN-2951-1
lists.opensuse.org/opensuse-updates/2016-04/msg00061.html
Show 19 moreShow less
securityfocus.com/archive/1/537972/100/0/threaded
seclists.org/fulldisclosure/2016/Apr/15
security.gentoo.org/glsa/201608-01
packetstormsecurity.com/files/136553/Optipng-Invalid-Write.html
nvd.nist.gov/vuln/detail/CVE-2016-2191
github.com/advisories/GHSA-j2h5-f8x6-m62x
security-tracker.debian.org/tracker/CVE-2016-2191
advisories.mageia.org/MGASA-2016-0135.html
bugs.mageia.org/show_bug.cgi?id=16949
sourceforge.net/p/optipng/bugs/53
optipng.sourceforge.net/history.txt
ubuntu.com/security/CVE-2016-2191
ubuntu.com/security/notices/USN-2951-1
cve.org/CVERecord?id=CVE-2016-2191
ubuntu.com/security/CVE-2015-7801
ubuntu.com/security/CVE-2015-7802
ubuntu.com/security/CVE-2016-3981
ubuntu.com/security/CVE-2016-3982
suse.com/security/cve/CVE-2016-2191