CVE-2025-10077 Overview
A SQL injection vulnerability has been identified in SourceCodester Online Polling System version 1.0. The vulnerability exists in the /registeracc.php file, where improper handling of the email parameter allows attackers to inject malicious SQL commands. This flaw can be exploited remotely without authentication, potentially compromising the integrity and confidentiality of the underlying database.
Critical Impact
Remote attackers can exploit this SQL injection vulnerability to manipulate database queries, potentially extracting sensitive user data, modifying poll results, or escalating privileges within the application.
Affected Products
- Razormist Online Polling System 1.0
- SourceCodester Online Polling System implementations using /registeracc.php
Discovery Timeline
- September 8, 2025 - CVE-2025-10077 published to NVD
- September 9, 2025 - Last updated in NVD database
Technical Details for CVE-2025-10077
Vulnerability Analysis
This SQL injection vulnerability (CWE-74: Injection) occurs in the user registration functionality of the Online Polling System. The email parameter in /registeracc.php is not properly sanitized before being incorporated into SQL queries, allowing attackers to inject arbitrary SQL commands. The vulnerability is remotely exploitable without requiring authentication or user interaction, making it accessible to any network-based attacker who can reach the application.
Root Cause
The root cause of this vulnerability is insufficient input validation and improper sanitization of user-supplied data in the registration process. The email parameter is directly concatenated into SQL queries without using parameterized queries or prepared statements, which is a fundamental secure coding violation in PHP web applications. This allows attackers to break out of the intended query structure and execute arbitrary SQL commands.
Attack Vector
The attack can be launched remotely by sending crafted HTTP requests to the /registeracc.php endpoint. An attacker would manipulate the email parameter to include SQL injection payloads that can:
- Extract sensitive information from the database through UNION-based or error-based injection techniques
- Bypass authentication mechanisms
- Modify or delete database records
- Potentially escalate to command execution if database privileges permit
The vulnerability requires no authentication or user interaction, making exploitation straightforward for attackers with network access to the target system. The exploit has been publicly disclosed, increasing the likelihood of exploitation attempts in the wild.
Detection Methods for CVE-2025-10077
Indicators of Compromise
- Unusual HTTP requests to /registeracc.php containing SQL syntax in the email parameter
- Database query errors in application logs indicating malformed SQL statements
- Unexpected database queries or access patterns in database audit logs
- Signs of data exfiltration or unauthorized database modifications
Detection Strategies
- Implement Web Application Firewall (WAF) rules to detect SQL injection patterns in requests to /registeracc.php
- Monitor application logs for SQL syntax errors or unusual parameter values in registration requests
- Configure database activity monitoring to alert on anomalous query patterns
- Deploy intrusion detection signatures targeting common SQL injection payloads
Monitoring Recommendations
- Enable verbose logging for the registration endpoint and monitor for suspicious patterns
- Implement real-time alerting for database query anomalies
- Review access logs periodically for evidence of automated scanning or exploitation attempts
- Monitor for unexpected changes to user accounts or poll data in the database
How to Mitigate CVE-2025-10077
Immediate Actions Required
- Remove or disable public access to the Online Polling System until a fix is applied
- Implement input validation for the email parameter using whitelist-based filtering
- Deploy Web Application Firewall (WAF) rules to block SQL injection attempts targeting /registeracc.php
- Review database user privileges and apply principle of least privilege
Patch Information
As of the last NVD update on September 9, 2025, no official vendor patch has been released for this vulnerability. Organizations should monitor the SourceCodester Security Resources for updates. Additional technical details and community discussion can be found at the GitHub CVE Issue Discussion and VulDB #323025.
Workarounds
- Replace dynamic SQL queries with parameterized queries (prepared statements) using PDO or MySQLi in PHP
- Implement strict input validation for the email parameter, accepting only valid email format characters
- Deploy a WAF with SQL injection protection rules in front of the application
- Restrict network access to the application to trusted IP ranges if public access is not required
- Consider migrating to a more actively maintained polling system if the vendor does not provide a timely patch
# Mitigation example: Use prepared statements
# Replace direct SQL concatenation with parameterized queries
$stmt = $pdo->prepare("INSERT INTO users (email) VALUES (:email)");
$stmt->bindParam(':email', $email, PDO::PARAM_STR);
$stmt->execute();
Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

