oapi-codegen 2.0.0 版前 2.8.1 的非字串 Enum 值導致 Go 程式碼注入漏洞
CVE-2026-119028 - oapi-codegen 2.0.0 before 2.8.1 Code Injection via Non-String Enum Values
導語:oapi-codegen 2.0.0 版前 2.8.1 之非字串 Enum 值導致 Go 程式碼注入漏洞,允許攻擊者透過 OpenAPI 檔案注入任意 Go 程式碼。
此漏洞允許攻擊者透過 OpenAPI 檔案注入 Go 程式碼,影響多版本 oapi-codegen,提醒開發者即時升級或驗證生成程式碼。
oapi-codegen 2.0.0 之前的 2.8.1 版本包含一個程式碼注入漏洞,允許攻擊者透過在整數、數字或布林模式中提供非文字列舉值來注入 Go 程式碼。控制 OpenAPI 檔案的攻擊者可以製作一個結束 constants.tmpl 中 const 區塊的列舉專案,並注入 func init(),在生成的套件被編譯及匯入時執行程式碼。
影響
受影響產品
以下產品受 CVE-2026-119028 漏洞影響。
即使 cvefeed.io 知道受影響產品的確切版本,該資訊未在下表中呈現。
尚未記錄受影響產品
Common Vulnerability Scoring System(CVSS)是一個標準化框架,用於評估軟體與系統漏洞的嚴重性。 我們收集並顯示各來源的 CVSS 分數,針對每個 CVE。
| 分數 | 版本 | 嚴重性 | 向量 | 可利用性分數 | 影響分數 | 來源 |
|---|---|---|---|---|---|---|
| CVSS 3.1 | 高 | 83251b91-4cc7-4094-a5c7-464a1b83ea10 | ||||
| CVSS 3.1 | 高 | MITRE-CVE | ||||
| CVSS 4.0 | 高 | 83251b91-4cc7-4094-a5c7-464a1b83ea10 |
將 oapi-codegen 更新至 2.8.1 或更高版本,以修復程式碼注入漏洞。
- 將 oapi-codegen 更新至 2.8.1 或更高版本。
- 驗證生成的程式碼是否有可疑專案。
- 檢查 OpenAPI 檔案是否包含惡意列舉值。
我們掃描 GitHub 倉庫以偵測新的概念驗證漏洞。以下列表為已發布於 GitHub 的公開漏洞與概念驗證集合(依最近更新排序)。
由於潛在的效能問題,結果僅限於前 15 個倉庫。
以下列表為文章中提及 CVE-2026-119028 漏洞的新聞。
EPSS 是每日估算在未來 30 天內觀察到利用活動的機率。以下圖表顯示該漏洞的 EPSS 分數歷史。