Impact
The vulnerability allows an attacker to execute arbitrary code with the privileges of the running user by placing a specially crafted configuration file (.auto-changelog or auto-changelog key in package.json) in a target repository. The configuration includes options such as handlebarsSetup and plugins, which are passed directly to Node's require() and can load attacker‑controlled modules. The same untrusted configuration can also inject git arguments to write arbitrary files, write content to arbitrary paths via the output option, or cause an outbound HTTP request to a chosen URL via the template option. Together, these weaknesses provide remote code execution, file system manipulation, and network access, compromising confidentiality, integrity, and availability of the execution environment.
Affected Systems
Vendors: cookpete, product auto‑changelog. Version 2.6.1 and later have mitigations; any version prior to 2.6.1 is affected. The issue applies to any environment where auto‑changelog is executed against a repository that may contain attacker‑controlled configuration, such as CI pipelines checking out pull request heads from forks or users locally processing forked repositories.
Risk and Exploitability
The CVSS score of 8.4 classifies this flaw as High severity. EPSS data is not available, and the vulnerability is not yet listed in the CISA KEV catalog. A potential attacker can exploit the flaw by providing malicious repository content to a CI job or a local user running the tool. Because the code is executed with the full privileges of the invoking process, the attacker can access environment variables, CI secrets, or other restricted data. The exploitation chain is relatively straightforward: place a bad configuration file, trigger auto‑changelog, and the attacker’s code runs. The absence of EPSS data does not diminish the risk, as the flaw is identifiable and actionable, and a motivated actor can easily craft the necessary repository content.
OpenCVE Enrichment