Логотип exploitDog
Консоль
Логотип exploitDog

exploitDog

github логотип

GHSA-m43g-m425-p68x

Опубликовано: 01 июл. 2025
Источник: github
Github: Прошло ревью
CVSS3: 5.8

Описание

junit-platform-reporting can leak Git credentials through its OpenTestReportGeneratingListener

Summary

This vulnerability affects JUnit's support for writing Open Test Reporting XML files which is an opt-in feature of junit-platform-reporting.

If a repository is cloned using a GitHub token or other credentials in its URL, for example:

git clone https://${GH_APP}:${GH_TOKEN}@github.com/example/example.git

The credentials are captured by OpenTestReportGeneratingListener which produces (trimmed for brevity):

<infrastructure> <git:repository originUrl="https://username:token@github.com/example/example.git" /> </infrastructure>

Details

https://github.com/junit-team/junit5/blob/6b7764dac92fd35cb348152d1b37f8726875a4e0/junit-platform-reporting/src/main/java/org/junit/platform/reporting/open/xml/OpenTestReportGeneratingListener.java#L183

I think this should be configurable in some way to exclude select git information or exclude it entirely.

PoC

  1. Clone a repo using a GitHub token as shown above.
  2. Enable the listener junit.platform.reporting.open.xml.enabled=true
  3. Observe report captures credentials

Impact

Depending on the level of access of the token, it can be nothing, limited, or everything.

If these test reports are published or stored anywhere public, then there is the possibility that a rouge attacker can steal the token and perform elevated actions by impersonating the user or app.

Resolution

JUnit 5.13.2 and later replace credentials in the URL with ***. Moreover, including any Git metadata in the XML output is now an opt-in feature that can be enabled via the new junit.platform.reporting.open.xml.git.enabled=true configuration parameter but is not included by default.

Пакеты

Наименование

org.junit.platform:junit-platform-reporting

maven
Затронутые версииВерсия исправления

>= 5.12.0, <= 5.13.1

5.13.2

EPSS

Процентиль: 0%
0.00005
Низкий

5.8 Medium

CVSS3

Дефекты

CWE-312

Связанные уязвимости

CVSS3: 5.8
ubuntu
около 1 месяца назад

JUnit is a testing framework for Java and the JVM. From version 5.12.0 to 5.13.1, JUnit's support for writing Open Test Reporting XML files can leak Git credentials. The impact depends on the level of the access token exposed through the OpenTestReportGeneratingListener. If these test reports are published or stored anywhere public, then there is the possibility that a rouge attacker can steal the token and perform elevated actions by impersonating the user or app. This issue as been patched in version 5.13.2.

CVSS3: 5.8
redhat
около 1 месяца назад

JUnit is a testing framework for Java and the JVM. From version 5.12.0 to 5.13.1, JUnit's support for writing Open Test Reporting XML files can leak Git credentials. The impact depends on the level of the access token exposed through the OpenTestReportGeneratingListener. If these test reports are published or stored anywhere public, then there is the possibility that a rouge attacker can steal the token and perform elevated actions by impersonating the user or app. This issue as been patched in version 5.13.2.

CVSS3: 5.8
nvd
около 1 месяца назад

JUnit is a testing framework for Java and the JVM. From version 5.12.0 to 5.13.1, JUnit's support for writing Open Test Reporting XML files can leak Git credentials. The impact depends on the level of the access token exposed through the OpenTestReportGeneratingListener. If these test reports are published or stored anywhere public, then there is the possibility that a rouge attacker can steal the token and perform elevated actions by impersonating the user or app. This issue as been patched in version 5.13.2.

CVSS3: 5.8
debian
около 1 месяца назад

JUnit is a testing framework for Java and the JVM. From version 5.12.0 ...

EPSS

Процентиль: 0%
0.00005
Низкий

5.8 Medium

CVSS3

Дефекты

CWE-312