Every CVE Search/ Get API key

CVE-2020-15692

Security update for nim

9.8 CriticalFix available

In Nim 1.2.4, the standard library browsers mishandles the URL argument to browsers.openDefaultBrowser. This argument can be a local file path that will be opened in the default explorer. An attacker can pass one argument to the underlying open command to execute arbitrary registered system commands.

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

4.21%Up 3.1 points since Apr 14, 2021
90%50%10%1%

What each source reports

NVD Score used 9.8

In Nim 1.2.4, the standard library browsers mishandles the URL argument to browsers.openDefaultBrowser. This argument can be a local file path that will be opened in the default explorer. An attacker can pass one argument to the underlying open command to execute arbitrary registered system commands.

Record
CVE-2020-15692
CVSS 3.1
9.8 CriticalCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
CVSS 2.0
10.0 HighAV:N/AC:L/Au:N/C:C/I:C/A:C
Weakness
CWE-88
Updated
2026-11-02
CVE List No score

In Nim 1.2.4, the standard library browsers mishandles the URL argument to browsers.openDefaultBrowser. This argument can be a local file path that will be opened in the default explorer. An attacker can pass one argument to the underlying open command to execute arbitrary registered system commands.

Record
CVE-2020-15692
Updated
2026-11-02
EUVDEUVD-2020-7679 No score

In Nim 1.2.4, the standard library browsers mishandles the URL argument to browsers.openDefaultBrowser. This argument can be a local file path that will be opened in the default explorer. An attacker can pass one argument to the underlying open command to execute arbitrary registered system commands.

Record
EUVD-2020-7679
Updated
2026-11-03
OSV 9.8

In Nim 1.2.4, the standard library browsers mishandles the URL argument to browsers.openDefaultBrowser. This argument can be a local file path that will be opened in the default explorer. An attacker can pass one argument to the underlying open command to execute arbitrary registered system commands.

Record
CVE-2020-15692
CVSS 3.1
9.8 CriticalCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Updated
2026-11-02
OSVDEBIAN-CVE-2020-15692 9.8

In Nim 1.2.4, the standard library browsers mishandles the URL argument to browsers.openDefaultBrowser. This argument can be a local file path that will be opened in the default explorer. An attacker can pass one argument to the underlying open command to execute arbitrary registered system commands.

Record
DEBIAN-CVE-2020-15692
CVSS 3.1
9.8 CriticalCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Updated
2026-11-02
OSVUBUNTU-CVE-2020-15692 9.8

In Nim 1.2.4, the standard library browsers mishandles the URL argument to browsers.openDefaultBrowser. This argument can be a local file path that will be opened in the default explorer. An attacker can pass one argument to the underlying open command to execute arbitrary registered system commands.

Record
UBUNTU-CVE-2020-15692
CVSS 3.1
9.8 CriticalCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Updated
2026-11-02
OSVopenSUSE-SU-2022:10095-1 No score

Security update for nim

This update for nim fixes the following issues:

