android漏洞检测工具,安卓“超级拒绝服务漏洞”分析及自动检测工具
本帖最后由 公益 于 2015-1-7 18:14 编辑
作者:360捉虫猎手研究员 0xr0ot & Xbalien
“超级拒绝服务漏洞”是360安全研究人员近期发现的一个安卓通用型拒绝服务漏洞,恶意攻击者可能利用此漏洞让手机中的任意应用崩溃无法正常工作,几乎影响目前市面上所有的安卓APP应用。对此360捉虫猎手开发了一个自动化的检测工具,以便开发者自查修复。
“超级拒绝服务漏洞”检测工具:http://appscan.360.cn/crashcheck/
漏洞分析
0xr0ot和Xbalien交流所有可能导致应用拒绝服务的异常类型时,发现了一处通用的本地拒绝服务漏洞。该通用型本地拒绝服务可以造成大面积的app拒绝服务。
针对序列化对象而出现的拒绝服务主要是由于应用中使用了getSerializableExtra() 的API,由于应用开发者没有对传入的数据做异常判断,恶意应用可以通过传入畸形数据,导致应用本地拒绝服务。
漏洞应用代码片段:
比如XXX处传入BigInteger.valueOf(1)极有可能发生转型异常错误java.lang.ClassCastException。
但后来交流中发现,当传入一个自定义的序列化对象Serializable或getParcelable对象时
,接收Intent的目标组件在getSerializableExtra()、getParcelable()等会抛出类未定义的异常java.lang.NoClassDefFoundError。这是因为,当你给漏洞应用传入一个应用本身并没有的序列化类对象,在应用上下文中肯定是找不到这个类的。
自定义的序列化类很简单:
对应的攻击代码中XXX处传入new DataSchema(),我们发现传入的key不管是否与漏洞应用相同,都会抛出类未定义的异常。
随着测试的深入,我们通过logcat发现,在错误日志里不一定是getSerializableExtra()、getParcelable()导致的。然后我们就延伸了下,试着向getXXXExtra()传入我们自定义的序列化类对象,发现都会抛出类未定义的异常。
测试app代码片段:
接着我们测试了市面上大量主流应用,涵盖BAT等。发现这种方法可以通杀。我们开始觉得这个是android本身的问题,开始翻源代码。
最后当解析到Serializable对象时,由于加载不到类,抛出异常
但是回头想想,谷歌肯定不是认为这是android的漏洞,开发者只要加个try catch 捕获异常就可以了。
漏洞修复:
不管是get什么extra,只要是getXXXExtra(),加上try catch捕获异常即可。
漏洞检测:
为了方便开发者测试,360捉虫猎手发布了一个自动化的超级拒绝服务漏洞检测工具。下载地址:http://appscan.360.cn/crashcheck/
开发者可以通过以下方法进行排查:
1.监控java.lang.RuntimeException的错误日志
在adb shell下敲入
adb shell logcat | grep java.lang.RuntimeException
使用我们的检测工具测试各个组件,如果发现如下类型的报错日志,即存在超级拒绝服务漏洞
java.lang.RuntimeException: Parcelable encounteredClassNotFoundException reading a Serializable object (name = com.qihoo.intentfuzztester.extradata.DataSchema)
2. 一段真实存在漏洞的代码片段
虽然getExtras只接受Int类型数据,但putExtra打入一个序列化对象Serializable,程序仍然会崩溃,原因是getInt在底层仍然会对数据进行unparcel()的预处理,具体参考之前的漏洞分析。
参考:
http://androidxref.com/4.2.2_r1/ ... roid/os/Parcel.java
android漏洞检测工具,安卓“超级拒绝服务漏洞”分析及自动检测工具相关推荐
- android漏洞 锁屏,安卓再曝漏洞:谁都能轻松绕过锁屏密码
据<连线>杂志网络版报道,如果你以为设置几位数字作为锁屏密码就很安全,那么就太"轻敌"了.其实任何人都能在无需技巧和复杂操作的情况下,轻松绕过锁屏密码进入设备. 安卓再 ...
- android平台自动签名工具,功能超级强大的AI驱动自动一键安卓抠图工具,人物商品衣图章签名...
原标题:功能超级强大的AI驱动自动一键安卓抠图工具,人物商品衣图章签名 抠图是我们日常工作中经常遇到的一项工作,比方说扣个签名,扣个人像,或者给产品扣一张白底图,但是很多软件我们试过以后,发现都不太好 ...
- struts2漏洞监测_CVE20190233: S2060 拒绝服务漏洞分析
更多全球网络安全资讯尽在邑安全 0x01 漏洞简述 2020年8月11日,360CERT监测发现Apache官方发布了S2-060的风险通告,该漏洞编号为CVE-2019-0233,漏洞等级:中危.漏 ...
- linux ntp 'ntp_request.c'远程拒绝服务漏洞,NTP 'ntp_request.c'远程拒绝服务漏洞
NTP 'ntp_request.c'远程拒绝服务漏洞 发布日期:2013-12-30 更新日期:2014-01-09 受影响系统: NTP NTP 描述: --------------------- ...
- 最新系统漏洞--多款Cisco产品拒绝服务漏洞
最新系统漏洞2022年3月22日 受影响系统: Cisco TelePresence Collaboration Endpoint (CE) Software < 10.7.2 Cisco Ro ...
- 推荐的截图工具,超级好用的几款小工具
Snippaste:主要用于贴图 Faststone capture:小巧.全能,截图.录屏首选 Fireshot:网页留存好帮手 Snippaste:贴图神器 Snipaste 是一个免费.纯净.简 ...
- 【安全漏洞】CVE-2020-26567 DSR-250N 远程拒绝服务漏洞分析
漏洞信息 漏洞编号:CVE-2020-26567 漏洞详情:在路由器DSR-250N.DSR-500N路由器的固件版本3.17之前的固件中存在一个upgradeStatusReboot.cgi文件,未 ...
- python爬虫图片工具安卓版下载_python图片爬虫(图片爬虫工具) 1.1绿色版
python图片爬虫(图片爬虫工具)是一款专门为互联.it行业的小伙伴们打造的爬虫工具,可以帮大家对软件进行优化.seo的人一定会用的上哦,有兴趣的赶紧下载了哦!python图片爬虫代码如下: #-* ...
- android拒绝服务教程,[转帖][转帖]通用型安卓拒绝服务漏洞报告检测工具
作者:360捉虫猎手研究员 @0xr0ot & @Xbalien "超级拒绝服务漏洞"是近期发现的一个安卓通用型拒绝服务漏洞,恶意攻击者可能利用此漏洞让手机中的任意应用崩溃 ...
最新文章
- python 3.9 新特性 简介
- python小游戏源码-python 像素小鸟小游戏源码(flappybird)
- Spring Security构建Rest服务-0100-前言
- 编写高效的PyTorch代码技巧(下)
- java接口自动化(五) - 企业级代码管理工具Git的配置
- python导入mat文件_python读取并写入mat文件的方法
- vue怎么编辑已有视频_vue如何编辑视频 vue编辑视频方法
- SmartAdmin开源简单的门户网站管理系统
- ubuntu libxml2 使用
- 电压比较器工作原理 -----运放入门,重点!!!
- 【Windows 10 更新失败】Windows10 升级提示错误代码:0x80070020解决方案
- ubuntu18.04装coturn
- python合并音频Couldn‘t find ffprobe or avprobe解决办法
- Java程序性能优化-概述
- HTTPS网站提示“此网站无法提供安全连接”
- 【matlab】spm数据处理
- CGI跟FASTCGI区别
- ip地址掩码和位数对应关系表、子网掩码、网络地址、主机地址-yellowcong
- html常用特效,网页常用特效整理:初级篇-网页设计,HTML/CSS
- 网易服务器配置验证失败,验证失败 连接到icloud时出错怎么解决?