マネジメントコンソールからデフォルト設定でEC2を作成する危険性について

マネジメントコンソールからデフォルト設定でEC2を作成する危険性について

AWS環境でマネジメントコンソールからデフォルト設定で作成されたEC2インスタンスは、実は危険な状態に置かれています。この記事では、実際にデフォルト設定でインスタンスを起動し、Security Hub・Amazon Inspector・Amazon GuardDutyがどのような脅威を検知するのかを実例で紹介します。
2026.08.02

はじめに

皆様こんにちは、あかいけです。

私は普段、お客様のAWS環境のセキュリティアセスメントをする機会が多いのですが、ほぼ毎回のように遭遇するリソースがあります。
それは 「マネジメントコンソールからデフォルト設定で作成され、その後放置されている可哀想なEC2インスタンス」 です…。

今回はこのあるあるの危険性をお伝えするため、実際に1台作って確かめてみます。
どこが危ないのか、そしてSecurity Hub・Amazon Inspector・Amazon GuardDutyが何を検知するのかまで、実際の検出結果とあわせて見ていきましょう。

デフォルトで作成してみる

まずはマネジメントコンソールから、デフォルト設定でインスタンスを起動していきます。
名前だけ入力して、それ以外はすべてデフォルト設定で作成します。

スクリーンショット 2026-07-19 9.36.31

作成時にキーペアの選択ダイアログが出るので、今回は「キーペアなしで続行」を選択します。

スクリーンショット 2026-07-19 9.36.45

こうして作成されたインスタンスの設定は以下の通りでした。

  • 基本設定

    • Nameタグ:management-console-ec2
    • インスタンスタイプ:t3.micro
    • AMI ID:ami-0967230e9fa45db6d
    • AMI名:al2023-ami-2023.12.20260710.0-kernel-6.18-x86_64(Amazon Linux 2023)
    • 仮想化タイプ:hvm
    • アベイラビリティゾーン:ap-northeast-1a
    • テナンシー:default
    • 詳細モニタリング:無効
    • EBS最適化:有効
    • 拡張ネットワーキング(ENA):有効
    • キーペア:なし
    • IAMインスタンスプロファイル:なし
  • ネットワーク設定

    • VPC ID:デフォルトVPC
    • サブネットID:デフォルトパブリックサブネット
    • パブリックIPv4:自動割り当て
    • プライベートIPv4:自動割り当て
    • IPv6アドレス:なし
    • 送信元/送信先チェック(SourceDestCheck):有効
    • セキュリティグループ:新規作成セキュリティグループ
  • ストレージ

    • ルートデバイス名:/dev/xvda(EBS)
    • ボリュームタイプ:gp3
    • サイズ:8 GiB
    • IOPS:3000
    • スループット:125 MiB/s
    • 暗号化:なし
    • 終了時に削除(DeleteOnTermination):有効
  • インスタンスメタデータ(IMDS)

    • メタデータエンドポイント(HttpEndpoint):有効(enabled)
    • IMDSv2(HttpTokens):必須(required)
    • PUTレスポンスのホップ制限:2
    • メタデータのタグ取得:無効(disabled)
    • Nitro Enclaves:無効
    • 休止(Hibernation):無効

デンジャラスなポイント

この設定のまま放置すると何がまずいのか、特に危ないポイントを3つ挙げていきます。

インターネットから参照が可能

インスタンス作成時にVPCを指定しない場合はデフォルトVPCが利用されますが、デフォルトVPCのサブネットはパブリックIPを自動割り当てする設定がされています。

https://docs.aws.amazon.com/ja_jp/vpc/latest/userguide/default-vpc.html

そのため今回のインスタンスにも、パブリックIPが付与されていました。

スクリーンショット 2026-08-01 23.09.27

またVPC Block Public Accessという、VPC単位でインターネットとの通信を一括で遮断できる機能もありますが、この設定も明示的にオンにしない限りは有効になりません。

https://docs.aws.amazon.com/vpc/latest/userguide/security-vpc-bpa.html

つまりデフォルトのままでは、インターネットから参照が可能な状態にあるということです…。

SSH用ポートが全開放されている

自動作成されるセキュリティグループは、デフォルトではSSH(WindowsならRDP)を0.0.0.0/0に開放する設定がされます。

スクリーンショット 2026-08-01 23.09.37

そして前述のパブリックIPと組み合わさると、このSSH用ポートが世界中から到達可能となるわけです…。

EBSが暗号化されていない

デフォルト設定ではEBSは暗号化が無効化となります…。

スクリーンショット 2026-08-01 23.09.52

またEBSの暗号化設定はリージョン単位でデフォルトで暗号化を有効にできますが、この設定は明示的にオンにしない限りは設定されません。

