本帖最后由 素体 于 2017-9-21 10:42 编辑
目前Android应用代码漏洞扫描工具主要是在应用打包完成后,对应用进行解包扫描。而专门针对Android Studio中的源码进行漏洞扫描的工具则较少,且覆盖的漏洞种类不全,很难满足安全检测的需求,Android Code Arbiter就是为弥补上述缺陷而产生的。该工具依托FindBugs插件,根据Find Security Bugs为蓝本进行更改,以扩展jar包的形式在FindBugs上运行。 1、概述该文章主要是针对工具的使用进行详细的说明,关于工具原理的说明可参见另一篇文章:Android Code Arbiter原理详解,该文章详细叙述了工具的扫描原理。 工具源码地址,打包好的jar包地址:Android-Code-Arbiter-0.8.3.jar,工具的整体架构详见下图。  2、使用指南2.1 安装FindBugs插件由于该工具以FindBugs为依托,因此首先需要在Android Studio中安装FindBugs的插件。在Android Studio中找到Preferences/Plugins选项,在该复选框中通过上方搜索,或将FindBugs插件下载到本地(下载地址:FindBugs-IDEA),使用 Install plugin from disk进行安装。建议将插件下载到本地进行安装,通过搜索进行安装的插件可能版本比较陈旧,安装示意图如下所示。安装完成后需要重启Android Studio。  2.2 安装Android Code Arbiter插件完成FindBugs插件后,将会在Preferences/Other Settings中找到安装插件的选项FindBugs-IDEA,点击中测靠左的 + 号,在弹出的选框中选择 4.Install plugin from disk,在弹出的选框中选择下载的Android Code Arbiter的jar包,点击OK,此时会发现插件已经安装了,但是不要忘记点击右下角的Apply按钮,然后点击OK,并重启Android Studio完成插件安装。安装部分示意图,如下所示。  3、扫描完成安装后就可以开始扫描了,右键点击待扫描项目,在出现的复选框中找到FindBugs,在弹出的选项中选择Analyze Project Files,此时FindBugs便会自动开始对项目进行扫描了,扫描的步骤如下图所示。  4、扫描结果展示在Android Studio的下半部分就可以看到分析后的结果,在分析的问题中找到Android安全问题的选项,里面的内容就是插件的分析结果,如下图所示。  5、干扰清除5.1 清除干扰结果由于Findbugs本身包含一些代码质量的分析,有时会对查看分析结果造成干扰,此时可以设置检测条目,只保留Android安全问题的展示,设置方法如下: 在Preferences选框中找到FindBugs-IDEA选项,选择其Detector选框,只保留Find Security Bugs检测选项,设置如下图所示,这样检测结果只会出现Android相关安全问题的检测项。  5.2 清除检测结果检测的结果可能存在误报,让你看起来很不舒服,此时可以手动去除检测结果。 清除单个检测结果 清除单个检测结果只需左击该检测项左侧对于的BUG图案,在弹出的选框中点击clear即可,如下图所示: 
清除所有检测结果 清除所有检测结果,只需在下方的分析栏中点击左侧的 X 号即可,如下图所示: 
*本文作者:nightmarelee,转载请注明来自 FreeBuf.COM |