欢迎来到 黑吧安全网 聚焦网络安全前沿资讯,精华内容,交流技术心得!

阿里聚安全扫描器之本地拒绝服务检测详解

来源:本站整理 作者:伊樵@阿里聚安全 时间:2016-10-25 TAG: 我要投稿

很多开发者没有意识到,如上使用registerReceiver()方法注册的是全局BroadcastReceiver,和静态注册BroadcastReceiver android:exported属性为true性质一样,如果没有指定权限访问控制(permission参数),可以被任意外部应用访问,向其传递Intent,根据具体情况产生的危害可能不同,一种比较普遍的情况是容易产生本地拒绝服务漏洞。

动态注册BroadcastReceiver导致导出的Receiver这种情况非常少被大家注意,现有的一些安全检测工具、扫描器都不能发现动态注册的BroadcastReceiver。在此阶段,动态注册BroadcastReceiver隐藏在所有代码中,在应用的任何地方都可能出现,需要扫描器全局分析应用的代码找出关键函数registerReceiver,还要找出其IntentFilter所设置的Action和Receiver的权限设置,现在一般一个普通的正常Android应用都有几十M的大小,反编译成smali代码会更多,扫描器遇到的挑战主要是查找的时间和空间挑战,还有多个参数查找的准确性。目前业界只有阿里聚安全的扫描器有准确扫描动态注册BroadcastReceiver导致的本地拒绝服务的能力。

通过阿里聚安全的漏洞扫描器对一些样本进行了检测,也发现了不少动态注册BroadcastReceiver导致的本地拒绝服务攻击。

三、本地拒绝服务漏洞现状

为了了解本地拒绝服务漏洞的现状,阿里聚安全的应用漏洞扫描器针对国内外的各行业主要APP进行了扫描,共扫描了三百多款APP。

国内行业主要是通过采集国内某应用市场的APP,我们采集了各个行业的TOP APP总共有151个,发现拒绝服务漏洞的总个数为970个,平均个数为6.4个,其中影音播放类的APP本地拒绝服务个数最多,健康类安全类和运营商类比较少、游戏类的最少。

国内行业APP本地拒绝服务漏洞情况:

柱状图是国内各个行业APP按本地拒绝服务漏洞平均个数排序:

下图是各个组件引起的本地拒绝服务的数量、占比情况:

国内行业动态注册BroadcastReceiver导致的本地拒绝服务漏洞有247个,约占拒绝服务漏洞总数的25%,比静态注册BroadcastReceiver的要多不少:

国外行业主要是通过采集Google Play上的APP,我们也采集了各个行业的TOP APP总共有177个,发现拒绝服务漏洞的总个数是649个,平均漏洞个数为3.7个,平均漏洞个数最多的是办公类应用,最少的和国内行业一样是游戏。

国外行业APP本地拒绝服务漏洞情况:

国外各个行业的应用本地拒绝服务漏洞平均个数排序:

各个组件引起的本地拒绝服务的数量、占比情况:

国外行业动态注册BroadcastReceiver导致的本地拒绝服务漏洞有147个,约占拒绝服务漏洞总数的23%,比国内的情况略少,可见动态注册BroadcastReceiver导致的本地拒绝服务都没有引起大家的重视。

总体上来看,本地拒绝服务风险因为具有Android版本无关性,漏洞本身对APP影响也不大,只与应用开发者是否注意、重视有关,所以现在还经常在应用中出现。在各大厂商的安全应急响应中心评级为低危漏洞,也有厂商不收此类漏洞,但是这些攻击面依然存在,如果深入分析这些组件,有的不仅仅是引发本地拒绝服务风险,必须遵循最小权限原则,没有必要导出的组件不要导出。

四、阿里聚安全对开发者建议

(1)阿里聚安全的漏洞扫描器已经具备覆盖动态注册Receiver产生的拒绝服务漏洞(目前,还没发现友商的漏洞扫描器有这样的能力),使用阿里聚安全的漏洞扫描器进行扫描,可及时发现这些漏洞。 

(2)不必要导出的组件将其exported属性显式的设为“false”,这样可以减少应用的攻击面。 

(3)导出的组件在getIntent()后,Intent.getXXXExtra()时用try…catch做好异常处理。 

(4)在导出的组件设置好权限控制,不让任意第三方应用访问。 

(5)对于动态注册的BroadcastReceiver,尽量少用registerReceiver()方法,如果只在本应用内通信,改用LocalBroadcastManager的registerReceiver()进行本地注册,如果必须导出给外部应用,在使用registerReceiver()时要指定好相应的访问权限。

五、参考

1、Android APP通用型拒绝服务漏洞分析报告,http://blogs.360.cn/blog/android-app%E9%80%9A%E7%94%A8%E5%9E%8B%E6%8B%92%E7%BB%9D%E6%9C%8D%E5%8A%A1%E6%BC%8F%E6%B4%9E%E5%88%86%E6%9E%90%E6%8A%A5%E5%91%8A/ 

上一页  [1] [2] [3]  下一页

【声明】:黑吧安全网(http://www.myhack58.com)登载此文出于传递更多信息之目的,并不代表本站赞同其观点和对其真实性负责,仅适于网络安全技术爱好者学习研究使用,学习中请遵循国家相关法律法规。如有问题请联系我们,联系邮箱admin@myhack58.com,我们会在最短的时间内进行处理。
  • 最新更新
    • 相关阅读
      • 本类热门
        • 最近下载