一款Android漏洞測(cè)試套件 – AndroidVTS。

概述
為了Android安全社區(qū)能夠繁榮發(fā)展,NowSecure的研究人員開(kāi)發(fā)出了一款名叫AndroidVTS的Android漏洞測(cè)試套件,用戶可以通過(guò)這個(gè)測(cè)試軟件來(lái)測(cè)試設(shè)備當(dāng)前所存在的安全漏洞。
在AndroidVTS的幫助下,終端用戶不僅了解當(dāng)前設(shè)備中所存在的攻擊面,而且還可以在不影響系統(tǒng)穩(wěn)定性的情況下掃描出系統(tǒng)中的漏洞。
必要性
當(dāng)一個(gè)漏洞被發(fā)現(xiàn)之后,Google會(huì)收到相應(yīng)的漏洞報(bào)告,Google的技術(shù)人員在對(duì)漏洞進(jìn)行了驗(yàn)證和分析之后,便會(huì)發(fā)布相應(yīng)的更新補(bǔ)丁。通常情況下,Nexus系列會(huì)是第一批收到更新通知的設(shè)備,因?yàn)镹exus設(shè)備使用的是最接近原生Android的操作系統(tǒng)。我們要知道,技術(shù)人員從發(fā)現(xiàn)一個(gè)漏洞,到開(kāi)發(fā)出相應(yīng)的漏洞補(bǔ)丁,最后再將補(bǔ)丁部署到設(shè)備上,整個(gè)過(guò)程通常需要花費(fèi)一年以上的時(shí)間,而且有的問(wèn)題甚至永遠(yuǎn)無(wú)法得到解決。比如說(shuō)漏洞CVE-2014-3153(Towelroot),這個(gè)漏洞在2014年5月底被發(fā)現(xiàn),而技術(shù)人員花費(fèi)了數(shù)月時(shí)間才將該漏洞的更新補(bǔ)丁部署到當(dāng)時(shí)的旗艦手機(jī)Nexus5上。這也就意味著,廣大Android用戶在這段時(shí)間里都有可能受到攻擊,而更加嚴(yán)重的是,用戶甚至都不知道自己的Android設(shè)備存在這個(gè)漏洞。因此,AndroidVTS可以幫助用戶發(fā)現(xiàn)自己的Android設(shè)備中所存在的安全漏洞,這是非常有意義的。
一個(gè)補(bǔ)丁的生命周期
像三星、HTC以及其他的OEM廠商會(huì)對(duì)自家手機(jī)的Android系統(tǒng)進(jìn)行深度定制,而且很多Android手機(jī)的系統(tǒng)還與通信運(yùn)營(yíng)商有著密切的關(guān)系,所以這就會(huì)讓更新補(bǔ)丁的部署變得更加困難。OEM廠商首先會(huì)從Google那里獲取到更新補(bǔ)丁,然后再花好幾周或幾個(gè)月的時(shí)間對(duì)設(shè)備進(jìn)行測(cè)試。最終,廠商再將更新補(bǔ)丁推送給終端用戶。處理完這個(gè)漏洞之后,OEM廠商又要開(kāi)始著手處理下一個(gè)漏洞了,這就是一個(gè)補(bǔ)丁的生命周期。
檢測(cè)實(shí)現(xiàn)
AndroidVTS目前所能檢測(cè)的漏洞如下:
ZipBug9950697
Zip Bug 8219321 / Master keys
Zip Bug 9695860
Jar Bug 13678484 / Android FakeID
CVE 2013-6282 / put/get_user
CVE_2011_1149 / PSNueter / Ashmem Exploit
[CVE_2014_3153 / Futex bug / Towelroot] (http://seclists.org/oss-sec/2014/q2/467)
CVE 2014-3847 / WeakSauce
StumpRoot
Stagefright bugs
[x509 Serialization bug] (https://securityintelligence.com/one-class-to-rule-them-all-new-android-serialization-vulnerability-gives-underprivileged-apps-super-status/)
[PingPong root - CVE-2015-3636] (https://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2015-3636)
Stagefright – CVE-2015-6602
[Samsung Remote Code Execution as System] (https://code.google.com/p/google-security-research/issues/detail?id=489)
CVE-2015-6608
CVE-2015-1474
CVE-2015-1528
CVE-2015-6616
項(xiàng)目構(gòu)建
你可以直接將該項(xiàng)目導(dǎo)入至AndroidStudio中,或者使用gradle進(jìn)行項(xiàng)目構(gòu)建。為了正確構(gòu)建項(xiàng)目,你首先需要安裝AndroidSDK和NDK,local.properties文件如下所示:
cat local.properties
## This file is automatically generated by Android Studio.
# Do not modify this file -- YOUR CHANGES WILL BE ERASED!
#
# This file must *NOT* be checked into Version Control Systems,
# as it contains information specific to your localconfiguration.
#
# Location of the SDK. This is only used by Gradle.
# For customization when using a Version Control System, pleaseread the
# header note.
#Tue Aug 18 12:32:42 EDT 2015
sdk.dir=/Users/fuzion24/bin/android_sdk_home
ndk.dir=/Users/fuzion24/bin/android_ndk
使用測(cè)試簽名密鑰來(lái)構(gòu)建調(diào)式APK:
./gradlew assembleDebug
構(gòu)建并安裝調(diào)試版本:
./gradlew installDebug
構(gòu)建發(fā)布版本(未簽名)
./gradlew assembleRelease
|