Skip to main content

LearnHouse CVE-2025-12270

LOW
Improper Control of Resource Identifiers ('Resource Injection') (CWE-99)
2025-10-27 cna@vuldb.com
2.1
CVSS 4.0 · Vendor: vuldb
View

Attack ChainAIDerived

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

  1. Access
    Obtain valid user credentials
  2. Delivery
    Authenticate to LearnHouse API
  3. Exploit
    Enumerate assignment IDs and task IDs
  4. Execution
    Craft API request for sub_file endpoint
  5. Persist
    Bypass authorization check via parameter manipulation
  6. Impact
    Download unauthorized student assignment file

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Resource identifier sanitization
Exploitation Conditions

The attacker must possess valid authentication credentials to the LearnHouse platform (PR:L in CVSS vector); unauthenticated access is not possible. The vulnerability requires knowledge or enumeration of valid assignment_id and task_id parameters within the application-these are typically small integers or predictable identifiers. The Student Assignment Submission Handler component must be enabled and deployed; if the assignment submission feature is disabled administratively, the endpoint is unexploited. File submissions must exist for the target assignments; if no students have submitted files to a given task, there is no data to exfiltrate. The endpoint must be internet-accessible via network (AV:N, AC:L confirm no special network configuration); deployment behind a WAF with resource ID validation would block enumeration. No special UI interaction is required (UI:N); direct HTTP API calls are sufficient.

Impact

CVSS 2.1 (CVSSv4.0) with AV:N/AC:L/PR:L indicates low severity: network-accessible but requires authenticated access, with low attack complexity and low confidentiality impact (VC:L). The EPSS score of 0.04% (13th percentile) suggests minimal real-world exploitation probability despite public POC, contradicting the CWE-99 disclosure pattern which typically sees higher adoption. This discrepancy suggests either: (1) the POC is recent and has not yet driven widespread exploitation, (2) attackers prefer targeted reconnaissance over mass exploitation, or (3) practical barriers (API rate limiting, detection mechanisms, or required knowledge of valid assignment/task IDs) limit real-world abuse. The authentication requirement (PR:L) significantly reduces risk compared to unauthenticated variants. No KEV listing indicates CISA has not confirmed active exploitation in the wild. For risk prioritization, this is a low-urgency patch despite public POC-appropriate for standard patching cycles rather than emergency response.

Exploit ScenarioDerived

An authenticated LearnHouse student or lower-privileged user identifies the assignment submission API endpoint structure through documentation or reverse engineering. Using the publicly available POC (https://gist.github.com/KhanMarshaI/f71f86fbd5d8e8363f9113a8c054c28b), they systematically iterate through assignment_id and task_id integers (e.g., /api/v1/assignments/1/tasks/1/sub_file, /api/v1/assignments/1/tasks/2/sub_file, etc.) to download submitted assignment files from other students, retrieving homework solutions, essays, or code repositories without authorization.

Monitor Track and reassess. Why: LOW severity (CVSS 0.1-3.9).
No patch listed yet 0.0% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Apr 29, 2026

LearnHouse allows authenticated remote attackers to access unauthorized student assignment files through improper control of resource identifiers in the Student Assignment Submission Handler API endpoint, enabling information disclosure of sensitive academic materials. The vulnerability affects all versions up to commit 98dfad76aad70711a8113f6c1fdabfccf10509ca, with publicly available exploit code disclosed. EPSS exploitation probability is 0.04% (13th percentile), indicating low real-world exploitation likelihood despite public POC availability.

RemediationAI

Apply the upstream fix by deploying the latest commit from the LearnHouse repository after commit 98dfad76aad70711a8113f6c1fdabfccf10509ca. Since the vendor uses continuous delivery with rolling releases rather than traditional version releases, administrators should pull the latest code from the main branch and redeploy. The patch must implement proper access control validation in the /api/v1/assignments/{assignment_id}/tasks/{task_id}/sub_file endpoint to verify the authenticated user owns or has explicit permission to access the requested assignment and task resources before serving files. Until patched, implement compensating controls: (1) enable API request logging and monitoring for repeated or invalid assignment_id/task_id parameter combinations to detect enumeration attempts, (2) restrict the endpoint to HTTPS-only with TLS 1.2+ to prevent credential interception, (3) implement rate limiting (e.g., 10 requests per minute per user) on the /api/v1/assignments endpoint to slow enumeration attacks, and (4) conduct an access control audit of all API endpoints in the Student Assignment Submission Handler component to identify similar CWE-99 instances. Trade-off: rate limiting may impact legitimate bulk download workflows; configure whitelist exceptions for known administrative tasks. For reference, see VulDB CID 329942 (https://vuldb.com/?ctiid.329942).

Affects your stack

Find out whether the stacks and servers you run are on an affected version.

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

The vulnerability exists in the RESTful API endpoint /api/v1/assignments/{assignment_id}/tasks/{task_id}/sub_file, which handles student assignment file submissions. The root cause is CWE-99 (Improper Control of Resource Identifiers), a class of authorization bypass flaws where the application fails to properly validate or restrict access to resources based on user identity or role. In this case, the API likely accepts user-controlled assignment_id and task_id parameters without verifying the authenticated user has permission to access those specific resources, allowing students or other users to enumerate and retrieve files belonging to other students' assignments through parameter manipulation.

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 (vuldb) PRIMARY 2.1 LOW
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/E:P

Primary rating from Vendor (vuldb) · only source for this CVE.

CVSS VectorVendor: vuldb

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

A vulnerability was determined in LearnHouse up to 98dfad76aad70711a8113f6c1fdabfccf10509ca. The impacted element is an unknown function of the file /api/v1/assignments/{assignment_id}/tasks/{task_id}/sub_file of the component Student Assignment Submission Handler. This manipulation causes improper control of resource identifiers. The attack can be initiated remotely. The exploit has been publicly disclosed and may be utilized. Continious delivery with rolling releases is used by this product. Therefore, no version details of affected nor updated releases are available. The vendor was contacted early about this disclosure but did not respond in any way.

Threat Intelligence Overview

EPSS Score
0.0%
Top 87% exploitable
Exploit
POC
Public exploit code exists
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 LOW
CISA KEV No
Public POC Yes
EPSS 0.0%
Patch available No
Active threat No
Deciding rule
LOW severity (CVSS 0.1-3.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
Poc
System Exposure· derived
Open
Automatable· derived
No
Human Impact· derived
Low

Priority Score

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

Attack Technique

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

Affected Products (CPE)CVE.org

cpe:2.3:a:learnhouse:learnhouse:*:*:*:*:*:*:*:*

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