CVE-2017-1000376
libffi requests an executable stack allowing attackers to more easily trigger arbitrary code...
libffi requests an executable stack allowing attackers to more easily trigger arbitrary code execution by overwriting the stack. Please note that libffi is used by a number of other libraries. It was previously stated that this affects libffi version 3.2.1 but this appears to be incorrect. libffi prior to version 3.1 on 32 bit x86 systems was vulnerable, and upstream is believed to have fixed this issue in version 3.1.
Attack profile
How easy it is to exploit
- Attack vector
- Local
- Complexity
- High
- Privileges needed
- Low
- User interaction
- None
What an attacker can affect
- Confidentiality
- High
- Integrity
- High
- Availability
- High
Exploit likelihood
What each source reports
NVD Score used
7.0
libffi requests an executable stack allowing attackers to more easily trigger arbitrary code execution by overwriting the stack. Please note that libffi is used by a number of other libraries. It was previously stated that this affects libffi version 3.2.1 but this appears to be incorrect. libffi prior to version 3.1 on 32 bit x86 systems was vulnerable, and upstream is believed to have fixed this issue in version 3.1.
- Record
CVE-2017-1000376- CVSS 3.1
- 7.0 High
CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H - CVSS 2.0
- 6.9 Medium
AV:L/AC:M/Au:N/C:C/I:C/A:C - Weakness
- CWE-119
- Updated
- 2026-11-02
CVE List No score
libffi requests an executable stack allowing attackers to more easily trigger arbitrary code execution by overwriting the stack. Please note that libffi is used by a number of other libraries. It was previously stated that this affects libffi version 3.2.1 but this appears to be incorrect. libffi prior to version 3.1 on 32 bit x86 systems was vulnerable, and upstream is believed to have fixed this issue in version 3.1.
- Record
CVE-2017-1000376- Updated
- 2026-11-02
EUVDEUVD-2017-1535 No score
libffi requests an executable stack allowing attackers to more easily trigger arbitrary code execution by overwriting the stack. Please note that libffi is used by a number of other libraries. It was previously stated that this affects libffi version 3.2.1 but this appears to be incorrect. libffi prior to version 3.1 on 32 bit x86 systems was vulnerable, and upstream is believed to have fixed this issue in version 3.1.
- Record
EUVD-2017-1535- Updated
- 2026-11-03
GitHub AdvisoriesGHSA-8jcm-439f-pj4q
7.0
libffi requests an executable stack allowing attackers to more easily trigger arbitrary code...
libffi requests an executable stack allowing attackers to more easily trigger arbitrary code execution by overwriting the stack. Please note that libffi is used by a number of other libraries. It was previously stated that this affects libffi version 3.2.1 but this appears to be incorrect. libffi prior to version 3.1 on 32 bit x86 systems was vulnerable, and upstream is believed to have fixed this issue in version 3.1.
- Record
GHSA-8jcm-439f-pj4q- CVSS 3.0
- 7.0 High
CVSS:3.0/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H - Weakness
- CWE-119
- Updated
- 2026-11-02
OSVBELL-CVE-2017-1000376
7.0
CVE-2017-1000376 does not affect BellSoft software
- Record
BELL-CVE-2017-1000376- CVSS 3.1
- 7.0 High
CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
OSV
7.0
libffi requests an executable stack allowing attackers to more easily trigger arbitrary code execution by overwriting the stack. Please note that libffi is used by a number of other libraries. It was previously stated that this affects libffi version 3.2.1 but this appears to be incorrect. libffi prior to version 3.1 on 32 bit x86 systems was vulnerable, and upstream is believed to have fixed this issue in version 3.1.
- Record
CVE-2017-1000376- CVSS 3.1
- 7.0 High
CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-03
Show 5 moreShow less
OSVDEBIAN-CVE-2017-1000376
7.0
libffi requests an executable stack allowing attackers to more easily trigger arbitrary code execution by overwriting the stack. Please note that libffi is used by a number of other libraries. It was previously stated that this affects libffi version 3.2.1 but this appears to be incorrect. libffi prior to version 3.1 on 32 bit x86 systems was vulnerable, and upstream is believed to have fixed this issue in version 3.1.
- Record
DEBIAN-CVE-2017-1000376- CVSS 3.1
- 7.0 High
CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
OSVUBUNTU-CVE-2017-1000376
7.0
libffi requests an executable stack allowing attackers to more easily trigger arbitrary code execution by overwriting the stack. Please note that libffi is used by a number of other libraries. It was previously stated that this affects libffi version 3.2.1 but this appears to be incorrect. libffi prior to version 3.1 on 32 bit x86 systems was vulnerable, and upstream is believed to have fixed this issue in version 3.1.
- Record
UBUNTU-CVE-2017-1000376- CVSS 3.1
- 7.0 High
CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H - CVSS 3.0
- 7.0 High
CVSS:3.0/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
OSVMGASA-2017-0201 No score
Updated libffi packages fix security vulnerability
libffi, a library used to call code written in one language from code written in a different language, was enforcing an executable stack on the i386 architecture. While this might not be considered a vulnerability by itself, this could be leveraged when exploiting other vulnerabilities, such as the "stack clash" class of vulnerabilities discovered by Qualys Research Labs.
- Record
MGASA-2017-0201- Updated
- 2026-11-02
OSVSUSE-SU-2018:0300-1 No score
Security update for gcc43
This update for gcc43 fixes the following issues:
Security issue fixed:
- CVE-2017-1000376: Don't request excutable stack from libffi. [bnc#1045091]
New features:
- Add support for retpolines to mitigate the Spectre Variant 2 attack. [bnc#1074621]
- Add support for zero-sized VLAs and allocas with -fstack-clash-protection. [bnc#1059075]
- Add support for -fstack-clash-protection to mitigate the Stack Clash attack. [bnc#1039513]
Non security bugs fixed:
- Fixed build of 32bit libgcov.a with LFS support. [bsc#1044016]
- Fixed issue with libstdc++ functional when an exception is thrown during construction. [bsc#999596]
- Fixed issue with using gcov and #pragma pack. [bsc#977654]
- Fixed ICE compiling AFS modules for the s390x kernel. [bsc#938159]
- Backport large file support from GCC 4.6.
- Record
SUSE-SU-2018:0300-1- Updated
- 2026-11-02
OSVUSN-3454-1 No score
libffi vulnerability
It was discovered that libffi incorrectly enforced an executable stack. An attacker could possibly use this issue, in combination with another vulnerability, to facilitate executing arbitrary code.
- Record
USN-3454-1- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
libffiDebian:12 |
before 3.2.1-4 | 3.2.1-4 |
libffiDebian:13 |
before 3.2.1-4 | 3.2.1-4 |
libffiDebian:14 |
before 3.2.1-4 | 3.2.1-4 |
libffiDebian:7 |
before 3.0.10-3+deb7u1, plus listed versions 3.0.10-3 |
3.0.10-3+deb7u1 |
libffiDebian:8 |
before 3.1-2+deb8u1, plus listed versions 3.1-2 |
3.1-2+deb8u1 |
libffiMageia:5 |
before 3.1-4.1.mga5 | 3.1-4.1.mga5 |
gcc43SUSE:Linux Enterprise Software Development Kit 11 SP4 |
before 4.3.4_20091019-37.3.1 | 4.3.4_20091019-37.3.1 |
gcc43SUSE:Linux Enterprise Point of Sale 11 SP3 |
before 4.3.4_20091019-37.3.1 | 4.3.4_20091019-37.3.1 |
gcc43SUSE:Linux Enterprise Server 11 SP3-LTSS |
before 4.3.4_20091019-37.3.1 | 4.3.4_20091019-37.3.1 |
gcc43SUSE:Linux Enterprise Server 11 SP3-TERADATA |
before 4.3.4_20091019-37.3.1 | 4.3.4_20091019-37.3.1 |
gcc43SUSE:Linux Enterprise Server 11 SP4 |
before 4.3.4_20091019-37.3.1 | 4.3.4_20091019-37.3.1 |
gcc43SUSE:Linux Enterprise Server for SAP Applications 11 SP4 |
before 4.3.4_20091019-37.3.1 | 4.3.4_20091019-37.3.1 |
libffiUbuntu:14.04:LTS |
before 3.1~rc1+r3.0.13-12ubuntu0.2, plus listed versions 3.0.13-43.0.13-53.0.13-63.0.13-9ubuntu13.0.13-10 Show 6 moreShow less3.0.13-10build13.0.13-113.0.13-123.1~rc1-23.1~rc1+r3.0.13-123.1~rc1+r3.0.13-12ubuntu0.1 |
3.1~rc1+r3.0.13-12ubuntu0.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-1000376 is a high vulnerability (CVSS 7.0) in Libffi Project Libffi, published June 19, 2017. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.50%, the 43rd percentile. Fixed in libffi 3.2.1-4.
References
qualys.com/2017/06/19/stack-clash/stack-clash.txt
access.redhat.com/security/cve/CVE-2017-1000376
debian.org/security/2017/dsa-3889
oracle.com/security-alerts/cpujan2020.html
nvd.nist.gov/vuln/detail/CVE-2017-1000376
github.com/advisories/GHSA-8jcm-439f-pj4q
Show 19 moreShow less
docs.bell-sw.com/security/cves/CVE-2017-1000376
security-tracker.debian.org/tracker/CVE-2017-1000376
advisories.mageia.org/MGASA-2017-0201.html
bugs.mageia.org/show_bug.cgi?id=21122
github.com/libffi/libffi/commit/978c9540154d320525488db1b7049277122f736d
suse.com/support/update/announcement/2018/suse-su-20180300-1
bugzilla.suse.com/1039513
bugzilla.suse.com/1044016
bugzilla.suse.com/1045091
bugzilla.suse.com/1059075
bugzilla.suse.com/1074621
bugzilla.suse.com/938159
bugzilla.suse.com/977654
bugzilla.suse.com/999596
suse.com/security/cve/CVE-2017-1000376
ubuntu.com/security/CVE-2017-1000376
ubuntu.com/security/notices/USN-3454-1
ubuntu.com/security/notices/USN-3454-2
cve.org/CVERecord?id=CVE-2017-1000376