CVE-2022-41954 json
Temporary File Information Disclosure Vulnerability
published 2022-11-25 3 y ago modified 2026-06-17 4 mo ago also GHSA-jf2p-4gqj-849g , PYSEC-2022-42996 , EUVD-2022-0160
- cvss
- 3.3
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.2%
- EPSS 0.2% chance of exploitation in 30 days, percentile 12%
- public exploits
- 0
- none known
Summary
MPXJ is an open source library to read and write project plans from a variety of file formats and databases. On Unix-like operating systems (not Windows or macos), MPXJ's use of `File.createTempFile(..)` results in temporary files being created with the permissions `-rw-r--r--`. This means that any other user on the system can read the contents of this file. When MPXJ is reading a schedule file which requires the creation of a temporary file or directory, a knowledgeable local user could locate these transient files while they are in use and would then be able to read the schedule being processed by MPXJ. The problem has been patched, MPXJ version 10.14.1 and later includes the necessary changes. Users unable to upgrade may set `java.io.tmpdir` to a directory to which only the user running the application has access will prevent other users from accessing these temporary files.
Patch / fix
- maven net.sf.mpxj:mpxj 10.14.1
- nuget net.sf.mpxj 10.14.1
- nuget net.sf.mpxj-for-csharp 10.14.1
- nuget net.sf.mpxj-for-vb 10.14.1
- pypi mpxj 10.14.1
- mpxj mpxj 10.14.1
CISA SSVC
- Exploitation
- none
- Automatable
- no
- Technical impact
- partial
- Assessed
- 18 mo ago
Exploit prediction
0.21% chance of exploitation in the next 30 days, higher than 12% of all scored CVEs (FIRST EPSS, 2026-11-08).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 3.3 | CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N |
| NVD | 3.1 | 3.3 | CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N |
| GitHub | 3.1 | 2.8 | CVSS:3.1/AV:L/AC:L/PR:L/UI:R/S:U/C:L/I:N/A:N |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| maven | net.sf.mpxj:mpxj | <10.14.1 |
10.14.1 |
| nuget | net.sf.mpxj | <10.14.1 |
10.14.1 |
| nuget | net.sf.mpxj-for-csharp | <10.14.1 |
10.14.1 |
| nuget | net.sf.mpxj-for-vb | <10.14.1 |
10.14.1 |
| pypi | mpxj | <10.14.1 |
10.14.1 |
Affected products
- joniles mpxj
Classification
References
-
github.com
/joniles/mpxj/commit/ae0af24345d79ad45705265d9927fe55e94a5721
web
-
github.com
/joniles/mpxj/commit/287ad0234213c52b0638565e14bd9cf3ed44cedd
web, patch
-
github.com
/joniles/mpxj/security/advisories/GHSA-jf2p-4gqj-849g
web, third-party-advisory, advisory
-
nvd.nist.gov
/vuln/detail/CVE-2022-41954
advisory
-
github.com
/joniles/mpxj
package
-
github.com
/pypa/advisory-database/tree/main/vulns/mpxj/PYSEC-2022-42996.yaml
web
Sources
- CVE List CVE-2022-41954
- GitHub Advisory GHSA-jf2p-4gqj-849g
- NVD CVE-2022-41954
- OSV PYSEC-2022-42996
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.