作家
登录

【技术分享】使用CTS进行漏洞检测及原理浅析

作者: 来源: 2017-07-19 14:41:00 阅读 我要评论

【技巧沙龙】AI开辟者拭魅战营-7分钟打造1个定制技能。7月22号,我们等你一路!


2.2 CtsSecurityTestCases模块

 首图

团队介绍

360 Vulpecker团队 附属360信息安然部,致力于Android应用和体系层马脚发掘以及其他Android方面的安然研究。我们经由过程对CTS框架的研究,编写了一个关于马脚检测方面的文档,以下为文┞仿的全文。

CTS 全称 Compatibility Test Suite(兼容性测试),Google开辟CTS框架的意义在于让各类Android设备厂商可以或许开辟出兼容性更好的设备。个中有一些模块的关于手机安然方面的检测,本文以此为主题,进行了马脚检测方面的研究。包含若何下载编译,以及分析了个中的security模块是若何调剂应用的。

1.1  下载编译Android CTS源码

经由过程git clone https://android.googlesource.com/platform/cts -b xxxxxxx 可以下载cts并且进行编译,或者可以下载完全的Android 源码进行编译,编译好源码之后再编译CTS,敕令是make cts;在/home/venscor/AndroidSource/least/out/host/linux-x86/cts下生成关于CTS的几个文件,个中cts-tradefed可以启动CTS测试法度榜样。

1.2   CTS 运行情况

Android官网上对CTS运行情况请求严格,然则我们今朝存眷的是测试安然募块,所以只要根本的测试情况就可以了。例如打开adb,许可adb安装apk,不设置锁屏等。

1.3  CTS运行流程

在源码中可以看到,cts-tradefed实际上是个脚本文件。起首做些情况检查,知足运行情况后,去android-cts/tool/目次下加载对应的jar文件,大年夜android-cts/lib加载所有的须要库文件。最后,加载android-cts/testcase/目次下的所有jar文件,然后履行。

CTS console功能的实如今CompatibilityConsole类中,也是法度榜样的加载点

2.1.1 测试流程

CTS测试套件由很多plans构成,plans又可以由很多subplan和modules构成,我们只关怀和CTS和安然相干的的器械,即和安然相干的modules。个中 和安然相干的测试模块 有4个:

CtsAppSecurityHostTestCases

CtsJdwpSecurityHostTestCases

CtsSecurityHostTestCases

CtsSecurityTestCases

个中,CtsAppSecurityHostTestCases、CtsJdwpSecurityHostTestCases不包含CVE,其实是一些App层安然检测和安然策略检测,我们可以先跳过这两个模块侧重分析CtsSecurityHostTestCases和CtsSecurityTestCases。

2. CTS中的安然募块

2.1 CtsSecurityHostTestCases模块

CtsSecurityHostTestCases模块对应的源码路径在:./hostsidetests/security。即在cts console中经由过程输入run cts --module CtsSecurityHostTestCasess加载起来的。

CtsSecurityHostTestCases重要测试Linux内核和各类驱动的马脚,都是以C/C++实现的马脚检测PoC。

可以经由过程run cts --module CtsSecurityHostTestCases来测试全部模块,也可以经由过程run cts --module CtsSecurityHostTestCases –test 来测试具体的办法。例如要测试CVE_2016_8451,可以经由过程--test android.security.cts.Poc16_12#testPocCVE_2016_8451来进行。

下面我们经由过程一个例子看具体的测试流程,以对CVE_2016_8460的检测为例,来具体分析下测试过程。在CTS下,运行run cts --module CtsSecurityHostTestCases --test android.security.cts.Poc16_12#testPocCVE_2016_8460。法度榜样将运行到CtsSecurityHostTestCases模块下的testPocCVE_2016_8460()函数。

CtsSecurityTestCases模块也受CTS同一的结不雅治理。所以膳绫擎CtsSecurityHostTestCases模块一样。测试结不雅涌如今xml文件中,pass表示成功不存在马脚,fail给出掉败原因。

其拭魅这个测试过程,就是将CtsSecurityHostTestCases模块下对应的可履行文件CVE_2016_8460 push到手机的sdcard,然后履行此可履行文件,即履行poc检测法度榜样。

2.1.2 结不雅治理

CTS测试完成后,会生成可视化的结不雅,结不雅存在cts/android-cts/results目次下,分别有xml格局和.zip打包格局。所以对安然募块的结不雅治理也是一样的。

结不雅页面琅绫擎只有两种结不雅,一是pass,表示测试经由过程,解释不存在马脚。二是fail,出现这种结不雅,可能原因有两种,一是测试情况有问题,二是存在马脚,可以看申报边上的具体显示。


  推荐阅读

  半路接手项目有多难?教你做个接盘侠高手!

【技巧沙龙】AI开辟者拭魅战营-7分钟打造1个定制技能。7月22号,我们等你一路! 【51CTO.com原创稿件】被无数烂尾项目熬煎的哈韩荡子,一向大年夜事 JavaEE 开辟,踩过的坑无数,承接别人>>>详细阅读


本文标题:【技术分享】使用CTS进行漏洞检测及原理浅析

地址:http://www.17bianji.com/lsqh/36294.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)