CVE-2025-59407CVE-2025-59407是Flock Safety公司DetectionProcessing Android应用程序中存在的一个严重安全漏洞。该应用版本6.35.33安装于Flock Safety的Falcon和Sparrow车牌识别器(LPR)以及Bravo Edge AI计算设备上。漏洞的核心问题在于应用程序在其代码中捆绑了一个Java密钥库文件(flock_rye.bks),并同时将密钥库的密码(flockhibiki17)以硬编码形式存储在代码中。由于Android APK文件可以被轻易地反编译获取其中的资源,硬编码的凭据使得任何能够访问该应用的人都可以提取密钥库并使用硬编码密码解锁,从而获取其中存储的私钥。
该漏洞的CVSS评分为9.8,属于严重级别,攻击向量为网络(AV:N),无需认证(PR:N)和用户交互(UI:N),对机密性、完整性和可用性均产生高影响。Flock Safety的车牌识别设备广泛应用于美国各地的社区、执法部门和私人安保场景,设备的广泛部署意味着该漏洞可能影响大量设备的安全性。攻击者获取私钥后可能实施中间人攻击、解密敏感通信数据、伪造身份验证,进而完全控制设备或访问其后端系统,对公共安全和隐私构成严重威胁。
该漏洞的技术原理基于Android应用的安全设计缺陷。Android应用程序(APK)本质上是一个ZIP压缩包,其中包含DEX字节码文件、资源文件、清单文件和原生库等。Java密钥库(Java KeyStore, JKS/BKS)是一种用于存储加密密钥和证书的二进制文件格式。
在正常的安全实践中,密钥库密码应当存储在受保护的位置(如Android Keystore系统、TEE/SE硬件模块或服务器端),绝不应硬编码在应用程序代码中。然而,Flock Safety的DetectionProcessing应用将密钥库文件(flock_rye.bks)作为资源文件打包在APK中,并将密码'flockhibiki17'硬编码在Java代码或资源文件中。
攻击者可以通过以下步骤利用该漏洞:
1. 从设备或应用市场下载APK文件
2. 使用apktool、jadx等工具反编译APK
3. 从资源目录提取flock_rye.bks文件
4. 通过反编译的代码或资源文件找到硬编码密码'flockhibiki17'
5. 使用keytool或Java KeyStore API加载密钥库并提取私钥
获取私钥后,攻击者可以解密应用与服务器之间的HTTPS通信、伪造客户端身份验证请求、签署恶意更新包,甚至可能利用获取的密钥访问设备的后台管理系统。结合GainSec披露的'Fly By Device'系列漏洞,攻击者可以实现远程代码执行(RCE)、摄像头馈送拒绝服务(DoS)和信息泄露等多重攻击。