← Back to search

CVE-2026-12171

7.8 HIGHpublic exploit available

Published 2026-10-05 · Updated 2026-10-06

AI risk analysis

Summary
The auto-changelog tool allows untrusted repository configuration to execute arbitrary code with the privileges of the running process, enabling remote code execution through attacker-controlled configuration files. This vulnerability is particularly dangerous in CI/CD workflows where untrusted code is checked out and processed.
Exploitability
Exploitation is relatively straightforward when a CI workflow checks out untrusted pull requests or repositories, requiring only that the auto-changelog tool be executed on attacker-controlled content without the --unsafe-config flag.
Blast radius
The impact could be severe in CI environments where secrets are accessible to the running process, potentially allowing attackers to exfiltrate sensitive data or gain full access to CI infrastructure.
Detection
No reliable host or network indicator is derivable from the published description.
Prioritized remediation
Upgrade to version 2.6.1 or later, which treats in-repository configuration as untrusted and refuses to execute with vulnerable options unless --unsafe-config flag is explicitly passed.
rceci-cdconfig-injection

Analysis generated locally by garnet-coder (no data left the box). AI-assisted — verify against primary sources before acting.

NVD description

auto-changelog before 2.6.1 merges configuration from inside the target repository (the .auto-changelog file and the auto-changelog key in package.json) into its options, and honors security-sensitive options from that untrusted source. The handlebarsSetup option is passed to require(), so running auto-changelog over attacker-controlled repository content (for example, in a CI workflow that checks out an untrusted pull request head, or locally on a forked or third-party repository) executes attacker-chosen code with the privileges of the invoking user or CI job, including access to workflow secrets, without the repository dependencies ever being installed. The plugins option similarly loads attacker-controlled modules from the repository. Under the same conditions, appendGitLog/appendGitTag allow git argument injection (e.g. --output= to write arbitrary files), output allows writing attacker-influenced content to arbitrary paths, and template causes an outbound request to an attacker-chosen URL. Version 2.6.1 treats in-repository configuration as untrusted and refuses to run when it sets these options, unless the new --unsafe-config flag is passed.

CVSS vector

CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H

Weaknesses

CWE-22, CWE-88, CWE-94, CWE-829, CWE-918

Public exploit & PoC references

All references

Source data: NVD (nvd.nist.gov), public domain. Exploit-DB.ai adds local AI analysis for defensive use only.

Related CVEs

Related by shared AI tags and CWE weakness class. Browse the full archive.