CVSS VectorNVD
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L
Lifecycle Timeline
4DescriptionNVD
A vulnerability classified as critical was found in PHPGurukul Local Services Search Engine Management System 2.1. This vulnerability affects unknown code of the file /admin/edit-person-detail.php?editid=2. The manipulation of the argument editid leads to sql injection. The attack can be initiated remotely. The exploit has been disclosed to the public and may be used.
AnalysisAI
Critical SQL injection vulnerability in PHPGurukul Local Services Search Engine Management System version 2.1, specifically in the /admin/edit-person-detail.php file where the 'editid' parameter is not properly sanitized. An unauthenticated remote attacker can exploit this vulnerability to execute arbitrary SQL queries, potentially leading to unauthorized data access, modification, or deletion. The vulnerability has public exploit code available and may be actively exploited in the wild.
Technical ContextAI
The vulnerability exists in the PHPGurukul Local Services Search Engine Management System (PHP-based web application) where user-supplied input from the 'editid' GET parameter is directly concatenated into SQL queries without proper input validation or parameterized query mechanisms. This violates CWE-74 (Improper Neutralization of Special Elements in Output Used by a Downstream Component) and more specifically represents a classic SQL injection flaw (CWE-89). The affected file /admin/edit-person-detail.php processes the editid parameter to retrieve person details but fails to use prepared statements or proper escaping, allowing attackers to inject malicious SQL syntax. The administrative endpoint suggests this may require some level of access, but the CVSS vector indicates PR:N (no privileges required), suggesting the admin panel may be directly accessible or the vulnerability exists in an unauthenticated pathway.
RemediationAI
Apply vendor-released security patch when available Workaround - Input Validation: Add validation: if (!ctype_digit($_GET['editid'])) { reject_request(); } Workaround - Parameterized Queries: Replace: $query = "SELECT * FROM person WHERE id=" . $_GET['editid']; with prepared statement: $stmt = $pdo->prepare('SELECT * FROM person WHERE id = ?'); $stmt->execute([$_GET['editid']]) Access Control: Implement network-level or application-level access controls WAF Rule: Monitor for SQL keywords (UNION, SELECT, DROP, etc.) in GET parameter values
Share
External POC / Exploit Code
Leaving vuln.today
EUVD-2025-17113