Magick.NET 14.13.1 批次修補六個記憶體安全漏洞:JP2 堆疊溢寫、MIFF 無限迴圈、MSL UAF
GitHub Security Advisories · 2026-05-19
2026 年 5 月 19 日,GitHub Security Advisories 批次公告 Magick.NET 的六個記憶體安全漏洞,全部在版本 14.13.1 中修補。這些漏洞源自底層 ImageMagick C 函式庫的編解碼器實作,涵蓋 JP2、MIFF、MSL、IPL、MNG 多種格式。所有 Magick.NET NuGet 套件變體(Magick.NET-Q8、Magick.NET-Q16、Magick.NET-Q16-HDRI 等)在 14.13.1 以前的版本均受影響。
漏洞機制
六個漏洞依嚴重程度與機制分類:
- GHSA-533m-3wf6-c33v(
CVE-2026-46559,Moderate/CVSS 4.0):JP2 編碼器的 off-by-one 錯誤(CWE-193)導致單字節堆疊溢寫(CWE-787),在特定選項組合下觸發,攻擊向量為本地執行 - GHSA-36wm-hprc-mcf5(High):IPL 解碼器在讀取多張影像時發生堆疊緩衝區溢寫
- GHSA-7gg8-qqx7-92g5(High):MIFF 解碼器中的無限迴圈(CWE-835)可導致 CPU 資源耗盡,非特權使用者也可觸發
- GHSA-rcr6-g7jc-f57g(Moderate):MIFF 編碼器使用 LZMA 壓縮時的堆疊緩衝區溢寫
- GHSA-5r4x-w6p5-222q(Moderate):MSL 解碼器的 use-after-free(CWE-416)
- GHSA-g5mf-wqq5-vwg6(Moderate):MNG 解碼器的安全策略繞過(Policy Bypass)
受影響版本
Magick.NET NuGet 所有變體,版本低於 14.13.1 均受影響。
修補與緩解
修補方式是升級至 Magick.NET 14.13.1 或更新版本。對於無法立即升級的場景,可透過 ImageMagick 的安全策略(security policy)限制處理 JP2、MIFF、MSL、IPL、MNG 格式,減少攻擊面。MIFF 無限迴圈(GHSA-7gg8-qqx7-92g5)的風險面最廣,因為它可由任何能提交影像處理請求的非特權使用者觸發,在接受用戶上傳影像的 Web 應用中是可遠端觸發的 DoS 向量。
原始來源:GHSA-533m-3wf6-c33v、GHSA-7gg8-qqx7-92g5、GHSA-5r4x-w6p5-222q
NiceGUI GHSA-pq7c-x8g4-rvp6(CVE-2026-45554):動態資源路由允許未驗證請求造成日誌量 DoS
GitHub Security Advisories · 2026-05-19
CVE-2026-45554(GHSA-pq7c-x8g4-rvp6,CVSS 5.3 Moderate)揭露 NiceGUI Python Web 框架的動態資源路由系統存在可被未驗證攻擊者觸發的阻斷服務漏洞。受影響版本為 NiceGUI 3.11.1 及以下,3.12.0 中修補。
漏洞機制
問題根源在 NiceGUI 的兩個 FastAPI 路由,這些路由服務各元件的靜態資源,接受路徑參數並解析為檔案路徑。當請求的路徑參數解析到目錄(而非檔案)時,Starlette 的 FileResponse handler 會拋出未處理的 RuntimeError。
關鍵問題有兩個:
- 這些路由不要求驗證,任何可連線到伺服器的客戶端都可發送請求
- 每個觸發 RuntimeError 的請求約產生 100 行 traceback 輸出到日誌,可被用來放大日誌量
大量此類請求可耗盡磁碟空間(如果日誌寫入磁碟)、使日誌管線飽和,或觸發大量誤警報。攻擊向量:網路,不需驗證,不需使用者互動。
修補與緩解
直接修補是升級至 NiceGUI 3.12.0。對於無法立即升級的生產環境,緩解措施包括:
- 在反向代理(nginx、Cloudflare 等)層過濾對
/_nicegui/路徑前綴的可疑請求 - 對此路徑前綴實施速率限制
- 配置積極的日誌輪替以限制磁碟影響
此漏洞對公開暴露在網際網路的 NiceGUI 應用影響最大;內部僅供可信用戶使用的部署風險相對較低,但在多租戶或公開部署場景下應優先升級。
原始來源:GHSA-pq7c-x8g4-rvp6