CVE-2020-36846

Aliases:GHSA-5v8v-66v8-mwm7BIT-brotli-2020-8927BIT-dotnet-2020-8927BIT-dotnet-sdk-2020-8927BIT-powershell-2020-8927CVE-2020-8927GO-2025-3726PYSEC-2020-29RUSTSEC-2021-0131RUSTSEC-2021-0132ALPINE-CVE-2020-8927DEBIAN-CVE-2020-8927CGA-p52r-g378-cpwxCGA-vr58-8j2w-8rq3
Advisory lineage Upstream: 0 Downstream: 2
Deferred
Published: 15 Sept 2020, 09:15
Last modified:29 May 2026, 20:52

Vulnerability Summary

Overall Risk (default)
high
70/100
CVSS Score
9.8 CRITICAL
v3.1 (nvd)
EPSS Score
0.63% LOW
1% probability +0.55%
KEV
Not listed
Ransomware
No reports
Public exploits
None found
Dark Web
Not detected

Timeline

15 Sept 2020, 09:15
Published
Vulnerability first disclosed
29 May 2026, 20:52
Last Modified
Vulnerability information updated

Description

A buffer overflow, as described in CVE-2020-8927, exists in the embedded Brotli library.  Versions of IO::Compress::Brotli prior to 0.007 included a version of the brotli library prior to version 1.0.8, where an attacker controlling the input length of a "one-shot" decompression request to a script can trigger a crash, which happens when copying over chunks of data larger than 2 GiB. It is recommended to update your IO::Compress::Brotli module to 0.007 or later. If one cannot update, we recommend to use the "streaming" API as opposed to the "one-shot" API, and impose chunk size limits.

CVSS Metrics

  • v4.0MEDIUMScore: 6.9CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:L/VA:L/SC:N/SI:N/SA:N
  • v3.1MEDIUMScore: 5.3CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N
  • v3.1CRITICALScore: 9.8CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
  • v3.1MEDIUMScore: 6.5CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:L

EPSS Trends

Current EPSS score: 0.63% Percentile: 49%

Techniques & Countermeasures

  • CWE-1395Dependency on Vulnerable Third-Party Component

    The product has a dependency on a third-party component that contains one or more known vulnerabilities.

  • CWE-130Improper Handling of Length Parameter Inconsistency

    The product parses a formatted message or structure, but it does not handle or incorrectly handles a length field that is inconsistent with the actual length of the associated data.

  • CWE-120Buffer Copy without Checking Size of Input ('Classic Buffer Overflow')

    The product copies an input buffer to an output buffer without verifying that the size of the input buffer is less than the size of the output buffer.

