您的位置: 网界网 > 网络学院-安全 > 正文

移动APP安全在渗透测试中的应用(1)

2014年08月07日 16:14:42 | 作者:佚名 | 来源:51CTO | 查看本文手机版

摘要:副标题#e# 这篇文章从去年很早就想写,一直没时间,刚好过段时间有沙龙是讲这方面的东西,整理了下就有了下文。 498)this.width=498;' onmousewheel = 'javascript:return big(this)' border="0" alt="移动APP安全在渗透测试...

标签
渗透测试
APP安全
移动APP

这篇文章从去年很早就想写,一直没时间,刚好过段时间有沙龙是讲这方面的东西,整理了下就有了下文。

移动APP安全在渗透测试中的应用

以往安全爱好者研究的往往是app的本地安全,比如远控、应用破解、信息窃取等等,大多人还没有关注到app服务端的安全问题,于是在这块的安全漏洞非常多。

移动APP大多通过web api服务的方式跟服务端交互,这种模式把移动安全跟web安全绑在一起。移动app以web服务的方式跟服务端交互,服务器端也是一个展示信息的网站,常见的web漏洞在这也存在,比如说SQL注入、文件上传、中间件/server漏洞等,但是由于部分app不是直接嵌入网页在app中,而是使用的api接口返回josn数据,导致扫描器爬虫无法爬取链接。

下图是抓的糗事百科糗事列表,contet字段内容与我无关 -_-|||

移动APP安全在渗透测试中的应用

那么我尝试去找app服务端的漏洞,目前想到的两种方法:

1.反编译APP 
2.http[s]代理抓包

那么有人应该会提出问题,这两种方式拿到的链接都是零零散散的,也不好找漏洞啊,我这边的利用方式是把所有抓取的链接直接提交任务到多引擎web漏洞扫描器,扫描器可以批量扫SQL注入等等,其实除了这些漏洞,还有很多可以利用的信息。

一、反编译APP

有两种反编译方式,dex2jar和apktool,两个工具反编译的效果是不一样的,dex2jar反编译出java源代码,apktool反编译出来的是java汇编代码。

1. dex2jar反编译

工具:dex2jar jdgui

方法:

a. 修改apk为zip扩展名

 移动APP安全在渗透测试中的应用

b. 解压出classes.dex文件

c.使用dex2jar反编译(dex2jar.bat classes.dex)

移动APP安全在渗透测试中的应用

最后反编译出来的源码如下图。虽然部分类被配置proguard.cfg 混淆了,但是还是可以利用的。

移动APP安全在渗透测试中的应用

2. apktool反编译

工具:apktool

这个工具比较简单,直接(apktool d apkfile)就可以反编译apk文件,反编译出来的东西为smali反汇编代码、res资源文件、assets配置文件、lib库文件,我们可以直接搜索smali文件和资源文件来查找链接等。

移动APP安全在渗透测试中的应用

利用app查找网站真实IP

除了app服务端的漏洞,还有一个比较好玩的利用方式,通过收集app里面的子域名ip来寻找目标网站的真实IP,根据经验,大多app的接口都没有使用cdn等服务。

移动APP安全在渗透测试中的应用

糗事百科真实IP

移动APP安全在渗透测试中的应用

12
[责任编辑:孙可 sun_ke@cnw.com.cn]