1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

AWS Security Agent のプレビューに挑んでエラーと格闘した記録

Last updated at Posted at 2025-12-26

AWS re:Invent 2025にて発表された「AWS Security Agent」
AIがテストしてくれるらしい~とかで興味を持って動確しようとしたんですが、どうもうまくいかず、結局解決できなかったオチです。

AWS Securyty Agentって?

AWS re:Invent 2025にて発表されたAWS Security Agentは、生成AIを活用してアプリケーションのセキュリティ評価を自動化・スケールさせる新サービスです。
現在はプレビュー期間で、リージョンはus-east-1のみですが、無料で使用できます。
3つのレビュー機能があって、

  • 設計レビュー
    アーキテクチャ図や製品仕様書を分析し、計画段階で潜在的なセキュリティリスクを特定します。

  • コードレビュー
    プルリクエストを自動分析し、組織のセキュリティ要件や一般的な脆弱性に対する修正案を提示します。

  • ペネトレーションテスト (侵入テスト)
    AIが多段階の攻撃シナリオをオンデマンドで実行し、実際に悪用可能な脆弱性を検証します。

ペネトレーションテストはどうも実際にAIがどんな根拠でどんなテストをしたかがわかるらしい・・・
https___qiita-image-store.s3.ap-northeast-1.amazonaws.com_0_4197774_fc304392-d1dc-41a7-85bb-3a2ad4efbbc6.avif

挙句にGithubを連携すれば修正済みのプルリクまで用意してくれるらしく、人間はPRレビューするだけで脆弱性対応ができてしまうとのこと。すごい時代になりましたね。

実際にやってみる

まずこちらの記事を参考に、テスト環境を作ってみます。
(ありがたいことにCfnテンプレートを置いてくれているので拝借)

PrivateサブネットにEC2を置いて、DockerでDVWAを動かします。
その結果、記事と同様エラーになってしまいました。

image.png

ウェブアプリの文面見る限りではsetupのどこかでこけてるっぽい・・・?
ちょっと情報が少なくて原因が絞り込めないですね。
image.png

HTTPS化

悩みながらpentestの設定項目を見ていて気が付いたのですが、
{46804F3D-63FF-45D9-8763-C224C94F09CF}.png
これ、URLがhttps指定じゃないといけないのかも?と思いました。
とりあえず試してみようということで、前段にALBを置き、
そいつをHTTPS化させてEC2にロードバランシングしてもらえばいいかなと考えました。
ざっくり構成としては以下のような感じ
名称未設定ファイル.drawio.png

まず宛先をEC2に設定したターゲットグループを作成します。
タイトルなし.png
ヘルスチェックはとりあえずlogin.phpに投げます。
image.png

ALBも続けて作成します。ターゲットグループに先ほど作成したtest-tgを指定しておきます。
タイトルなし1.png

続いてこちらを参考に自己証明書(所謂オレオレ証明書)を作成し、ACMへインポートします。

CSRファイルの作成時「Common Name」にRoute53で作成したプライベートホストゾーン名を指定しました。
そして先ほど作成したALBで「リスナーの追加」を選択
タイトルなし2.png
プロトコルにHTTPSを指定し、デフォルト SSL/TLS サーバー証明書に作成した証明書を指定してリスナーを追加します。
image.png

タイトルなし4.png

次にRoute53にレコードを追加します。ルーティング先を先ほど作成したALBに設定します。

image.png
EC2でアクセス確認

#Route53に登録したレコード名でアクセス確認
$ curl -I https://<レコード名> -k

これが通ればひとまずHTTPS化はOK

Security Agentに戻ってHTTPS化したレコードでテストを作成、実行します。
image.png

が・・・・・
駄目っ・・・・・!

タイトルなし4444.png

ドメインのステータスが「到達不能」になっていた

ここで改めて管理コンソールを改めて見てみると、ドメインのステータスが到達不能となっています。
タイトルなし45.png
これがうまくいってないのが原因では?と考えたのですが、これもまた違うようです。

それを試すためにまず、到達不能となっているドメインのレコードでVPCを指定せずテスト作成して実行してみます。
image.png
また別のエラーが出てきました。

Error
Cannot start pentest execution. Domain dvwa.internal is UNREACHABLE but pentest has no VPC configuration. UNREACHABLE domains require VPC configuration for runtime verification.

到達不能になっているドメインのテストをする際はVPCを設定しろということだそうです。

つまり到達不能になっているドメインはVPC指定が必須→プライベートサブネットのアプリケーションのドメインには到達不能になるのがデフォってことなんじゃないかと・・・。
パブリックのドメインであれば到達不能にはならないんですかね?
試したいところですがドメイン代がかかるのでここまでにしておきます。

AWS側の不具合??

何か手がかりがないかとCloudtrailで気になるものがありました。
※一部抜粋、原文ママ

    "eventTime": "2025-12-26T13:11:17Z",
    "eventSource": "ec2.amazonaws.com",
    "eventName": "CreateNetworkInterfacePermission",
    "awsRegion": "us-east-1",
    "sourceIPAddress": "securityagent.amazonaws.com",
    "userAgent": "securityagent.amazonaws.com",
    "errorCode": "Client.InvalidNetworkInterfaceID.NotFound",
    "errorMessage": "The interface ID 'eni-123' does not exist",
    "requestParameters": {
        "CreateNetworkInterfacePermissionRequest": {
            "AwsAccountId": "123456789012",
            "Permission": "INSTANCE-ATTACH",
            "NetworkInterfaceId": "eni-123"
        }
    },

なにやら123456789012といういかにもテスト用っぽい存在しないアカウントで
eni-123というこれまたテスト用っぽいENIに権限付与しようとして失敗してます。

結果

解決できず。原因不明。
AWS側の不具合な気がしないでもないですがプレビュー版だから仕方無しですかね~~

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?