RosarioSIS CVE-2026-121732
LOWAttack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate as school-scoped admin
-
DeliveryOpen Mass Assign Fees/Payments form
-
ExploitSubstitute foreign student IDs in student[] array
-
ExecutionSubmit modfunc=save request
-
ImpactAlter other schools' billing balances
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 an authenticated administrator account that is school-scoped (the patch gates the new check on User('SCHOOLS') being set, i.e. an operator restricted to specific schools rather than a global admin) with access to the Student Billing module. The attacker must send a modfunc=save POST request to MassAssignFees.php or MassAssignPayments.php and place student IDs belonging to another school into the student[] POST array; pre-patch code iterated $_REQUEST['student'] directly without verifying each ID's SCHOOL_ID against the user's authorized schools. Limiting factors: the attacker must already hold a privileged school-admin session (PR:H), must know or guess valid foreign student IDs (integer IDs, likely enumerable), and impact is confined to writing/altering billing data - there is no read disclosure and no availability effect. |
| Impact | This is a low-severity, authorization-boundary flaw that is not an operational priority. The CVSS 4.0 vector (AV:N/AC:L/AT:P/PR:H/UI:N) and the vendor base score of 2.1 agree with the mechanism: exploitation requires an already-authenticated, school-scoped administrator (PR:H), and the only impact is low integrity (VI:L) - the ability to write fees/payments onto students belonging to other schools. There is no confidentiality or availability impact. The vuln.today decision label is 'monitor', consistent with a low-urgency, insider-boundary issue. No EPSS score is provided and the CVE is not listed in CISA KEV, so exploitation status is 'no public exploit identified at time of analysis'; the references are an upstream advisory, commit, and bug tracker issue, not working exploit code. The realistic risk is limited to a malicious or compromised school-level administrator corrupting billing data across the tenant boundary in a multi-school deployment - a data-integrity and trust problem, not a remote unauthenticated compromise. Note one metadata conflict to verify: the input tag 'Authentication Bypass' mischaracterizes this; CWE-639 and the description make clear it is improper authorization (IDOR) by an authenticated user, not an authentication bypass. |
| Exploit ScenarioDerived | A legitimate but malicious (or compromised) administrator whose account is scoped to one school logs into RosarioSIS and opens the Mass Assign Fees or Mass Assign Payments screen. They submit a modfunc=save request but replace the student IDs in the student[] POST array with IDs belonging to a different school, causing fees or payment records to be written against students outside their authorized scope. No public exploit code is identified, though the trivial request-tampering technique is described in the upstream advisory and GitLab issue #376. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Nov 03, 2026
School-scoped administrators in RosarioSIS before 12.9 can write fees and payments against students enrolled at other schools, breaking the per-school isolation the application otherwise enforces on billing data. The flaw is an IDOR (CWE-639): MassAssignFees.php and MassAssignPayments.php iterate the student[] POST array on a modfunc=save request without verifying that each supplied student ID belongs to a school inside the administrator's own SCHOOLS scope. Exploitation requires an authenticated, highly privileged school-admin session (PR:H), the impact is integrity-only on billing balances with no read disclosure or availability effect, no public exploit code has been identified at time of analysis, and the vendor fix ships in 12.9; the priority signal is 'monitor'.
RemediationAI
Vendor-released patch: RosarioSIS 12.9 - upgrade from any earlier release to the 12.9 tag (https://github.com/francoisjacquet/rosariosis/releases/tag/v12.9), which is the commit a8bb460aacb11661934e6e91fbe0d8158fbc0c4f and closes GitLab issue #376; the fix enrolls the submitted student[] IDs against the operator's authorized schools before any fee or payment is written, and covers the same cross-school assignment pattern in AddAbsences.php, AddActivity.php, Requests.php, AssignOtherInfo.php and AddStudents.php, so all of those paths should be verified as patched, not just the two Student_Billing endpoints. The supplied sources do not document a workaround or a configuration-level mitigation for pre-12.9 deployments, so the vendor upgrade is the remediation the advisory supports; because exploitation is gated on an existing school-scoped administrator session with access to the Student Billing module, the exposure of a given installation is bounded by who already holds that role. Track the advisory and release notes via https://www.vulncheck.com/advisories/rosariosis-before-12.9-improper-authorization-via-student-billing-mass-assignment and https://gitlab.com/francoisjacquet/rosariosis/-/issues/376.
Affected ProductsAI
RosarioSIS releases before 12.9 are affected, specifically the Student_Billing module files MassAssignFees.php and MassAssignPayments.php as they exist in v12.8.1, plus the additional modules corrected in the same upstream fix (Attendance/AddAbsences.php, Eligibility/AddActivity.php, Scheduling/Requests.php, Students/AssignOtherInfo.php and the AddStudents flow). No CPE identifiers were included in the supplied intelligence, so the version range is taken from the advisory text and the v12.8.1 source links in the references. Vendor material: the release at https://github.com/francoisjacquet/rosariosis/releases/tag/v12.9, the fixing commit at https://github.com/francoisjacquet/rosariosis/commit/a8bb460aacb11661934e6e91fbe0d8158fbc0c4f, the upstream issue at https://gitlab.com/francoisjacquet/rosariosis/-/issues/376, and the VulnCheck advisory at https://www.vulncheck.com/advisories/rosariosis-before-12.9-improper-authorization-via-student-billing-mass-assignment.
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
RosarioSIS is a PHP-based school management / student information system in which a single installation serves multiple schools, and accounts can be scoped to a subset of those schools (the User('SCHOOLS') value) rather than being global administrators. CWE-639 (authorization bypass through user-controlled key) applies here: the vulnerable handlers took the attacker-supplied student[] array from the POST body and iterated it directly inside the modfunc=save branch, so any integer student ID supplied was accepted and written to, regardless of whether that student was enrolled in one of the operator's authorized schools. The upstream fix in commit a8bb460aac (referenced against v12.8.1 source in the NVD references for MassAssignFees.php line 15 and MassAssignPayments.php line 16) wraps the loop in a User('SCHOOLS') guard and pre-filters the submitted IDs through a DBGet query on the student_enrollment table, matching SYEAR to UserSyear() and restricting SCHOOL_ID to the schools the account is entitled to; IDs failing that check are dropped and the loop runs over the filtered set (with a '0' fallback when nothing survives). The identical pattern was applied in the same commit to AddAbsences.php, AddActivity.php, Requests.php, AssignOtherInfo.php and AddStudents.php under GitLab issue #376, which is distinct from the time-based SQL injection tracked as #375 in StudentSumary.php. The trigger described in the available sources is a crafted modfunc=save POST request to the two Student_Billing endpoints with foreign IDs substituted into student[]; no further exploitation mechanics are described in the supplied data.
Know when PHP 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:H/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N
Authenticated school-admin privilege required (PR:H) over the web (AV:N/AC:L/UI:N); only billing data is modified (I:L), with no confidentiality or availability impact and no cross-authority scope change.
Primary rating from Vendor (vulncheck).
CVSS VectorVendor: vulncheck
DescriptionCVE.org
RosarioSIS before 12.9 contains an improper authorization vulnerability that allows school-scoped administrators to assign fees and payments to students of other schools via MassAssignFees.php and MassAssignPayments.php. Attackers can substitute foreign student IDs in the student[] POST array of a modfunc=save request to alter other schools' student billing balances, breaking school isolation.
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.
In PHP versions 7.1.x below 7.1.33, 7.2.x below 7.2.24 and 7.3.x below 7.3.11 in certain configurations of FPM setup it
sapi/cgi/cgi_main.c in PHP before 5.3.12 and 5.4.x before 5.4.2, when configured as a CGI script (aka php-cgi), does not
(1) boardData102.php, (2) boardData103.php, (3) boardDataJP.php, (4) boardDataNA.php, and (5) boardDataWW.php in Netgear
The '/common/download_agent_installer.php' script in the Quest KACE System Management Appliance 8.0.318 is accessible by
ProjectSend versions prior to r1720 are affected by an improper authentication vulnerability. Rated critical severity (C
Roundcube Webmail contains a critical PHP object deserialization vulnerability (CVE-2025-49113, CVSS 9.9) that allows au
Util/PHP/eval-stdin.php in PHPUnit before 4.8.28 and 5.x before 5.6.3 allows remote attackers to execute arbitrary PHP c
Palo Alto Networks PAN-OS management web interface contains an authentication bypass allowing unauthenticated attackers
Nagios XI version xi-5.7.5 is affected by OS command injection. Rated high severity (CVSS 8.8), this vulnerability is re
Nagios XI version xi-5.7.5 is affected by OS command injection. Rated high severity (CVSS 8.8), this vulnerability is re
The get_referers function in /opt/ws/bin/sblistpack in Sophos Web Appliance before 3.7.9.1 and 3.8 before 3.8.1.1 allows
The Backup Migration plugin for WordPress is vulnerable to Remote Code Execution in all versions up to, and including, 1
NVD
CVE.org
GitHub
Exploit-DB