WebExtension 可以覆盖服务器 IP 地址吗?

时间:2021-03-18 19:33:15

标签: dns firefox-addon-webextensions

WebExtension 是否可以覆盖服务器的 IP 地址,或者修改/拦截 DNS 请求或覆盖 DNS 缓存?我正在尝试编写一个 WebExtension,为浏览器提供与 cURL's --resolve 相同的功能。

具体来说:

  • 连接到与 DNS 中列出的 IP 不同的 IP
  • 为用户希望解析的特定 NXDOMAIN 添加条目就好像它存在
  • 离线“解析”特定条目
  • 以软件定义的方式缓存或固定 DNS 条目,为即将到来的已知 DNS 中毒攻击做准备

简而言之:模拟 hosts 文件的效果,但没有管理权限/与系统的其余部分混淆。

1 个答案:

答案 0 :(得分:0)

是的,但(目前)并非微不足道

WebExtensions 无法直接重写这些响应,但它们可以使用带有 browser.proxy.onRequestProxyInfo.proxyDNS API 通过 SOCKS4 或 SOCKS5 代理重定向受影响域的 DNS 请求,该代理会破坏回复。

然而,您将需要一个 Native Host 组件(或 VPS 等)来实际运行此代理——至少在 Firefox adds support for WebExtension-run sockets(或提供一个内置的非套接字基于代理的 API)。

相关问题