Skip to main content
CVE Vulnerability Database

CVE-2026-9484: Student Grades System Auth Bypass Flaw

CVE-2026-9484 is an authentication bypass vulnerability in SourceCodester Student Grades Management System 1.0 affecting the classroom.php file. Attackers can exploit improper authorization remotely. This article covers technical details, affected versions, impact analysis, and mitigation strategies.

Published:

CVE-2026-9484 Overview

CVE-2026-9484 is an improper authorization vulnerability [CWE-266] in SourceCodester Student Grades Management System 1.0. The flaw resides in the getClassroomStudents and removeStudentFromClassroom functions within classroom.php. Attackers manipulate the classroom_id argument to access or modify classroom data outside their authorized scope. The attack works remotely over the network and requires only low-privilege authentication. Public disclosure of the exploit increases the likelihood of opportunistic abuse against exposed installations.

Critical Impact

Authenticated remote attackers can enumerate student records and remove students from classrooms they do not own, breaking the authorization model of the application.

Affected Products

  • SourceCodester Student Grades Management System 1.0
  • classroom.php component — getClassroomStudents function
  • classroom.php component — removeStudentFromClassroom function

Discovery Timeline

  • 2026-05-25 - CVE-2026-9484 published to NVD
  • 2026-05-26 - Last updated in NVD database

Technical Details for CVE-2026-9484

Vulnerability Analysis

The vulnerability exists in classroom.php, which exposes the getClassroomStudents and removeStudentFromClassroom functions. Both functions accept a classroom_id parameter supplied by the client. The server-side logic fails to verify whether the authenticated user owns or has permission to act on the referenced classroom. As a result, any logged-in user can substitute another classroom's identifier and trigger the function against records belonging to a different teacher or administrator.

The vulnerability is classified under [CWE-266] Incorrect Privilege Assignment. The attack is launched remotely without user interaction, and the exploit has been publicly disclosed through the referenced GitHub Vulnerability Report.

Root Cause

The root cause is missing authorization checks between authentication and resource access. The application authenticates the session but does not bind classroom_id values to the authenticated user's permitted classroom set. This decoupling allows horizontal privilege abuse across classroom records.

Attack Vector

An authenticated attacker sends crafted HTTP requests to classroom.php containing a classroom_id value belonging to another user. The getClassroomStudents function returns the student roster for that classroom. The removeStudentFromClassroom function deletes the requested student association. No additional privileges or user interaction are required.

No verified exploitation code is published in structured form. Refer to the GitHub Vulnerability Report and VulDB entry 365465 for the disclosed proof-of-concept details.

Detection Methods for CVE-2026-9484

Indicators of Compromise

  • Unexpected HTTP POST or GET requests to classroom.php referencing classroom_id values that do not match the authenticated session owner.
  • Removal of student-to-classroom associations performed by accounts that do not own the affected classroom.
  • Spikes in getClassroomStudents calls from a single authenticated user iterating through sequential classroom_id values.

Detection Strategies

  • Enable verbose application logging on classroom.php to capture caller identity, requested classroom_id, and the function invoked.
  • Correlate authenticated session identifiers with the ownership records of any classroom_id referenced in requests, and flag mismatches.
  • Deploy web application firewall (WAF) rules that detect parameter enumeration patterns against classroom.php.

Monitoring Recommendations

  • Monitor database audit logs for DELETE statements affecting classroom-student mappings outside of expected user scope.
  • Alert on accounts generating high request volumes to classroom enumeration endpoints over short time windows.
  • Review web server access logs for repeated requests to classroom.php containing incrementing numeric identifiers.

How to Mitigate CVE-2026-9484

Immediate Actions Required

  • Restrict network access to the Student Grades Management System to trusted networks until a fix is applied.
  • Audit current classroom-student associations to identify unauthorized removals or disclosures.
  • Force password resets for low-privilege accounts that may be leveraged for exploitation.

Patch Information

No vendor patch is referenced in the published advisory. SourceCodester has not issued a fixed release for Student Grades Management System 1.0 at the time of disclosure. Administrators should monitor the SourceCodester project page and the VulDB record for update notifications.

Workarounds

  • Add server-side authorization checks in classroom.php that validate the authenticated user owns the supplied classroom_id before executing getClassroomStudents or removeStudentFromClassroom.
  • Implement indirect object references by mapping internal classroom_id values to per-session tokens.
  • Disable the affected endpoints if the classroom management feature is not actively used.
  • Place the application behind an authenticating reverse proxy that enforces role-based access lists.
bash
# Example server-side authorization check to add in classroom.php
# Verify the requested classroom_id belongs to the authenticated user
# before executing getClassroomStudents or removeStudentFromClassroom
#
# SELECT 1 FROM classrooms
#   WHERE id = :classroom_id
#     AND owner_user_id = :session_user_id;
#
# If no row is returned, reject the request with HTTP 403.

Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

Default Legacy - Prefooter | Experience the World’s Most Advanced Cybersecurity Platform

Experience the Most Advanced Cybersecurity Platform

See how the world’s most intelligent, autonomous cybersecurity platform can protect your organization today and into the future.