主要分为三个部分,第一部分抓包是很重要的,第二部分是协议,第三部分是逆向(讲的不会太多,介绍根据使用不介绍原理),
关于反编译,app就分为安卓和苹果系统,苹果系统的源码比较封闭,所以大部分演示的但是安卓系统的。
思路:我们会反编译提取url,介绍反编译提取安卓文件或者apk文件的,安装文件里面涉及到的url,apk里面又网站 ,或者涉及到http,https这种协议的网站域名。第二种形式是抓包,这种是建立在反编译逆向层面去测试,不采用我们就安装和apk,app之后,采用抓包形式获取app里面涉及到的url或者网站信息,由于它涉及到http,url或是网站,我们就可以从这里转向web,进行web应用方法对他进行测试。
获取url之后可以进行web应用方法的测试,在实际情况下两个方法都要尝试。
如果不存在url等信息,或者用的其他协议,这种情况下就要需采用网络接口抓包进行数据获取,因为大部分协议是抓取的http和https的协议,但是有部分app不用这个协议,这种情况下有些抓包工具就没有办法,这个时候我们就需要采用网络接口抓包工具来抓取,什么协议的数据都抓,思路就是转为其他协议。
app->WEB、app->其他(其他协议)、app->逆向(逆向里面去分析数据)
http/https协议抓包
推荐的工具,burpsuite,他的抓包功能不是最好的,但是他是一个集成化的工具有很多功能,只抓包的话她下面三款更换一些,
其他协议就采用,Wireshark,全都抓。
##抓包工具WEB协议面使用说明
#burpsuite抓包
打开逍遥模拟器,先配置一下网络选项方便burp抓包,模拟的网络设置好要和本机的ip一致
就是这个192.168.0.101,如果设置为127.0.0.1,他会直接发送到安卓机上不经过本机,所以没有办法抓包,
这个历史数据会记录所有的数据包,
英文版我实在看不懂,所以我选择汉化
打开测试app,挨个点开让他出现数据
再去看历史记录
这就是一个个的网站,
然后产生出来很多数据包之后,筛选一下
这个老师工具花屏了,就是筛选一下id,之后因为已经知道了域名,所以直接在浏览器访问
既然来到了网站,现在就进入到了web应用测试。都点开看看,就发现了一个可能存在sql注入的网站。
现在开始测试,加一个单引号
报错了,就有可能存在sql注入,尝试一下注入
被waf拦截了,这是我们对这方面app测试思路,看上去是个app,实际就是网站;
这个网站还有别的漏洞
比如这个逻辑漏洞,这个可以重复验证的。这个burp工具就演示到这里
#charles抓包演示
先配置好信息
代理设置就配置的监听8888端口,burp的监控给关闭掉,避免冲突,
我们打开测试app,多点开一些东西,查看数据包
这个工具他点击的东西产生了那个数据包,拿一条数据就会亮一下,然后我们根据亮的最多次的数据,判断最可能那个数据的网站是app对应的网站
在访问一些刚刚那个直播的app,点开它亮的最多的那条打开看,网站架构都出来了,
这就是给网站。
打开第二个测试app展示出来的网站发现打不开,这是一种常见的情况,是因为这个app里面涉及的网站有相应的检测,就是只要app和手机的客户端才能对它进行访问,客户端和手机浏览器有区别,首先就是内核不一样,手机的就是苹果和安卓,数据包也就明显的不一样,这也是为什么有些网站手机和电脑打开不一样,是有检测客户端。
这个就是发现电脑端访问,不让你看到信息/。
换到burp重复一下上面的操作,对比一下模拟器和电脑访问同一个的数据包区别
一看浏览器信息,上面就我看不懂,下面介绍安卓什么,很明显的区别,
我们可以访问网站的时候抓住数据包,然后把数据包替换为手机请求的数据包,在发送出去,绕过,或者替换一些手机请求包的信息,在发送出去就能访问网站了。但不能排除一些检测之类的影响。
这时候就产生一个问题,修改数据包访问,如何进行漏洞扫描
就修改扫描工具设置里面的扫描的http头部,因为扫描工具里面有指向头部,扫描漏洞要先确保工具扫描这个网站,这种设置的太多了;我们就换一个工具,xray用被动扫描。
ss