正向代理、反向代理以及透明代理与隐私保护-LMLPHP
最近无意间和同事聊到,连接公司 WiFi,到底会不会被监控?如果该热点已经是透明代理了,那么到底会不会泄露已经加密的隐私数据?

1 代理

对于大多数安全研究者来说,接触代理这一概念可能都是通过 Burpsuite 抓包完成的,通过在本地设置代理为 Brup 所在 IP 地址,并将证书导入相应设备,实现抓包。其实这一过程就是模拟了正向代理的设置过程。常见的代理类型包括正向代理、反向代理以及透明代理。

如果代理想查看 HTTPS 流量,一般而言,在代理结构中使用 HTTPS 取决于服务拦截连接并提供自己的证书,客户端必须接受该证书才能继续通信。除非设备已导入证书,否则此过程将被视为不安全的连接,并生成⚠警告信息。

  • 对于具有域控制器的环境,可以批量部署证书,这不是问题;但在较小的结构中,手动执行此操作会产生相当大的工作需求。
  • 并非每个应用程序都基于 HTTP 协议。这意味着数以千计的其他端口可以绕过代理。

1.1 正向代理

正向代理(Forward Proxy)也成为普通代理,是一种代理服务器,通过拦截流量将其转发到目标服务器。正向代理隐藏了客户端真实 IP 地址和位置信息,目标服务器只能看到代理服务器的相关信息。
正向代理、反向代理以及透明代理与隐私保护-LMLPHP

  • 抓包 - 最常见的 Burpsuite 抓包就是将你的电脑作为正向代理。
  • VPN - 正常情况下,我们是访问不了 Google 的,但是通过 VPN 是可以的。在访问 Google 时,先连上 VPN 服务器将我们的 IP 地址变成美国的 IP 地址,然后就可以顺利的访问了。
  • 防火墙 - 监管部门或者公司,指定员工电脑必须设置代理才能访问网络,此时正向代理服务器可以查看员工电脑上的所有流量。

1.2 反向代理

反向代理(Reverse Proxy)位于接受客户端请求的服务器前面。它类似于转发代理,但主要区别在于它确保没有客户端可以直接向服务器发出请求。所以服务器的 IP 地址对客户端是隐藏的,可以防止 DDoS 攻击。正向代理代理客户端,反向代理代理服务器。
正向代理、反向代理以及透明代理与隐私保护-LMLPHP

  • 负载平衡 - 此站点不是管理单个服务器的所有网络流量,而是将网络流量平均分布在服务器池中以处理对同一站点的请求。这将防止任何单个服务器因客户端请求而过载。
  • 缓存 - 反向代理可以缓存请求的内容以减少服务器上的负载。
  • 压缩 - 反向代理可以压缩内容以进行优化。
  • SSL 加密 - 可以配置反向代理来加密和解密 SSL 通信以保护请求和响应。

1.3 透明代理

透明代理(Transparent Proxy)和非透明代理最显著的区别是,正向代理会修改客户端发送的请求,并让客户端(例如 Web 浏览器)知道请求已更改。也就是说透明代理,对于客户端和服务端都是一个透明的存在,用户并没有感知。正向代理需要在客户端进行配置,透明代理是不需要的。基于上述特征,通常,我们建议对托管设备使用正向代理,对非托管设备使用透明代理。

例如,在咖啡店连接公共 WiFi,弹出登录页面(Portal),此时公共热点就充当了透明代理,即使后续登录热点,关闭该登录页面之后,此时你所有的流量仍然可能经过透明代理。但是透明代理只能监测 TCP 层流量,至于能否监测到应用层实际的明文信息,取决于是否进行了加密。

正向代理、反向代理以及透明代理与隐私保护-LMLPHP

1.4 案例分析

再回到最初的问题,中间人即代理到底能不能看到我们所有上网的流量数据,我们来举几个实际案例来分析。在如下几种情况下,流量还能被监控吗?

公司内部网络,员工需要在电脑上设置代理,才能够访问外部网络。

公司内部网络,员工没有设置代理,正常访问外部网络。

公司内部网络,员工没有设置代理,也没有安装公司软件。

简单总结一下

  • 能够监控流量不代表能够看到所有应用层明文信息
  • 透明代理只是客户端无感知,如果想监控所有 SSL 流量,仍然需要在客户端进行一定的操作,例如导入证书

正向代理、反向代理以及透明代理与隐私保护-LMLPHP

以上只是在技术层面分析代理监测流量和用户上网行为的可行性,然而实际情况却有所不同。

2 加密网络流量分析

根据《Cisco Encrypted Traffic Analytics White Paper 》的描述,出于性能和资源原因,采用批量解密、分析和重新加密的传统威胁检查并不总是实用或可行的。此外,它还会损害隐私和数据完整性。

正向代理、反向代理以及透明代理与隐私保护-LMLPHP

因此大家不用过于担心在企业工作时,泄露个人隐私。如果企业解密所有流量,用户会感觉不安。要想在不牺牲隐私的前提下保护网络环境安全,企业只能引入另一层,从策略层面上确定要解密什么流量。

在任何一天,没有人知道他们的数字业务中有多少是透明的,有多少是加密的。如果流量被加密,则通常进行加密以满足强制执行特定安全策略的合规性要求。对于企业的信息安全部门来说,如何确定 SSL 流量的解密比例,是一项具有挑战性的工作,当然也有很多安全公司提供完整的解决方案。 任何 IT 部门的主管都不会想要在每个点上解密这类流量,因为它将会导致大量性能损失。

3 总结

总体而言,万物互联的时代,企业有能力监控员工访问互联网留下的每一处痕迹,但是在比以往任何时候都注重个人隐私的今天,再加上代理解密 SSL 会消耗巨大资源,实际很多公司只会根据风控策略选择解密部分敏感数据。除了加强内部合规风险审查之外,另一方面,政府、企业更多的是需要考虑如何保护个人数据不被滥用,不被泄露,增强他们在民众间的公信力。

4 推荐文献

04-05 01:37