CVE-2020-10933:socket 函式庫存在記憶體堆疊資料洩漏風險

socket 函式庫存在記憶體堆疊資料洩漏風險。此風險的 CVE 識別號為 CVE-2020-10933。我們強烈建議您升級 Ruby。

風險細節

當呼叫 BasicSocket#recv_nonblockBasicSocket#read_nonblock 方法傳入 size 與 buffer 參數時,buffer 會被調整至特定的大小。當執行阻塞式操作時,他們會不拷貝任何資料立即返回。因此,buffer 字串可以帶有堆疊上的任何資料。這可能導致直譯器洩漏機密資料。

在 Linux 上可以重現這個問題。從 Ruby 2.5.0 開始存在此風險,Ruby 2.4 系列版本沒有問題。

受影響版本

  • Ruby 2.5 系列:Ruby 2.5.7 及更早版本
  • Ruby 2.6 系列:Ruby 2.6.5 及更早版本
  • Ruby 2.7 系列:2.7.0
  • master 早於 61b7f86248bd121be2e83768be71ef289e8e5b90 的提交

致謝

感謝 Samuel Williams 回報此問題。

歷史

  • 最初發佈於 2020-03-31 12:00:00 (UTC)