Forgejo 協作開發平台 16.0.4 和 15.0.8 版本已發布修補程式。這些修補程式修復了一個嚴重漏洞(尚未分配 CVE 編號),該漏洞可能允許遠端攻擊者在伺服器上執行程式碼。建議 Forgejo 伺服器管理員立即更新系統,並確保系統未受到任何影響。此漏洞是由於使用範本建立新程式碼庫時未進行適當的清理工作所造成的。
為了防止在處理使用者提供的範本時命令被替換,平台會在初始化新的 Git 倉庫之前,從中刪除 .git/ 子目錄。 服務器攻擊者可以透過篡改位於 .forgejo/template 目錄中的檔案變數取代(例如,將「../../.git/hooks」替換為檔案路徑),繞過此刪除操作,並建立一個包含其自身內容的 .git/ 子目錄。在後續的 Git 倉庫初始化過程中,Git 會套用 .git/ 子目錄中的設置,其中可能包含啟動任意進程的操作。此問題透過在執行「git init」之前立即刪除 .git/ 子目錄(而不是在變數展開之前)來解決。
在 Gitea 1.25.5 中,類似的漏洞(CVE-2026-25718)已於 2 月修復。
來源: opennet.ru