https://docs.aws.amazon.com/ebs/latest/userguide/encryption-by-default.html

セキュリティサービスで起こる検知

前述のインスタンスを作成してから起動した状態で、そのまま1週間ほど放置してみました。
というわけでここからは、AWSのセキュリティサービスがこのインスタンスに対してどのような検知を出しているかを見ていきます。

AWS Security Hub CSPM

今回作成したリソース(インスタンス・セキュリティグループ・EBSボリューム)に紐づく失敗(FAILED)コントロールは、以下の5件でした。

コントロール 重要度 対象リソース 内容
EC2.19 CRITICAL セキュリティグループ 高リスクなポートへの無制限アクセスを許可しない
EC2.18 HIGH セキュリティグループ 許可されたポート以外への無制限アクセスを許可しない
EC2.9 HIGH インスタンス EC2インスタンスはパブリックIPv4アドレスを持つべきではない
EC2.3 MEDIUM EBSボリューム アタッチされたEBSボリュームは保管時に暗号化すべき
SSM.1 MEDIUM インスタンス EC2インスタンスはSSMで管理されるべき

前述したデンジャラスなポイントが、ほぼそのまま検出結果として並んでいますね。
各コントロールの詳細は、以下の公式ドキュメントに記載されています。

[EC2.19] Security groups should not allow unrestricted access to ports with high risk

SSH(22番)のような高リスクなポートを0.0.0.0/0に開放していることを検出しています。
セキュリティグループの全開放が、FSBPの中でも最も重い扱いになっている点は押さえておきたいところです。

https://docs.aws.amazon.com/securityhub/latest/userguide/ec2-controls.html#ec2-19

[EC2.18] Security groups should only allow unrestricted incoming traffic for authorized ports

許可されていないポートを無制限に開放していることを検出するコントロールです。
EC2.19と対象リソースは同じセキュリティグループですが、切り口が異なり、SSHの全開放が2つのコントロールに同時に引っかかっています。

https://docs.aws.amazon.com/securityhub/latest/userguide/ec2-controls.html#ec2-18

[EC2.9] EC2 instances should not have a public IPv4 address

インスタンスがパブリックIPv4アドレスを持っていることに対する検出です。
デフォルトサブネットの自動割り当てによってパブリックIPが付いた結果、このコントロールが失敗しています。

https://docs.aws.amazon.com/securityhub/latest/userguide/ec2-controls.html#ec2-9

[EC2.3] Attached Amazon EBS volumes should be encrypted at-rest

EBSボリュームが未暗号化であることに対する検出です。

https://docs.aws.amazon.com/securityhub/latest/userguide/ec2-controls.html#ec2-3

[SSM.1] Amazon EC2 instances should be managed by AWS Systems Manager

インスタンスがSystems Managerの管理下に無いことに対する検出です。
今回のインスタンスはIAMインスタンスプロファイルが未アタッチだったため、SSM Agentは動いていてもSSMからは管理できません。

https://docs.aws.amazon.com/securityhub/latest/userguide/ssm-controls.html#ssm-1

Amazon Inspector

Amazon Inspectorではパッケージ脆弱性とネットワーク到達可能性の2種類の検出が発生していました。

https://docs.aws.amazon.com/ja_jp/inspector/latest/user/findings-types.html

合計で33件の検出があり、内訳はHIGHが14件、MEDIUMが19件でした。

スクリーンショット 2026-08-01 23.40.19

パッケージ脆弱性

検出された32件は以下のとおりです。
Package vulnerabilityは32件で、Amazon Linux 2023の初期パッケージに含まれるkernelやvim、glib2、python3、sssd関連などのCVEが検出されていました。
(重要度・スコア順で並べています)

