IPS有四种方法可以处理加密的流量:
- IPS可以充当TLS侦听代理,它成为TLS连接的中间人.这要求您将IPS软件创建的根证书添加到根信任存储区,否则您试图访问的每个加密网站都会出现连接错误。这允许IPS使用一些例外透明地监视加密通信量的内容。如果IPS软件不安全或不受信任,这可能会有风险,因为您将所有信任委托给它。
- IPS可以在不需要解密流量(例如源和目标IP和端口、基于流量分析的启发式方法、TCP报头信息、SNI等)的情况下,获取丢失信息并进行分析。这当然不是那么彻底的检查,但是它不依赖于IPS后面的每个客户端来安装它的自定义TLS证书,这可能是一个安全风险。
- 如果该软件使用加密连接与应用程序集成(如果IPS在TLS端点本身上运行,而不是在单独的硬件防火墙上运行,这是可能的),它可以在加密通信量已被解密后对其进行检查。这样做的好处是,在仍然能够读取加密通信量的同时不需要TLS拦截,但它的缺点是只处理受支持的应用程序,并且需要在端点上运行。
- 任何加密的通信都可以简单地被阻塞。这允许IPS读取大部分通信量,并否认它无法读取的内容,但却以牺牲可用性为代价。但是,未经授权的实体仍然可以使用软件无法理解的非标准或模糊加密协议进行通信。使用协议白名单也不是一个解决方案,因为可以通过普通HTTP在HTML页面的内容中发送加密的数据。
至于终止加密的会话,这很容易。TLS位于与TCP不同的层上(在OSI模型中,TLS是第6层,而TCP是第4层)。也就是说,TLS封装在TCP连接中,根本不加密与TCP相关的信息。为了拆除一个连接,IPS所要做的就是发送一个RST。一旦TCP连接死了,TLS会话也是如此。