WIKI

15.2 SQLite数据库日志泄露漏洞(CVE-2011-3901)检测

(1)描述

Android SQLite数据库journal文件可被所有应用程序读取,所有目录对应程序数据库目录拥有执行权限,意味着应用程序数据目录全局访问,/data/data/<app package>/databases目录以[rwxrwx--x]权限创建,可导致全局读写。数据库目录下创建的journal文件以[-rw-r--r--]权限创建,可被所有app读取。

(2)风险等级

低危

(3)影响范围

Android2.3.7版本存在该漏洞,其他版本可能也受到影响,4.0.1不受影响

(4)检测方法

检测类型:静态分析

通过检测appAndroidManifest.xml文件中声明的min SDK版本进行判断。如果min sdk小于4.0.1(Android API Level 14),则判定有风险,否则安全。

(5)修复建议

升级到Android4.0.1以上版本或者使用SQLCipher或其他库加密数据库和日志信息。

(6)参考资料

http://blog.watchfire.com/files/androidsqlitejournal.pdf

http://www.venustech.com.cn/NewsInfo/124/13668.Html

https://www.sqlite.org/tempfiles.html

http://roeehay.blogspot.hk/2012/05/android-sqlite-journal-information.html

http://cve.scap.org.cn/CVE-2011-3901.html