CVE-2024-28097
📋 TL;DR
This stored cross-site scripting (XSS) vulnerability in Schoolbox's calendar functionality allows authenticated attackers to inject malicious scripts that execute in other users' browsers. It affects all Schoolbox users who access the calendar feature. Attackers can perform actions on behalf of victims, potentially compromising accounts or stealing sensitive data.
💻 Affected Systems
- Schoolbox
📦 What is this software?
Schoolbox by Schoolbox
⚠️ Risk & Real-World Impact
Worst Case
Attacker gains full control of administrator accounts, accesses all student/staff data, modifies grades/attendance, or deploys ransomware across the school network.
Likely Case
Attacker steals session cookies to hijack user accounts, accesses personal information, or performs unauthorized actions within affected users' permissions.
If Mitigated
Limited to minor data exposure or inconvenience if proper input validation and output encoding are implemented at other layers.
🎯 Exploit Status
Requires authenticated access but exploitation is straightforward once an attacker has valid credentials. Stored XSS payloads persist until cleaned.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: 23.1.3
Vendor Advisory: https://www.themissinglink.com.au/security-advisories/cve-2024-28097
Restart Required: Yes
Instructions:
1. Backup your Schoolbox instance and database. 2. Download Schoolbox version 23.1.3 or later from the vendor portal. 3. Follow the Schoolbox upgrade documentation for your deployment method (Docker, manual, etc.). 4. Restart all Schoolbox services. 5. Verify the upgrade completed successfully.
🔧 Temporary Workarounds
Disable Calendar Functionality
allTemporarily disable the calendar feature to prevent exploitation while planning upgrade.
Consult Schoolbox documentation for feature disable procedures specific to your version
Implement WAF Rules
allDeploy web application firewall rules to block XSS payloads targeting calendar endpoints.
Add WAF rules to block scripts in calendar-related POST parameters and URLs
🧯 If You Can't Patch
- Implement strict input validation and output encoding for all calendar-related user inputs
- Enable Content Security Policy (CSP) headers to restrict script execution sources
🔍 How to Verify
Check if Vulnerable:
Check Schoolbox version via admin panel or by examining the application files/container. If version is below 23.1.3 and calendar feature is enabled, system is vulnerable.
Check Version:
Check Schoolbox admin dashboard or review application configuration files for version information
Verify Fix Applied:
After upgrading to 23.1.3 or later, test calendar functionality with basic XSS payloads like <script>alert('test')</script> to ensure they are properly sanitized.
📡 Detection & Monitoring
Log Indicators:
- Unusual calendar entries containing script tags or JavaScript code
- Multiple failed login attempts followed by calendar access patterns
- User accounts accessing calendar features from unusual locations/times
Network Indicators:
- HTTP requests to calendar endpoints containing script tags or encoded JavaScript in parameters
- Outbound connections to suspicious domains following calendar access
SIEM Query:
source="schoolbox_logs" AND (calendar_event OR calendar_entry) AND (script OR javascript OR <script> OR %3Cscript%3E)