CVE-2025-45065
BaseFortify
Publication date: 2025-07-07
Last updated on: 2025-07-08
Assigner: MITRE
Description
Description
CVSS Scores
EPSS Scores
| Probability: | |
| Percentile: |
Meta Information
Affected Vendors & Products
Helpful Resources
Exploitability
| CWE ID | Description |
|---|---|
| CWE-89 | The product constructs all or part of an SQL command using externally-influenced input from an upstream component, but it does not neutralize or incorrectly neutralizes special elements that could modify the intended SQL command when it is sent to a downstream component. Without sufficient removal or quoting of SQL syntax in user-controllable inputs, the generated SQL query can cause those inputs to be interpreted as SQL instead of ordinary user data. |
Attack-Flow Graph
AI Powered Q&A
Can you explain this vulnerability to me?
CVE-2025-45065 is a critical SQL Injection vulnerability in the Employee Record Management System, an open-source PHP and MySQL HR solution. It exists in the loginerms.php endpoint where the 'uname' and 'password' parameters are directly injected into SQL queries without proper input sanitization. This allows remote attackers to bypass authentication by injecting SQL payloads, such as ' OR '1'='1 --, gaining unauthorized access to the system. [1]
How can this vulnerability impact me? :
Exploitation of this vulnerability can lead to full dashboard access, allowing attackers to manipulate employee records, leak sensitive HR data including salaries and IDs, perform denial of service attacks, and potentially execute remote code depending on database privileges. [1]
How can this vulnerability be detected on my network or system? Can you suggest some commands?
This SQL injection vulnerability can be detected by testing the loginerms.php endpoint with SQL injection payloads in the 'uname' and 'password' parameters. For example, sending a request with 'uname' set to ' OR '1'='1 -- and any password value can reveal if authentication is bypassed. You can use tools like curl or sqlmap to test this. A sample curl command to test might be: curl -X POST -d "uname=' OR '1'='1 --&password=anything" http://<target>/Employee-Record-Management-System-Project/erms/loginerms.php. Alternatively, sqlmap can be used to automate detection by targeting the loginerms.php endpoint with these parameters. [1]
What immediate steps should I take to mitigate this vulnerability?
Immediate mitigation steps include implementing proper input validation and sanitization on the 'uname' and 'password' parameters in loginerms.php to prevent SQL injection. Using prepared statements or parameterized queries instead of directly injecting user input into SQL queries is essential. Additionally, restricting database privileges and monitoring access logs for suspicious activity can help reduce risk until a patch is applied. [1]