安全憲章
使命
Keycloak 安全工作組致力於通過持續改進文檔、代碼和流程來增強 Keycloak 項目的安全性。我們的核心責任包括
- 主動分類:快速解決報告給 Keycloak 的安全漏洞,並確保它們得到及時且一致的解決。
- 影響評估:評估新功能和現有功能的安全性影響。
- 流程改進:定期審查和改進安全流程,以確保代碼庫中持續改進。
團隊
Keycloak 安全響應團隊
維護人員的一個專門子集,積極參與對新問題進行分類並與解決方案團隊協調。響應團隊可以完全訪問報告給項目的所有 CVE,並且可以根據需要添加或刪除解決方案團隊的成員。
成員提名流程
- 現有維護人員和 Keycloak 安全響應團隊成員可以提名新成員。兩個團隊的成員都可以在批准流程中投票,並且需要三分之二多數才能批准。
- 所有提名都必須發送到 Keycloak 安全郵件列表。
- 成員可以隨時辭職,並且可以在辭職時提名替換者。
責任
- 保持活躍和響應,參與日常活動。
- 溝通任何休假。
- 每周輪流參加輪班。
- 未經事先通知,超過三個月未積極參與或未履行其責任的成員將通過投票被移除。
範圍
- 漏洞分類:管理通過 Keycloak 安全郵件列表收到的報告。
- 協調:監督對報告的漏洞的響應,以確保遵守 SLA 截止日期。
- 流程改進:維護和增強安全措施,例如實施 linter、掃描器、模糊測試器和補丁管理器。確保在整個項目中主動集成安全措施。
輪流值班
- 團隊成員輪流在每周成為主要聯繫人。
- 值班的指定人員處理進來的安全請求,協調對事件的響應,並在值班期間管理日常安全任務。
- 其他團隊成員將繼續從事安全響應職責,支持值班的人員。
- Keycloak 安全辦公室的每周會議時間確定輪班結束時間,並將下一位值班人員更新狀態。
- 在會議期間溝通休假和帶薪休假,以便我們可以調整輪班。
Keycloak 安全解決方案團隊
由積極參與分類或解決未解決 CVE 的個人組成的動態團隊。當成員參與漏洞時,他們會被添加,而當他們的參與結束時,他們會被移除。
範圍
- 解決方案和測試:確保有效地修復漏洞並進行全面測試。
- 協作:與響應團隊合作,優先考慮修復,高於團隊積壓中的所有其他項目,無論其性質如何。
- 發佈協調:與發佈協調員和質量工程 (QE) 團隊密切合作,將補丁包含在即將發佈的版本中。
訪問
資源 |
響應團隊 |
解決方案團隊 |
郵件列表 |
完全訪問權限 |
在特定線程中添加抄送 |
私有 GitHub 倉庫 |
完全訪問權限 |
臨時訪問權限 |
安全建議和警報 |
完全訪問權限 |
無訪問權限 |
Slack 頻道(#alerts-keycloak-cve) |
完全訪問權限 |
臨時訪問權限 |
協調安全漏洞修復
- 識別:響應團隊識別受影響領域的相關工程師,並將其臨時包含在私有通信渠道(例如,倉庫、電子郵件線程)中,形成臨時解決方案團隊。
- 效率:為了防止意外披露,解決方案團隊保持盡可能小。
- 自主權:解決方案團隊有權自主決定是否涉及其他方,例如發佈協調員、QE 和文檔團隊。如有疑問,建議與響應團隊溝通。
- 訪問權限撤銷:發佈後,將撤銷對敏感通信渠道的訪問權限,以維護最小特權原則。
流程概述
- 一個新的漏洞被報告給 Keycloak 安全郵件列表。
- 對漏洞報告進行分類。
- 分配 CVE ID。
- 響應團隊識別負責的小組(例如,擁有 Noah 和 Emma 成員的 A 團隊)。
- A 團隊將修復提交到私有倉庫,並包括領域專家進行審查。
- A 團隊通知 QE 和發佈協調員即將到來的補丁。
- 合併拉取請求,並發佈新版本以及正式建議。
在沒有要修復的 CVE 的情況下,除了 Keycloak 安全響應團隊之外,所有團隊成員都將被撤銷對安全敏感渠道的訪問權限。
本憲章概述了 Keycloak 項目管理和減輕安全漏洞的方法,確保項目對所有用戶的完整性和可靠性。