如果你为Android设备设置代理服务器,那么它们会适用于设备上的所有应用程序,包括浏览器吗?还是仅适用于浏览器?
我之所以问这个问题,是因为当你要更改Android设备上的代理设置时,会出现以下信息,让我感到困惑:
"HTTP proxy use by browser but may not be used by other applications"
不,它们并非全局应用,没有 root 权限就无法强制所有应用程序使用代理。你发现的信息之所以用这种方式表述,是因为由应用程序创建者尊重代理设置并使用它们或者做错事情并忽略它们。
如果您恰好拥有 root 权限,可以使用这个应用将代理设置应用于所有应用程序和活动。
这不是默认行为的原因是它可能会带来一些安全风险。如果所有流量都可以被重定向,用户可能会通过某些不良代理服务器发送全部流量,因此它们仅在应用程序明确要求时才允许应用程序使用代理。
试试 postern
。它将所有流量重定向到本地VPN并支持:
https://play.google.com/store/apps/details?id=com.tunnelworkshop.postern
不确定哪些应用程序会或不会使用代理。我有几个安卓应用程序,它们忽略了代理。
我通过使用一个名为drony的应用程序来解决这个问题,该应用程序不需要对设备进行root处理。我有几个应用程序,它们都可以愉快地代理到drony,而无需对应用程序进行任何操作。然后,我将drony设置为代理到我本地机器上的fiddler。设置说明都在这里:
在不进行root的情况下,在android设备上设置全局代理!正如朱利安所说,一些应用程序或应用程序内的SDK不具备代理感知能力。
我曾亲身经历过这种情况。有一个SDK不显示我的Burp工具,我无法理解原因。最终我发现它不具备代理感知功能。
如朱利安所说,您可以使用Android应用程序来解决此问题。另一种选择是我使用的隐身代理。请查看:https://portswigger.net/burp/help/proxy_options_invisible.html
我猜许多用户会在这里寻找捕获和分析安卓应用程序流量的方法,尽管OP没有明确提到。所以请原谅我的回答只有50%符合问题:
我发现https://emanuele-f.github.io/PCAPdroid是一个很好的工具,可以捕获和分析应用程序流量。它是开源的,仍然可以在Play商店中获取,并且仍在积极发展(截至2023年)。
它不需要任何root权限,并且有方法甚至可以窥视加密流量(TLS)。您可以将其安装在要分析的应用程序相同的Android设备上。
如果您通过Wifi->设置->代理(手动)
更改代理设置,如设备所示,显然不可能在所有应用程序中应用。尽管如此,使用Drony应用程序,无需对设备进行root,也可以实现这一结果。
Drony一直更新至今天(2023年1月23日),甚至允许按需要过滤URL。
localhost
,端口设置为一个空闲端口,例如2000
。2000
;
您可以在“筛选器”选项卡中检查筛选后的连接,在“连接”选项卡中检查所有连接。
祝你们好运!
这不正确。几乎所有的应用程序都会遵守HTTP代理设置。Xamarin.Android通常不会,但您可以在WebClient中覆盖此设置。
附注:如果失败了,您可以在所有情况下使用Wireshark来完成此操作。