Monkeytype: fork PR can execute code with elevated GITHUB_TOKEN
- Published
- Last modified
- Status
- published
- Known exploitation
- Not listed in CISA KEV
- Fix
- Fixed in 26.43.0
- Public exploit
- None on Exploit-DB, Metasploit or GitHub
Summary
Monkeytype, the open-source typing test project, is affected through its GitHub Actions formatting workflow rather than the typing test application itself. An outside contributor's pull request could run arbitrary code in the repository's CI with write-level access, potentially allowing repository content or pull requests and issues to be modified; user data is not affected.
Summarized by anthropic/claude-haiku-5.5. Verify details against the original sources.
Read the original description
Monkeytype is a minimalistic and customizable typing test. Prior to 26.43.0, the .github/workflows/fix-formatting.yml workflow runs on pull_request_target with repository write permissions, checks out a fork pull request, installs dependencies from the fork's package.json, and invokes the fork-controlled oxfmt binary. Because actions/checkout persists the elevated GITHUB_TOKEN in Git configuration until after untrusted code executes, an external contributor whose pull request receives the format label can run arbitrary code, read or exfiltrate the token, and push repository content or modify pull requests and issues. The issue affects the repository CI workflow, not the Monkeytype application or user data. This issue is fixed in version 26.43.0.
Timeline
- CVE published
- First seen by cve.now
Affected versions
- monkeytypegame monkeytype
fixed in 26.43.0