如何在Node.js中检测HTTP代理的存在?

时间:2019-05-21 03:28:36

标签: javascript node.js fiddler http-proxy charles-proxy

我希望能够检测到何时在Node.js的计算机(例如Fiddler或Charles)上打开了此类程序/代理。

程序会更改您的本地IP地址吗,我只需要检测它即可?如果是这种情况,则不确定应使用什么合适的软件包。谢谢。

谢谢

1 个答案:

答案 0 :(得分:0)

如果是Charles Proxy或Fiddler,它们将在本地计算机上运行并且拦截是透明的-因此IP都不会更改,也不会添加HTTP标头来揭示它们的存在。由于这些工具用于安全性测试,因此由于被测软件可以检测到它们并表现出不同的行为,因此不利于宣布它们的存在。

Squid或负载平衡器设置之类的普通Web代理应添加以下HTTP标头之一:

  • Via例如Via: 1.1 vegur
  • X-Forwarded-For例如X-Forwarded-For: 192.168.1.10

因此,对于像Charles或Fiddler这样的本地MITM代理,您将无法检测到它们的存在,但是常规代理应通过某些HTTP标头使自己知道。