CVE-2017-7867
International Components for Unicode (ICU) for C/C++ before 2017-02-13 has an out-of-bounds write...
International Components for Unicode (ICU) for C/C++ before 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.
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
- None
- Integrity
- None
- Availability
- High
Exploit likelihood
What each source reports
NVD Score used
7.5
International Components for Unicode (ICU) for C/C++ before 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.
- Record
CVE-2017-7867- CVSS 3.0
- 7.5 High
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H - CVSS 2.0
- 5.0 Medium
AV:N/AC:L/Au:N/C:N/I:N/A:P - Weakness
- CWE-787
- Updated
- 2026-11-02
CVE List No score
International Components for Unicode (ICU) for C/C++ before 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.
- Record
CVE-2017-7867- Updated
- 2026-11-02
EUVDEUVD-2017-16842 No score
International Components for Unicode (ICU) for C/C++ before 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.
- Record
EUVD-2017-16842- Updated
- 2026-11-03
GitHub AdvisoriesGHSA-4p33-mgp9-vqp5
7.5
International Components for Unicode (ICU) for C/C++ before 2017-02-13 has an out-of-bounds write...
International Components for Unicode (ICU) for C/C++ before 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.
- Record
GHSA-4p33-mgp9-vqp5- CVSS 3.0
- 7.5 High
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H - Weakness
- CWE-787
- Updated
- 2026-11-02
OSVALPINE-CVE-2017-7867
7.5
International Components for Unicode (ICU) for C/C++ before 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.
- Record
ALPINE-CVE-2017-7867- CVSS 3.0
- 7.5 High
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H - Updated
- 2026-11-02
OSVBELL-CVE-2017-7867
7.5
CVE-2017-7867 does not affect BellSoft software
- Record
BELL-CVE-2017-7867- CVSS 3.0
- 7.5 High
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H - Updated
- 2026-11-02
Show 8 moreShow less
OSV
7.5
International Components for Unicode (ICU) for C/C++ before 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.
- Record
CVE-2017-7867- CVSS 3.0
- 7.5 High
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H - Updated
- 2026-11-02
OSVDEBIAN-CVE-2017-7867
7.5
International Components for Unicode (ICU) for C/C++ before 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.
- Record
DEBIAN-CVE-2017-7867- CVSS 3.0
- 7.5 High
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H - Updated
- 2026-11-02
OSVUBUNTU-CVE-2017-7867
7.5
International Components for Unicode (ICU) for C/C++ before 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.
- Record
UBUNTU-CVE-2017-7867- CVSS 3.0
- 7.5 High
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H - Updated
- 2026-11-02
OSVMGASA-2017-0116 No score
Updated icu packages fix security vulnerability
It was discovered that icu did not correctly validate its input. An attacker could use this problem to trigger an out-of-bound write through a heap-based buffer overflow, thus causing a denial of service via application crash, or potential execution of arbitrary code (CVE-2017-7867, CVE-2017-7868).
- Record
MGASA-2017-0116- 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-3274-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-3274-1- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
icuAlpine:v3.10 |
before 58.2-r2 | 58.2-r2 |
icuAlpine:v3.11 |
before 58.2-r2 | 58.2-r2 |
icuAlpine:v3.12 |
before 58.2-r2 | 58.2-r2 |
icuAlpine:v3.13 |
before 58.2-r2 | 58.2-r2 |
icuAlpine:v3.14 |
before 58.2-r2 | 58.2-r2 |
icuAlpine:v3.15 |
before 58.2-r2 | 58.2-r2 |
icuAlpine:v3.16 |
before 58.2-r2 | 58.2-r2 |
icuAlpine:v3.17 |
before 58.2-r2 | 58.2-r2 |
icuAlpine:v3.18 |
before 58.2-r2 | 58.2-r2 |
icuAlpine:v3.19 |
before 58.2-r2 | 58.2-r2 |
Show 37 moreShow less
| Package | Affected | Fixed |
|---|---|---|
icuAlpine:v3.2 |
before 55.1-r3 | 55.1-r3 |
icuAlpine:v3.20 |
before 58.2-r2 | 58.2-r2 |
icuAlpine:v3.21 |
before 58.2-r2 | 58.2-r2 |
icuAlpine:v3.22 |
before 58.2-r2 | 58.2-r2 |
icuAlpine:v3.23 |
before 58.2-r2 | 58.2-r2 |
icuAlpine:v3.24 |
before 58.2-r2 | 58.2-r2 |
icuAlpine:v3.3 |
before 56.1-r2 | 56.1-r2 |
icuAlpine:v3.4 |
before 57.1-r3 | 57.1-r3 |
icuAlpine:v3.5 |
before 57.1-r3 | 57.1-r3 |
icuAlpine:v3.6 |
before 58.2-r2 | 58.2-r2 |
icuAlpine:v3.7 |
before 58.2-r2 | 58.2-r2 |
icuAlpine:v3.8 |
before 58.2-r2 | 58.2-r2 |
icuAlpine:v3.9 |
before 58.2-r2 | 58.2-r2 |
icuDebian:12 |
before 57.1-6 | 57.1-6 |
icuDebian:13 |
before 57.1-6 | 57.1-6 |
icuDebian:14 |
before 57.1-6 | 57.1-6 |
icuDebian:7 |
before 4.8.1.1-12+deb7u7, 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+deb7u44.8.1.1-12+deb7u54.8.1.1-12+deb7u6 |
4.8.1.1-12+deb7u7 |
icuDebian:8 |
before 52.1-8+deb8u5, plus listed versions 52.1-852.1-8+deb8u252.1-8+deb8u352.1-8+deb8u4 |
52.1-8+deb8u5 |
icuMageia:5 |
before 53.1-12.7.mga5 | 53.1-12.7.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.6, 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.452.1-3ubuntu0.5 |
52.1-3ubuntu0.6 |
icuUbuntu:16.04:LTS |
before 55.1-7ubuntu0.2, plus listed versions 55.1-4ubuntu155.1-6ubuntu155.1-755.1-7ubuntu0.1 |
55.1-7ubuntu0.2 |
History
| Recorded | Changed | Sources |
|---|---|---|
| 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-2017-7867 is a high vulnerability (CVSS 7.5) in Icu-project International Components For Unicode, published April 14, 2017. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 4.63%, the 91st percentile. Fixed in icu 58.2-r2.
References
bugs.icu-project.org/trac/changeset/39671
debian.org/security/2017/dsa-3830
bugs.chromium.org/p/oss-fuzz/issues/detail?id=213
security.gentoo.org/glsa/201710-03
securityfocus.com/bid/97672
oracle.com/technetwork/security-advisory/cpuapr2019-5072813.html
Show 31 moreShow less
nvd.nist.gov/vuln/detail/CVE-2017-7867
github.com/advisories/GHSA-4p33-mgp9-vqp5
security.alpinelinux.org/vuln/CVE-2017-7867
docs.bell-sw.com/security/cves/CVE-2017-7867
security-tracker.debian.org/tracker/CVE-2017-7867
advisories.mageia.org/MGASA-2017-0116.html
bugs.mageia.org/show_bug.cgi?id=20706
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-2017-7867
ubuntu.com/security/notices/USN-3274-1
ubuntu.com/security/notices/USN-3274-2
cve.org/CVERecord?id=CVE-2017-7867
ubuntu.com/security/CVE-2017-7868