CVE-2016-6293
The uloc_acceptLanguageFromHTTP function in common/uloc.cpp in International Components for...
CVE-2016-6293 is a critical vulnerability (CVSS 9.8) in Icu-project International Components For Unicode, published July 25, 2016. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 5.02%, the 92nd percentile. Fixed in icu 57.1-r1.
The uloc_acceptLanguageFromHTTP function in common/uloc.cpp in International Components for Unicode (ICU) through 57.1 for C/C++ does not ensure that there is a '\0' character at the end of a certain temporary array, which allows remote attackers to cause a denial of service (out-of-bounds read) or possibly have unspecified other impact via a call with a long httpAcceptLanguage argument.
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
The uloc_acceptLanguageFromHTTP function in common/uloc.cpp in International Components for Unicode (ICU) through 57.1 for C/C++ does not ensure that there is a '\0' character at the end of a certain temporary array, which allows remote attackers to cause a denial of service (out-of-bounds read) or possibly have unspecified other impact via a call with a long httpAcceptLanguage argument.
- Record
CVE-2016-6293- CVSS 3.0
- 9.8 Critical
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - CVSS 2.0
- 7.5 High
AV:N/AC:L/Au:N/C:P/I:P/A:P - Weakness
- CWE-119
- Updated
- 2026-11-02
CVE List No score
The uloc_acceptLanguageFromHTTP function in common/uloc.cpp in International Components for Unicode (ICU) through 57.1 for C/C++ does not ensure that there is a '\0' character at the end of a certain temporary array, which allows remote attackers to cause a denial of service (out-of-bounds read) or possibly have unspecified other impact via a call with a long httpAcceptLanguage argument.
- Record
CVE-2016-6293- Updated
- 2026-11-02
EUVDEUVD-2016-7223 No score
The uloc_acceptLanguageFromHTTP function in common/uloc.cpp in International Components for Unicode (ICU) through 57.1 for C/C++ does not ensure that there is a '\0' character at the end of a certain temporary array, which allows remote attackers to cause a denial of service (out-of-bounds read) or possibly have unspecified other impact via a call with a long httpAcceptLanguage argument.
- Record
EUVD-2016-7223- Updated
- 2026-11-03
GitHub AdvisoriesGHSA-jw29-rmwq-xp9m
9.8
The uloc_acceptLanguageFromHTTP function in common/uloc.cpp in International Components for...
The uloc_acceptLanguageFromHTTP function in common/uloc.cpp in International Components for Unicode (ICU) through 57.1 for C/C++ does not ensure that there is a '\0' character at the end of a certain temporary array, which allows remote attackers to cause a denial of service (out-of-bounds read) or possibly have unspecified other impact via a call with a long httpAcceptLanguage argument.
- Record
GHSA-jw29-rmwq-xp9m- CVSS 3.0
- 9.8 Critical
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Weakness
- CWE-119
- Updated
- 2026-11-02
OSVALPINE-CVE-2016-6293
9.8
The uloc_acceptLanguageFromHTTP function in common/uloc.cpp in International Components for Unicode (ICU) through 57.1 for C/C++ does not ensure that there is a '\0' character at the end of a certain temporary array, which allows remote attackers to cause a denial of service (out-of-bounds read) or possibly have unspecified other impact via a call with a long httpAcceptLanguage argument.
- Record
ALPINE-CVE-2016-6293- CVSS 3.0
- 9.8 Critical
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
OSVBELL-CVE-2016-6293
9.8
CVE-2016-6293 does not affect BellSoft software
- Record
BELL-CVE-2016-6293- CVSS 3.0
- 9.8 Critical
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
Show 8 moreShow less
OSV
9.8
The uloc_acceptLanguageFromHTTP function in common/uloc.cpp in International Components for Unicode (ICU) through 57.1 for C/C++ does not ensure that there is a '\0' character at the end of a certain temporary array, which allows remote attackers to cause a denial of service (out-of-bounds read) or possibly have unspecified other impact via a call with a long httpAcceptLanguage argument.
- Record
CVE-2016-6293- CVSS 3.0
- 9.8 Critical
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
OSVDEBIAN-CVE-2016-6293
9.8
The uloc_acceptLanguageFromHTTP function in common/uloc.cpp in International Components for Unicode (ICU) through 57.1 for C/C++ does not ensure that there is a '\0' character at the end of a certain temporary array, which allows remote attackers to cause a denial of service (out-of-bounds read) or possibly have unspecified other impact via a call with a long httpAcceptLanguage argument.
- Record
DEBIAN-CVE-2016-6293- CVSS 3.0
- 9.8 Critical
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
OSVUBUNTU-CVE-2016-6293
9.8
The uloc_acceptLanguageFromHTTP function in common/uloc.cpp in International Components for Unicode (ICU) through 57.1 for C/C++ does not ensure that there is a '\0' character at the end of a certain temporary array, which allows remote attackers to cause a denial of service (out-of-bounds read) or possibly have unspecified other impact via a call with a long httpAcceptLanguage argument.
- Record
UBUNTU-CVE-2016-6293- CVSS 3.0
- 9.8 Critical
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
OSVMGASA-2016-0314 No score
Updated icu packages fix security vulnerability
Buffer overflow ICU in the uloc_acceptLanguageFromHTTP() function (CVE-2016-6293).
- Record
MGASA-2016-0314- Updated
- 2026-11-02
OSVSUSE-SU-2018:1401-1 No score
Security update for icu
icu was updated to fix two security issues.
These security issues were fixed:
- CVE-2014-8147: The resolveImplicitLevels function in common/ubidi.c in the Unicode Bidirectional Algorithm implementation in ICU4C in International Components for Unicode (ICU) used an integer data type that is inconsistent with a header file, which allowed remote attackers to cause a denial of service (incorrect malloc followed by invalid free) or possibly execute arbitrary code via crafted text (bsc#929629).
- CVE-2014-8146: The resolveImplicitLevels function in common/ubidi.c in the Unicode Bidirectional Algorithm implementation in ICU4C in International Components for Unicode (ICU) did not properly track directionally isolated pieces of text, which allowed remote attackers to cause a denial of service (heap-based buffer overflow) or possibly execute arbitrary code via crafted text (bsc#929629).
- CVE-2016-6293: The uloc_acceptLanguageFromHTTP function in common/uloc.cpp in International Components for Unicode (ICU) for C/C++ did not ensure that there is a '\0' character at the end of a certain temporary array, which allowed remote attackers to cause a denial of service (out-of-bounds read) or possibly have unspecified other impact via a call with a long httpAcceptLanguage argument (bsc#990636).
- CVE-2017-7868: International Components for Unicode (ICU) for C/C++ 2017-02-13 has an out-of-bounds write caused by a heap-based buffer overflow related to the utf8TextAccess function in common/utext.cpp and the utext_moveIndex32* function (bsc#1034674)
- CVE-2017-7867: International Components for Unicode (ICU) for C/C++ 2017-02-13 has an out-of-bounds write caused by a heap-based buffer overflow related to the utf8TextAccess function in common/utext.cpp and the utext_setNativeIndex* function (bsc#1034678)
- CVE-2017-14952: Double free in i18n/zonemeta.cpp in International Components for Unicode (ICU) for C/C++ allowed remote attackers to execute arbitrary code via a crafted string, aka a 'redundant UVector entry clean up function call' issue (bnc#1067203)
- CVE-2017-17484: The ucnv_UTF8FromUTF8 function in ucnv_u8.cpp in International Components for Unicode (ICU) for C/C++ mishandled ucnv_convertEx calls for UTF-8 to UTF-8 conversion, which allowed remote attackers to cause a denial of service (stack-based buffer overflow and application crash) or possibly have unspecified other impact via a crafted string, as demonstrated by ZNC (bnc#1072193)
- CVE-2017-15422: An integer overflow in icu during persian calendar date processing could lead to incorrect years shown (bnc#1077999)
- Record
SUSE-SU-2018:1401-1- Updated
- 2026-11-02
OSVSUSE-SU-2018:1401-2 No score
Security update for icu
icu was updated to fix two security issues.
These security issues were fixed:
- CVE-2014-8147: The resolveImplicitLevels function in common/ubidi.c in the Unicode Bidirectional Algorithm implementation in ICU4C in International Components for Unicode (ICU) used an integer data type that is inconsistent with a header file, which allowed remote attackers to cause a denial of service (incorrect malloc followed by invalid free) or possibly execute arbitrary code via crafted text (bsc#929629).
- CVE-2014-8146: The resolveImplicitLevels function in common/ubidi.c in the Unicode Bidirectional Algorithm implementation in ICU4C in International Components for Unicode (ICU) did not properly track directionally isolated pieces of text, which allowed remote attackers to cause a denial of service (heap-based buffer overflow) or possibly execute arbitrary code via crafted text (bsc#929629).
- CVE-2016-6293: The uloc_acceptLanguageFromHTTP function in common/uloc.cpp in International Components for Unicode (ICU) for C/C++ did not ensure that there is a '\0' character at the end of a certain temporary array, which allowed remote attackers to cause a denial of service (out-of-bounds read) or possibly have unspecified other impact via a call with a long httpAcceptLanguage argument (bsc#990636).
- CVE-2017-7868: International Components for Unicode (ICU) for C/C++ 2017-02-13 has an out-of-bounds write caused by a heap-based buffer overflow related to the utf8TextAccess function in common/utext.cpp and the utext_moveIndex32* function (bsc#1034674)
- CVE-2017-7867: International Components for Unicode (ICU) for C/C++ 2017-02-13 has an out-of-bounds write caused by a heap-based buffer overflow related to the utf8TextAccess function in common/utext.cpp and the utext_setNativeIndex* function (bsc#1034678)
- CVE-2017-14952: Double free in i18n/zonemeta.cpp in International Components for Unicode (ICU) for C/C++ allowed remote attackers to execute arbitrary code via a crafted string, aka a 'redundant UVector entry clean up function call' issue (bnc#1067203)
- CVE-2017-17484: The ucnv_UTF8FromUTF8 function in ucnv_u8.cpp in International Components for Unicode (ICU) for C/C++ mishandled ucnv_convertEx calls for UTF-8 to UTF-8 conversion, which allowed remote attackers to cause a denial of service (stack-based buffer overflow and application crash) or possibly have unspecified other impact via a crafted string, as demonstrated by ZNC (bnc#1072193)
- CVE-2017-15422: An integer overflow in icu during persian calendar date processing could lead to incorrect years shown (bnc#1077999)
- Record
SUSE-SU-2018:1401-2- Updated
- 2026-11-02
OSVSUSE-SU-2018:1602-1 No score
Security update for icu
This update for icu fixes the following issues:
- CVE-2016-6293: The uloc_acceptLanguageFromHTTP function in common/uloc.cpp did not ensure that there is a '\0' character at the end of a certain temporary array, which allows remote attackers to cause a denial of service (out-of-bounds read) or possibly have unspecified other impact via a call with a long httpAcceptLanguage argument. (bsc#990636)
- CVE-2017-7868: ICU had an out-of-bounds write caused by a heap-based buffer overflow related to the utf8TextAccess function in common/utext.cpp and the utext_moveIndex32* function. (bsc#1034674)
- CVE-2017-7867: ICU had an out-of-bounds write caused by a heap-based buffer overflow related to the utf8TextAccess function in common/utext.cpp and the utext_setNativeIndex* function. (bsc#1034678)
- CVE-2017-14952: Double free in i18n/zonemeta.cpp allowed remote attackers to execute arbitrary code via a crafted string, aka a 'redundant UVector entry clean up function call' issue. (bsc#1067203)
- CVE-2017-17484:The ucnv_UTF8FromUTF8 function in ucnv_u8.cpp mishandled ucnv_convertEx calls for UTF-8 to UTF-8 conversion, which allows remote attackers to cause a denial of service (stack-based buffer overflow and application crash) or possibly have unspecified other impact via a crafted string, as demonstrated by ZNC. (bsc#1072193)
- CVE-2017-15422: An integer overflow in persian calendar calculation was fixed, which could show wrong years. (bsc#1077999)
- Record
SUSE-SU-2018:1602-1- Updated
- 2026-11-02
OSVUSN-3227-1 No score
icu vulnerabilities
It was discovered that ICU incorrectly handled certain memory operations when processing data. If an application using ICU processed crafted data, a remote attacker could possibly cause it to crash or potentially execute arbitrary code with the privileges of the user invoking the program.
- Record
USN-3227-1- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
icuAlpine:v3.10 |
before 57.1-r1 | 57.1-r1 |
icuAlpine:v3.11 |
before 57.1-r1 | 57.1-r1 |
icuAlpine:v3.12 |
before 57.1-r1 | 57.1-r1 |
icuAlpine:v3.13 |
before 57.1-r1 | 57.1-r1 |
icuAlpine:v3.14 |
before 57.1-r1 | 57.1-r1 |
icuAlpine:v3.15 |
before 57.1-r1 | 57.1-r1 |
icuAlpine:v3.16 |
before 57.1-r1 | 57.1-r1 |
icuAlpine:v3.17 |
before 57.1-r1 | 57.1-r1 |
icuAlpine:v3.18 |
before 57.1-r1 | 57.1-r1 |
icuAlpine:v3.19 |
before 57.1-r1 | 57.1-r1 |
Show 35 moreShow less
| Package | Affected | Fixed |
|---|---|---|
icuAlpine:v3.20 |
before 57.1-r1 | 57.1-r1 |
icuAlpine:v3.21 |
before 57.1-r1 | 57.1-r1 |
icuAlpine:v3.22 |
before 57.1-r1 | 57.1-r1 |
icuAlpine:v3.23 |
before 57.1-r1 | 57.1-r1 |
icuAlpine:v3.24 |
before 57.1-r1 | 57.1-r1 |
icuAlpine:v3.4 |
before 57.1-r1 | 57.1-r1 |
icuAlpine:v3.5 |
before 57.1-r1 | 57.1-r1 |
icuAlpine:v3.6 |
before 57.1-r1 | 57.1-r1 |
icuAlpine:v3.7 |
before 57.1-r1 | 57.1-r1 |
icuAlpine:v3.8 |
before 57.1-r1 | 57.1-r1 |
icuAlpine:v3.9 |
before 57.1-r1 | 57.1-r1 |
icuDebian:12 |
before 57.1-4 | 57.1-4 |
icuDebian:13 |
before 57.1-4 | 57.1-4 |
icuDebian:14 |
before 57.1-4 | 57.1-4 |
icuDebian:7 |
before 4.8.1.1-12+deb7u5, plus listed versions 4.8.1.1-124.8.1.1-12+deb7u14.8.1.1-12+deb7u24.8.1.1-12+deb7u34.8.1.1-12+deb7u4 |
4.8.1.1-12+deb7u5 |
icuDebian:8 |
before 52.1-8+deb8u4, plus listed versions 52.1-852.1-8+deb8u252.1-8+deb8u3 |
52.1-8+deb8u4 |
icuMageia:5 |
before 53.1-12.4.mga5 | 53.1-12.4.mga5 |
icuSUSE:OpenStack Cloud 7 |
before 52.1-8.7.1 | 52.1-8.7.1 |
icuSUSE:Linux Enterprise Desktop 12 SP3 |
before 52.1-8.7.1 | 52.1-8.7.1 |
icuSUSE:Linux Enterprise Server for SAP Applications 12 SP1 |
before 52.1-8.7.1 | 52.1-8.7.1 |
icuSUSE:Linux Enterprise Server for SAP Applications 12 SP2 |
before 52.1-8.7.1 | 52.1-8.7.1 |
icuSUSE:Linux Enterprise Software Development Kit 12 SP3 |
before 52.1-8.7.1 | 52.1-8.7.1 |
icuSUSE:Linux Enterprise Server 12-LTSS |
before 52.1-8.7.1 | 52.1-8.7.1 |
icuSUSE:Linux Enterprise Server 12 SP1-LTSS |
before 52.1-8.7.1 | 52.1-8.7.1 |
icuSUSE:Linux Enterprise Server 12 SP2-LTSS |
before 52.1-8.7.1 | 52.1-8.7.1 |
icuSUSE:Linux Enterprise Server 12 SP3 |
before 52.1-8.7.1 | 52.1-8.7.1 |
icuSUSE:Linux Enterprise Server for SAP Applications 12 SP3 |
before 52.1-8.7.1 | 52.1-8.7.1 |
icuSUSE:Linux Enterprise Workstation Extension 12 SP3 |
before 52.1-8.7.1 | 52.1-8.7.1 |
icuSUSE:Enterprise Storage 4 |
before 52.1-8.7.1 | 52.1-8.7.1 |
icuSUSE:Linux Enterprise Server 12 SP2-BCL |
before 52.1-8.7.1 | 52.1-8.7.1 |
icuSUSE:Linux Enterprise Software Development Kit 11 SP4 |
before 4.0-47.6.1 | 4.0-47.6.1 |
icuSUSE:Linux Enterprise Server 11 SP4 |
before 4.0-47.6.1 | 4.0-47.6.1 |
icuSUSE:Linux Enterprise Server for SAP Applications 11 SP4 |
before 4.0-47.6.1 | 4.0-47.6.1 |
icuUbuntu:14.04:LTS |
before 52.1-3ubuntu0.5, plus listed versions 4.8.1.1-12ubuntu24.8.1.1-13+nmu14.8.1.1-13+nmu1ubuntu152.1-352.1-3ubuntu0.252.1-3ubuntu0.352.1-3ubuntu0.4 |
52.1-3ubuntu0.5 |
icuUbuntu:16.04:LTS |
before 55.1-7ubuntu0.1, plus listed versions 55.1-4ubuntu155.1-6ubuntu155.1-7 |
55.1-7ubuntu0.1 |
History
| When | Changed | Sources |
|---|---|---|
| 2026-11-03 | aliases | EUVD |
| 2026-11-02 | created | CVE List, GitHub Advisories, NVD, OSV |
References
git.php.net?p=php-src.git%3Ba=commit%3Bh=aa82e99ed8003c01f1ef4f0940e56b85c5b032d4
bugs.php.net/72533
security.gentoo.org/glsa/201701-58
openwall.com/lists/oss-security/2016/07/24/2
securityfocus.com/bid/92127
oracle.com/technetwork/security-advisory/cpuapr2019-5072813.html
Show 35 moreShow less
nvd.nist.gov/vuln/detail/CVE-2016-6293
git.php.net?p=php-src.git;a=commit;h=aa82e99ed8003c01f1ef4f0940e56b85c5b032d4
github.com/advisories/GHSA-jw29-rmwq-xp9m
security.alpinelinux.org/vuln/CVE-2016-6293
docs.bell-sw.com/security/cves/CVE-2016-6293
security-tracker.debian.org/tracker/CVE-2016-6293
advisories.mageia.org/MGASA-2016-0314.html
bugs.mageia.org/show_bug.cgi?id=19315
lwn.net/Alerts/699938
suse.com/support/update/announcement/2018/suse-su-20181401-1
bugzilla.suse.com/1034674
bugzilla.suse.com/1034678
bugzilla.suse.com/1067203
bugzilla.suse.com/1072193
bugzilla.suse.com/1077999
bugzilla.suse.com/1087932
bugzilla.suse.com/929629
bugzilla.suse.com/990636
suse.com/security/cve/CVE-2014-8146
suse.com/security/cve/CVE-2014-8147
suse.com/security/cve/CVE-2016-6293
suse.com/security/cve/CVE-2017-14952
suse.com/security/cve/CVE-2017-15422
suse.com/security/cve/CVE-2017-17484
suse.com/security/cve/CVE-2017-7867
suse.com/security/cve/CVE-2017-7868
suse.com/support/update/announcement/2018/suse-su-20181401-2
suse.com/support/update/announcement/2018/suse-su-20181602-1
ubuntu.com/security/CVE-2016-6293
ubuntu.com/security/notices/USN-3227-1
cve.org/CVERecord?id=CVE-2016-6293
ubuntu.com/security/CVE-2014-9911
ubuntu.com/security/CVE-2015-4844
ubuntu.com/security/CVE-2016-0494
ubuntu.com/security/CVE-2016-7415