Classroom50
Monthly
Arbitrary file write as the grading teacher in Classroom 50 (the `gh teacher` CLI) before 1.11.0 lets an enrolled student escalate from a writable assignment repository to code execution in the teacher's session: because `gh teacher download` writes autograde artifacts (`result.json` and `results.json`) into the just-cloned student working tree without guarding pre-existing entries, a student who commits either name as a symlink, hardlink, FIFO or directory redirects that write to any path the teacher can reach - `~/.ssh/authorized_keys`, `~/.zshrc`, a cron file, or an in-clone `.git/hooks/*` script that git then executes. The written bytes are attacker-controlled (the student's uploaded release asset for `result.json`, or student-chosen submit-tag names for `results.json`), and the compromised `gh` token carries `admin:org`, `repo` and `workflow` across the whole classroom organization. Rated 9.4 under CVSS 4.0 and high priority by our independent review, exploitation is not anonymous and not zero-click: it requires classroom enrollment, a planted malicious entry, and the teacher running the vulnerable command against that untrusted repository (UI:P); no public exploit code was identified at time of analysis, no CISA KEV listing is present, and no EPSS score was supplied. Version 1.11.0 contains the patch.
Arbitrary file write as the grading teacher in Classroom 50 (the `gh teacher` CLI) before 1.11.0 lets an enrolled student escalate from a writable assignment repository to code execution in the teacher's session: because `gh teacher download` writes autograde artifacts (`result.json` and `results.json`) into the just-cloned student working tree without guarding pre-existing entries, a student who commits either name as a symlink, hardlink, FIFO or directory redirects that write to any path the teacher can reach - `~/.ssh/authorized_keys`, `~/.zshrc`, a cron file, or an in-clone `.git/hooks/*` script that git then executes. The written bytes are attacker-controlled (the student's uploaded release asset for `result.json`, or student-chosen submit-tag names for `results.json`), and the compromised `gh` token carries `admin:org`, `repo` and `workflow` across the whole classroom organization. Rated 9.4 under CVSS 4.0 and high priority by our independent review, exploitation is not anonymous and not zero-click: it requires classroom enrollment, a planted malicious entry, and the teacher running the vulnerable command against that untrusted repository (UI:P); no public exploit code was identified at time of analysis, no CISA KEV listing is present, and no EPSS score was supplied. Version 1.11.0 contains the patch.