Integer Overflow or Wraparound Affecting stargate package, versions <1.0.80-r0


Severity

Recommended
0.0
high
0
10

Snyk's Security Team recommends NVD's CVSS assessment. Learn more

Threat Intelligence

EPSS
0.13% (49th percentile)

Do your applications use this vulnerable package?

In a few clicks we can analyze your entire application and see what components are vulnerable in your application, and suggest you quick fixes.

Test your applications
  • Snyk IDSNYK-CHAINGUARDLATEST-STARGATE-7216082
  • published6 Jun 2024
  • disclosed15 Jun 2023

Introduced: 15 Jun 2023

CVE-2023-34453  (opens in a new tab)
CWE-190  (opens in a new tab)

How to fix?

Upgrade Chainguard stargate to version 1.0.80-r0 or higher.

NVD Description

Note: Versions mentioned in the description apply only to the upstream stargate package and not the stargate package as distributed by Chainguard. See How to fix? for Chainguard relevant fixed versions and status.

snappy-java is a fast compressor/decompressor for Java. Due to unchecked multiplications, an integer overflow may occur in versions prior to 1.1.10.1, causing a fatal error.

The function shuffle(int[] input) in the file BitShuffle.java receives an array of integers and applies a bit shuffle on it. It does so by multiplying the length by 4 and passing it to the natively compiled shuffle function. Since the length is not tested, the multiplication by four can cause an integer overflow and become a smaller value than the true size, or even zero or negative. In the case of a negative value, a java.lang.NegativeArraySizeException exception will raise, which can crash the program. In a case of a value that is zero or too small, the code that afterwards references the shuffled array will assume a bigger size of the array, which might cause exceptions such as java.lang.ArrayIndexOutOfBoundsException.

The same issue exists also when using the shuffle functions that receive a double, float, long and short, each using a different multiplier that may cause the same issue.

Version 1.1.10.1 contains a patch for this vulnerability.

CVSS Scores

version 3.1