mirror of
https://github.com/HackTricks-wiki/hacktricks-cloud.git
synced 2026-01-08 11:21:00 -08:00
366 lines
27 KiB
Markdown
366 lines
27 KiB
Markdown
# AWS Pentesting
|
||
|
||
{{#include ../../banners/hacktricks-training.md}}
|
||
|
||
## Основна інформація
|
||
|
||
**Перед початком пентестингу** середовища **AWS** є кілька **основних речей, які вам потрібно знати** про те, як працює AWS, щоб допомогти вам зрозуміти, що потрібно робити, як знаходити неправильні налаштування та як їх експлуатувати.
|
||
|
||
Концепції, такі як ієрархія організації, IAM та інші базові концепції, пояснюються в:
|
||
|
||
{{#ref}}
|
||
aws-basic-information/
|
||
{{#endref}}
|
||
|
||
## Лабораторії для навчання
|
||
|
||
- [https://github.com/RhinoSecurityLabs/cloudgoat](https://github.com/RhinoSecurityLabs/cloudgoat)
|
||
- [https://github.com/BishopFox/iam-vulnerable](https://github.com/BishopFox/iam-vulnerable)
|
||
- [https://github.com/nccgroup/sadcloud](https://github.com/nccgroup/sadcloud)
|
||
- [https://github.com/bridgecrewio/terragoat](https://github.com/bridgecrewio/terragoat)
|
||
- [https://github.com/ine-labs/AWSGoat](https://github.com/ine-labs/AWSGoat)
|
||
- [http://flaws.cloud/](http://flaws.cloud/)
|
||
- [http://flaws2.cloud/](http://flaws2.cloud/)
|
||
|
||
Інструменти для симуляції атак:
|
||
|
||
- [https://github.com/Datadog/stratus-red-team/](https://github.com/Datadog/stratus-red-team/)
|
||
- [https://github.com/sbasu7241/AWS-Threat-Simulation-and-Detection/tree/main](https://github.com/sbasu7241/AWS-Threat-Simulation-and-Detection/tree/main)
|
||
|
||
## Методологія AWS Pentester/Red Team
|
||
|
||
Для аудиту середовища AWS дуже важливо знати: які **послуги використовуються**, що **експонується**, хто має **доступ** до чого, і як внутрішні AWS послуги та **зовнішні послуги** з'єднані.
|
||
|
||
З точки зору Red Team, **перший крок для компрометації середовища AWS** - це отримати деякі **облікові дані**. Ось кілька ідей, як це зробити:
|
||
|
||
- **Витоки** в github (або подібних) - OSINT
|
||
- **Соціальна** інженерія
|
||
- Повторне використання **паролів** (витоки паролів)
|
||
- Вразливості в AWS-розміщених додатках
|
||
- [**Server Side Request Forgery**](https://book.hacktricks.xyz/pentesting-web/ssrf-server-side-request-forgery/cloud-ssrf) з доступом до метаданих
|
||
- **Читання локальних файлів**
|
||
- `/home/USERNAME/.aws/credentials`
|
||
- `C:\Users\USERNAME\.aws\credentials`
|
||
- 3-ті сторони **зламані**
|
||
- **Внутрішній** співробітник
|
||
- [**Cognito** ](aws-services/aws-cognito-enum/#cognito)облікові дані
|
||
|
||
Або шляхом **компрометації неавтентифікованої служби**, що експонується:
|
||
|
||
{{#ref}}
|
||
aws-unauthenticated-enum-access/
|
||
{{#endref}}
|
||
|
||
Або, якщо ви проводите **огляд**, ви можете просто **попросити облікові дані** з цими ролями:
|
||
|
||
{{#ref}}
|
||
aws-permissions-for-a-pentest.md
|
||
{{#endref}}
|
||
|
||
> [!NOTE]
|
||
> Після того, як ви змогли отримати облікові дані, вам потрібно знати, **кому належать ці облікові дані**, і **до чого вони мають доступ**, тому вам потрібно виконати деяку базову енумерацію:
|
||
|
||
## Базова енумерація
|
||
|
||
### SSRF
|
||
|
||
Якщо ви знайшли SSRF на машині всередині AWS, перевірте цю сторінку для трюків:
|
||
|
||
{{#ref}}
|
||
https://book.hacktricks.xyz/pentesting-web/ssrf-server-side-request-forgery/cloud-ssrf
|
||
{{#endref}}
|
||
|
||
### Whoami
|
||
|
||
Однією з перших речей, які вам потрібно знати, є те, хто ви (в якому обліковому записі ви знаходитесь та інша інформація про середовище AWS):
|
||
```bash
|
||
# Easiest way, but might be monitored?
|
||
aws sts get-caller-identity
|
||
aws iam get-user # This will get your own user
|
||
|
||
# If you have a Key ID
|
||
aws sts get-access-key-info --access-key-id=ASIA1234567890123456
|
||
|
||
# Get inside error message
|
||
aws sns publish --topic-arn arn:aws:sns:us-east-1:*account id*:aaa --message aaa
|
||
|
||
# From metadata
|
||
TOKEN=`curl -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 21600"`
|
||
curl -H "X-aws-ec2-metadata-token: $TOKEN" http://169.254.169.254/latest/dynamic/instance-identity/document
|
||
```
|
||
> [!CAUTION]
|
||
> Зверніть увагу, що компанії можуть використовувати **canary tokens** для виявлення, коли **токени крадуться та використовуються**. Рекомендується перевірити, чи є токен canary token, перш ніж його використовувати.\
|
||
> Для отримання додаткової інформації [**перевірте цю сторінку**](aws-services/aws-security-and-detection-services/aws-cloudtrail-enum.md#honeytokens-bypass).
|
||
|
||
### Org Enumeration
|
||
|
||
{{#ref}}
|
||
aws-services/aws-organizations-enum.md
|
||
{{#endref}}
|
||
|
||
### IAM Enumeration
|
||
|
||
Якщо у вас достатньо прав, **перевірка привілеїв кожної сутності всередині облікового запису AWS** допоможе вам зрозуміти, що ви та інші ідентичності можете робити і як **підвищити привілеї**.
|
||
|
||
Якщо у вас недостатньо прав для перерахунку IAM, ви можете **викрасти їх за допомогою брутфорсу**, щоб їх з'ясувати.\
|
||
Перевірте **як виконати нумерацію та брутфорс** в:
|
||
|
||
{{#ref}}
|
||
aws-services/aws-iam-enum.md
|
||
{{#endref}}
|
||
|
||
> [!NOTE]
|
||
> Тепер, коли ви **маєте деяку інформацію про свої облікові дані** (і якщо ви червона команда, сподіваюся, ви **не були виявлені**). Час з'ясувати, які сервіси використовуються в середовищі.\
|
||
> У наступному розділі ви можете перевірити деякі способи **перерахунку деяких загальних сервісів.**
|
||
|
||
## Services Enumeration, Post-Exploitation & Persistence
|
||
|
||
AWS має вражаючу кількість сервісів, на наступній сторінці ви знайдете **основну інформацію, нумерацію** cheatsheets\*\*,\*\* як **уникнути виявлення**, отримати **постійність** та інші **післяексплуатаційні** трюки про деякі з них:
|
||
|
||
{{#ref}}
|
||
aws-services/
|
||
{{#endref}}
|
||
|
||
Зверніть увагу, що вам **не потрібно** виконувати всю роботу **вручну**, нижче в цьому пості ви можете знайти **розділ про** [**автоматичні інструменти**](./#automated-tools).
|
||
|
||
Більше того, на цьому етапі ви могли виявити **більше сервісів, доступних для неавтентифікованих користувачів,** ви можете мати можливість їх експлуатувати:
|
||
|
||
{{#ref}}
|
||
aws-unauthenticated-enum-access/
|
||
{{#endref}}
|
||
|
||
## Privilege Escalation
|
||
|
||
Якщо ви можете **перевірити принаймні свої власні права** на різні ресурси, ви могли б **перевірити, чи можете ви отримати додаткові права**. Вам слід зосередитися принаймні на правах, вказаних у:
|
||
|
||
{{#ref}}
|
||
aws-privilege-escalation/
|
||
{{#endref}}
|
||
|
||
## Publicly Exposed Services
|
||
|
||
Під час перерахунку сервісів AWS ви могли знайти деякі з них, **які відкривають елементи в Інтернеті** (порти VM/контейнерів, бази даних або сервіси черг, знімки або кошики...).\
|
||
Як pentester/red teamer ви завжди повинні перевіряти, чи можете ви знайти **чутливу інформацію / вразливості** на них, оскільки вони можуть надати вам **додатковий доступ до облікового запису AWS**.
|
||
|
||
У цій книзі ви повинні знайти **інформацію** про те, як знайти **відкриті сервіси AWS та як їх перевірити**. Щодо того, як знайти **вразливості у відкритих мережевих сервісах**, я б рекомендував вам **шукати** конкретний **сервіс** в:
|
||
|
||
{{#ref}}
|
||
https://book.hacktricks.xyz/
|
||
{{#endref}}
|
||
|
||
## Compromising the Organization
|
||
|
||
### From the root/management account
|
||
|
||
Коли обліковий запис управління створює нові облікові записи в організації, у новому обліковому записі створюється **нова роль**, за замовчуванням називана **`OrganizationAccountAccessRole`** і надає політику **AdministratorAccess** для **облікового запису управління** для доступу до нового облікового запису.
|
||
|
||
<figure><img src="../../images/image (171).png" alt=""><figcaption></figcaption></figure>
|
||
|
||
Отже, для доступу як адміністратора до дочірнього облікового запису вам потрібно:
|
||
|
||
- **Скомпрометувати** **управлінський** обліковий запис і знайти **ID** **дочірніх облікових записів** та **імена** **ролі** (за замовчуванням OrganizationAccountAccessRole), що дозволяє обліковому запису управління отримати доступ як адміністратор.
|
||
- Щоб знайти дочірні облікові записи, перейдіть до розділу організацій у консолі aws або виконайте `aws organizations list-accounts`
|
||
- Ви не можете знайти назву ролей безпосередньо, тому перевірте всі користувацькі політики IAM і шукайте будь-які, що дозволяють **`sts:AssumeRole` над раніше виявленими дочірніми обліковими записами**.
|
||
- **Скомпрометувати** **принципала** в управлінському обліковому записі з **дозволом `sts:AssumeRole` над роллю в дочірніх облікових записах** (навіть якщо обліковий запис дозволяє будь-кому з управлінського облікового запису видавати себе, оскільки це зовнішній обліковий запис, специфічні дозволи `sts:AssumeRole` є необхідними).
|
||
|
||
## Automated Tools
|
||
|
||
### Recon
|
||
|
||
- [**aws-recon**](https://github.com/darkbitio/aws-recon): Багатопотоковий інструмент для збору **інвентаризації**, орієнтований на безпеку AWS, написаний на Ruby.
|
||
```bash
|
||
# Install
|
||
gem install aws_recon
|
||
|
||
# Recon and get json
|
||
AWS_PROFILE=<profile> aws_recon \
|
||
--services S3,EC2 \
|
||
--regions global,us-east-1,us-east-2 \
|
||
--verbose
|
||
```
|
||
- [**cloudlist**](https://github.com/projectdiscovery/cloudlist): Cloudlist - це **інструмент для багатохмарного отримання активів** (імена хостів, IP-адреси) від постачальників хмар.
|
||
- [**cloudmapper**](https://github.com/duo-labs/cloudmapper): CloudMapper допомагає вам аналізувати ваші середовища Amazon Web Services (AWS). Тепер він містить набагато більше функціональності, включаючи аудит на предмет проблем безпеки.
|
||
```bash
|
||
# Installation steps in github
|
||
# Create a config.json file with the aws info, like:
|
||
{
|
||
"accounts": [
|
||
{
|
||
"default": true,
|
||
"id": "<account id>",
|
||
"name": "dev"
|
||
}
|
||
],
|
||
"cidrs":
|
||
{
|
||
"2.2.2.2/28": {"name": "NY Office"}
|
||
}
|
||
}
|
||
|
||
# Enumerate
|
||
python3 cloudmapper.py collect --profile dev
|
||
## Number of resources discovered
|
||
python3 cloudmapper.py stats --accounts dev
|
||
|
||
# Create HTML report
|
||
## In the report you will find all the info already
|
||
python3 cloudmapper.py report --accounts dev
|
||
|
||
# Identify potential issues
|
||
python3 cloudmapper.py audit --accounts dev --json > audit.json
|
||
python3 cloudmapper.py audit --accounts dev --markdow > audit.md
|
||
python3 cloudmapper.py iam_report --accounts dev
|
||
|
||
# Identify admins
|
||
## The permissions search for are in https://github.com/duo-labs/cloudmapper/blob/4df9fd7303e0337ff16a08f5e58f1d46047c4a87/shared/iam_audit.py#L163-L175
|
||
python3 cloudmapper.py find_admins --accounts dev
|
||
|
||
# Identify unused elements
|
||
python3 cloudmapper.py find_unused --accounts dev
|
||
|
||
# Identify publivly exposed resources
|
||
python3 cloudmapper.py public --accounts dev
|
||
|
||
python cloudmapper.py prepare #Prepare webserver
|
||
python cloudmapper.py webserver #Show webserver
|
||
```
|
||
- [**cartography**](https://github.com/lyft/cartography): Cartography - це інструмент на Python, який консолідує інфраструктурні активи та відносини між ними в інтуїтивно зрозумілому графічному вигляді, що працює на базі Neo4j.
|
||
```bash
|
||
# Install
|
||
pip install cartography
|
||
## At the time of this writting you need neo4j version 3.5.*
|
||
|
||
# Get AWS info
|
||
AWS_PROFILE=dev cartography --neo4j-uri bolt://127.0.0.1:7687 --neo4j-password-prompt --neo4j-user neo4j
|
||
```
|
||
- [**starbase**](https://github.com/JupiterOne/starbase): Starbase збирає активи та відносини з сервісів і систем, включаючи хмарну інфраструктуру, SaaS-додатки, засоби безпеки та інше в інтуїтивно зрозумілому графічному вигляді, підтримуваному базою даних Neo4j.
|
||
- [**aws-inventory**](https://github.com/nccgroup/aws-inventory): (Використовує python2) Це інструмент, який намагається **виявити всі** [**ресурси AWS**](https://docs.aws.amazon.com/general/latest/gr/glos-chap.html#resource), створені в обліковому записі.
|
||
- [**aws_public_ips**](https://github.com/arkadiyt/aws_public_ips): Це інструмент для **отримання всіх публічних IP-адрес** (як IPv4, так і IPv6), пов'язаних з обліковим записом AWS.
|
||
|
||
### Privesc & Exploiting
|
||
|
||
- [**SkyArk**](https://github.com/cyberark/SkyArk)**:** Виявляє найбільш привілейованих користувачів у сканованому середовищі AWS, включаючи AWS Shadow Admins. Він використовує PowerShell. Ви можете знайти **визначення привілейованих політик** у функції **`Check-PrivilegedPolicy`** в [https://github.com/cyberark/SkyArk/blob/master/AWStealth/AWStealth.ps1](https://github.com/cyberark/SkyArk/blob/master/AWStealth/AWStealth.ps1).
|
||
- [**pacu**](https://github.com/RhinoSecurityLabs/pacu): Pacu - це відкритий **фреймворк експлуатації AWS**, призначений для тестування безпеки в наступальних цілях проти хмарних середовищ. Він може **перераховувати**, знаходити **неправильні конфігурації** та **експлуатувати** їх. Ви можете знайти **визначення привілейованих дозволів** в [https://github.com/RhinoSecurityLabs/pacu/blob/866376cd711666c775bbfcde0524c817f2c5b181/pacu/modules/iam\_\_privesc_scan/main.py#L134](https://github.com/RhinoSecurityLabs/pacu/blob/866376cd711666c775bbfcde0524c817f2c5b181/pacu/modules/iam__privesc_scan/main.py#L134) всередині словника **`user_escalation_methods`**.
|
||
- Зверніть увагу, що pacu **перевіряє лише ваші власні шляхи підвищення привілеїв** (не в межах облікового запису).
|
||
```bash
|
||
# Install
|
||
## Feel free to use venvs
|
||
pip3 install pacu
|
||
|
||
# Use pacu CLI
|
||
pacu
|
||
> import_keys <profile_name> # import 1 profile from .aws/credentials
|
||
> import_keys --all # import all profiles
|
||
> list # list modules
|
||
> exec iam__enum_permissions # Get permissions
|
||
> exec iam__privesc_scan # List privileged permissions
|
||
```
|
||
- [**PMapper**](https://github.com/nccgroup/PMapper): Principal Mapper (PMapper) - це скрипт і бібліотека для виявлення ризиків у конфігурації AWS Identity and Access Management (IAM) для облікового запису AWS або організації AWS. Він моделює різних IAM користувачів і ролей в обліковому записі як орієнтований граф, що дозволяє перевіряти **підвищення привілеїв** та альтернативні шляхи, якими зловмисник може отримати доступ до ресурсу або дії в AWS. Ви можете перевірити **дозволи, використані для знаходження privesc** шляхів у файлах, що закінчуються на `_edges.py` в [https://github.com/nccgroup/PMapper/tree/master/principalmapper/graphing](https://github.com/nccgroup/PMapper/tree/master/principalmapper/graphing)
|
||
```bash
|
||
# Install
|
||
pip install principalmapper
|
||
|
||
# Get data
|
||
pmapper --profile dev graph create
|
||
pmapper --profile dev graph display # Show basic info
|
||
# Generate graph
|
||
pmapper --profile dev visualize # Generate svg graph file (can also be png, dot and graphml)
|
||
pmapper --profile dev visualize --only-privesc # Only privesc permissions
|
||
|
||
# Generate analysis
|
||
pmapper --profile dev analysis
|
||
## Run queries
|
||
pmapper --profile dev query 'who can do iam:CreateUser'
|
||
pmapper --profile dev query 'preset privesc *' # Get privescs with admins
|
||
|
||
# Get organization hierarchy data
|
||
pmapper --profile dev orgs create
|
||
pmapper --profile dev orgs display
|
||
```
|
||
- [**cloudsplaining**](https://github.com/salesforce/cloudsplaining): Cloudsplaining - це інструмент оцінки безпеки AWS IAM, який виявляє порушення принципу найменших привілеїв і генерує звіт у форматі HTML з пріоритетом ризику.\
|
||
Він покаже вам потенційно **переповнені привілеї** клієнта, вбудовані та aws **політики** та які **суб'єкти мають доступ до них**. (Він не тільки перевіряє на privesc, але й інші види цікавих дозволів, рекомендовано використовувати).
|
||
```bash
|
||
# Install
|
||
pip install cloudsplaining
|
||
|
||
# Download IAM policies to check
|
||
## Only the ones attached with the versions used
|
||
cloudsplaining download --profile dev
|
||
|
||
# Analyze the IAM policies
|
||
cloudsplaining scan --input-file /private/tmp/cloudsplaining/dev.json --output /tmp/files/
|
||
```
|
||
- [**cloudjack**](https://github.com/prevade/cloudjack): CloudJack оцінює облікові записи AWS на наявність **вразливостей перехоплення піддоменів** внаслідок розділених конфігурацій Route53 та CloudFront.
|
||
- [**ccat**](https://github.com/RhinoSecurityLabs/ccat): Список репозиторіїв ECR -> Витягти репозиторій ECR -> Задній доступ -> Відправити зворотне зображення
|
||
- [**Dufflebag**](https://github.com/bishopfox/dufflebag): Dufflebag - це інструмент, який **шукає** через публічні знімки Elastic Block Storage (**EBS**) на наявність секретів, які могли бути випадково залишені.
|
||
|
||
### Аудит
|
||
|
||
- [**cloudsploit**](https://github.com/aquasecurity/cloudsploit)**:** CloudSploit від Aqua - це проект з відкритим кодом, призначений для виявлення **ризиків безпеки в облікових записах хмарної інфраструктури**, включаючи: Amazon Web Services (AWS), Microsoft Azure, Google Cloud Platform (GCP), Oracle Cloud Infrastructure (OCI) та GitHub (не шукає ShadowAdmins).
|
||
```bash
|
||
./index.js --csv=file.csv --console=table --config ./config.js
|
||
|
||
# Compiance options: --compliance {hipaa,cis,cis1,cis2,pci}
|
||
## use "cis" for cis level 1 and 2
|
||
```
|
||
- [**Prowler**](https://github.com/prowler-cloud/prowler): Prowler - це інструмент з відкритим кодом для проведення оцінок найкращих практик безпеки AWS, аудитів, реагування на інциденти, безперервного моніторингу, зміцнення та готовності до судово-медичної експертизи.
|
||
```bash
|
||
# Install python3, jq and git
|
||
# Install
|
||
pip install prowler
|
||
prowler -v
|
||
|
||
# Run
|
||
prowler <provider>
|
||
prowler aws --profile custom-profile [-M csv json json-asff html]
|
||
```
|
||
- [**CloudFox**](https://github.com/BishopFox/cloudfox): CloudFox допомагає вам отримати ситуаційну обізнаність у незнайомих хмарних середовищах. Це інструмент командного рядка з відкритим вихідним кодом, створений для допомоги тестувальникам на проникнення та іншим фахівцям з наступальної безпеки у знаходженні експлуатованих шляхів атаки в хмарній інфраструктурі.
|
||
```bash
|
||
cloudfox aws --profile [profile-name] all-checks
|
||
```
|
||
- [**ScoutSuite**](https://github.com/nccgroup/ScoutSuite): Scout Suite - це інструмент для аудиту безпеки в мульти-хмарах з відкритим кодом, який дозволяє оцінювати безпекову позицію хмарних середовищ.
|
||
```bash
|
||
# Install
|
||
virtualenv -p python3 venv
|
||
source venv/bin/activate
|
||
pip install scoutsuite
|
||
scout --help
|
||
|
||
# Get info
|
||
scout aws -p dev
|
||
```
|
||
- [**cs-suite**](https://github.com/SecurityFTW/cs-suite): Cloud Security Suite (використовує python2.7 і виглядає непідтримуваним)
|
||
- [**Zeus**](https://github.com/DenizParlak/Zeus): Zeus - потужний інструмент для найкращих практик зміцнення AWS EC2 / S3 / CloudTrail / CloudWatch / KMS (виглядає непідтримуваним). Він перевіряє лише стандартно налаштовані облікові дані в системі.
|
||
|
||
### Постійний аудит
|
||
|
||
- [**cloud-custodian**](https://github.com/cloud-custodian/cloud-custodian): Cloud Custodian - це механізм правил для управління обліковими записами та ресурсами публічного хмари. Він дозволяє користувачам **визначати політики для забезпечення добре керованої хмарної інфраструктури**, яка є як безпечною, так і оптимізованою за витратами. Він консолідує багато з тих випадкових скриптів, які мають організації, в легкий і гнучкий інструмент з єдиними метриками та звітністю.
|
||
- [**pacbot**](https://github.com/tmobile/pacbot)**: Policy as Code Bot (PacBot)** - це платформа для **безперервного моніторингу відповідності, звітності про відповідність та автоматизації безпеки для хмари**. У PacBot політики безпеки та відповідності реалізовані як код. Всі ресурси, виявлені PacBot, оцінюються відповідно до цих політик для оцінки відповідності політикам. Рамка **автоматичного виправлення** PacBot надає можливість автоматично реагувати на порушення політик, вживаючи попередньо визначені дії.
|
||
- [**streamalert**](https://github.com/airbnb/streamalert)**:** StreamAlert - це безсерверна, **реальна** система аналізу даних, яка дозволяє вам **збирати, аналізувати та сповіщати** про дані з будь-якого середовища, **використовуючи джерела даних та логіку сповіщень, які ви визначаєте**. Команди комп'ютерної безпеки використовують StreamAlert для сканування терабайтів журналів щодня для виявлення інцидентів та реагування на них.
|
||
|
||
## DEBUG: Захоплення запитів AWS cli
|
||
```bash
|
||
# Set proxy
|
||
export HTTP_PROXY=http://localhost:8080
|
||
export HTTPS_PROXY=http://localhost:8080
|
||
|
||
# Capture with burp nor verifying ssl
|
||
aws --no-verify-ssl ...
|
||
|
||
# Dowload brup cert and transform it to pem
|
||
curl http://127.0.0.1:8080/cert --output Downloads/certificate.cer
|
||
openssl x509 -inform der -in Downloads/certificate.cer -out Downloads/certificate.pem
|
||
|
||
# Indicate the ca cert to trust
|
||
export AWS_CA_BUNDLE=~/Downloads/certificate.pem
|
||
|
||
# Run aws cli normally trusting burp cert
|
||
aws ...
|
||
```
|
||
## Посилання
|
||
|
||
- [https://www.youtube.com/watch?v=8ZXRw4Ry3mQ](https://www.youtube.com/watch?v=8ZXRw4Ry3mQ)
|
||
- [https://cloudsecdocs.com/aws/defensive/tooling/audit/](https://cloudsecdocs.com/aws/defensive/tooling/audit/)
|
||
|
||
{{#include ../../banners/hacktricks-training.md}}
|