Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate as tutor or admin in any course
-
ExploitObtain another course's submission UUID
-
ExecutionSend crafted PUT/DELETE with own course id
-
ImpactOverwrite grades/feedback or delete submission
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Object-level authorization, IDOR prevention
|
| Exploitation Conditions | Exploitation requires (1) an authenticated account already holding tutor or admin privileges in at least one course (PR:L), and (2) knowledge of a target submission's UUID belonging to a DIFFERENT course (AT:P), because the vulnerable Hono API PUT/DELETE submission handlers in ClassroomIO through 1.0.0 trust the attacker-supplied course id and fail to verify that the referenced submission UUID actually belongs to that course. Limiting factors that reduce realistic risk: the attacker must already be a privileged course staff member, and submission UUIDs are random and non-enumerable, so cross-course targeting depends on obtaining a specific victim UUID rather than guessing it; there is no unauthenticated or anonymous path and no user interaction from the victim is needed. |
| Impact | This is a medium-severity authorization flaw (CVSS 4.0 base 6.1) whose real-world risk is bounded by its preconditions rather than by raw reach. The provided CVSS 4.0 vector (AV:N/AC:L/AT:P/PR:L/UI:N) shows a network-reachable API bug that nonetheless requires an authenticated actor holding at least tutor or admin privileges (PR:L) and an attack requirement (AT:P) - namely possession of another course's submission UUID, which is a random, non-enumerable identifier. Impact is weighted toward integrity (VI:H): an attacker can overwrite answers, grades, feedback, and grading status, or delete submissions, with only limited confidentiality (VC:L) and limited availability (VA:L) effect and no scope change (SC/SI/SA:N). No EPSS score, KEV listing, or weaponized public exploit was provided in the intelligence, so there is no evidence of active or widespread exploitation; a public technical writeup (hackmd) and the vendor patch commit exist, which raises reproducibility but does not equal in-the-wild use. Net assessment: this is a legitimate insider/privilege-abuse and multi-tenant data-integrity concern for organizations running multiple courses on ClassroomIO, but it is NOT a drive-by, unauthenticated, mass-exploitation priority - it should be patched on a normal schedule, prioritized higher where tutor/admin accounts are loosely provisioned. |
| Exploit ScenarioDerived | A user who legitimately holds a tutor or admin role in one ClassroomIO course obtains the UUID of a submission belonging to a different course (via leakage, shared tooling, or prior access). They send a PUT or DELETE request to the Hono API submission route supplying their OWN course id together with the victim course's submission UUID; because the handler trusts the user-controlled course id instead of verifying the submission actually belongs to it, the attacker overwrites grades/feedback or deletes the submission. A detailed public writeup describing the flaw exists, but no weaponized exploit was reported in the provided data. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 15, 2026
Cross-course submission tampering in ClassroomIO through 1.0.0 lets an authenticated course tutor or admin overwrite answers, grades, feedback and grading status - or delete submissions outright - in courses they are not assigned to teach. The Hono API PUT and DELETE submission handlers accept a caller-supplied course id alongside a submission UUID and never verify that the submission actually belongs to that course (CWE-639), so any staff account holding tutor/admin privileges in at least one course can reach other courses' submissions if it knows the target UUID. Exploitation therefore requires authenticated privileged access plus a random, non-enumerable submission UUID (AT:P), and there is no anonymous or unauthenticated path; no public exploit identified at time of analysis, though a public technical writeup documents the flaw.
RemediationAI
The fix exists upstream as commit 1844ad9671a0d9c2566d3431d82f34d39016242c (https://github.com/classroomio/classroomio/commit/1844ad9671a0d9c2566d3431d82f34d39016242c), which introduces server-side ownership verification in the submission path together with a cohort-tutor submission access regression suite; because no tagged patched release is confirmed, self-hosted operators should build and deploy from a commit at or after this one rather than trusting the 1.0.0 release artifact. Pending that, the highest-value compensating controls are to enforce submission-to-course ownership checks in a maintained fork (this is the only true fix), to keep tutor/admin role grants tightly scoped to the courses each staff member actually teaches so an over-provisioned or compromised staff account cannot pivot to unrelated courses, and to reduce exposure of submission UUIDs in API responses, exports and client-side payloads, since the attack depends on obtaining a specific victim UUID rather than guessing one (AT:P) - tightening UUID exposure lowers the practical exploitability of an unpatched instance. Operators can additionally alert on PUT/DELETE calls to the course submission endpoints where the authenticated account's course membership does not match the targeted course id. Blanket-blocking the submission routes is not a workaround, as it disables legitimate grading and feedback workflows, and log monitoring alone does not prevent the integrity impact. The upstream repository (https://github.com/classroomio/classroomio) and the VulnCheck advisory should be tracked for an official tagged release.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
ClassroomIO is a self-hostable teaching platform whose API is built on the Hono web framework with Drizzle ORM over PostgreSQL. The vulnerability is an instance of CWE-639 (Authorization Bypass Through User-Controlled Key): the course submission routes in apps/api/src/routes/course/submission.ts take the course identifier from the request and pass it into the submission query layer at packages/db/src/queries/submission/submission.ts (lines 217-245 of the v1.0.0 tag), where the update/delete operations are scoped by that attacker-controlled course id rather than by the submission's true parent course. Because the lookup keys on the supplied course id plus the supplied submission UUID, an actor who is legitimately a tutor or admin for one course (PR:L) can present their own course id together with another course's submission UUID and have the write authorized, corrupting answer bodies, grades, feedback text and grading status, or removing the record entirely (integrity impact rated High, availability Low, confidentiality Low). The fix commit 1844ad9671a0d9c2566d3431d82f34d39016242c adds explicit ownership scoping in the handler/query path plus a regression test file (apps/api/src/__tests__/cohort-tutor-submission-access.test.ts) that exercises cohort-tutor submission access boundaries, confirming that authorization - not input sanitization - is the root cause class here.
Know when Classroomio gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:L/VI:H/VA:L/SC:N/SI:N/SA:N
Network API but requires a tutor/admin account (PR:L) and knowledge of a hard-to-guess cross-course submission UUID (AC:H); integrity-dominant (I:H) since grades/submissions can be overwritten or deleted, with limited C/A.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
DescriptionCVE.org
ClassroomIO through 1.0.0 contains an insecure direct object reference vulnerability in the Hono API course submission routes that allows course tutors or admins to modify submissions in other courses. Attackers can supply their own course id with another course's submission UUID to PUT or DELETE handlers to overwrite answers, grades, feedback, and grading status or delete submissions.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.
More in Classroomio
View allAn issue was discovered in classroomio 0.1.13. Rated critical severity (CVSS 9.1), this vulnerability is remotely exploi
Insecure Direct Object Reference (IDOR) in classroomio 0.1.13 allows unauthorized share and invite access to course sett
Stored Cross site scripting (XSS) vulnerability in Classroomio LMS 0.1.13 allows authenticated attackers to execute arbi
Stored Cross site scripting (XSS) vulnerability in Classroomio LMS 0.1.13 allows authenticated attackers to execute arbi
An Insecure Direct Object Reference (IDOR) in classroomio 0.1.13 allows students to access sensitive admin/teacher endpo
An issue in ClasroomIO before v.0.2.6 allows a remote attacker to escalate privileges via the endpoints /api/verify and
Incorrect authorization in ClassroomIO through 1.0.0 allows any authenticated course member, including students, to modi
EUVD-2026-102508
GHSA-j6jm-jc5p-v7pp
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB