curl 8.23.0 修補 HTTP/2 上傳釋放後使用漏洞 CVE-2026-92392:已證實在特定條件下可遠端執行程式碼,影響 8.12.0 到 8.22.0,命令列工具也在內
趨勢新聞2026 年 10 月 18 日
curl 專案 10 月 14 日發布 8.23.0,修補 HTTP/2 上傳時的釋放後使用(use-after-free)漏洞 CVE-2026-92392,專案評為 High。公告寫,上傳過程中若伺服器回送原因為 HTTP_1_1_REQUIRED 或 REFUSED_STREAM 的 HTTP/2 RST_STREAM,curl 處理不當,會使用一個已釋放的 Curl_easy 結構;這個漏洞「已被證實」可在惡意伺服器滿足一組特定條件時轉成遠端執行程式碼。受影響的是 curl 8.12.0 到 8.22.0,libcurl 與 curl 命令列工具都在範圍內。
公告列出的條件有八項:攻擊者要知道對方確切的 curl 版本與結構配置來推算偏移量、確切的處理器架構、相容的 libc 記憶體配置器與堆積配置,要掌握 nghttp2 與 OpenSSL/TLS 1.3 的行為(包括 session ticket 前後的記憶體配置)、固定的 CA 憑證包等會影響配置形狀的輸入,要讓兩個平行傳輸的排程與時序維持住、取得正確的 libc 位址洩漏與符號偏移,而且目前的利用手法只能塞進大約 23 位元組的短指令。
修補方式三選一:升級到 8.23.0、對手上版本套用修補,或不使用 HTTP/2。仍在維護的分支中,8.20.x 從 8.20.2、8.16.x 從 8.16.2、8.14.x 從 8.14.3 起不受影響,8.12.0 以前的版本也不受影響。漏洞 9 月 15 日通報給 curl 專案,公告的通報者欄寫「Luna with Claude, Anthropic」,修補由 Stefan Eissing 完成。公告提醒,很多應用程式用了 libcurl 卻沒有標示。
同一天 24 份公告
curl 的漏洞資料庫顯示,10 月 14 日一共發布 24 份安全公告,其中 3 份對應的漏洞在前一版 8.22.0 已修。CVE-2026-92392 是唯一評為 High 的一份,其餘 23 份都是 Low,內容包括 Negotiate 認證資訊送往其他來源、HTTP 代理伺服器洩漏主機帳密、wolfSSL 公鑰釘選可被繞過等。8.23.0 的變更紀錄另寫明這一版拿掉了 SMB 支援。