Skip to main content

LearnHouse EUVDEUVD-2026-114720

| CVE-2026-120199 MEDIUM
Authorization Bypass Through User-Controlled Key (CWE-639)
2026-10-31 VulnCheck GHSA-3gfx-j948-6jm4
5.3
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Authenticate as low-privileged LearnHouse user
  2. Exploit
    Call submission/grade read endpoint with another user_id
  3. Execution
    Server skips ownership check and returns record
  4. Impact
    Harvest other students' work, grades and feedback

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

Requires a valid authenticated LearnHouse account with access to the relevant course (PR:L) - exploitation is not possible unauthenticated. The attacker then supplies another student's user_id to the assignment submission grade endpoint (get_grade_assignment_submission) or to the submission read functions (read_user_assignment_task_submissions / read_assignment_task_submissions / read_user_assignment_submissions), which before 1.1.1 lacked the non-instructor ownership check. Limiting factors: only instances running a version before 1.1.1 are affected; the flaw exposes confidentiality only (other users' submissions, grades, feedback) with no write/integrity or availability impact; and the caller must already be a logged-in user, so it is not remotely anonymous. No special non-default configuration is required - the missing check applies to the default behavior of these endpoints.

Impact

This is a genuine but moderate-severity access-control flaw (CWE-639, IDOR-style missing authorization), not an inflated high-CVSS issue. The input CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:N/VA:N) scores 5.3 Medium and aligns well with the description: a network-reachable endpoint, low attack complexity, and - critically - PR:L, meaning a valid authenticated account is required. Impact is confidentiality-only and rated Low (VC:L): an attacker reads other students' submissions, grades, and instructor feedback, with no integrity or availability impact. No EPSS score, CISA KEV listing, or confirmed public exploit code is present in the input, so there is no signal of active or widespread exploitation; the only exploitation evidence is the vendor/VulnCheck advisory and a patch. The vuln.today decision label is 'this_month' (not act_now/emergency), consistent with a medium-confidentiality, authenticated-access flaw. Signals are internally consistent - the CVSS vector, description, and source-code fix all agree that the trigger is an authenticated user supplying another user_id to submission/grade read endpoints that lacked an ownership check. Primary risk is privacy/FERPA-style exposure of student academic records rather than system compromise.

Exploit ScenarioDerived

An authenticated student in a LearnHouse course calls the assignment submission or grade read endpoint and substitutes a different user_id (or targets another user's submission record), causing the API to return that victim's submitted work, grade, and instructor feedback. Because the pre-patch code queried the submission by the supplied user_id without verifying it matched the caller, any logged-in user could enumerate peers' academic records. No public exploit code is identified in the input, though a public issue report (#1184) and the fixing commit/PR disclose the exact vulnerable functions.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.2% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 31, 2026

Missing authorization in the LearnHouse assignment API before version 1.1.1 lets an authenticated student read other students' assignment submissions, grades and instructor feedback by supplying a foreign user_id to the grade and submission read endpoints (CWE-639, IDOR-style user-controlled key). The exposure is confidentiality-only - no write, integrity or availability impact - and the caller must already hold a valid account that can reach the affected course, so this is not an anonymous remote compromise. No public exploit code and no confirmed active exploitation are identified in the available data, and the moderate 5.3 severity places it in a this_month remediation queue rather than an emergency patch cycle.

RemediationAI

Upgrade LearnHouse to 1.1.1, which contains commit 844a8a7787f0c42d466be604aaf47d296748b1b3 (pull request https://github.com/learnhouse/learnhouse/pull/1187); this is the release that adds the instructor-role and self-user_id ownership checks to the assignment submission and grade endpoints, and the change is referenced from issue https://github.com/learnhouse/learnhouse/issues/1184 and the VulnCheck advisory https://www.vulncheck.com/advisories/learnhouse-before-1.1.1-missing-authorization-via-assignment-submissions-api. No vendor-documented configuration workaround restores the missing authorization check, because it is enforced purely in application code, so patching is the only complete fix. Interim compensating controls, which reduce but do not eliminate exposure, are to restrict network access to the LearnHouse API to trusted networks or place the assignment grade and submission endpoints behind a reverse-proxy rule limited to known course participants, and to review API logs for requests to those endpoints carrying a user_id other than the caller's own; each of these narrows who can reach the vulnerable routes but leaves the authorization gap intact for anyone who is allowed through.

Affected VersionsENISA

LearnHouse 0 <1.1.1

Affected Packages

euvd learnhouse fix: 1.1.1

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

LearnHouse is an open-source learning management system whose API (a Python service under apps/api) uses SQLModel/SQLAlchemy-style ORM queries against course, activity and assignment tables. The CWE-639 flaw is an ownership-check gap: read_user_assignment_task_submissions, read_assignment_task_submissions, read_user_assignment_submissions and get_grade_assignment_submission all accepted a user_id parameter and queried submissions or grades for that identifier without confirming it matched the authenticated caller, and without confirming the caller held an instructor/update role on the course. Any logged-in learner could therefore substitute another student's user_id and retrieve that student's uploaded work, scores and instructor feedback. The upstream fix in commit 844a8a7787 adds authorization_verify_based_on_roles(request, current_user.id, "update", course.course_uuid, db_session) plus a direct comparison of user_id against current_user.id, returning HTTP 403 "You can only view your own submissions"/"You can only view your own grade"; get_grade_assignment_submission additionally gains a Course lookup and check_resource_access(..., AccessAction.READ) before the ownership comparison. The patch also reorders the submission-existence 404 check to run after the ownership check, which removes the 404-versus-403 signal as an enumeration oracle. The trigger is exactly this parameter substitution against the default behaviour of these endpoints; no special configuration is required, and versions from 1.1.1 onward carry the check.

Know when Learnhouse 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

Vendor (VulnCheck) PRIMARY 5.3 MEDIUM
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N
vuln.today AI 4.3 MEDIUM

Network-reachable API requiring a low-privileged authenticated account (PR:L) and no user interaction; confidentiality-only Low impact (reading others' grades/submissions), no integrity or availability effect.

3.1 AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N
4.0 AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
Low
User Interaction
None
Vulnerable system: Confidentiality
Low
Vulnerable system: Integrity
None
Vulnerable system: Availability
None
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

DescriptionCVE.org

LearnHouse before 1.1.1 contains a missing authorization vulnerability in the assignment API that allows authenticated users to read other users' grades and submissions. Attackers can supply another user_id to the submissions grade endpoint or query submission read functions to view other students' work, grades and instructor feedback.

Threat Intelligence Overview

EPSS Score
0.2%
Top 88% exploitable
Prevalence
Low
niche open-source self-hosted LMS, limited enterprise/production footprint
Social Media
1
Sightings
Data Quality
5 sources
Confidence: Medium

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.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS 0.2%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation· derived
None
System Exposure· derived
Open
Automatable· derived
No
Human Impact· derived
Medium

Priority Score

26
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +26
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy