生産環境の強化と監査
1)責任の目的と領域
生産は「最も安定した環境」だけでなく、最も攻撃されています。私たちのタスク:- 攻撃エリアとブラスト半径を最小限に抑えます。
- 配信のチャネル、アカウント、秘密やアーティファクトを保護します。
- MTTRターゲットよりも迅速なインシデントの検出と対応
- コンプライアンスの確認(GDPR/PCI DSS/ローカルルール)
- すべての重要な行為の監査可能性を維持して下さい。
主な原則:Zero Trust、 Lost Privilege、 Segmentation、 Everything-as-Code、 Security-by-Default。
2)ネットワークの周囲および区分
セグメント:エッジ(WAF、ボット管理、DDoS)、 DMZ(ゲートウェイ)、アプリ(マイクロサービス)、データ(DB/キャッシュ)、 バックオフィス/Ops (CI/CD、オブザビリティ)。
L4/L7ポリシー:deny-by-default、 services/namespaces/portsによる明示的な許可。
クラスタ内のmTLS TLS 1。周囲の2+、HSTS、安全な暗号。
入力フィルタ:WAF (OWASP Top-10)、アンチボット、レート制限、ジオブロック/ASNブロック、リスクパス上のCAPTCHA。
DDoS保護:常にオン+自動緩和、API/静的コンテンツの個別のプロファイル。
排出制御:プロバイダ(PSP/KYC/games)に必要な外部ホストのみ。
3)身元、アクセス、特権(IAM/PAM)
人間のためのSSO (OIDC/SAML)+MFA;サービスのOIDCトークン/ワークロードID。
RBAC/ABAC:最低限必要な権限を持つ役割。監査およびTTLの下の「壊れ目ガラス」アクセス。
PAM:オンデマンド特権セッションチェックアウト、フルレコーディング、ロギング。
CIEM(クラウド):過度の権利と死んだ役割、自動修復を検索します。
本番データへのアクセス:承認されたジャンプ/プロキシを介してのみ、PIIマスキングを使用します。
4)秘密と暗号
KMS/HSM:キーストレージ、エンベロープ暗号化、通知による回転。
シークレットマネージャー:短命のクレジット、Git/ログから秘密を除外します。
署名:アーティファクト(コサイン)、Webhook (HMAC)、サービストークン。
PAN/PIIフィールド:トークン化/暗号化at-rest;ログとプレビューでマスキング。
回転ポリシー:キー/証明書/パスワード-ルーチンと強制。
5)容器およびKubernetes (CWPP/KSPM)
ベースイメージ:CI上の最小限のスキャン脆弱性;可能であればどこでもルートレス。
入場ポリシー(OPA/Gatekeeper/Kyverno):禁止':latest'、 'privileged'、 hostPath;画像署名が必要です。
NetworkPolicies:必要に応じてのみサービス間の通信。
PodSecurity:制限された機能、読み取り専用FS、 seccomp、 AppArmor。
秘密:秘密の店CSI (KMS)から;マニフェストには明白な秘密はない。
ランタイム保護:行動規則(eBPF)、異常に対する警告。
rego package k8sadmission deny[msg] {
input. request. kind. kind == "Pod"
some c image:= input. request. object. spec. containers[c].image not startswith(image, "registry. company. com/signed/")
msg:= sprintf("Image must be signed and come from trusted registry: %v", [image])
}
6)サプライチェーン: 信頼しかしチェック
ビルドあたりのSBOM;ストレージとリリースへのリンク。
画像/マニフェスト署名、入場コントローラの検証。
SLSA認証:アーティファクトの証明可能な起源。
Policy-as-Code:マージ前のTerraform/Helm/K8sのConftest/OPA。
製品の「直前パッチ適用」の禁止:すべての変更はパイプラインを介してのみ行われます。
7)脆弱性とパッチ管理
SCA/SAST/DAST-CI;クリティカル/ハイのしきい値をブロックします。
毎週更新バッチ(画像、OSパッケージ、ライブラリ)+緊急予定外。
CVE/SBOMにリンクされているチケット/リリースを修正しました。
EASM:攻撃面の外部ビュー(サブドメイン、オープンポート、証明書)。
定期的なペンテスト:少なくとも1年に1回+クリティカルフロー(payment/CCM)を対象としています。
8)監査成果物のログ、指標、トレースおよび保管
'trace_id'、 'request_id'、 user/tenant/geo(仮名)、no PII/PANで標準化されたログ(JSON)。
メトリクス:p50/p95/p99、エラー率、彩度、DLQ、レトライ、ビジネスKPI (Time-to-Wallet)。
OTel:重要なルート(deposit/CCL/output)のエンドツーエンド。
SIEM:イベント相関(認証、ロール変更、管理アクション、WAF/ボットルール)。
SOAR:自動反応(囲炉裏の絶縁、トークンリコール、IP/ASNブロック、リリース禁止)。
保持:運用ログ-30-90日ホットストレージ、監査アーティファクト-ポリシーに従ってより長い。
json
{
"ts":"2025-11-05T15:00:00Z",
"sev":"WARN",
"svc":"payments-api",
"route":"POST /v1/payments",
"trace_id":"2f9f...e1",
"user":"anon",
"tenant":"eu-casino-12",
"geo":"EU",
"event":"circuit_breaker_open",
"provider":"psp-1"
}
9)アンチボット、詐欺、防御シナリオ
ボット管理:署名/動作、デバイス指紋、動的な課題。
レート制限/クォータ:ユーザーごと/テナント/IP;異常に適応します。
重要なエンドポイント上のRASPセンサー(Webhookシグネチャ、クロックドリフト、再配信をバイパスしようとする試み)。
詐欺信号:チャネル(ログイン、支払い、KYC)による相関、自動エスカレーション。
10)保護、DRおよびBCP
RTO/RPOターゲットは定義され、テストされます(例えば、RTO ≤ 1時間、RPO ≤支払いデータベースのための5分)。
バックアップ:暗号化、定期的にオフラインストレージで;定期的な復元テスト。
地理的重複:地域別の資産責任/資産資産;TTL制御によるDNSフェイルオーバー。
重要な依存関係のディレクトリ(PSP/KYC/ゲームアグリゲーター)とスイッチングプラン。
11)事件・対応
Runbooks:プロバイダのドロップ、レイテンシーの増加、トークンの妥協、DDoS。
オンコール:24/7、回転とブラストページ。合同「戦争部屋」の練習。
コミュニケーション:顧客/パートナーおよび規制当局のためのメッセージテンプレート。
Post-mortem (blameless):繰り返しを防ぐためのアクション、ポリシー/プレイブックの更新。
12)コンプライアンスとプライバシー
GDPR:データの最小化、同意レジスタ、削除/ポートの権利。新しいプロバイダーのためのDPIA。
PCI DSS: PANトークン化/分離ゾーン、ネットワークセグメント、厳格なアクセスログ。
ローカル要件(市場管轄):地域内のデータストレージ、レポート、更新ウィンドウ。
データ系統:どこでそしていかにPII/PANの流れ;DevPortalのスキームとDPIA。
13)監査: タイプ、アーティファクトとサイクル
監査タイプ:- 内部(四半期ごとに):ポリシーの遵守、変更の制御、アクセス、秘密、ログ、パイプライン。
- 外部(毎年/要件別):PCI/GDPR/ローカルレギュレータ、ペンテスト、プロバイダのSOCレポート。
- セキュリティポリシー、ロールIAM行列、有効期限のある例外リスト。
- インフラストラクチャ変更ログ(IaC)、 CI/CDレポート(SBOM、署名、テスト)。
- プロバイダ(PSP/KYC/ゲーム)、 DPIA/ベンダー・リスク評価、契約、SLAの登録。
- 販売アクセスログ、シークレット回転結果、SIEM/SOARレポート。
- DR/BCP計画と最近の復元テストのプロトコル。
- 「証拠-最初」:各練習は検証可能なアーティファクトです。
- 「prodの人間無し」:パイプラインおよび承認された適用によって最高;すべてのセッション-ログの下。
- 「すべてをトレース」(Trace everything)-変更をインシデント/メトリクスにマップします。
14)ガードレールアズコード: 例
TerraformのConftest(公開データベース禁止):rego package terraform. deny deny[msg] {
input. resource. type == "aws_db_instance"
input. resource. publicly_accessible == true msg:= "RDS must not be public"
}
AdmissionPolicy (K8): セキュリティラベルとリソース制限が必要
yaml apiVersion: kyverno. io/v1 kind: ClusterPolicy metadata:
name: enforce-security-labels-and-limits spec:
rules:
- name: require-labels match: {resources: {kinds: ["Deployment","StatefulSet"]}}
validate:
message: "security labels required"
pattern:
metadata:
labels:
security. tier: "?"
data. classification: "?"
- name: require-limits match: {resources: {kinds: ["Deployment","StatefulSet"]}}
validate:
message: "resources limits/requests required"
pattern:
spec:
template:
spec:
containers:
- resources:
limits:
cpu: "?"
memory: "?"
requests:
cpu: "?"
memory: "?"
15)毎日の衛生チェックリスト
- WAF/ボットポリシーがアクティブで、署名が更新されました。常時オンモードでのアンチDDoS。
- 監査ではなく、強制状態のクラスタ内の入場コントローラ。
- すべての生産イメージが署名されています。SBOMが利用可能で、リリースに関連付けられています。
- 重大な/高い脆弱性-欠落または日付の例外で固定。
- 秘密/証明書の回転-予定通り、遅延はありません。
- SIEMはIAM/リリースエントリ/変更イベントを相関させます。SOARプレイブックがテストされています。
- 合格したバックアップは、スケジュール通りにテストを復元します。DR計画は有効です。
- 食品へのアクセス-SSO+MFA/PAM経由でのみ。すべてのセッションが記録されます。
- 「ログにPIIがない」-スキャナによって検証されます。マスキングが有効になっています。
- ゲートを解放し、観測可能性は「as-code」を更新しました。
16)成熟度モデル(短い)
1.基本-手動の変更、単一の周囲、部分的な監視。
2.高度-セグメンテーション、IAM/RBAC、署名されたアーティファクト、WAF/DDoS、 SIEM、定期的なパッチ。
3.Expert-Zero Trust、 guardrails-as-code、 SLSA認証、ランタイム保護、SOARオートメーション、「prodに人間がいない」、継続的な監査。
17)実装ロードマップ
M0-M1 (MVP):ネットワークセグメンテーション、WAF/DDoS、 SSO+MFA、 KMS、基本アドミッションポリシー、標準化されたログ/メトリック/トレイル、SIEM。
M2-M3:画像署名と入場確認、SBOM、 IaCのConftest/OPA、 PAM、回転計画、定期的なパッチ、最初のDRテスト。
M4-M6: SOARプレイブック、eBPF/ランタイム検出、EASM、コンプライアンスパッケージ(PCI/GDPR)、監査成果物のフルセット、地域別ring-DR。
M6+:Zero-Trustネットワーク(どこでもmTLS)、 CIEM、自動化された監査証跡レポート、継続的な「紫色のチーム」テスト。
概要
Strong Prodは「鉄」ルールのセットではなく、セグメンテーション、厳格なアイデンティティと秘密、安全な配送、管理されたコンテナ、オブザビリティ、自動化された応答というシステムです。検証可能性(audit artifacts、 SBOM/signatures、 logs)を追加し、本番環境は、リリース速度とビジネスSLOに妥協することなく、予測可能、管理可能、および外部監査の準備が整います。