有没有使用 URL 过滤阻止 HTTPS 流量的解决方案?

信息安全 网络
2021-08-18 15:48:31

URL 过滤可以阻止 HTTP 流量,但不能阻止 Internet Explorer 中的 HTTPS 流量。例如,网站http://www.facebook.com被 URL 过滤阻止,而https://www.facebook.com不能被阻止。在 Internet Explorer 中进行 InPrivate 浏览时,您也无法阻止 HTTPS 流量。

有没有使用 URL 过滤阻止 HTTPS 流量的解决方案?

4个回答

从 SSL 外部,您只能看到服务器名称(客户端在 SSL 握手的早期阶段将其作为Server Name Indication扩展的一部分发送;并且它也出现在服务器发送的证书中);这可能足以过滤掉一些“URL”。例如,在您的示例中,您可以看到连接是 SSL 和 for www.facebook.com; 如果你想屏蔽整个 Facebook,这些信息就足够了;不需要实际的 URL。

如果你想要更细粒度的东西,那么你需要阅读受 SSL 保护的 URL 本身。为此,您必须以某种方式破坏SSL。有一些工具可以对 SSL 进行中间人攻击(它们依赖于在客户端系统中安装流氓、过滤器控制的根 CA)。一个著名的商业工具是Blue Coat 的 ProxySG还有开源解决方案在任何情况下,这些系统都需要对客户端系统的某种特权访问(额外的根 CA 安装);精通计算机的用户会知道它。也可以说,这些工具“打破了用户对隐私的期望”,虽然它们在技术上是有效的,它们还可能在工作场所引发有毒的反抗气氛。小心使用。

我知道市场上的一些产品能够做到这一点或类似的。

他们使用的方法是:

  • 对于 URL 匹配,必须是中间人。一些防火墙和入侵防御系统出于管理(控制)目的而支持这一点。在这种情况下,他们能够像通常的 http 一样过滤流量(具有显着的性能损失)。
  • 如果您只想匹配站点而不是匹配确切的 URL,则可以在 SSL/TLS 连接建立中使用证书进行过滤。这将有效地允许过滤例如整个 Facebook。

通常正常的内容过滤会阻止 http,但不会阻止 https。可以做一些其他的事情来阻止给定的 https 站点。1. 您可以为给定站点 IP 地址的 https 创建防火墙规则。2. 在防火墙中添加一条 FQDN DNS 记录,将 *.facebook.com 指向 0.0.0.0。

不是最好的解决方案,但是一旦 Web 数据被解密并准备好在浏览器中呈现,像 Script Blocker for Chrome 这样的浏览器插件可以在 https/SSL 之后过滤 URL/域。