Includes upstream security fixes for:

  • (boo#1175333, CVE-2020-15693) httpClient is vulnerable to a CR-LF injection
  • (boo#1175334, CVE-2020-15692) mishandle of argument to browsers.openDefaultBrowser
  • (boo#1175332, CVE-2020-15694) httpClient.get().contentLength() fails to properly validate the server response
  • (boo#1192712, CVE-2021-41259) null byte accepted in getContent function, leading to URI validation bypass
  • (boo#1185948, CVE-2021-29495) stdlib httpClient does not validate peer certificates by default
  • (boo#1185085, CVE-2021-21374) Improper verification of the SSL/TLS certificate
  • (boo#1185084, CVE-2021-21373) 'nimble refresh' falls back to a non-TLS URL in case of error
  • (boo#1185083, CVE-2021-21372) doCmd can be leveraged to execute arbitrary commands
  • (boo#1181705, CVE-2020-15690) Standard library asyncftpclient lacks a check for newline character

Following nim tools now work as expected:

  • nim_dbg is now installed.
  • nim-gdb can be successfully launched as it finds and loads nim-gdb.py correctly under gdb.
  • nimble package manager stores package information per user.
  • compiler package can be found and used, as it may be required by other packages.

Update to 1.6.6

  • standard library use consistent styles for variable names so it can be used in projects which force a consistent style with --styleCheck:usages option.
  • ARC/ORC are now considerably faster at method dispatching, bringing its performance back on the level of the refc memory management.
  • Full changelog: https://nim-lang.org/blog/2022/05/05/version-166-released.html
  • Previous updates and changelogs:

Update to 1.2.16

  • oids: switch from PRNG to random module
  • nimc.rst: fix table markup
  • nimRawSetjmp: support Windows
  • correctly enable chronos
  • bigints are not supposed to work on 1.2.x
  • disable nimpy
  • misc bugfixes
  • fixes a 'mixin' statement handling regression [backport:1.2

Update to version 1.2.12

  • Fixed GC crash resulting from inlining of the memory allocation procs
  • Fixed “incorrect raises effect for $(NimNode)” (#17454)
  • from version 1.2.10
  • Fixed “JS backend doesn’t handle float->int type conversion “ (#8404)
  • Fixed “The “try except” not work when the “OSError: Too many open files” error occurs!” (#15925)
  • Fixed “Nim emits #line 0 C preprocessor directives with –debugger:native, with ICE in gcc-10” (#15942)
  • Fixed “tfuturevar fails when activated” (#9695)
  • Fixed “nre.escapeRe is not gcsafe” (#16103)
  • Fixed ““Error: internal error: genRecordFieldAux” - in the “version-1-4” branch” (#16069)
  • Fixed “-d:fulldebug switch does not compile with gc:arc” (#16214)
  • Fixed “osLastError may randomly raise defect and crash” (#16359)
  • Fixed “generic importc proc’s don’t work (breaking lots of vmops procs for js)” (#16428)
  • Fixed “Concept: codegen ignores parameter passing” (#16897)
  • Fixed “{.push exportc.} interacts with anonymous functions” (#16967)
  • Fixed “memory allocation during {.global.} init breaks GC” (#17085)
  • Fixed 'Nimble arbitrary code execution for specially crafted package metadata'
  • Fixed 'Nimble falls back to…
Record
openSUSE-SU-2022:10095-1
Updated
2026-11-02
OSVopenSUSE-SU-2022:10101-1 No score

Security update for nim

This update for nim fixes the following issues:

Includes upstream security fixes for:

  • (boo#1175333, CVE-2020-15693) httpClient is vulnerable to a CR-LF injection
  • (boo#1175334, CVE-2020-15692) mishandle of argument to browsers.openDefaultBrowser
  • (boo#1175332, CVE-2020-15694) httpClient.get().contentLength() fails to properly validate the server response
  • (boo#1192712, CVE-2021-41259) null byte accepted in getContent function, leading to URI validation bypass
  • (boo#1185948, CVE-2021-29495) stdlib httpClient does not validate peer certificates by default
  • (boo#1185085, CVE-2021-21374) Improper verification of the SSL/TLS certificate
  • (boo#1185084, CVE-2021-21373) 'nimble refresh' falls back to a non-TLS URL in case of error
  • (boo#1185083, CVE-2021-21372) doCmd can be leveraged to execute arbitrary commands
  • (boo#1181705, CVE-2020-15690) Standard library asyncftpclient lacks a check for newline character

Update to 1.6.6

  • standard library use consistent styles for variable names so it can be used in projects which force a consistent style with --styleCheck:usages option.
  • ARC/ORC are now considerably faster at method dispatching, bringing its performance back on the level of the refc memory management.
  • Full changelog: https://nim-lang.org/blog/2022/05/05/version-166-released.html
  • Previous updates and changelogs:

update to 1.2.16

  • oids: switch from PRNG to random module
  • nimc.rst: fix table markup
  • nimRawSetjmp: support Windows
  • correctly enable chronos
  • bigints are not supposed to work on 1.2.x
  • disable nimpy
  • misc bugfixes
  • fixes a 'mixin' statement handling regression [backport:1.2
Record
openSUSE-SU-2022:10101-1
Updated
2026-11-02
OSVopenSUSE-SU-2024:12253-1 No score

nim-1.6.6-3.1 on GA media

These are all security issues fixed in the nim-1.6.6-3.1 package on the GA media of openSUSE Tumbleweed.

Record
openSUSE-SU-2024:12253-1
Updated
2026-11-02

Affected products

Affected packages

Affected packages
PackageAffectedFixed
nim
Debian:12
before 1.2.6-1
1.2.6-1
nim
Debian:14
before 1.2.6-1, plus listed versions
0.11.2+dfsg1-10.11.2+dfsg1-20.11.2+dfsg1-30.11.2+dfsg1-40.12.0-1
Show 45 moreShow less
0.12.0-20.13.0-10.14.2-10.15.0-10.15.0-20.15.0-30.15.2-10.15.2-20.16.0-10.17.0-10.17.0-20.17.0-2~bpo9+10.17.2-10.18.0-10.18.0-20.19.0-10.19.2-10.19.2-20.19.4-10.19.6-10.19.6-20.20.0-10.20.0-20.20.2-11.0.0-11.0.0-1~bpo10+11.0.2-11.0.2-1~bpo10+11.0.2~a-11.0.2~b-11.0.2~rc-11.0.3~rc-11.0.4-11.0.4-1~bpo10+11.0.5~rc-11.0.6-11.2.0-11.2.0~rc-11.2.0~rc2-11.2.0~rc3-11.2.1~rc1-11.2.1~rc2-11.2.2-11.2.4-11.2.6~rc1-1
1.2.6-1
nim
Ubuntu:16.04:LTS
All versions, plus listed versions
0.11.2+dfsg1-40.12.0-2
None known
nim
Ubuntu:18.04:LTS
All versions, plus listed versions
0.17.2-1ubuntu10.17.2-1ubuntu2
None known
nim
Ubuntu:20.04:LTS
All versions, plus listed versions
0.20.2-11.0.2-11.0.3~rc-11.0.4-11.0.6-1
None known
nim
SUSE:Package Hub 15 SP3
before 1.6.6-bp153.2.3.1
1.6.6-bp153.2.3.1
nim
openSUSE:Leap 15.3
before 1.6.6-bp153.2.3.1
1.6.6-bp153.2.3.1
nim
SUSE:Package Hub 15 SP4
before 1.6.6-bp154.2.3.1
1.6.6-bp154.2.3.1
nim
openSUSE:Leap 15.4
before 1.6.6-bp154.2.3.1
1.6.6-bp154.2.3.1
nim
openSUSE:Tumbleweed
before 1.6.6-3.1
1.6.6-3.1

History

History
RecordedChangedSources
aliasesEUVD
first indexedCVE List, NVD, OSV

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

In short

CVE-2020-15692 is a critical vulnerability (CVSS 9.8) in Nim-lang Nim, published August 14, 2020. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 4.21%, the 90th percentile. Fixed in nim 1.2.6-1.

References

Show 21 moreShow less
This page doesn't list everything

Left out here: the rest of 1 source description. The JSON record has them.

MoveEnter Open