EUVD-2025-17818

| CVE-2025-5977 HIGH
2025-06-10 [email protected]
7.3
CVSS 3.1
Share

CVSS Vector

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L
Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
Low
Integrity
Low
Availability
Low

Lifecycle Timeline

4
Analysis Generated
Mar 14, 2026 - 19:49 vuln.today
EUVD ID Assigned
Mar 14, 2026 - 19:49 euvd
EUVD-2025-17818
PoC Detected
Jun 17, 2025 - 20:34 vuln.today
Public exploit code
CVE Published
Jun 10, 2025 - 20:15 nvd
HIGH 7.3

Description

A vulnerability was found in code-projects School Fees Payment System 1.0 and classified as critical. This issue affects some unknown processing of the file /datatable.php. The manipulation of the argument sSortDir_0 leads to sql injection. The attack may be initiated remotely. The exploit has been disclosed to the public and may be used.

Analysis

Critical SQL injection vulnerability in code-projects School Fees Payment System version 1.0, specifically in the /datatable.php file where the sSortDir_0 parameter is improperly sanitized. An unauthenticated remote attacker can exploit this to execute arbitrary SQL queries, potentially compromising confidentiality, integrity, and availability of the underlying database. The vulnerability has been publicly disclosed with exploit code available, indicating active exploitation risk.

Technical Context

The vulnerability exists in a PHP-based web application (School Fees Payment System) that uses DataTables or similar JavaScript library for server-side data rendering. The sSortDir_0 parameter is a sorting direction argument commonly used in DataTables AJAX requests. The root cause is classified under CWE-74 (Improper Neutralization of Special Elements in Output Used by a Downstream Component), which reflects insufficient input validation and parameterized query usage. The /datatable.php endpoint directly concatenates user-supplied sorting parameters into SQL queries without proper escaping, type casting, or prepared statement implementation. This is a classic second-order injection scenario where user input flows directly into database commands via dynamic query construction.

Affected Products

code-projects School Fees Payment System version 1.0 and potentially earlier/later versions not explicitly listed. The vulnerability affects the /datatable.php endpoint specifically. No CPE string provided in source data, but would be structured as cpe:2.3:a:code-projects:school_fees_payment_system:1.0:*:*:*:*:php:*:*. Affected organizations are educational institutions, schools, and fee collection agencies running this software. The application likely runs on Linux/Windows with PHP 5.6+ and MySQL/MariaDB backend.

Remediation

Immediate actions: (1) Apply vendor patches - contact code-projects for security updates or migrate to patched version if available. (2) Implement Web Application Firewall (WAF) rules to block requests with SQL metacharacters in sSortDir_0 parameter (validate against whitelist: ASC or DESC only). (3) Code-level fix: Replace dynamic query construction with prepared statements using parameterized queries in /datatable.php - validate sSortDir_0 against strict whitelist of 'ASC' or 'DESC' values only before SQL incorporation. (4) Disable DataTables server-side processing if not required; use client-side sorting instead. (5) Implement strict input validation: sSortDir_0 must match regex ^(ASC|DESC)$ case-insensitively. (6) Apply principle of least privilege - database user running PHP application should have SELECT-only permissions, preventing INSERT/UPDATE/DELETE via injection. (7) Monitor database logs for suspicious queries with UNION, SLEEP(), or CAST operators.

Priority Score

57
Low Medium High Critical
KEV: 0
EPSS: +0.1
CVSS: +36
POC: +20

Share

EUVD-2025-17818 vulnerability details – vuln.today

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