Affected Systems

  • alpinebrotli

    < 1.0.9-r0 | < 1.0.9-r0 | < 1.0.9-r0 | < 1.0.9-r0 | < 1.0.9-r0 | < 1.0.9-r0 | < 1.0.9-r0 | < 1.0.9-r0 | < 1.0.9-r0 | < 1.0.9-r0 | < 1.0.9-r0 | < 1.0.9-r0 | < 1.0.9-r0

  • chainguardbrotli

    < 0

  • wolfibrotli

    < 0

  • canonicalubuntu_linux

    16.04 | 18.04 | 20.04

  • Crates.Iobrotli-sys

    ≥ 0.0.0-0

  • Crates.Iocompu-brotli-sys

    ≥ 0.0.0-0, < 1.0.9 | < 1.0.9

  • debianbrotli

    < 1.0.9-1 | < 1.0.9-1 | < 1.0.9-1 | < 1.0.9-1

  • debiandebian_linux

    9.0 | 10.0

  • fedoraprojectfedora

    31 | 32 | 33 | 34 | 35 | 36

  • github.com/googlebrotli

    all

  • google llcbrotli

    ≥ stable, ≤ 1.0.7

  • googlebrotli

    < 1.0.8

  • microsoft.net

    ≥ 5.0, ≤ 5.0.14

  • microsoft.net_core

    ≥ 3.1, ≤ 3.1.22

  • microsoftpowershell

    ≥ 7.0, < 7.0.9 | ≥ 7.1, < 7.1.6 | ≥ 7.2, < 7.2.2

  • microsoftvisual_studio_2019

    ≥ 16.0, ≤ 16.11

  • microsoftvisual_studio_2022

    ≥ 17.0, ≤ 17.0.7 | 17.1

  • NuGetMicrosoft.NETCore.App.Runtime.AOT.linux-x64.Cross.android-arm

    ≥ 6.0.0, < 6.0.3

  • NuGetMicrosoft.NETCore.App.Runtime.AOT.linux-x64.Cross.android-arm64

    ≥ 6.0.0, < 6.0.3

  • NuGetMicrosoft.NETCore.App.Runtime.AOT.linux-x64.Cross.android-x64

    ≥ 6.0.0, < 6.0.3

  • NuGetMicrosoft.NETCore.App.Runtime.AOT.linux-x64.Cross.android-x86

    ≥ 6.0.0, < 6.0.3

  • NuGetMicrosoft.NETCore.App.Runtime.AOT.linux-x64.Cross.browser-wasm

    ≥ 6.0.0, < 6.0.3

  • NuGetMicrosoft.NETCore.App.Runtime.AOT.osx-x64.Cross.android-arm

    ≥ 6.0.0, < 6.0.3

  • NuGetMicrosoft.NETCore.App.Runtime.AOT.osx-x64.Cross.android-arm64

    ≥ 6.0.0, < 6.0.3

  • NuGetMicrosoft.NETCore.App.Runtime.AOT.osx-x64.Cross.android-x64

    ≥ 6.0.0, < 6.0.3

  • NuGetMicrosoft.NETCore.App.Runtime.AOT.osx-x64.Cross.android-x86

    ≥ 6.0.0, < 6.0.3

  • NuGetMicrosoft.NETCore.App.Runtime.AOT.osx-x64.Cross.browser-wasm

    ≥ 6.0.0, < 6.0.3

  • NuGetMicrosoft.NETCore.App.Runtime.AOT.osx-x64.Cross.ios-arm

    ≥ 6.0.0, < 6.0.3

  • NuGetMicrosoft.NETCore.App.Runtime.AOT.osx-x64.Cross.ios-arm64

    ≥ 6.0.0, < 6.0.3

  • NuGetMicrosoft.NETCore.App.Runtime.AOT.osx-x64.Cross.iossimulator-arm64

    ≥ 6.0.0, < 6.0.3

  • NuGetMicrosoft.NETCore.App.Runtime.AOT.osx-x64.Cross.iossimulator-x64

    ≥ 6.0.0, < 6.0.3

  • NuGetMicrosoft.NETCore.App.Runtime.AOT.osx-x64.Cross.iossimulator-x86

    ≥ 6.0.0, < 6.0.3

  • NuGetMicrosoft.NETCore.App.Runtime.AOT.osx-x64.Cross.maccatalyst-arm64

    ≥ 6.0.0, < 6.0.3

  • NuGetMicrosoft.NETCore.App.Runtime.AOT.osx-x64.Cross.maccatalyst-x64

    ≥ 6.0.0, < 6.0.3

  • NuGetMicrosoft.NETCore.App.Runtime.AOT.osx-x64.Cross.tvos-arm64

    ≥ 6.0.0, < 6.0.3

  • NuGetMicrosoft.NETCore.App.Runtime.AOT.osx-x64.Cross.tvossimulator-arm64

    ≥ 6.0.0, < 6.0.3

  • NuGetMicrosoft.NETCore.App.Runtime.AOT.osx-x64.Cross.tvossimulator-x64

    ≥ 6.0.0, < 6.0.3

  • NuGetMicrosoft.NETCore.App.Runtime.AOT.win-x64.Cross.android-arm

    ≥ 6.0.0, < 6.0.3

  • NuGetMicrosoft.NETCore.App.Runtime.AOT.win-x64.Cross.android-arm64

    ≥ 6.0.0, < 6.0.3

  • NuGetMicrosoft.NETCore.App.Runtime.AOT.win-x64.Cross.android-arm64.Msi.x64

    ≥ 6.0.0, < 6.0.3

  • NuGetMicrosoft.NETCore.App.Runtime.AOT.win-x64.Cross.android-arm.Msi.x64

    ≥ 6.0.0, < 6.0.3

  • NuGetMicrosoft.NETCore.App.Runtime.AOT.win-x64.Cross.android-x64

    ≥ 6.0.0, < 6.0.3

  • NuGetMicrosoft.NETCore.App.Runtime.AOT.win-x64.Cross.android-x64.Msi.x64

    ≥ 6.0.0, < 6.0.3

  • NuGetMicrosoft.NETCore.App.Runtime.AOT.win-x64.Cross.android-x86

    ≥ 6.0.0, < 6.0.3

  • NuGetMicrosoft.NETCore.App.Runtime.AOT.win-x64.Cross.android-x86.Msi.x64

    ≥ 6.0.0, < 6.0.3

  • NuGetMicrosoft.NETCore.App.Runtime.AOT.win-x64.Cross.browser-wasm

    ≥ 6.0.0, < 6.0.3

  • NuGetMicrosoft.NETCore.App.Runtime.AOT.win-x64.Cross.browser-wasm.Msi.x64

    ≥ 6.0.0, < 6.0.3

  • NuGetMicrosoft.NETCore.App.Runtime.browser-wasm

    ≥ 5.0.0, < 5.0.15

  • NuGetMicrosoft.NETCore.App.Runtime.linux-arm

    ≥ 3.0.0, < 3.1.23 | ≥ 5.0.0, < 5.0.15 | ≥ 6.0.0, < 6.0.3

  • NuGetMicrosoft.NETCore.App.Runtime.linux-arm64

    ≥ 3.0.0, < 3.1.23 | ≥ 5.0.0, < 5.0.15 | ≥ 6.0.0, < 6.0.3

Showing first 50 affected entries in server-rendered view.

References (47)