Description
This affects all versions of package org.nanohttpd:nanohttpd. Whenever an HTTP Session is parsing the body of an HTTP request, the body of the request is written to a RandomAccessFile when the it is larger than 1024 bytes. This file is created with insecure permissions that allow its contents to be viewed by all users on the host machine. **Workaround:** Manually specifying the -Djava.io.tmpdir= argument when launching Java to set the temporary directory to a directory exclusively controlled by the current user can fix this issue.
References (4)
Core 4
Core References
Third Party Advisory x_refsource_misc
https://snyk.io/vuln/SNYK-JAVA-ORGNANOHTTPD-2422798
Broken Link x_refsource_misc
https://github.com/NanoHttpd/nanohttpd/blob/efb2ebf85a2b06f7c508aba9eaad5377e3a01e81/core/src/main/java/org/nanohttpd/protocols/http/tempfiles/DefaultTempFile.java%23L58
Broken Link x_refsource_misc
https://github.com/NanoHttpd/nanohttpd/blob/efb2ebf85a2b06f7c508aba9eaad5377e3a01e81/core/src/main/java/org/nanohttpd/protocols/http/tempfiles/DefaultTempFileManager.java%23L60
Third Party Advisory x_refsource_misc
https://github.com/JLLeitschuh/security-research/security/advisories/GHSA-2r85-x9cf-8fcg
Scores
CVSS v3
5.5
EPSS
0.0029
EPSS Percentile
20.8%
Attack Vector
LOCAL
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N
Details
Status
published
Products (1)
nanohttpd/nanohttpd
< 2.3.1
Published
May 01, 2022
Tracked Since
Feb 18, 2026