CVE-2023-45290: Memory Exhaustion in golang/stdlib

golang-1.15 Updated 02 Oct 2025

Summary

05/03/2024
N/A
No i
Unrated
Not published

CVE-2023-45290: When parsing a multipart form (either explicitly with Request.ParseMultipartForm or implicitly with Request.FormValue, Request.PostFormValue, or Request.FormFile), limits on the total size of the parsed form were not app... Affects golang-1.15 versions 1.15.15-1 – 1.15.9-6. No fix is published. How to fix ↓

Free scan

Check if this vulnerability affects your application

Upload a manifest or SBOM and we'll show whether you're affected, plus every other risky package in the same scan.

Check my app free

No signup required · Results in about 60 seconds

Upload your dependency manifest or SBOM

Drag & drop your file here or

Java Javascript PHP Python Go Rust Ruby Dart C/C++ Elixir CycloneDX SPDX

Upload a supported dependency manifest or SBOM. No installation or source-code access required.

See supported files and SBOM formats
SBOM sbom.json · bom.json · bom.xml · *.spdx.json · *.cdx.json · *.cdx.xml
Java pom.xml · gradle.lockfile · buildscript-gradle.lockfile
Javascript package-lock.json · yarn.lock · pnpm-lock.yaml
PHP composer.lock
Python poetry.lock · requirements.txt · Pipfile.lock
Go go.mod
Rust Cargo.lock
Ruby Gemfile.lock
Dart pubspec.lock
C/C++ conan.lock
Elixir mix.lock
Enter your work email to receive your report link.

Verify your email to view the full report and start 30 days of continuous monitoring. No credit card required.

Sponsored Lume, the Habilume companion Habilume Habit tracker with a companion that grows with you Complete habits, earn Lume Points, and watch your Lume grow as you stay consistent. App Store Google Play

Background

The golang/stdlib package is a standard library for the Go programming language. It provides essential functionalities for various tasks, including networking, file handling, and more. This vulnerability specifically affects the net/http module within the package.

Vulnerability Detail

The vulnerability (CVE-2023-45290) arises when parsing a multipart form using functions like Request.ParseMultipartForm or Request.FormValue. The issue lies in the lack of limits on the memory consumed while reading a single form line. This allows an attacker to craft malicious input with very long lines, leading to the allocation of excessive amounts of memory. As a result, the system may experience memory exhaustion. The fix for this vulnerability includes applying proper limits to the maximum size of form lines in the ParseMultipartForm function.

How To Fix

No fixed version is published for this vulnerability.

Tip — Not sure whether your app is affected? Vulert can check the versions your app actually runs. Scan free →

Workaround

No workaround has been provided for this vulnerability.

Conclusion

In conclusion, the golang/stdlib package is vulnerable to a memory exhaustion issue when parsing multipart forms. This can be exploited by an attacker to exhaust system memory, potentially leading to denial of service. It is crucial to update the package to the fixed versions (1.21.8 or 1.22.1) to mitigate this vulnerability. For further assistance or support in vulnerability remediation, please contact DevNack.com.

See every vulnerability recorded for golang-1.15 →

Share this vulnerability

FAQ

The vulnerability can lead to memory exhaustion, potentially causing system instability or denial of service.

You can use the Vulert Playground (https://vulert.com/scanner) to check if your application is affected by this vulnerability. Simply upload your manifest file (e.g., package-lock.json) and the tool will provide real-time alerts for open-source vulnerabilities.

No known exploits have been reported for this vulnerability at the time of this report.

Yes, the CVSS score for this vulnerability is 5.3.

You can find more information about this vulnerability on the NIST National Vulnerability Database (NVD) website: https://nvd.nist.gov/vuln/detail/CVE-2023-45290

Related vulnerabilities

Recent vulnerabilities recorded for golang-1.15.

Sponsored Lume, the Habilume companion Habilume Habit tracker with a companion that grows with you Complete habits, earn Lume Points, and watch your Lume grow as you stay consistent. App Store Google Play

How To Fix

No fixed version is published for this vulnerability.

Tip — Not sure whether your app is affected? Vulert can check the versions your app actually runs. Scan free →

Subscribe to Vulert on Telegram
Daily digest of new CVEs, critical and high severity, affected packages and fixes — plus a weekly roundup.
Join the channel →
Help improve this record
Report an issue or send feedback