CVE-2018-8779: UNIXServer 與 UNIXSocket 可傳入 NUL 字元肆意建立 socket
由 usa 發表於 2018-03-28
翻譯: Juanito Fatas
Ruby 內建的 socket 函式庫 UNIXServer.open 建立 socket 存在安全性風險。UNIXSocket.open 存在非預期的存取風險。
此風險的 CVE 識別號為 CVE-2018-8779。
細節
UNIXServer.open 第一個參數是 socket 路徑,若路徑帶有 \0 NUL 字元組,讀取路徑時會在 NUL 位元組之前結束。
若腳本使用了此方法,接受外來輸入作參數。攻擊者可在非預期的路徑建立 socket。同理 UNIXSocket.open 也可以讓攻擊者在任何地方新建一個 socket。
所有使用受影響版本的使用者應立即升級。
受影響版本
- Ruby 2.2 系列: 2.2.9 以及之前的版本
- Ruby 2.3 系列: 2.3.6 以及之前的版本
- Ruby 2.4 系列: 2.4.3 以及之前的版本
- Ruby 2.5 系列: 2.5.0 以及之前的版本
- Ruby 2.6 系列: 2.6.0-preview1
- trunk revision r62991 之前的版本
致謝
感謝 ooooooo_q 回報此問題。
歷史
- 初次發佈於 2018-03-28 14:00:00 (UTC)
最新消息
Ruby 4.0.0 preview2 發布
我們很高興宣布 Ruby 4.0.0-preview2 發布了。 Ruby 4.0 將 Unicode 版本更新至 17.0.0,以及其他更新。
由 naruse 發表於 2025-11-17
Ruby 3.3.10 發布
Ruby 3.3.10 已經發布了。
由 nagachika 發表於 2025-10-23
移交 RubyGems 程式碼儲存庫的所有權
親愛的 Ruby 社群
由 matz 發表於 2025-10-17
Ruby 3.4.7 發布
Ruby 3.4.7 已經發布了。
由 k0kubun 發表於 2025-10-07