Every CVE Search/ Get API key

CVE-2017-10686

In Netwide Assembler (NASM) 2.14rc0, there are multiple heap use after free vulnerabilities in...

7.8 HighFix available

In Netwide Assembler (NASM) 2.14rc0, there are multiple heap use after free vulnerabilities in the tool nasm. The related heap is allocated in the token() function and freed in the detoken() function (called by pp_getline()) - it is used again at multiple positions later that could cause multiple damages. For example, it causes a corrupted double-linked list in detoken(), a double free or corruption in delete_Token(), and an out-of-bounds write in detoken(). It has a high possibility to lead to a remote code execution attack.

Attack profile

How easy it is to exploit

Attack vector
Local
Complexity
Low
Privileges needed
None
User interaction
Required

What an attacker can affect

Confidentiality
High
Integrity
High
Availability
High

Exploit likelihood

2.95%Up 1.1 points since Apr 14, 2021
90%50%10%1%

What each source reports

NVD Score used 7.8

In Netwide Assembler (NASM) 2.14rc0, there are multiple heap use after free vulnerabilities in the tool nasm. The related heap is allocated in the token() function and freed in the detoken() function (called by pp_getline()) - it is used again at multiple positions later that could cause multiple damages. For example, it causes a corrupted double-linked list in detoken(), a double free or corruption in delete_Token(), and an out-of-bounds write in detoken(). It has a high possibility to lead to a remote code execution attack.

Record
CVE-2017-10686
CVSS 3.0
7.8 HighCVSS:3.0/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
CVSS 2.0
6.8 MediumAV:N/AC:M/Au:N/C:P/I:P/A:P
Weakness
CWE-416
Updated
2026-11-02
CVE List No score

In Netwide Assembler (NASM) 2.14rc0, there are multiple heap use after free vulnerabilities in the tool nasm. The related heap is allocated in the token() function and freed in the detoken() function (called by pp_getline()) - it is used again at multiple positions later that could cause multiple damages. For example, it causes a corrupted double-linked list in detoken(), a double free or corruption in delete_Token(), and an out-of-bounds write in detoken(). It has a high possibility to lead to a remote code execution attack.

Record
CVE-2017-10686
Updated
2026-11-02
EUVDEUVD-2017-2333 No score

In Netwide Assembler (NASM) 2.14rc0, there are multiple heap use after free vulnerabilities in the tool nasm. The related heap is allocated in the token() function and freed in the detoken() function (called by pp_getline()) - it is used again at multiple positions later that could cause multiple damages. For example, it causes a corrupted double-linked list in detoken(), a double free or corruption in delete_Token(), and an out-of-bounds write in detoken(). It has a high possibility to lead to a remote code execution attack.

Record
EUVD-2017-2333
Updated
2026-11-03
GitHub AdvisoriesGHSA-vppv-9vcp-9fcg 7.8

In Netwide Assembler (NASM) 2.14rc0, there are multiple heap use after free vulnerabilities in...

In Netwide Assembler (NASM) 2.14rc0, there are multiple heap use after free vulnerabilities in the tool nasm. The related heap is allocated in the token() function and freed in the detoken() function (called by pp_getline()) - it is used again at multiple positions later that could cause multiple damages. For example, it causes a corrupted double-linked list in detoken(), a double free or corruption in delete_Token(), and an out-of-bounds write in detoken(). It has a high possibility to lead to a remote code execution attack.

Record
GHSA-vppv-9vcp-9fcg
CVSS 3.0
7.8 HighCVSS:3.0/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
Weakness
CWE-416
Updated
2026-11-02
OSV 7.8

In Netwide Assembler (NASM) 2.14rc0, there are multiple heap use after free vulnerabilities in the tool nasm. The related heap is allocated in the token() function and freed in the detoken() function (called by pp_getline()) - it is used again at multiple positions later that could cause multiple damages. For example, it causes a corrupted double-linked list in detoken(), a double free or corruption in delete_Token(), and an out-of-bounds write in detoken(). It has a high possibility to lead to a remote code execution attack.

Record
CVE-2017-10686
CVSS 3.0
7.8 HighCVSS:3.0/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
Updated
2026-11-02
OSVDEBIAN-CVE-2017-10686 7.8

In Netwide Assembler (NASM) 2.14rc0, there are multiple heap use after free vulnerabilities in the tool nasm. The related heap is allocated in the token() function and freed in the detoken() function (called by pp_getline()) - it is used again at multiple positions later that could cause multiple damages. For example, it causes a corrupted double-linked list in detoken(), a double free or corruption in delete_Token(), and an out-of-bounds write in detoken(). It has a high possibility to lead to a remote code execution attack.

