跳至主要內容

CVE-2026-16317 與 CVE-2026-16318:s2n-tls 相關問題:TLS/SSL 協定的開放原始碼實作

公告 ID:2026-062-AWS
範圍:AWS
內容類型:重要 (需要注意)
發布日期:2026 年 7 月 21 日下午 1:00 (太平洋夏令時間)

描述:

s2n-tls 是 TLS/SSL 通訊協定的開放原始碼 C99 實作。我們發現兩個不同的問題:

  • CVE-2026-16317:在 s2n-tls 中靜默捨棄 TLS 1.3 加密記錄
    s2n-tls 中針對 TLS 1.3 加密記錄的外部 content_type 位元組缺乏驗證,這使得作用中的中間人攻擊能夠靜默地捨棄個別應用資料記錄,且任一端點均無法偵測到這一修改。RFC 8446 第 5.2 節要求所有已加密 TLS 1.3 記錄的外部 content_type 均必須為 application_data (0x17)。s2n-tls 的 AEAD 實作在額外的驗證資料中硬編碼此值,而非使用實際的網路傳輸位元組,因此外部 content_type 不在身分驗證標籤的涵蓋範圍內。所有 TLS 1.3 連線均受到影響。TLS 用戶端和伺服器均受到影響。TLS 1.2 和 QUIC 連線不受影響。

  • CVE-2026-16318:s2n-tls 中 HelloRetryRequest 期間的 QUIC 傳輸參數記憶體洩漏
    在 s2n-tls 的 QUIC 傳輸參數延伸處理常式中,錯誤地使用 s2n_alloc 而非 s2n_realloc,導致啟用 QUIC 的 TLS 1.3 連線在每次經歷 HelloRetryRequest 期間,都會發生一次記憶體配置洩漏。這種情況可能發生在正常的交握過程中,即用戶端提供的金鑰共用群組並非伺服器偏好的類型;這可能導致長時間執行的伺服器進程記憶體取用量增加。僅限啟用 QUIC 的部署受到影響。

受影響版本:<= v1.7.5

解決方案:

這些問題已在 s2n-tls 版本 v1.7.6 中予以修正。建議您升級至最新版本,並確保所有分支或衍生程式碼皆已套用修補程式,以納入最新修正。

變通方法:

對於 CVE-2026-16317 (靜默捨棄 TLS 1.3 加密記錄),沒有變通方法可完全緩解此問題。將 s2n-tls 設定為僅使用 TLS 1.2 安全政策可以避開受影響的程式碼路徑,但不建議這樣處理,因為這會失去 TLS 1.3 帶來的安全優勢。

對於 CVE-2026-16318 (HelloRetryRequest 期間的 QUIC 傳輸參數記憶體洩漏),不啟用 QUIC 的部署不會受到影響,也不需要執行任何動作。對於啟用 QUIC 的部署,作為暫時緩解措施,定期重新啟動伺服器進程可以回收無法連線的記憶體。

參考資料:


如有任何安全問題或疑慮,請寄電子郵件至 aws-security@amazon.com