CVE-2026-4251CVE-2026-4251是Google Play上CityData CityChat Android应用程序(版本0.12.6及之前)中的一个中低危安全漏洞。该漏洞存在于应用程序的Flutter资源目录中,具体位于resources/assets/flutter_assets/assets/credentials.json文件。由于该JSON文件中的凭证信息未采用任何加密或安全保护措施,攻击者通过本地访问设备即可获取这些敏感凭证数据。攻击者可以利用获取的凭证访问用户账户或关联的后端服务(如Dialogflow数据),导致用户隐私数据泄露和潜在的业务安全风险。此次漏洞的发现和披露过程符合负责任的漏洞披露原则,发现者提前联系了供应商但未获得响应。该漏洞的CVSS 3.1评分仅为2.5,属于低危级别,主要因为需要本地访问权限且攻击复杂度较高。尽管如此,在设备丢失、被恶意软件感染或遭受针对性攻击时,该漏洞仍可能造成严重的安全后果。
该漏洞属于OWASP移动应用安全标准中的不安全数据存储类别(M1 - 不安全存储)。在CityData CityChat应用中,敏感凭证被明文存储在Flutter应用的assets目录下的credentials.json文件中。Flutter应用的assets目录通常打包在APK文件中,安装后位于设备的应用私有存储区域(/data/app/*/base.apk或应用沙盒目录)。攻击者可以通过以下方式获取这些凭证:1) 获取root权限的设备直接访问APK文件并解压;2) 使用ADB备份功能导出应用数据;3) 使用专业的移动安全分析工具如Frida进行运行时提取。由于Flutter框架的特性,该credentials.json文件在应用运行时会被加载到内存中,攻击者也可通过内存dump获取这些信息。获取的凭证可能用于冒充合法用户访问后端Dialogflow服务,造成数据泄露或服务滥用。