CVE-2017-10686
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.
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
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 High
CVSS:3.0/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H - CVSS 2.0
- 6.8 Medium
AV: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 High
CVSS: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 High
CVSS: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 High
CVSS: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 High
CVSS: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
| Package | Affected | Fixed |
|---|---|---|
nasmDebian:12 |
before 2.13.02-0.1 | 2.13.02-0.1 |
nasmDebian:13 |
before 2.13.02-0.1 | 2.13.02-0.1 |
nasmDebian:14 |
before 2.13.02-0.1 | 2.13.02-0.1 |
nasmDebian:7 |
before 2.10.01-1+deb7u1, plus listed versions 2.10.01-1 |
2.10.01-1+deb7u1 |
nasmMageia:5 |
before 2.11.07-2.1.mga5 | 2.11.07-2.1.mga5 |
nasmMageia:6 |
before 2.12.02-1.1.mga6 | 2.12.02-1.1.mga6 |
nasmSUSE:Linux Enterprise Software Development Kit 12 SP2 |
before 2.10.09-4.5.1 | 2.10.09-4.5.1 |
nasmSUSE:Linux Enterprise Software Development Kit 12 SP3 |
before 2.10.09-4.5.1 | 2.10.09-4.5.1 |
nasmSUSE:Linux Enterprise Software Development Kit 11 SP4 |
before 2.03.90-2.3.1 | 2.03.90-2.3.1 |
MozillaFirefoxSUSE:Linux Enterprise Server 11 SP4-LTSS |
before 68.2.0-78.51.4 | 68.2.0-78.51.4 |
Show 14 moreShow less
| Package | Affected | Fixed |
|---|---|---|
MozillaFirefox-branding-SLEDSUSE:Linux Enterprise Server 11 SP4-LTSS |
before 68-21.9.8 | 68-21.9.8 |
firefox-atkSUSE:Linux Enterprise Server 11 SP4-LTSS |
before 2.26.1-2.8.4 | 2.26.1-2.8.4 |
firefox-cairoSUSE:Linux Enterprise Server 11 SP4-LTSS |
before 1.15.10-2.13.4 | 1.15.10-2.13.4 |
firefox-gdk-pixbufSUSE:Linux Enterprise Server 11 SP4-LTSS |
before 2.36.11-2.8.4 | 2.36.11-2.8.4 |
firefox-glib2SUSE:Linux Enterprise Server 11 SP4-LTSS |
before 2.54.3-2.14.7 | 2.54.3-2.14.7 |
firefox-gtk3SUSE:Linux Enterprise Server 11 SP4-LTSS |
before 3.10.9-2.15.3 | 3.10.9-2.15.3 |
firefox-harfbuzzSUSE:Linux Enterprise Server 11 SP4-LTSS |
before 1.7.5-2.7.4 | 1.7.5-2.7.4 |
firefox-libffiSUSE:Linux Enterprise Server 11 SP4-LTSS |
before 3.2.1.git259-2.3.3 | 3.2.1.git259-2.3.3 |
firefox-libffi-gcc5SUSE:Linux Enterprise Server 11 SP4-LTSS |
before 5.3.1+r233831-14.1 | 5.3.1+r233831-14.1 |
firefox-pangoSUSE:Linux Enterprise Server 11 SP4-LTSS |
before 1.40.14-2.7.4 | 1.40.14-2.7.4 |
mozilla-nsprSUSE:Linux Enterprise Server 11 SP4-LTSS |
before 4.21-29.6.1 | 4.21-29.6.1 |
mozilla-nssSUSE:Linux Enterprise Server 11 SP4-LTSS |
before 3.45-38.9.3 | 3.45-38.9.3 |
nasmUbuntu:14.04:LTS |
before 2.10.09-1ubuntu0.1, plus listed versions 2.10.07-12.10.09-1 |
2.10.09-1ubuntu0.1 |
nasmUbuntu: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 |
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-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
usn.ubuntu.com/3694-1
bugzilla.nasm.us/show_bug.cgi?id=3392414
security.gentoo.org/glsa/201903-19
nvd.nist.gov/vuln/detail/CVE-2017-10686
github.com/advisories/GHSA-vppv-9vcp-9fcg
security-tracker.debian.org/tracker/CVE-2017-10686
Show 194 moreShow less
advisories.mageia.org/MGASA-2017-0294.html
bugs.mageia.org/show_bug.cgi?id=21494
lists.opensuse.org/opensuse-updates/2017-08/msg00030.html
suse.com/support/update/announcement/2017/suse-su-20172044-1
bugzilla.suse.com/1047925
bugzilla.suse.com/1047936
suse.com/security/cve/CVE-2017-10686
suse.com/security/cve/CVE-2017-11111
suse.com/support/update/announcement/2017/suse-su-20172045-1
suse.com/support/update/announcement/2019/suse-su-201914246-1
bugzilla.suse.com/1000036
bugzilla.suse.com/1001652
bugzilla.suse.com/1025108
bugzilla.suse.com/1029377
bugzilla.suse.com/1029902
bugzilla.suse.com/1040164
bugzilla.suse.com/104105
bugzilla.suse.com/1042670
bugzilla.suse.com/1043008
bugzilla.suse.com/1044946
bugzilla.suse.com/1048299
bugzilla.suse.com/1049186
bugzilla.suse.com/1050653
bugzilla.suse.com/1056058
bugzilla.suse.com/1058013
bugzilla.suse.com/1066242
bugzilla.suse.com/1066953
bugzilla.suse.com/1070738
bugzilla.suse.com/1070853
bugzilla.suse.com/1072320
bugzilla.suse.com/1072322
bugzilla.suse.com/1073796
bugzilla.suse.com/1073798
bugzilla.suse.com/1073799
bugzilla.suse.com/1073803
bugzilla.suse.com/1073808
bugzilla.suse.com/1073818
bugzilla.suse.com/1073823
bugzilla.suse.com/1073829
bugzilla.suse.com/1073830
bugzilla.suse.com/1073832
bugzilla.suse.com/1073846
bugzilla.suse.com/1074235
bugzilla.suse.com/1077230
bugzilla.suse.com/1079761
bugzilla.suse.com/1081750
bugzilla.suse.com/1082318
bugzilla.suse.com/1087453
bugzilla.suse.com/1087459
bugzilla.suse.com/1087463
bugzilla.suse.com/1088573
bugzilla.suse.com/1091764
bugzilla.suse.com/1094814
bugzilla.suse.com/1097158
bugzilla.suse.com/1097375
bugzilla.suse.com/1097401
bugzilla.suse.com/1097404
bugzilla.suse.com/1097748
bugzilla.suse.com/1104841
bugzilla.suse.com/1105019
bugzilla.suse.com/1107030
bugzilla.suse.com/1109465
bugzilla.suse.com/1117473
bugzilla.suse.com/1117626
bugzilla.suse.com/1117627
bugzilla.suse.com/1117629
bugzilla.suse.com/1117630
bugzilla.suse.com/1120644
bugzilla.suse.com/1122191
bugzilla.suse.com/1123482
bugzilla.suse.com/1124525
bugzilla.suse.com/1127532
bugzilla.suse.com/1129346
bugzilla.suse.com/1130694
bugzilla.suse.com/1130840
bugzilla.suse.com/1133452
bugzilla.suse.com/1133810
bugzilla.suse.com/1134209
bugzilla.suse.com/1138459
bugzilla.suse.com/1140290
bugzilla.suse.com/1140868
bugzilla.suse.com/1141853
bugzilla.suse.com/1144919
bugzilla.suse.com/1145665
bugzilla.suse.com/1146090
bugzilla.suse.com/1146091
bugzilla.suse.com/1146093
bugzilla.suse.com/1146094
bugzilla.suse.com/1146095
bugzilla.suse.com/1146097
bugzilla.suse.com/1146099
bugzilla.suse.com/1146100
bugzilla.suse.com/1149323
bugzilla.suse.com/1153423
bugzilla.suse.com/1154738
suse.com/security/cve/CVE-2013-2882
suse.com/security/cve/CVE-2013-6639
suse.com/security/cve/CVE-2013-6640
suse.com/security/cve/CVE-2013-6668
suse.com/security/cve/CVE-2014-0224
suse.com/security/cve/CVE-2015-3193
suse.com/security/cve/CVE-2015-3194
suse.com/security/cve/CVE-2015-5380
suse.com/security/cve/CVE-2015-7384
suse.com/security/cve/CVE-2016-2086
suse.com/security/cve/CVE-2016-2178
suse.com/security/cve/CVE-2016-2183
suse.com/security/cve/CVE-2016-2216
suse.com/security/cve/CVE-2016-5172
suse.com/security/cve/CVE-2016-5325
suse.com/security/cve/CVE-2016-6304
suse.com/security/cve/CVE-2016-6306
suse.com/security/cve/CVE-2016-7052
suse.com/security/cve/CVE-2016-7099
suse.com/security/cve/CVE-2017-1000381
suse.com/security/cve/CVE-2017-11499
suse.com/security/cve/CVE-2017-14228
suse.com/security/cve/CVE-2017-14849
suse.com/security/cve/CVE-2017-14919
suse.com/security/cve/CVE-2017-15896
suse.com/security/cve/CVE-2017-15897
suse.com/security/cve/CVE-2017-17810
suse.com/security/cve/CVE-2017-17811
suse.com/security/cve/CVE-2017-17812
suse.com/security/cve/CVE-2017-17813
suse.com/security/cve/CVE-2017-17814
suse.com/security/cve/CVE-2017-17815
suse.com/security/cve/CVE-2017-17816
suse.com/security/cve/CVE-2017-17817
suse.com/security/cve/CVE-2017-17818
suse.com/security/cve/CVE-2017-17819
suse.com/security/cve/CVE-2017-17820
suse.com/security/cve/CVE-2017-18207
suse.com/security/cve/CVE-2017-3735
suse.com/security/cve/CVE-2017-3736
suse.com/security/cve/CVE-2017-3738
suse.com/security/cve/CVE-2018-0732
suse.com/security/cve/CVE-2018-1000168
suse.com/security/cve/CVE-2018-12115
suse.com/security/cve/CVE-2018-12116
suse.com/security/cve/CVE-2018-12121
suse.com/security/cve/CVE-2018-12122
suse.com/security/cve/CVE-2018-12123
suse.com/security/cve/CVE-2018-20406
suse.com/security/cve/CVE-2018-20852
suse.com/security/cve/CVE-2018-7158
suse.com/security/cve/CVE-2018-7159
suse.com/security/cve/CVE-2018-7160
suse.com/security/cve/CVE-2018-7161
suse.com/security/cve/CVE-2018-7167
suse.com/security/cve/CVE-2019-10160
suse.com/security/cve/CVE-2019-11709
suse.com/security/cve/CVE-2019-11710
suse.com/security/cve/CVE-2019-11711
suse.com/security/cve/CVE-2019-11712
suse.com/security/cve/CVE-2019-11713
suse.com/security/cve/CVE-2019-11714
suse.com/security/cve/CVE-2019-11715
suse.com/security/cve/CVE-2019-11716
suse.com/security/cve/CVE-2019-11717
suse.com/security/cve/CVE-2019-11718
suse.com/security/cve/CVE-2019-11719
suse.com/security/cve/CVE-2019-11720
suse.com/security/cve/CVE-2019-11721
suse.com/security/cve/CVE-2019-11723
suse.com/security/cve/CVE-2019-11724
suse.com/security/cve/CVE-2019-11725
suse.com/security/cve/CVE-2019-11727
suse.com/security/cve/CVE-2019-11728
suse.com/security/cve/CVE-2019-11729
suse.com/security/cve/CVE-2019-11730
suse.com/security/cve/CVE-2019-11733
suse.com/security/cve/CVE-2019-11735
suse.com/security/cve/CVE-2019-11736
suse.com/security/cve/CVE-2019-11738
suse.com/security/cve/CVE-2019-11740
suse.com/security/cve/CVE-2019-11742
ubuntu.com/security/CVE-2017-10686
ubuntu.com/security/notices/USN-3694-1
cve.org/CVERecord?id=CVE-2017-10686
ubuntu.com/security/CVE-2017-11111
ubuntu.com/security/CVE-2017-14228
ubuntu.com/security/CVE-2017-17810
ubuntu.com/security/CVE-2017-17811
ubuntu.com/security/CVE-2017-17812
ubuntu.com/security/CVE-2017-17813
ubuntu.com/security/CVE-2017-17814
ubuntu.com/security/CVE-2017-17815
ubuntu.com/security/CVE-2017-17816
ubuntu.com/security/CVE-2017-17817
ubuntu.com/security/CVE-2017-17818
ubuntu.com/security/CVE-2017-17819
ubuntu.com/security/CVE-2017-17820
ubuntu.com/security/CVE-2018-8881
Left out here: 58 references. The JSON record has them.