Record
DEBIAN-CVE-2017-10686
CVSS 3.0
7.8 HighCVSS:3.0/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
Updated
2026-11-02
Show 6 moreShow less
OSVUBUNTU-CVE-2017-10686 7.8

In Netwide Assembler (NASM) 2.14rc0, there are multiple heap use after free vulnerabilities in the tool nasm. The related heap is allocated in the token() function and freed in the detoken() function (called by pp_getline()) - it is used again at multiple positions later that could cause multiple damages. For example, it causes a corrupted double-linked list in detoken(), a double free or corruption in delete_Token(), and an out-of-bounds write in detoken(). It has a high possibility to lead to a remote code execution attack.

Record
UBUNTU-CVE-2017-10686
CVSS 3.0
7.8 HighCVSS:3.0/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
Updated
2026-11-02
OSVMGASA-2017-0294 No score

Updated nasm packages fix security vulnerabilities

Multiple heap use after free vulnerabilities (CVE-2017-10686).

Heap-based buffer overflow and application crash (CVE-2017-11111).

Record
MGASA-2017-0294
Updated
2026-11-02
OSVSUSE-SU-2017:2044-1 No score

Security update for nasm

This update for nasm fixes the following issues:

Security issues fixed:

  • CVE-2017-10686: Multiple heap use after free vulnerabilities. (bsc#1047936)
  • CVE-2017-11111: Heap-based buffer overflow and application crash. (bsc#1047925)
Record
SUSE-SU-2017:2044-1
Updated
2026-11-02
OSVSUSE-SU-2017:2045-1 No score

Security update for nasm

This update for nasm fixes the following issues:

Security issue fixed:

  • CVE-2017-10686: Multiple heap use after free vulnerabilities. (bsc#1047936)
Record
SUSE-SU-2017:2045-1
Updated
2026-11-02
OSVSUSE-SU-2019:14246-1 No score

Security update for Mozilla Firefox

This update contains the Mozilla Firefox ESR 68.2 release.

Mozilla Firefox was updated to ESR 68.2 release:

  • Enterprise: New administrative policies were added. More information and templates are available at the Policy Templates page.

  • Various security fixes: MFSA 2019-33 (bsc#1154738)

    • CVE-2019-15903: Heap overflow in expat library in XML_GetCurrentLineNumber
    • CVE-2019-11757: Use-after-free when creating index updates in IndexedDB
    • CVE-2019-11758: Potentially exploitable crash due to 360 Total Security
    • CVE-2019-11759: Stack buffer overflow in HKDF output
    • CVE-2019-11760: Stack buffer overflow in WebRTC networking
    • CVE-2019-11761: Unintended access to a privileged JSONView object
    • CVE-2019-11762: document.domain-based origin isolation has same-origin- property violation
    • CVE-2019-11763: Incorrect HTML parsing results in XSS bypass technique
    • CVE-2019-11764: Memory safety bugs fixed in Firefox 70 and Firefox ESR 68.2

Other Issues resolved:

  • [bsc#1104841] Newer versions of firefox have a dependency on GLIBCXX_3.4.20
  • [bsc#1074235] MozillaFirefox: background tab crash reports sent inadvertently without user opt-in
  • [bsc#1043008] Firefox hangs randomly when browsing and scrolling
  • [bsc#1025108] Firefox stops loading page until mouse is moved
  • [bsc#905528] Firefox malfunctions due to broken omni.ja archives
Record
SUSE-SU-2019:14246-1
Updated
2026-11-02
OSVUSN-3694-1 No score

nasm vulnerabilities

It was discovered that NASM incorrectly handled certain source files. If a user or automated system were tricked into processing a specially crafted source file, a remote attacker could use these issues to cause NASM to crash, resulting in a denial of service, or possibly execute arbitrary code.

Record
USN-3694-1
Updated
2026-11-02

Affected products

Affected packages

Affected packages
PackageAffectedFixed
nasm
Debian:12
before 2.13.02-0.1
2.13.02-0.1
nasm
Debian:13
before 2.13.02-0.1
2.13.02-0.1
nasm
Debian:14
before 2.13.02-0.1
2.13.02-0.1
nasm
Debian:7
From an advisory covering 2 CVEs
before 2.10.01-1+deb7u1, plus listed versions
2.10.01-1
2.10.01-1+deb7u1
nasm
Mageia:5
From an advisory covering 2 CVEs
before 2.11.07-2.1.mga5
2.11.07-2.1.mga5
nasm
Mageia:6
From an advisory covering 2 CVEs
before 2.12.02-1.1.mga6
2.12.02-1.1.mga6
nasm
SUSE:Linux Enterprise Software Development Kit 12 SP2
From an advisory covering 2 CVEs
before 2.10.09-4.5.1
2.10.09-4.5.1
nasm
SUSE:Linux Enterprise Software Development Kit 12 SP3
From an advisory covering 2 CVEs
before 2.10.09-4.5.1
2.10.09-4.5.1
nasm
SUSE:Linux Enterprise Software Development Kit 11 SP4
before 2.03.90-2.3.1
2.03.90-2.3.1
MozillaFirefox
SUSE:Linux Enterprise Server 11 SP4-LTSS
From an advisory covering 118 CVEs
before 68.2.0-78.51.4
68.2.0-78.51.4
Show 15 moreShow less
Affected packages
PackageAffectedFixed
MozillaFirefox-branding-SLED
SUSE:Linux Enterprise Server 11 SP4-LTSS
From an advisory covering 118 CVEs
before 68-21.9.8
68-21.9.8
firefox-atk
SUSE:Linux Enterprise Server 11 SP4-LTSS
From an advisory covering 118 CVEs
before 2.26.1-2.8.4
2.26.1-2.8.4
firefox-cairo
SUSE:Linux Enterprise Server 11 SP4-LTSS
From an advisory covering 118 CVEs
before 1.15.10-2.13.4
1.15.10-2.13.4
firefox-gdk-pixbuf
SUSE:Linux Enterprise Server 11 SP4-LTSS
From an advisory covering 118 CVEs
before 2.36.11-2.8.4
2.36.11-2.8.4
firefox-glib2
SUSE:Linux Enterprise Server 11 SP4-LTSS
From an advisory covering 118 CVEs
before 2.54.3-2.14.7
2.54.3-2.14.7
firefox-gtk3
SUSE:Linux Enterprise Server 11 SP4-LTSS
From an advisory covering 118 CVEs
before 3.10.9-2.15.3
3.10.9-2.15.3
firefox-harfbuzz
SUSE:Linux Enterprise Server 11 SP4-LTSS
From an advisory covering 118 CVEs
before 1.7.5-2.7.4
1.7.5-2.7.4
firefox-libffi
SUSE:Linux Enterprise Server 11 SP4-LTSS
From an advisory covering 118 CVEs
before 3.2.1.git259-2.3.3
3.2.1.git259-2.3.3
firefox-libffi-gcc5
SUSE:Linux Enterprise Server 11 SP4-LTSS
From an advisory covering 118 CVEs
before 5.3.1+r233831-14.1
5.3.1+r233831-14.1
firefox-pango
SUSE:Linux Enterprise Server 11 SP4-LTSS
From an advisory covering 118 CVEs
before 1.40.14-2.7.4
1.40.14-2.7.4
mozilla-nspr
SUSE:Linux Enterprise Server 11 SP4-LTSS
From an advisory covering 118 CVEs
before 4.21-29.6.1
4.21-29.6.1
mozilla-nss
SUSE:Linux Enterprise Server 11 SP4-LTSS
From an advisory covering 118 CVEs
before 3.45-38.9.3
3.45-38.9.3
nasm
Ubuntu:14.04:LTS
before 2.10.09-1ubuntu0.1, plus listed versions
2.10.07-12.10.09-1
2.10.09-1ubuntu0.1
nasm
Ubuntu:16.04:LTS
before 2.11.08-1ubuntu0.1, plus listed versions
2.11.06-1really2.11.05-12.11.08-1
2.11.08-1ubuntu0.1
nasm
Ubuntu:14.04:LTS
From an advisory covering 15 CVEs
before 2.10.09-1ubuntu0.1, plus listed versions
2.10.07-12.10.09-1
2.10.09-1ubuntu0.1

History

History
RecordedChangedSources
affected, facts
aliasesEUVD
first indexedCVE List, GitHub Advisories, NVD, OSV

Dates are when Every CVE recorded each change. Upstream dates may differ.

In short

CVE-2017-10686 is a high vulnerability (CVSS 7.8) in Nasm Netwide Assembler, published June 29, 2017. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 2.95%, the 87th percentile. Fixed in nasm 2.13.02-0.1.

References

Show 194 moreShow less
This page doesn't list everything

Left out here: 58 references. The JSON record has them.

MoveEnter Open