我刚刚绕过了android应用程序上的SSL定位,但问题是应用程序不允许我在拦截代理上处理请求。上面写着你的网络出了问题,或者检查了你的互联网连接,这可能会很慢。在我没有绕过SSL钉扎之前,它曾经说过同样的话。
我的假设是,应用程序的编码方式使其能够快速地从服务器获得响应。因为我在拦截代理上玩弄请求,所以没有来自服务器的响应,因为请求仍然在我的代理上,没有发送到服务器。
有什么办法能逃出去吗?
发布于 2019-11-06 20:01:36
答案几乎肯定是坚实的:不。
客户端愿意等待直到收到来自服务器的响应的时间长度由客户端完全可配置。默认情况下,此应用程序使用的HTTP库设置时间较短,或者应用程序本身已将请求配置为具有较短的超时时间。有关示例,请参见这份文件,了解如何为具有CURL的请求设置最大等待时间。如果应用程序设置了最大超时时间(例如,2秒),那么在代理级别上没有什么可以让它等待更长时间的。
如果您在模拟器中运行该应用程序,您将拥有更多的控制权(因为您可以在执行任务时有效地暂停该应用程序),如果您将您的手机扎根,您可能有办法欺骗它,但是没有任何事情可以纯粹在代理级别上进行。
您的唯一选择将是找出如何快速修改响应,或者通过在代理中预先设置响应,或者通过某种脚本选项。
此外,在现代网络世界中,作为一种普遍的经验法则,一分钟是一个很长的时间。根据我的经验,即使是2秒也是一个缓慢的反应。我希望大多数客户端的默认超时以秒为单位,而不是以分钟为单位。一个为高性能而构建的移动应用程序可能会使用更小的超时,如果开发人员知道他们的API端点会很快返回,并且不希望用户不得不面对滞后的体验。
https://security.stackexchange.com/questions/220799
复制相似问题