Pentesting Cloud Methodology

Tip

Jifunze na fanya mazoezi ya AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Jifunze na fanya mazoezi ya GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE) Jifunze na fanya mazoezi ya Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Support HackTricks

Mbinu za Msingi

Kila cloud ina sifa zake za kipekee lakini kwa ujumla kuna mambo machache ya kawaida msimamizi wa pentester anapaswa kuangalia wakati anapofanya mtihani wa mazingira ya cloud:

  • Benchmark checks
  • Hii itakusaidia kuelewa ukubwa wa mazingira na services zinazotumika
  • Pia itakuwezesha kupata baadhi ya misconfigurations ya haraka kwani unaweza kufanya nyingi ya hizi tests kwa kutumia automated tools
  • Services Enumeration
  • Huenda usipate misconfiguration mingi zaidi hapa ikiwa umefanya benchmark tests ipasavyo, lakini unaweza kupata baadhi ambayo hayakutafutwa katika benchmark test.
  • Hii itakuwezesha kujua ni nini hasa kinachotumika katika mazingira ya cloud
  • Hii itasaidia sana katika hatua zinazofuata
  • Check exposed assets
  • Hii inaweza kufanywa wakati wa sehemu iliyopita, unahitaji kubaini kila kitu kinachoweza kuwa exposed kwa Internet kwa njia yoyote na jinsi kinavyoweza kufikiwa.
  • Hapa ninachukua infrastructure iliyofunguliwa kwa mkono kama instances zilizo na kurasa za wavuti au ports nyingine zilizo exposed, na pia kuhusu huduma nyingine zinazodhibitiwa na cloud ambazo zinaweza kusanidiwa kuwa exposed (kama DBs au buckets)
  • Kisha unapaswa kuangalia je, rasilimali hiyo inaweza ku-expose au la (taarifa za siri? vulnerabilities? misconfigurations katika service iliyo exposed?)
  • Check permissions
  • Hapa unapaswa kubaini ruhusa zote za kila role/user ndani ya cloud na jinsi zinavyotumiwa
  • Je, kuna akaunti nyingi zenye privilege kubwa sana (zinadhibiti kila kitu)? Keys zilizotengenezwa hazitumiwi?… Mengi ya haya maangalia yalipaswa kufanyika tayari katika benchmark tests
  • Ikiwa mteja anatumia OpenID au SAML au federation nyingine unaweza kuhitaji kuwauliza kwa undani zaidi maalum kuhusu jinsi kila role inavyotengwa (si sawa admin role ikipewa user 1 au user 100)
  • Haikuwa vitu vya kutosha kupata ni users gani wana admin permissions “*:*”. Kuna ruhusa nyingi nyingine ambazo kulingana na services zinazotumika zinaweza kuwa za nyeti.
  • Zaidi ya hayo, kuna njia za privesc zinazoweza kufuatwa kwa kutumia maelezo hayo. Mambo yote haya yanapaswa kuzingatiwa na viwango vingi vya privesc kadri liwezekanavyo vinapaswa kuripotiwa.
  • Check Integrations
  • Inawezekana sana kwamba integrations na clouds nyingine au SaaS zinatumika ndani ya mazingira ya cloud.
  • Kwa integrations za cloud unazochunguza na platform nyingine unapaswa kuwajulisha nani anaweza kufikia/ku(tya)abuse integration hiyo na unapaswa kuuliza ni kiasi gani kitendo hicho ni nyeti.
    Kwa mfano, nani anaweza kuandika katika bucket ya AWS ambapo GCP inapokea data kutoka (uliza jinsi kitendo hicho kinavyokuwa nyeti katika GCP linaposhughulikia data hiyo).
  • Kwa integrations ndani ya cloud unazochunguza zinazotoka kwenye platform za nje, unapaswa kuuliza nani anaweza kufikia kwa nje ili ku(tya)abuse integration hiyo na kuangalia jinsi data hiyo inavyotumiwa.
    Kwa mfano, ikiwa service inatumia Docker image iliyohifadhiwa katika GCR, unapaswa kuuliza nani anaweza kuibadilisha na ni taarifa gani nyeti na access itakayopatikana kwa image hiyo ikichukuliwa ndani ya AWS cloud.

Multi-Cloud tools

Kuna zana kadhaa ambazo zinaweza kutumika kujaribu mazingira tofauti za cloud. Hatua za usakinishaji na links zitatolea katika sehemu hii.

PurplePanda

A tool to identify bad configurations and privesc path in clouds and across clouds/SaaS.

# 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

Inasaidia AWS, GCP & Azure. Angalia jinsi ya kusanidi kila mtoa huduma katika https://docs.prowler.cloud/en/latest/#aws

# 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

Pakua na sakinisha Steampipe (https://steampipe.io/downloads). Au tumia Brew:

brew tap turbot/tap
brew install steampipe

cs-suite

AWS, GCP, Azure, DigitalOcean.
Inahitaji python2.7 na inaonekana haidumwi.

Nessus

Nessus ina skani ya Audit Cloud Infrastructure inayounga mkono: AWS, Azure, Office 365, Rackspace, Salesforce. Inahitaji usanidi wa ziada kwenye Azure ili kupata Client Id.

cloudlist

Cloudlist ni chombo cha multi-cloud cha kupata Assets (Hostnames, IP Addresses) kutoka kwa Cloud Providers.

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 ni chombo cha Python kinachokusanya mali za miundombinu na uhusiano baina yao katika muonekano wa grafu unaoeleweka unaoendeshwa na hifadhidata ya Neo4j.

# 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 hukusanya rasilimali na uhusiano kutoka kwa huduma na mifumo, ikijumuisha miundombinu ya cloud, programu za SaaS, udhibiti wa usalama, na zaidi, katika muonekano wa grafu unaoeleweka unaosimamiwa na hifadhidata ya Neo4j.

# 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

Gundua watumiaji wenye ruhusa nyingi zaidi katika mazingira ya AWS au Azure yaliyokaguliwa, ikiwa ni pamoja na AWS Shadow Admins. Inatumia powershell.

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

Chombo cha kutafuta miundombinu ya kampuni (target), faili, na apps kwenye watoa huduma wakubwa wa cloud (Amazon, Google, Microsoft, DigitalOcean, Alibaba, Vultr, Linode).

CloudFox

  • CloudFox ni chombo cha kutafuta exploitable attack paths katika miundombinu ya cloud (kwa sasa inasaidia tu AWS & Azure na GCP inakuja hivi karibuni).
  • Ni chombo cha kuorodhesha kinachokusudiwa kukamilisha manual pentesting.
  • Hairuhusu kuunda au kubadilisha data yoyote ndani ya mazingira ya cloud.

More lists of cloud security tools

Google

GCP

GCP Pentesting

Workspace

GWS - Workspace Pentesting

AWS

AWS Pentesting

Azure

Azure Pentesting

Common Cloud Security Features

Ukompyuta wa Siri

Luks2 Header Malleability Null Cipher Abuse

Tip

Jifunze na fanya mazoezi ya AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Jifunze na fanya mazoezi ya GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE) Jifunze na fanya mazoezi ya Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Support HackTricks