[Hardening] F-12: Absence of Per-Account or Per-User Source CIDR Allowlist.
- 主要言語
- Java
- スター
- 3.1k
- フォーク
- 1.4k
- 平均マージ
- 6日 19時間
- マージ済み PR(30日)
- 32
説明
### The required feature described as a wish
**Description:** CloudStack does not provide a built-in mechanism to restrict per-account or per-user access to a defined set of source IP addresses or CIDR ranges. Any IP address that can reach the management plane can attempt to authenticate as any account.
**Affected Components:** Management UI / API
**Impact:** Without source IP allowlisting, a stolen API key or compromised credential set can be used from any network location globally. There is no network-level control to limit the blast radius of a credential compromise. High-privilege service accounts are particularly at risk, as they can be accessed from unexpected locations without raising any flags.
**Steps to Reproduce:**
- This finding is not directly reproducible since it reflects the absence of a control.
**Recommended Remediation:** Implement a per-account or per-user source CIDR allowlist field in the data model. Requests originating from IPs outside the defined allowlist should be rejected and logged as a security event.
コントリビューションガイド
調査の方向性
この issue では、Management UI/API、アカウントまたはユーザーのデータモデル、リクエストの送信元 IP のチェック、Security-Event のロギングが特定されていますが、ファイルやテストは指定されていません。まず、これらのエントリーポイントを見つけ、API リクエストに対する認証と認可を追跡してください。完了条件には、アカウントまたはユーザーごとに定義された CIDR ポリシー、ポリシー外からの拒否、および関連する動作をカバーする Security-Event のログ記録を含める必要があります。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- java
- 領域
- api, authentication, authorization, backend, security
- issue の種類
- 機能追加
- 難易度
- 5/5
- 見積もり時間
- 1週間以上
- 活発さ
- 静か
- 明瞭さ
- 説明が足りない
- 初心者へのやさしさ
- 30/100