build(deps): update dependency junit:junit to v4.13.1 [security] (main)
Metadata
Current evaluation
PR #1091 was closed unmerged without a replacement; both affected test POMs still use JUnit 4.11 at HEAD f56e7f6.
Resolution: closed stale
Reason: The PR has no comments, approval, merge, or linked resolution, and current commit f56e7f6 still declares JUnit 4.11 in both files. The security update was therefore abandoned as stale.
Evaluated by: mr-cal-bot
No scores available.
Issue body
This PR contains the following updates:
| Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/) | [Confidence](https://docs.renovatebot.com/merge-confidence/) |
|---|---|---|---|
| [junit:junit](http://junit.org) ([source](https://redirect.github.com/junit-team/junit4)) | `4.11` → `4.13.1` |  |  |
### GitHub Vulnerability Alerts
#### [CVE-2020-15250](https://redirect.github.com/junit-team/junit4/security/advisories/GHSA-269g-pwp5-87pp)
### Vulnerability
The JUnit4 test rule [TemporaryFolder](https://junit.org/junit4/javadoc/4.13/org/junit/rules/TemporaryFolder.html) contains a local information disclosure vulnerability.
Example of vulnerable code:
```java
public static class HasTempFolder {
@​Rule
public TemporaryFolder folder = new TemporaryFolder();
@​Test
public void testUsingTempFolder() throws IOException {
folder.getRoot(); // Previous file permissions: `drwxr-xr-x`; After fix:`drwx------`
File createdFile= folder.newFile("myfile.txt"); // unchanged/irrelevant file permissions
File createdFolder= folder.newFolder("subfolder"); // unchanged/irrelevant file permissions
// ...
}
}
```
### Impact
On Unix like systems, the system's temporary directory is shared between all users on that system. Because of this, when files and directories are written into this directory they are, by default, readable by other users on that same system.
This vulnerability **does not** allow other users to overwrite the contents of these directories or files. This is purely an information disclosure vulnerability.
When analyzing the impact of this vulnerability, here are the important questions to ask:
1. Do the JUnit tests write sensitive information, like API keys or passwords, into the temporary folder?
- If yes, this vulnerability impacts you, but only if you also answer 'yes' to question 2.
- If no, this vulnerability does not impact you.
2. Do the JUnit tests ever execute in an environment where the OS has other untrusted users.
_This may apply in CI/CD environments but normally won't be 'yes' for personal developer machines._
- If yes, and you answered 'yes' to question 1, this vulnerability impacts you.
- If no, this vulnerability does not impact you.
### Patches
Because certain JDK file system APIs were only added in JDK 1.7, this this fix is dependent upon the version of the JDK you are using.
- Java 1.7 and higher users: this vulnerability is fixed in 4.13.1.
- Java 1.6 and lower users: **no patch is available, you must use the workaround below.**
### Workarounds
If you are unable to patch, or are stuck running on Java 1.6, specifying the `java.io.tmpdir` system environment variable to a directory that is exclusively owned by the executing user will fix this vulnerability.
### References
- [CWE-200: Exposure of Sensitive Information to an Unauthorized Actor](https://cwe.mitre.org/data/definitions/200.html)
- Fix commit https://github.com/junit-team/junit4/commit/610155b8c22138329f0723eec22521627dbc52ae
#### Similar Vulnerabilities
- Google Guava - [https://github.com/google/guava/issues/4011](https://redirect.github.com/google/guava/issues/4011)
- Apache Ant - https://nvd.nist.gov/vuln/detail/CVE-2020-1945
- JetBrains Kotlin Compiler - https://nvd.nist.gov/vuln/detail/CVE-2020-15824
### For more information
If you have any questions or comments about this advisory, please pen an issue in [junit-team/junit4](https://redirect.github.com/junit-team/junit4/issues).
---
### Configuration
📅 **Schedule**: Branch creation - "" in timezone Etc/UTC, Automerge - At any time (no schedule defined).
🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.
♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 **Ignore**: Close this PR and you won't be reminded about this update again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/canonical/rockcraft).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0Mi45NS4yIiwidXBkYXRlZEluVmVyIjoiNDIuOTUuMiIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiUFI6IERlcGVuZGVuY2llcyJdfQ==-->
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed stale | PR #1091 was closed unmerged without a replacement; both affected test POMs still use JUnit 4.11 at HEAD f56e7f6. | |
| stealth/space-bunny-alpha | — | closed stale | Renovate PR #1091 (junit:junit 4.11 -> 4.13.1 for CVE-2020-15250) was closed unmerged; both jlink spread-test pom.xml files still pin junit 4.11 at HEAD, so the fix was never applied. | |
| stealth/space-bunny-alpha | — | closed stale | Renovate PR #1091 proposed upgrading JUnit 4.11 to 4.13.1 for CVE-2020-15250 but was closed unmerged, leaving the security update unimplemented. | |
| qwen/qwen3.6-35b-a3b | — | — | Closed without being merged. The security dependency update for junit:junit to v4.13.1 to address CVE-2020-15250 was abandoned. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Dependency update for junit:junit from 4.11 to 4.13.1 to address CVE-2020-15250. The request was abandoned and closed without merging due to disabled automerge and inactivity. |
Update history
No update history recorded yet.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #3316 build(deps-dev): bump junit from 3.8.1 to 4.13.1 in /tests/spread/plugins/v1/maven/snaps/legacy-maven-hello/my-app | snapcraft | merged | Merged PR #3316, upgrading JUnit from 3.8.1 to 4.13.1 in the legacy Maven spread-test fixture via commit 007eea3d2. | |
| #985 build(deps-dev): bump junit:junit from 4.11 to 4.13.1 in /tests/spread/rockcraft/plugin-jlink/base-2404/helloworld | rockcraft | open | Dependabot bump of junit 4.11→4.13.1 in a single test-fixture pom.xml (tests/spread/rockcraft/plugin-jlink/base-2404/helloworld). Approved by 2 reviewers, all CI green except one snap-tests entry; idle ~1 year. | |
| #3315 build(deps-dev): bump junit from 3.8.1 to 4.13.1 in /tests/spread/plugins/v1/maven/snaps/maven-hello/my-app | snapcraft | merged | Dependabot PR #3315 merged (commit 44bf0c225, "spread tests: bump junit"), updating junit 3.8.1 -> 4.13.1 in the maven-hello my-app pom.xml spread test fixture. Sibling PR #3316 did the same for legacy-maven-hello. | |
| #1450 build(deps): update bugfixes (main) | craft-parts | closed | Renovate PR #1450 (maven-wrapper 3.3.2→3.3.4, maven-shade-plugin 3.6.0→3.6.1) was closed unmerged after four Slow-test CI failures; no fix commit landed. |