首页 > 关于效率源 > 新闻和事件 > 技术视界
【技术视界】巧用抓包工具,轻松捕获智能手机应用云端数据(内含详细步骤)
2019年07月12日

随着网络的飞速发展,为了保障数据隐私与安全,大部分应用软件厂商不再将所有数据存储在本地,而是采取从服务器上直接请求数据的方式。

而获取云端数据,不仅可以获取到账户的本地存储数据,也可以获取到用户存储在服务器供历史查阅的数据,信息更加全面,便于完成犯罪取证溯源过程中手机APP数据分析工作,为非接触类案件的调查取证工作带来更多的思路和线索。    

应用数据获取手段层出不穷,本文我们将以“获取滴滴账户登录服务器地址”为实际案例,介绍一种利用代理软件捕获数据包的方式和其间可能遇到的问题解决方案,以抛砖引玉,和大家学习交流。

抓包工具

工具:Charles
一款兼具实用性与易用性的抓包工具
支持MacOS、Linux、Windows三大系统
用于分析手机APP的数据包,从而辅助完成APP数据分析工作

Charles抓包原理

Charles本身是一个协议代理工具,如果只是普通的HTTP请求,由于数据本身没经过再次加密,因此作为中间代理可以知道所有客户端发送到服务端的请求内容以及服务端返回给客户端的数据内容,这也是抓包工具能够将数据传输内容直接展现出来的原因。

对于HTTPS请求,传输的数据都已经经过了加密,代理工具如果没有任何操作将无法直接获取到其中的内容。为了实现这个过程的数据获取,Charles需要做的事情是对客户端伪装服务端,对服务端伪装客户端,具体为:

1)截获真实客户端的HTTPS请求,伪装客户端向真实服务端发送HTTPS请求;
2)接受真实服务器响应,用Charles自己的证书伪装服务端向真实客户端发送数据内容。

抓包操作准备

设备
一台可正常连接无线WIF的电脑(注意由于疏忽操作步骤亦或是终端安全性过高伪装失败导致捕获解析内容失败)
一部Android手机
一根Android数据线

软件
Charles

滴滴登录信息获取

下面我们就以捕捉滴滴APP登录信息为例,详细介绍利用Charles抓包工具在Windows电脑上捕获手机应用流量数据的方法。

电脑端配置

1、安装charles应用
搜索下载并安装charles 抓包软件(官网地址:https://www.charlesproxy.com/)。连接至稳定WiFi,手机也需要连接至相同WiFi。

2、环境配置,需要关闭防火墙
控制面板—>系统和安全—>Windows 防火墙—>自定义设置(详细步骤见如下组图)

1.控制面板

1562896140798000873.jpg

2.系统和安全

1562896199205000783.jpg

3.Windows 防火墙

1562896373926054748.jpg

4.自定义设置

1562896406848012362.jpg

代理软件Charles配置

如果勾选了Proxy - Windows Proxy 的话,那么就会将电脑上的抓包请求也抓取到;如果只抓手机的话,可以取消勾选该栏。

A5.jpg

1、http代理设置:端口自定义,默认8888

1562896554819086123.jpg

2、SSL代理

1562896587194000931.jpg

3、安装证书:点击下图标记“1”所示位置,安装证书至受信任的根证书颁发机构。

1562896613851000461.jpg

具体安装步骤如下:
1

A9.jpg

2

1562896664101036922.jpg

3

A11.jpg

4、安装完成后可以在证书管理中心确认安装详情。

1562896722493047150.jpg

5、点击图示标记“2”,弹框所示的IP、端口及网址都将应用于手机端的配置。

1562896751384065878.jpg

手机端配置

1、手机代理配置,连接至PC相同WiFi,选择修改网络,高级设置中的代理设置根据上一步骤弹框所示决定。

1562896822775030782.png

2、连接成功后,PC端会显示下图弹框,点击Allow ,允许即可。(如果误点Deny,请重启Charles。)

A18.jpg

3、手机浏览器访问Charles服务器,下载安装信任证书。

手机浏览器访问网址chls.pro/ssl ,会弹出证书安装说明,输入名称并且保存即可。(部分手机可能会有网络被监控的风险警告提示。)

1562896884557047304.png

1562896884745049912.png

4、手机开启应用进行登录操作,点击charles页面的小圆点开始进行捕获查看分析。扫帚形状是用来清除捕获记录的,这个可以用来清除我们需要捕获的步骤数据之前产生的数据,将捕获数据精确到操作步骤,也避免了更多的干扰项。

A20.jpg

*将操作精确到登录点击的那一步,使用小扫帚清除之前的捕获数据,先点击开始捕获再手机点击登录,再登陆成功后点击停止捕获,该步骤可以有效减少干扰项。

我们可以看到该应用通过短信验证码的登录请求信息,如下图:

其请求网址为https://epassport.马赛克.com.cn/passport/login/v5/signInByCode

1562896934511052075.jpg

1)点击Request:可查看其发送的请求的参数信息。

可以看到将电话号码和短信验证码以及其他应用信息打包发送至服务器请求登录。

1562896989762055186.jpg

2)点击Response:可查看该请求返回的数据信息。

可以看到该请求返回了结果码,电话号码及token信息等数据。

A23.jpg

注意事项

1、电脑端必须关闭防火墙,否则配置完成后,手机极大可能无法联网。因为代理软件无法进行正常的代理转发。

2、电脑端安装证书路径必须在“受信任的根目录下”,否则捕获异常。

3、手机与电脑必须在同一网段下(连接同一个wifi),如果在手机浏览器安装证书时无法联网的情况下,请检查两个终端的wifi连接情况,因为在网络不稳定的情况下,可能会自动断开当前连接并连接至新网络(可以清空当前所有无线网络连接信息以避免该现象发生)。

4、https协议由于其加密本质,在捕获流量包时手机端也必须安装信任证书,否则捕获的包将以unknown的形式展示,无法正常查看内部信息。

5、捕获手机流量包时,电脑端的charles必须处于开启状态,否则无法进行转发,手机也不能正常联网。

6、在不需要捕获数据包时或是电脑端charles关闭的状态下,正常使用手机需要关闭代理,可以选择断开当前wifi或是修改关闭wifi高级配置中的代理设置。

7、抓包结束后,为保障电脑和手机数据安全,建议重新开启电脑防火墙和移除手机端的Charles信任证书。

本文介绍了一种利用charles抓包工具捕获手机Android端的应用流量的方法,可以为非接触类案件的调查取证工作带来更多的思路和线索。

如对文中的操作、描述有任何疑问,或者有任何取证需求,欢迎拨打热线电话028-85211099或直接在微信公众号给我们留言,我们会尽快联系您。

本期投稿:朱星海
本期编辑:源妹


【拓展阅读】

【技术视界】语音文件如何进行数据恢复?

【技术视界】如何利用网络取证之流量分析的方式,还原恶意攻击入侵的全过程?

【新品发布】大数据时代的全新取证工作站

【好消息】效率源免费服务来袭,支持固态硬盘100余种

【新品发布】业内首款数据库取证分析产品上线,邀你免费体验