Pentesting Cloud Metodolojisi
Tip
AWS Hacking’i öğrenin ve pratik yapın:
HackTricks Training AWS Red Team Expert (ARTE)
GCP Hacking’i öğrenin ve pratik yapın:HackTricks Training GCP Red Team Expert (GRTE)
Az Hacking’i öğrenin ve pratik yapın:HackTricks Training Azure Red Team Expert (AzRTE)
HackTricks'i Destekleyin
- Abonelik planlarını kontrol edin!
- Katılın 💬 Discord group veya telegram group veya Twitter’da bizi takip edin 🐦 @hacktricks_live.
- PR göndererek hacking tricks paylaşın: HackTricks ve HackTricks Cloud github repos.
Temel Metodoloji
Her bulutun kendine ait özellikleri vardır fakat genel olarak bir pentester’ın bir cloud ortamını test ederken kontrol etmesi gereken birkaç ortak şey vardır:
- Benchmark kontrolleri
- Bu, ortamın büyüklüğünü ve kullanılan servisleri anlamanıza yardımcı olur
- Ayrıca çoğu testi otomatik araçlarla gerçekleştirebileceğiniz için bazı hızlı yanlış yapılandırmaları bulmanızı sağlar
- Services Enumeration
- Eğer benchmark testlerini doğru yaptıysanız burada muhtemelen çok daha fazla yanlış yapılandırma bulamazsınız, ancak benchmark testinde aranmayan bazı şeyleri bulabilirsiniz.
- Bu, cloud ortamında tam olarak nelerin kullanıldığını bilmenizi sağlar
- Bir sonraki adımlarda çok yardımcı olur
- Check exposed assets
- Bu, önceki bölüm sırasında yapılabilir; İnternete bir şekilde potansiyel olarak açık olan her şeyi ve bunun nasıl erişildiğini bulmanız gerekir.
- Burada manuel olarak açığa çıkarılan altyapıyı (web sayfası olan instance’lar veya diğer portların açık olduğu örnekler gibi) ve ayrıca açılacak şekilde yapılandırılabilen diğer cloud yönetimli servisleri (ör. DBs veya buckets) ele alıyorum
- Sonra bu kaynağın açık olup olmadığını kontrol etmelisiniz (gizli bilgi? zafiyetler? açığa çıkmış serviste yanlış yapılandırmalar?)
- Check permissions
- Burada cloud içindeki her rol/kullanıcının tüm izinlerini ve bunların nasıl kullanıldığını bulmalısınız
- Çok fazla yüksek ayrıcalıklı (her şeyi kontrol eden) hesap var mı? Oluşturulmuş anahtarlar kullanılmıyor mu?… Bu kontrollerin çoğu zaten benchmark testlerinde yapılmış olmalı
- Eğer müşteri OpenID veya SAML veya başka bir federation kullanıyorsa, her rolün nasıl atandığı hakkında daha fazla bilgi istemeniz gerekebilir (admin rolünün 1 kullanıcıya mı yoksa 100 kullanıcıya mı atandığı aynı şey değildir)
- Sadece hangi kullanıcıların admin izinlerine “*:*” sahip olduğunu bulmak yeterli değildir. Kullanılan servislere bağlı olarak çok duyarlı olabilecek birçok diğer izin vardır.
- Dahası, izinleri kötüye kullanarak takip edilebilecek potansiyel privesc yolları vardır. Tüm bu durumlar dikkate alınmalı ve mümkün olduğunca fazla privesc yolu raporlanmalıdır.
- Check Integrations
- Cloud ortamında muhtemelen başka cloud’lar veya SaaS ile entegrasyonlar kullanılıyordur.
- Denetlediğiniz cloud’un başka platformlarla olan integrationsı için, bu entegrasyonu kimlerin (kötüye) kullanabildiğini bildirmeniz ve gerçekleştirilen eylemin ne kadar hassas olduğunu sormanız gerekir.
Örneğin, GCP’nin veri aldığı bir AWS bucket’ına kim yazabiliyor (GCP’de o veriyi işlemenin ne kadar hassas olduğunu sorun). - Denetlediğiniz cloud içindeki entegrasyonlar dış platformlardan geliyorsa, bu entegrasyonu harici olarak kimlerin (kötüye) kullanabildiğini sormalı ve verinin nasıl kullanıldığını kontrol etmelisiniz.
Örneğin, bir servis GCR’de barındırılan bir Docker imajı kullanıyorsa, bu imajı kimlerin değiştirebildiğini ve imaj çalıştırıldığında hangi hassas bilgilerin ve erişimlerin elde edileceğini sormalısınız.
Multi-Cloud tools
Farklı cloud ortamlarını test etmek için kullanılabilecek çeşitli araçlar vardır. Kurulum adımları ve bağlantılar bu bölümde belirtilecektir.
PurplePanda
Bir cloud’larda ve cloud/SaaS çapında kötü yapılandırmaları ve privesc path’leri tespit etmek için bir araçtır.
# You need to install and run neo4j also
git clone https://github.com/carlospolop/PurplePanda
cd PurplePanda
python3 -m venv .
source bin/activate
python3 -m pip install -r requirements.txt
export PURPLEPANDA_NEO4J_URL="bolt://neo4j@localhost:7687"
export PURPLEPANDA_PWD="neo4j_pwd_4_purplepanda"
python3 main.py -h # Get help
Prowler
AWS, GCP & Azure’yi destekler. Her sağlayıcıyı nasıl yapılandıracağınızı https://docs.prowler.cloud/en/latest/#aws adresinden kontrol edin.
# Install
pip install prowler
prowler -v
# Run
prowler <provider>
# Example
prowler aws --profile custom-profile [-M csv json json-asff html]
# Get info about checks & services
prowler <provider> --list-checks
prowler <provider> --list-services
CloudSploit
AWS, Azure, Github, Google, Oracle, Alibaba
# Install
git clone https://github.com/aquasecurity/cloudsploit.git
cd cloudsploit
npm install
./index.js -h
## Docker instructions in github
ScoutSuite
AWS, Azure, GCP, Alibaba Cloud, Oracle Cloud Infrastructure
mkdir scout; cd scout
virtualenv -p python3 venv
source venv/bin/activate
pip install scoutsuite
scout --help
## Using Docker: https://github.com/nccgroup/ScoutSuite/wiki/Docker-Image
Steampipe
Steampipe’i indirin ve kurun (https://steampipe.io/downloads). Veya Brew kullanın:
brew tap turbot/tap
brew install steampipe
cs-suite
AWS, GCP, Azure, DigitalOcean.
python2.7 gerektirir ve bakımsız görünüyor.
Nessus
Nessus, Audit Cloud Infrastructure taramasıyla şu platformları destekler: AWS, Azure, Office 365, Rackspace, Salesforce. Bir Client Id almak için Azure’da bazı ek yapılandırmalar gereklidir.
cloudlist
Cloudlist, Cloud Providers’dan multi-cloud tool for getting Assets (Hostnames, IP Addresses) elde etmek için kullanılan bir araçtır.
cd /tmp
wget https://github.com/projectdiscovery/cloudlist/releases/latest/download/cloudlist_1.0.1_macOS_arm64.zip
unzip cloudlist_1.0.1_macOS_arm64.zip
chmod +x cloudlist
sudo mv cloudlist /usr/local/bin
cartography
Cartography, Neo4j veritabanı tarafından desteklenen sezgisel bir graf görünümünde altyapı varlıklarını ve bunlar arasındaki ilişkileri birleştiren bir Python aracıdır.
# Installation
docker image pull ghcr.io/lyft/cartography
docker run --platform linux/amd64 ghcr.io/lyft/cartography cartography --help
## Install a Neo4j DB version 3.5.*
starbase
Starbase, bulut altyapısı, SaaS uygulamaları, güvenlik kontrolleri ve diğer hizmetler ile sistemlerden varlıkları ve ilişkileri toplayıp Neo4j veritabanı tarafından desteklenen sezgisel bir grafik görünümünde sunar.
# You are going to need Node version 14, so install nvm following https://tecadmin.net/install-nvm-macos-with-homebrew/
npm install --global yarn
nvm install 14
git clone https://github.com/JupiterOne/starbase.git
cd starbase
nvm use 14
yarn install
yarn starbase --help
# Configure manually config.yaml depending on the env to analyze
yarn starbase setup
yarn starbase run
# Docker
git clone https://github.com/JupiterOne/starbase.git
cd starbase
cp config.yaml.example config.yaml
# Configure manually config.yaml depending on the env to analyze
docker build --no-cache -t starbase:latest .
docker-compose run starbase setup
docker-compose run starbase run
SkyArk
Taranan AWS veya Azure ortamındaki en ayrıcalıklı kullanıcıları (AWS Shadow Admins dahil) keşfeder. powershell kullanır.
Import-Module .\SkyArk.ps1 -force
Start-AzureStealth
# in the Cloud Console
IEX (New-Object Net.WebClient).DownloadString('https://raw.githubusercontent.com/cyberark/SkyArk/master/AzureStealth/AzureStealth.ps1')
Scan-AzureAdmins
Cloud Brute
Bir şirketin (target) altyapısını, dosyalarını ve uygulamalarını en büyük bulut sağlayıcılarında (Amazon, Google, Microsoft, DigitalOcean, Alibaba, Vultr, Linode) bulmak için bir araç.
CloudFox
- CloudFox, bulut altyapısında sömürülebilir saldırı yollarını bulmak için bir araçtır (şu an için yalnızca AWS ve Azure destekleniyor; GCP yakında eklenecek).
- Manuel pentesting’i tamamlayacak şekilde tasarlanmış bir keşif aracıdır.
- Bulut ortamında herhangi bir veri oluşturmaz veya değiştirmez.
More lists of cloud security tools
GCP
Workspace
AWS
Azure
Ortak Bulut Güvenlik Özellikleri
Gizli Hesaplama
Luks2 Header Malleability Null Cipher Abuse
Tip
AWS Hacking’i öğrenin ve pratik yapın:
HackTricks Training AWS Red Team Expert (ARTE)
GCP Hacking’i öğrenin ve pratik yapın:HackTricks Training GCP Red Team Expert (GRTE)
Az Hacking’i öğrenin ve pratik yapın:HackTricks Training Azure Red Team Expert (AzRTE)
HackTricks'i Destekleyin
- Abonelik planlarını kontrol edin!
- Katılın 💬 Discord group veya telegram group veya Twitter’da bizi takip edin 🐦 @hacktricks_live.
- PR göndererek hacking tricks paylaşın: HackTricks ve HackTricks Cloud github repos.
HackTricks Cloud

