Ruby 自带的 WEBrick 存在 HTTP 响应切分缺陷。此缺陷的编号是 [CVE-2019-16254](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-16254)。

## 细节

若使用 WEBrick 的程序收到不可信的输入，攻击者可以利用此缺陷来注入一个换行符来分割 HTTP header，进而注入恶意内容给客户端。这个缺陷和 [CVE-2017-17742](/zh_cn/news/2018/03/28/http-response-splitting-in-webrick-cve-2017-17742/) 相同。之前的修复只解決了 CRLF vector，但沒有处理独立的 CR 及 LF。

我们建议所有使用受影响版本的使用者尽速升级。

## 受影响的版本

* 所有 Ruby 2.3 及更早版本
* Ruby 2.4 系列： Ruby 2.4.7 及更早版本
* Ruby 2.5 系列： Ruby 2.5.6 及更早版本
* Ruby 2.6 系列： Ruby 2.6.4 及更早版本
* Ruby 2.7.0-preview1
* 早于 ruby master commit 3ce238b5f9795581eb84114dcfbdf4aa086bfecc 的全部版本

## 致谢

感谢 [znz](https://hackerone.com/znz) 发现此问题。

## 历史

* 最早发布于 2019-10-01 11:00:00 (UTC)
