使用burpsuite(fiddle、charles)对Flutter应用抓包解决方法

1、按照使用教程配置后,使用flutter开发的app发起网络请求,发现burpsuite(filddle等抓包工具)无法抓取请求包。开始一度怀疑是burpsuite或者网络配置不正确,后面通过打开其它原生应用程序,发起网络请求,发现可以正常抓取请求包。
我的flutter应用程序中,网络请求使用的 dio 框架。经查阅dio的文档,发现可以设置http代理。

使用burpsuite(fiddle、charles)对Flutter应用抓包解决方法_第1张图片

2、然后找到代码中实例化dio的地方,配置http代理。

比如我的burpsuite的代理ip和端口为:172.16.2.176:8888

    _dio.onHttpClientCreate = (HttpClient client) {
      client.findProxy = (uri) {
        //proxy all request to localhost:8888
        return "PROXY 172.16.2.176:8888";
      };
      // 你也可以自己创建一个新的HttpClient实例返回。
      // return new HttpClient(SecurityContext);
    };

3、修改代码成功后,重新运行flutter程序并且发起请求,burpsuite可以正常请求到数据包。

 

你可能感兴趣的:(Web渗透测试,flutter,ios)