我在这里遇到了一个概念上的障碍,老实说,在WAFs或防火墙方面没有太多的经验。(我确实通过这个很好的解释提高了对防火墙的基本理解。)
因此,当客户端启动到服务器的HTTPS连接时,SSL终止会在流量通过WAF发送到目的地之前发生(在典型情况下)。现在,WAF (我的理解是)只是一个反向代理,它具有检查HTTP请求消息和执行某些操作的附加功能(可能在其上配置了处理请求的规则)。
我感到困惑的关键是以下几点:
WAF知道HTTP连接,来自目的地的响应最终也通过相同的连接(也就是通过WAF )发送回客户端。
所以我的问题是:
虽然我理解典型的WAF设计仅用于查看HTTP请求消息并对其采取行动,但它不能用于检查响应(该响应已经通过发出请求的同一HTTP连接)并对响应本身进行某些转换/处理吗?
发布于 2023-03-04 14:07:08
是。
WAF位于客户端和服务器之间,如下所示:
client <-- tls --> WAF <-- tls --> web server 因此,客户端的TLS连接是到WAF的。换句话说,WAF基本上是介于客户机和web服务器之间的中间人(MITM)。因此,WAF可以执行任何MITM能做的事,这包括修改来自web服务器的响应。
发布于 2023-03-04 13:30:17
有些公司会这么做。例如,一些托管提供商可能会在托管网站的内容中插入广告。一些公司用状态代码>= 500替换任何响应,用500或503替换响应体,用标准响应体替换响应体。
严格来说你也能做到。但是先想想,如果你真的应该这么做的话。
如果修改响应,则可以破坏应用程序逻辑。通常,这意味着您正在尝试解决后端应用程序应该解决的问题。如果应用程序开发人员有意设置特定的响应,并且您试图修改它,他们将找到另一种方法来实现他们的目标。而不是解决这个问题可能会导致隐藏问题。
https://security.stackexchange.com/questions/268910
复制相似问题