Every CVE Search/ Get API key

CVE-2020-15694

In Nim 1.2.4, the standard library httpClient fails to properly validate the server response. For...

7.5 HighFix available

CVE-2020-15694 is a high vulnerability (CVSS 7.5) 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 2.33%, the 83rd percentile. Fixed in nim 1.2.6-1.

In Nim 1.2.4, the standard library httpClient fails to properly validate the server response. For example, httpClient.get().contentLength() does not raise any error if a malicious server provides a negative Content-Length.

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
High
Availability
None

Exploit likelihood

2.33%Up 1.3 points since Apr 14, 2021
90%50%10%1%

What each source reports

NVD Score used 7.5

In Nim 1.2.4, the standard library httpClient fails to properly validate the server response. For example, httpClient.get().contentLength() does not raise any error if a malicious server provides a negative Content-Length.

Record
CVE-2020-15694
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N
CVSS 2.0
5.0 MediumAV:N/AC:L/Au:N/C:N/I:P/A:N
Weakness
CWE-20
Updated
2026-11-02
CVE List No score

In Nim 1.2.4, the standard library httpClient fails to properly validate the server response. For example, httpClient.get().contentLength() does not raise any error if a malicious server provides a negative Content-Length.

Record
CVE-2020-15694
Updated
2026-11-02
EUVDEUVD-2020-7681 No score

In Nim 1.2.4, the standard library httpClient fails to properly validate the server response. For example, httpClient.get().contentLength() does not raise any error if a malicious server provides a negative Content-Length.

Record
EUVD-2020-7681
Updated
2026-11-03
GitHub AdvisoriesGHSA-mwjr-9xqh-r2f5 7.5

In Nim 1.2.4, the standard library httpClient fails to properly validate the server response. For...

In Nim 1.2.4, the standard library httpClient fails to properly validate the server response. For example, httpClient.get().contentLength() does not raise any error if a malicious server provides a negative Content-Length.

Record
GHSA-mwjr-9xqh-r2f5
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N
Weakness
CWE-20
Updated
2026-11-02
OSV 7.5

In Nim 1.2.4, the standard library httpClient fails to properly validate the server response. For example, httpClient.get().contentLength() does not raise any error if a malicious server provides a negative Content-Length.

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

In Nim 1.2.4, the standard library httpClient fails to properly validate the server response. For example, httpClient.get().contentLength() does not raise any error if a malicious server provides a negative Content-Length.

Record
DEBIAN-CVE-2020-15694
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N
Updated
2026-11-02
Show 4 moreShow less
OSVUBUNTU-CVE-2020-15694 7.5

In Nim 1.2.4, the standard library httpClient fails to properly validate the server response. For example, httpClient.get().contentLength() does not raise any error if a malicious server provides a negative Content-Length.

Record
UBUNTU-CVE-2020-15694
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N
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
WhenChangedSources
2026-11-03aliasesEUVD
2026-11-02createdCVE List, GitHub Advisories, NVD, OSV

References

Show 23 moreShow less
This page doesn't list everything

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

MoveEnter Open