CVE 重要度 スコア 主な影響パッケージ
CVE-2026-14474 HIGH 8.8 libsss_certmapほかsssd関連
CVE-2026-6893 HIGH 8.8 dracut, dracut-config-generic
CVE-2026-14476 HIGH 8.0 libsss_certmapほかsssd関連
CVE-2026-40034 HIGH 7.8 rust-toolset-srpm-macros
CVE-2026-55693 HIGH 7.8 vim-commonほかvim関連
CVE-2026-57456 HIGH 7.8 vim-commonほかvim関連
CVE-2026-55895 HIGH 7.8 vim-commonほかvim関連
CVE-2026-58016 HIGH 7.5 glib2
CVE-2026-11972 HIGH 7.5 python3, python3-libs
CVE-2026-11940 HIGH 7.5 python3, python3-libs
CVE-2026-53078 HIGH 7.1 kernel6.18, kernel6.18-tools
CVE-2026-54369 HIGH 7.1 acl, libacl
CVE-2026-64600 HIGH 7.0 kernel6.18, kernel6.18-tools
CVE-2026-53359 HIGH 7.0 kernel6.18, kernel6.18-tools
CVE-2026-58012 MEDIUM 6.5 glib2
CVE-2026-58011 MEDIUM 6.5 glib2
CVE-2026-58013 MEDIUM 6.5 glib2
CVE-2026-57453 MEDIUM 6.5 vim-commonほかvim関連
CVE-2026-58010 MEDIUM 6.5 glib2
CVE-2026-12610 MEDIUM 6.4 libsss_certmapほかsssd関連
CVE-2026-54370 MEDIUM 6.3 acl, libacl
CVE-2026-57454 MEDIUM 6.1 vim-commonほかvim関連
CVE-2026-9669 MEDIUM 5.9 python3, python3-libs
CVE-2026-58015 MEDIUM 5.9 glib2
CVE-2026-0864 MEDIUM 5.5 python3, python3-libs
CVE-2026-6245 MEDIUM 5.5 libsss_certmapほかsssd関連
CVE-2026-55892 MEDIUM 5.5 vim-commonほかvim関連
CVE-2026-57451 MEDIUM 5.3 vim-commonほかvim関連
CVE-2026-3276 MEDIUM 5.3 python3, python3-libs
CVE-2026-58014 MEDIUM 5.1 glib2
CVE-2026-11850 MEDIUM 5.0 krb5-libs
CVE-2026-57455 MEDIUM 4.7 vim-commonほかvim関連

作りたてのインスタンスであっても、AMIの時点で既知の脆弱性を抱えているものは検出されます。
特に今回のように起動後にdnf updateをかけていない状態だとよく検知が発生します。

ネットワーク到達可能性

残りの1件はNetwork reachabilityの検出で、内容は以下のとおりでした。

項目
タイトル Port 22 is reachable from an Internet Gateway - TCP
開いているネットワークパス Internet Gateway > Network Acl > Security Group > Network Interface Instance

インターネットゲートウェイ経由で22番ポートに到達できてしまう、という検出です。
CSPMにも同様の内容の検出はありましたが、Inspectorはも同様に外部から到達可能だと判定されたため検出されています。

Amazon GuardDuty

最後にAmazon GuardDutyです。
ここが今回もっとも 「デフォルト設定の危険性」 を実感した部分でした。

対象インスタンスに対して上がっていた検出は以下の1件でした。

スクリーンショット 2026-08-01 23.34.20

UnauthorizedAccess:EC2/SSHBruteForceは、EC2インスタンスがSSHの総当たり攻撃に晒されていることを示す検出タイプであり、このインスタンスに対してSSHの総当たり攻撃が行われた疑いがあります。

https://docs.aws.amazon.com/ja_jp/guardduty/latest/ug/guardduty_finding-types-ec2.html#unauthorizedaccess-ec2-sshbruteforce

Security HubやInspectorが「危ない状態である」という設定上の検出だったのに対し、GuardDutyは「実際に攻撃を受けている疑いがある」という実害の検出です。

なお、Amazon Linux 2023はデフォルトでSSHのパスワード認証が無効なので、この総当たりが即侵入につながるわけではありません。(今回の場合はキーペアも作成していないため、実質ログインは不可能)

それでもパブリックIPがついているインスタンスでSSHを全開放で晒し、放置している間に見知らぬ相手から攻撃対象にされていた、という事実は重く受け止めるべきでしょう…。

さいごに

以上、マネジメントコンソールからデフォルト設定でEC2を作成する危険性についてでした。
まとめると、マネジメントコンソールからポチポチで作れてしまうデフォルト設定は、実際には次のような危険な設定となっていました。

  • パブリックIPが付与される
  • SSHが全開放されている
  • EBSが暗号化されていない

冒頭でお話ししたとおり、私がお客様のAWS環境のセキュリティアセスメントする際にこうしたインスタンスをほぼ毎回見かけます。
ただしこれらの対策は、SSHのソースを絞る or 接続はSession Managerにする / パブリックIPを付けない / パッケージのアップデートをするといったひと手間でできます。

とはいえ、どうしてもこういった可哀想なインスタンスはいつの間にか誰かが作成していることが多々あります…。
なので今回のようにSecurity Hub・Amazon Inspector・Amazon GuardDutyを有効にしておくと、設定上の不備から実際の攻撃まで、多層的に気付ける状態になるので、これらは有効化をおすすめします。

以上、「とりあえずデフォルトで作って放置した一台」が、思いのほか危うい入り口になり得ることを、この記事から感じ取っていただければ幸いです。

この記事をシェアする

AWSのお困り事はクラスメソッドへ

関連記事