CVE-2026-94620
Last modified
CVE-2026-94620 is a critical-severity vulnerability rated 9.4/10 on the CVSS scale. Classroom 50 is a free and open-source tool for managing and grading programming assignments via GitHub. Prior to version 1.11.0, `gh teacher download` clones each student's assignment repository and then writes autograde artifacts (`result.json` and `results.json`) into the just-cloned working tree. EPSS estimates a 0.41% chance of exploitation in the next 30 days.
Description
Classroom 50 is a free and open-source tool for managing and grading programming assignments via GitHub. Prior to version 1.11.0, `gh teacher download` clones each student's assignment repository and then writes autograde artifacts (`result.json` and `results.json`) into the just-cloned working tree. The write followed symlinks, so a student who committed `result.json` or `results.json` as a **symlink** (materialized verbatim by `git clone`) could redirect the teacher's write to an arbitrary path — e.g. `~/.zshrc`, `~/.ssh/authorized_keys`, a cron file, or an in-clone `.git/hooks/*` file that git subsequently executes. The written bytes are attacker-controlled (the student's uploaded release asset for `result.json`; student-chosen submit-tag names for `results.json`). This is an arbitrary file write leading to code execution as the teacher, whose `gh` token carries `admin:org`, `repo`, and `workflow` across the entire classroom organization. Version 1.11.0 contains a patch. Some workarounds are available. Avoid running `gh teacher download` against untrusted student repositories, or run it inside a disposable sandbox / container with no access to sensitive host files or credentials. Inspect cloned trees for symlinked, hardlinked, or special (`result.json`/`results.json`) entries before allowing the artifact-refresh step to run.
Metrics
Weakness Enumeration
Affected Software
Source: CNA advisory (CVE.org). NVD analysis pending.
| Vendor | Product | Versions |
|---|---|---|
| foundation50 | classroom50 | < 1.11.0 |
References
Timeline
- Published
- Last Modified
- Status
- Deferred
Frequently Asked Questions
What is CVE-2026-94620?
How severe is CVE-2026-94620?
How do I fix CVE-2026-94620?
How Strix Helps
- How Strix found a critical auth bypass in etcdStrix autonomously discovered a critical authentication bypass in etcd, later designated CVE-2026-33413.
- Autonomous PentestingAI agents that find and validate exploitable vulnerabilities like this one across your applications.
- PR ReviewsPentest every pull request so vulnerable code is caught before it ships to production.
- AI Penetration TestingHow AI-driven penetration testing continuously covers your attack surface.
Related CVEs from 2026
- CVE-2026-94611authentik is an open-source identity provider. Prior to 2026…8.1
- CVE-2026-94612authentik is an open-source identity provider. Prior to 2026…7.4
- CVE-2026-94613authentik is an open-source identity provider. Prior to 2026…7.5
- CVE-2026-94618FileGator is a multi-user file manager. Prior to 7.15.0, GET…5.4
- CVE-2026-94619FileGator is a multi-user file manager. Prior to 7.15.0, POS…5.9
- CVE-2026-9462A vulnerability was detected in Edimax EW-7438RPn 1.31. Affe…8.8
- CVE-2026-94621AliasVault is a privacy-first password manager with built-in…6.3
- CVE-2026-94622vLLM versions through 0.29.0 contain a denial of service vul…7.5
- CVE-2026-94623vLLM through 0.29.0 contains a denial of service vulnerabili…7.5
- CVE-2026-94624vLLM through 0.29.0 contains a denial of service vulnerabili…7.5
- CVE-2026-94625vLLM through 0.29.0 contains a resource exhaustion vulnerabi…5.3
- CVE-2026-94626vLLM through 0.29.0 fails to validate the tp_size parameter …7.5
Are you affected by CVE-2026-94620?
Run a free Strix scan to check your systems for this vulnerability.
Scan your code nowSource: NVD / NIST
