app开发,如何让请求绕开fiddler、Charles等抓包工具

希望app的请求不会在iOS网络设置代理时被抓到数据包,同时还能正常请求。我发现手机设置代理之后,按键精灵的请求并没有走fiddler代理,但又能够正常请求,不知道是如何做到的

用socket写,fiddler和charles应该就抓不到了吧,只有wireshark可以抓到

谢谢狗神答复,有没有这方面APP开发好的开源,GCDAsyncSocket可以直接用上么?

自己发明个协议, 再加密

有好用的现成可以直接方便客户端服务端用的么?

用现成的不就更容易被别人认出来么

如果手机上设置了的代理,能够让iOS的某些请求不走代理服务器吗

那个只能设HTTP代理

如何做能教我么,我就是想说设备在网络里面设置了代理,但我的某个请求并不想不走代理

我想说我的钱都放在银行里,但是我做金融交易想绕过国家监管

HTTPS就可以了吧

我明白您的意思,狗神的意思我也清楚,即构造一个自己的socket通讯和协议。我现在想了解另外一个问题:如果在iOS设置里面设置了全局的proxy,在我的APP里某个请求不希望走全局proxy进行http请求,不知道有没有办法做到?希望大神指点

理论上可以。自己在socket层模拟http协议

终于找到不走全局proxy答案了,如果使用的是NSURLSession,把NSURLSessionConfiguration的connectionProxyDictionary属性设置成空字典,请求就不会走全局设置的proxy:
NSURLSessionConfiguration *configuration = [NSURLSessionConfiguration ephemeralSessionConfiguration];
configuration.connectionProxyDictionary = @{};

2 个赞

如果仅仅只是不想被fiddler、charles抓包到肉眼可观的详细的http请求,那么使用https不是更简单的方案?或者http请求里面的body自己加密?

https一样能被抓包工具抓包啊,App Store就是例子。body自己加密还得用白盒,系统的加密方法分分钟被逆向

可以可以666

如果使用的是NSURLRequest和NSURLConnection呢?

hook一下你这不就废了

!RemindMe 更新工程代码