Shikata Ga Nai

Private? There is no such things.

攻撃者視点”を理解する④

Hello there, ('ω')ノ

☁️ セクション4:クラウド(AWS / GCP / Azure)

クラウドは便利ですが、
「設定一つのミスで、全世界にデータが公開される」
という“構造上のリスク”があります。

攻撃者はクラウド特有の “見える部分・設定ミス” を最初に狙います。
非エンジニアの担当者でも理解できるように、クラウドの要点だけを整理します。


☁️ 4-1. セキュリティグループ/FW の公開状態確認

■ 何が問題になるのか?

AWS なら「Security Group」
GCP なら「Firewall Rules」
Azure なら「NSG(Network Security Group)」
と呼ばれる“クラウドのファイアウォール”があります。

攻撃者は “0.0.0.0/0(全世界)に開いているポート” を真っ先に探します。


🌎 ■ よくある危険パターン

❌ SSH(22番)が誰でもアクセス可能

→ サーバ乗っ取りの入口

❌ RDP(3389)が全世界に公開

→ Windowsサーバが即攻撃対象に

❌ DBポート(3306, 5432 など)がインターネットに露出

→ 重大な情報漏洩リスク

❌ 管理画面(8080, 8000 など)の公開

→ 乗っ取りの直接ルート


🛡 ■ 防御側が最初にやるべきこと

✔ 外部公開ポートの棚卸し

  • AWS:Security Group
  • GCP:Firewall
  • Azure:NSG
    で “0.0.0.0/0” を探す

✔ 管理系ポートは閉める or 固定IPに限定

  • SSH / RDP
  • 管理コンソール
  • 各種管理ツール

✔ LB(ロードバランサ)から先だけ公開にする

サーバを直接インターネット公開しない


📦 4-2. バケット誤公開の典型例

クラウドでは ストレージバケットの“公開設定ミス” が最も多い事故原因です。

対象:

  • AWS:S3
  • GCP:Cloud Storage
  • Azure:Blob Storage

🔥 ■ よくある誤設定の例

❌ バケットが「全員読み取り可(public)」になっている

→ 社外から誰でもファイルがダウンロードできる

❌ バックアップファイルがそのまま置かれている

→ 「DBの中身丸ごと公開」事故の主因

❌ 企業秘密や顧客データが平文で保存

→ 暗号化なしの保存は非常に危険

❌ バケット名から推測される機密情報

例:company-backup-prod-2023


🛡 ■ 防御側がすべきこと

✔ バケットの公開設定をすべて点検

  • AWS:Block Public Access
  • GCP:IAM の「allUsers」「allAuthenticatedUsers」
  • Azure:publicAccess の状態

✔ バケット名で機微情報を推測されないようにする

✔ バケット内の不要データを削除


🔐 4-3. IAM 権限ミスの見つけ方

クラウドのセキュリティで 最も危険なのが IAM(権限管理) の誤設定。


🔥 ■ よくある危険な IAM 状態

❌ 管理者権限(Administrator)を“とりあえず”付与

→ 攻撃者が取れば、アカウント丸ごと支配される

❌ 不要な IAM ユーザが放置

→ 退職者アカウントが残ったまま

❌ APIキー(Access Key)が放置

→ GitHub などにうっかり公開されると即侵害

❌ サービスアカウントが過剰権限

→ マシンからクラウドが乗っ取られる


🛡 ■ 防御側がすべきこと(非エンジニアでも可能)

✔ IAMユーザを棚卸し

  • 使っていないユーザは削除
  • 退職者アカウントの確認

✔ “最小権限”になっているか確認

  • Administrator を使っていないか
  • サービスアカウントに必要以上の権限がないか

✔ Access Key(APIキー)の棚卸し

  • 古いキーを削除
  • 使っているキーは確認と記録

IAM の把握だけでも
“特権アカウントの乗っ取り”を防ぐことができます。


🛠 4-4. 各クラウドの「誤設定チェッカー」の使い所

クラウドには 公式が提供する“誤設定を自動検出するサービス” があります。

非エンジニアの担当者が最初に触るべきツールです。


✅ AWS

● Security Hub

以下の誤設定を自動検知:

  • 公開S3バケット
  • 危険なSecurity Group
  • 不要なIAM権限
  • 古い暗号化方式
  • OS更新の不足

✅ GCP

● Security Command Center

検知するポイント:

  • オープンなCloud Storage
  • 危険なFirewall
  • 弱いIAMロール
  • VMの設定ミス
  • APIの誤設定

✅ Azure

● Microsoft Defender for Cloud

検知する誤設定例:

  • 公開されたストレージ
  • 危険なNSGルール
  • 過剰権限のユーザ
  • 古いOSやパッケージ

🧩 4-5. クラウドの“最初の可視化チェックリスト”

✔ 外部公開ポートの棚卸し

  • 0.0.0.0/0 の禁止
  • 管理ポートの固定IP化

✔ ストレージバケットの公開状態

  • Public Access の禁止
  • 機微データの暗号化
  • バックアップの保護

✔ IAM 権限の棚卸し

  • 不要ユーザの削除
  • Administrator の最小化
  • 古いAPIキーの撤廃

✔ 公式の誤設定チェッカーを必ず有効化

  • AWS:Security Hub
  • GCP:Security Command Center
  • Azure:Defender for Cloud

🎯 結論:

クラウド事故のほとんどは“誤設定”。だから「見える化」だけで大部分を防げる。

企業のクラウドトラブルの実例はほぼ全て:

  • 公開禁止のファイルが公開されていた
  • 0.0.0.0/0 の開放忘れ
  • 過剰権限の IAM
  • 古い APIキーの放置

という “設定ミス” に起因します。

つまり…

クラウド=「設定の可視化」が最大の防御
   (技術的に難しい攻撃ではない)

非エンジニアの担当者でも
クラウドの大部分のリスクを削減できます。

Best regards, (^^ゞ