• 安卓APP测试之使用Burp Suite实现HTTPS抓包方法


    APP的测试重点小部分在APP本身,大部分还是在网络通信上(单机版除外)。所以在安卓APP测试过程中,网络抓包非常重要,一般来说,app开发会采用HTTP协议、Websocket、socket协议,一般来说,HTTP协议最多,Websocket是后起之秀,socket最少,而针对HTTP和websocket,Burp Suite工具是最适合不过的工具了。但是在遇到了app使用SSL或TLS加密传输(https)的时候,由于证书不被信任,直接导致网络通信终端,抓包失败。本文介绍如何使用Burp suite抓取https包。

    Burp抓取安卓APP的HTTPS流量

    一、工具准备

    安卓手机一部(Nexus4,原生安卓,未root)

    笔记本(带有无线网卡,可以创建wifi热点)

    wifi热点软件/同一局域网

    Burp suite软件(抓取HTTP、HTTPS、Websocket包)

    二、抓包原理

    通过Burp suite代理方式,将手机的流量通过Burp suite;导出Burp Suite根证书(PortSwiggerCA.crt)并导入到手机中,手机的HTTPS流量将可以通过Burp suite代理。

    三、配置过程1. 保证网络能进行代理

    因为Burp suite是采用代理抓包方式的,所以要保证网络能够进行代理,不能被防火墙等阻隔,最好的方式是进行主机虚拟Wifi热点。

    主机虚拟无线热点

    2. Burp suite配置

    Burp suite的Proxy项目中配置代理IP及端口。

    Burp Suite添加代理

     

    这里也可以为Burp Suite添加多个代理

    Burp suite添加代理

    安卓方法
    安卓方法
     
     

    3. 导出Burp Suite根证书

    在火狐浏览器中,使用Burp suite代理随意打开一个https链接,获取相关证书,并导出:

    Firefox抓包并查看ssl证书

    直接导出证书:

    导出Burp Suite的根证书

    通过hfs.exe等工具,将导出的根证书下载到手机中,并在设置-> 安全 -> 从存储设备安装(证书) 选项中安装Burp Suite根证书:

    安卓手机导入证书

    4. 手机连接Wifi热点,并设置代理:

    手机连接我们刚设置好的Wifi热点,并在高级选项中配置代理:

    安卓配置代理

    通过以上配置,app中的HTTP流量就可以直接走Burp Suite了:

    8

    四、总结:

    安卓APP更多的都是采用HTTP通信的,少数采用HTTPS的,这也是国内网络安全问题的现状。毕竟不加密的HTTP通信节约带宽和系统资源,更多人直接采用非SSL或者TLS加密的HTTP通信,这也是导致网络嗅探如此流行、简单的原因。https的通信需要信任公私钥,所以只要有了密钥或者根证书,抓包就非常容易,这也直接告诉我们,如果访问正常网站,突然弹出让我们信任证书的时候,这时也许就是我们正在被嗅探。。。。。

  • 相关阅读:
    WPF中的句柄
    WPF中的焦点问题
    Vue项目(一):VSCode环境开发Vue程序以及其中遇到的问题
    C#实现三种方式的模拟按键
    c++温故之结构体写法
    WPF搜索框
    vue框架学习
    Git连接失败问题解决方案
    单击双击冲突解决 小程序
    uniapp 微信小程序 wx.createAnimation 实现向上滚动弹幕
  • 原文地址:https://www.cnblogs.com/hookjoy/p/5447988.html
Copyright © 2020-2023  润新知