Abacre Restaurant Point of Sale (POS) 进程内存中以明文形式存储敏感许可材料
在 Abacre Restaurant Point of Sale (POS) 版本 <= 15.0.0.1656 中存在一个漏洞,其中敏感许可数据在软件激活工作流期间以进程内存中的明文形式存储。
在许可证激活过程中,应用程序生成并处理设备绑定的许可证密钥,这些密钥旨在针对特定机器验证软件安装。然而,这些值在没有适当保护或安全内存处理机制的情况下分配到进程内存中。
因为这些值以明文形式保留在内存中,拥有本地访问权限的攻击者可以将调试器附加到正在运行的进程,并直接从内存中提取许可材料。
从而可以恢复有效的许可证密钥,然后将其重新用于在同一台机器上激活软件,而无需购买许可证。
产品: Abacre Restaurant Point of Sale (POS)
厂商: Abacer Limited
受影响版本: <= 15.0.0.1656
主要弱点:
相关弱点:
在激活程序过程中,POS 应用程序执行以下操作:
应用程序未实施以下保护措施:
因此,可以使用常见的逆向工程技术提取许可证密钥。
该问题发生在许可证激活尝试期间,此时应用程序处理并验证许可材料。
在此阶段:
均临时存储在进程内存中,没有混淆或保护。
拥有本地访问权限的攻击者可以执行以下步骤:
由于许可证密钥以明文形式存储在内存中,可以直接从进程内存空间中提取。
提取的密钥可以重新用于在同一台机器上激活软件,而无需购买许可证。
下图显示了调试器输出和运行时内存检查,其中许可证密钥在激活期间在进程内存中可见。
![内存分析证据] 
![调试器内存视图]
下图展示了使用恢复的许可证密钥成功激活的情况。
![激活的软件截图]
![激活确认]
![激活后的 UI 状态]
成功利用将允许攻击者:
虽然此问题主要影响软件许可完整性,但它表明了内存中敏感信息的不当处理。
漏洞是由内存中敏感许可数据的不安全处理导致的。具体来说:
为防止类似漏洞,厂商应:
| 日期 | 事件 |
|---|---|
| 2025 | 发现漏洞 |
| 2025 | 通知厂商 |
| 2025 | 分配 CVE |