CVE-2026-94620

CRITICALPre-NVD 9.49.4—
EchelonGraph scoreMEDIUM confidence

This critical-severity CVE scores 9.4 under a secondary CVSS source (NVD's own analysis pending). EPSS exploit probability: 0.4% (33rd percentile of EPSS-scored CVEs). GitHub Security Advisory data not yet ingested — confidence will rise once GHSA publishes (typical lag: hours to days for open-source ecosystem CVEs; never for infrastructure-only CVEs).

Triggered by: NVD CVSS baseline
Sources: epss, secondary
Trending — 3 sources updated this week
9.4EG
EchelonGraph verdictPlan a fixSerious severity, but no confirmed exploitation yet.
  • High severity, but no confirmed exploitation yet
CISA-KEV: Not listedEPSS PROB: 0.4%CVSS: 9.4Exploit: None knownExposed services: Not assessed

A fix is available — apply it.

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.

CVSS v3
9.4
EG Score
9.4CRITICALmedium confidence
EG Risk
42
EG Risk 42/100CISA SSVC

EG Risk is EchelonGraph's 0–100 priority score: it fuses intrinsic severity with real-world exploitation and automatability so you can rank equal-severity CVEs and fix the most dangerous first. Higher = act sooner. Distinct from the 0–10 EG Score (severity).

How it’s computed
Severity94% × 45%
Exploitation0% × 40%
Automatability0% × 15%
CISA SSVC: Track at low or medium mission impact; Track* at high (mission-essential systems).
Action: A fix is available. Apply it within your standard update timelines.
EPSS PROB
0.4%
EPSS %ILE
33rd
KEV
Not listed

CISA SSVCTrack at low or medium mission impact; Track* at high (mission-essential systems).

A fix is available. Apply it within your standard update timelines.

Exploitation none (CISA Vulnrichment) · Automatable no (CISA Vulnrichment) · Technical impact total (CISA Vulnrichment). Mission impact is CISA's Mission & Well-being decision point, and only you can judge it: high means the affected system is essential to your organisation's mission, or its compromise could cause irreversible harm to people. CISA's decision table

Published

October 1, 2026

Last Modified

October 2, 2026

Advisory Details (2)

Auto-updated Oct 2, 2026
Patch available. Sources: github_commit, github.
github Patch Available

Arbitrary file overwrite on the teacher's machine via symlink in a student repo (gh teacher download) · Advisory · foundation50/classroom50 · GitHub

https://github.com/foundation50/classroom50/security/advisories/GHSA-qx2g-vpwq-466c
github_commit Patch Available

commit 79112f33932d (foundation50/classroom50)

Patch available: foundation50/classroom50 web-v1.49.0 (contains commit 79112f33932d)

https://github.com/foundation50/classroom50/commit/79112f33932d1b5c398a8801d97a8813d52d55ce

Weakness Classification(2)

MITRE Common Weakness Enumeration — the root-cause categories this CVE belongs to.

Data Freshness Timeline

(refreshed 8× in last 7d / 8× in last 30d)

Each row is a source pipeline that fetched or updated this CVE on that date, with what changed. For example, "NVD update" means NVD published or revised its analysis for this CVE; "MITRE cvelistV5" means we ingested or refreshed it from the CNA feed. Most recent first.

  1. 2026-10-03 14:43 UTCEG score recompute
  2. 2026-10-03 14:26 UTCEPSS rescore
  3. 2026-10-02 18:51 UTCEG score recompute
  4. 2026-10-02 17:57 UTCEPSS rescore
  5. 2026-10-01 17:27 UTCEG score recompute
  6. 2026-10-01 16:25 UTCEG score recompute
  7. 2026-10-01 15:51 UTCEG score recompute
  8. 2026-10-01 15:50 UTCMITRE cvelistV5first tracked

Frequently asked(5)

What is CVE-2026-94620?
CVE-2026-94620 is a critical vulnerability published on October 1, 2026. 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…
When was CVE-2026-94620 disclosed?
CVE-2026-94620 was first published on October 1, 2026, with the most recent update on October 2, 2026. EchelonGraph re-ingests CVE updates from NVD on a 2-hour cycle, so this page reflects the latest published state.
Is CVE-2026-94620 actively exploited?
CVE-2026-94620 is not currently on CISA's Known Exploited Vulnerabilities catalog. FIRST EPSS estimates a 0.4% probability of exploitation in the next 30 days (33rd percentile of EPSS-scored CVEs).
What is the CVSS score of CVE-2026-94620?
CVE-2026-94620 has a CVSS base score of 9.4 (a secondary CVSS source that NVD displays; NVD's own analysis pending).
How do I remediate CVE-2026-94620?
A fix for CVE-2026-94620 is available: update to the fixed version the vendor names in its advisory.

Dependency Blast Radius

Explore the affected products and dependency analysis for CVE-2026-94620

Explore →

Is Your Infrastructure Affected by CVE-2026-94620?

EchelonGraph automatically scans your cloud infrastructure and maps CVE exposure using blast radius analysis.