Lucene search

K
cveGitHub_MCVE-2022-36078
HistorySep 02, 2022 - 1:15 p.m.

CVE-2022-36078

2022-09-0213:15:08
CWE-789
CWE-1284
GitHub_M
web.nvd.nist.gov
44
3
cve-2022-36078
binary
borsh
memory allocation
vulnerability
upgrade
program crash
exhaustion
untrusted sources
blockchain
parsing
decoding

CVSS3

8.8

Attack Vector

NETWORK

Attack Complexity

LOW

Privileges Required

NONE

User Interaction

REQUIRED

Scope

UNCHANGED

Confidentiality Impact

HIGH

Integrity Impact

HIGH

Availability Impact

HIGH

CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H

AI Score

7.4

Confidence

High

EPSS

0.002

Percentile

54.3%

Binary provides encoding/decoding in Borsh and other formats. The vulnerability is a memory allocation vulnerability that can be exploited to allocate slices in memory with (arbitrary) excessive size value, which can either exhaust available memory or crash the whole program. When using github.com/gagliardetto/binary to parse unchecked (or wrong type of) data from untrusted sources of input (e.g. the blockchain) into slices, it’s possible to allocate memory with excessive size. When dec.Decode(&val) method is used to parse data into a structure that is or contains slices of values, the length of the slice was previously read directly from the data itself without any checks on the size of it, and then a slice was allocated. This could lead to an overflow and an allocation of memory with excessive size value. Users should upgrade to v0.7.1 or higher. A workaround is not to rely on the dec.Decode(&val) function to parse the data, but to use a custom UnmarshalWithDecoder() method that reads and checks the length of any slice.

Affected configurations

Nvd
Vulners
Node
binary_projectbinaryRange<0.7.1go
VendorProductVersionCPE
binary_projectbinary*cpe:2.3:a:binary_project:binary:*:*:*:*:*:go:*:*

CNA Affected

[
  {
    "product": "binary",
    "vendor": "gagliardetto",
    "versions": [
      {
        "status": "affected",
        "version": "< 0.7.1"
      }
    ]
  }
]

Social References

More

CVSS3

8.8

Attack Vector

NETWORK

Attack Complexity

LOW

Privileges Required

NONE

User Interaction

REQUIRED

Scope

UNCHANGED

Confidentiality Impact

HIGH

Integrity Impact

HIGH

Availability Impact

HIGH

CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H

AI Score

7.4

Confidence

High

EPSS

0.002

Percentile

54.3%

Related for CVE-2022-36078