服务器容器漏洞-nginx配置漏洞CRLF

发布时间 2023-11-01 03:36:22作者: 挖洞404

1、介绍

该漏洞是由于nginx配置导致的漏洞,所以无关nginx的版本。

由于配置中使用了$uri变量,该变量为请求url的path部分,默认会进行url解码操作。导致变量嵌入响应头部字段时,出现CRLF响应拆分漏洞。可以进行url重定向,设置cookie或者写入脚本。

2、业务场景

  • 控制paylaod必须是包含在path中,但是任意设置又会导致404。
  • 导致该漏洞,必然要求将$uri写入响应头部中。有两种机制。
  • 一是重定向跳转,$uri作为Location的组成部分。
    • Location匹配协议、host或端口信息,进行重定向时使用$uri变量
    • 匹配协议主要是http转https。
    • 而匹配host或端口信息,一般是原来可用的主机名或端口临时或长久的进行停用,那么可以做跳转操作
  • 二是nginx主动添加响应头部字段,比如set-cookie设置值包含$uri

3、漏洞防护

尽量不使用$uri变量