
Enumerating Cloud with CloudFox
FreeGain situational awareness in cloud environments.
Free · Opens the source repo
What Enumerating Cloud with CloudFox does
CloudFox is an open-source command-line tool designed for penetration testers and red teamers to enhance situational awareness in cloud environments, particularly AWS and Azure. Unlike traditional security tools that focus on defensive measures, CloudFox adopts an attacker's perspective, enabling users to identify exploitable misconfigurations and attack paths. It performs read-only API calls to gather information about cloud resources, including secrets, endpoints, and permissions, which can be critical for planning further actions after obtaining cloud credentials.
The tool primarily supports AWS with over 30 commands, while also extending functionality to Azure. Key features include the ability to run a comprehensive set of checks with the cloudfox aws all-checks command, which inventories resources, identifies internet-exposed endpoints, and analyzes IAM permissions and role trusts. The results are outputted in structured formats, allowing for easy triage and further analysis. This makes CloudFox particularly useful for security assessments where understanding the attack surface is crucial.
CloudFox is particularly beneficial for scenarios such as immediately following a credential compromise, where rapid assessment of the cloud environment is needed. It allows users to map out trust relationships and identify potential lateral movement opportunities, making it a valuable tool for offensive security operations. The generated reports and loot files provide actionable insights, enabling security professionals to pivot quickly and effectively during assessments.
When to use it
Use this tool immediately after gaining access to cloud credentials to assess the security posture of the environment.
When not to use it
This skill is not suitable for defensive audits or environments where you do not have explicit authorization to test.
What you can build with it
Post-Credential Compromise Assessment
Immediately assess the security of a cloud environment after compromising credentials to identify vulnerabilities.
Mapping Attack Paths
Use CloudFox to map `sts:AssumeRole` relationships for planning lateral movement during assessments.
Inventorying Cloud Resources
Quickly generate an inventory of exposed resources and secrets in AWS and Azure for security evaluations.
How to install Enumerating Cloud with CloudFox
View source1. Install with the skills CLI
npx skills add mukul975/anthropic-cybersecurity-skills/enumerating-cloud-with-cloudfox --agent claude-code2. Or install it manually
Download the skill folder and drop it into ~/.claude/skills/ for all projects, or .claude/skills/ to scope it to one repo. Restart Claude Code so it picks up the new skill.
Anthropic's agentic coding CLI, and the reference implementation of Agent Skills. Drop a skill folder into ~/.claude/skills and Claude Code loads it automatically whenever a task matches the skill's description. Claude Code docs
Inside SKILL.md
Written by mukul975Enumerating Cloud with CloudFox
Legal Notice: This skill is for authorized cloud penetration testing and assessment only. CloudFox makes read/describe API calls against the cloud account whose credentials you supply. Run it ONLY against accounts you own or are authorized to test under a signed scope. Although CloudFox is read-only by design, the enumeration it performs is reconnaissance against a live environment and must be in scope.
Overview
CloudFox is an open-source command-line tool from Bishop Fox that helps penetration testers and red teamers gain situational awareness in unfamiliar cloud environments. Where tools like ScoutSuite focus on a defender-style configuration audit, CloudFox is built from the attacker's perspective: it answers questions like "what are the most attackable secrets, endpoints, and instances in this account, and what can the identity I just compromised actually reach?" It is read-only — it only performs Describe/List/Get style calls — and writes its findings to per-command CSV/TXT/loot files plus a combined report directory, so output can be triaged offline.
CloudFox covers AWS most deeply (30+ commands) and supports Azure. The workhorse is cloudfox aws all-checks, which runs the full battery of enumeration commands with sensible defaults: inventory, internet-reachable endpoints, EC2 instances (with IPs and instance-profile roles), iam-simulator and permissions for IAM analysis, principals, secrets from Secrets Manager/SSM, buckets, role-trusts (which identities can assume which roles — a core attack-path primitive), access-keys, route53, ecr, lambda, and more. CloudFox also emits ready-to-run command suggestions (e.g. aws s3 ls lines, aws ssm start-session lines) in its "loot" files so an operator can pivot immediately.
This skill covers installing CloudFox, authenticating to AWS and Azure, running targeted and full enumeration, interpreting the high-value outputs (role-trusts, secrets, endpoints), and feeding the results into attack-path planning. Source: github.com/BishopFox/cloudfox.
When to Use
- Establishing situational awareness immediately after compromising a cloud credential
- Quickly identifying internet-exposed endpoints, instances, and exposed secrets
- Mapping
sts:AssumeRoletrust relationships to plan lateral movement / privesc - Triaging an unfamiliar AWS or Azure account during an authorized assessment
- Producing attacker-centric inventory artifacts that complement a defensive audit
Prerequisites
- CloudFox installed:
# Homebrew brew install cloudfox # Go (1.21+) go install github.com/BishopFox/cloudfox@latest # or download a release binary from GitHub and chmod +x - Valid cloud credentials in scope:
# AWS — configure a named profile and verify aws configure --profile assess aws sts get-caller-identity --profile assess # Azure az login az account show - A signed authorization / Rules of Engagement defining the in-scope accounts
awscli(AWS) and/orazure-cli(Azure) installed for credential setup and follow-up
Objectives
- Install CloudFox and confirm cloud credentials
- Run full and targeted enumeration across AWS and Azure
- Identify internet-reachable endpoints, instances, and exposed secrets
- Enumerate IAM principals, permissions, and role-trust attack paths
- Triage CloudFox loot files for immediate pivot commands
- Export findings to a structured output directory for reporting
MITRE ATT&CK Mapping
| ID | Name | Use in this skill |
|---|---|---|
| T1526 | Cloud Service Discovery | CloudFox enumerates the available cloud services and resources in an account |
| T1580 | Cloud Infrastructure Discovery | inventory, instances, buckets map the infrastructure footprint |
| T1087.004 | Account Discovery: Cloud Account | principals, access-keys enumerate cloud identities |
| T1069.003 | Permission Groups Discovery: Cloud Groups | permissions, iam-simulator, role-trusts reveal entitlements |
| T1538 | Cloud Service Dashboard | Aggregated situational-awareness reporting across services |
Workflow
1. Confirm the identity and run all AWS checks
aws sts get-caller-identity --profile assess
cloudfox aws --profile assess all-checks -o ./loot
2. Inventory the account footprint
cloudfox aws --profile assess inventory
3. Find internet-reachable endpoints and exposed instances
cloudfox aws --profile assess endpoints
cloudfox aws --profile assess instances
4. Enumerate IAM principals, permissions, and role-trust attack paths
role-trusts is the key lateral-movement primitive — it shows who can assume what.
cloudfox aws --profile assess principals
cloudfox aws --profile assess permissions
cloudfox aws --profile assess role-trusts
cloudfox aws --profile assess access-keys
5. Hunt for exposed secrets
cloudfox aws --profile assess secrets
6. Enumerate storage, registries, and serverless
cloudfox aws --profile assess buckets
cloudfox aws --profile assess ecr
cloudfox aws --profile assess lambda
cloudfox aws --profile assess route53
7. Use IAM simulator to confirm what a principal can do
cloudfox aws --profile assess iam-simulator
8. Enumerate Azure
CloudFox Azure works against the subscriptions the az session can see.
cloudfox azure inventory --outdir ./azure-loot
cloudfox azure rbac
cloudfox azure storage
cloudfox azure vms
9. Triage the loot
CloudFox writes per-command CSV/TXT plus a loot directory of pivot commands.
ls -R ./loot/cloudfox-output/
# Loot files contain ready-to-run follow-ups, e.g. aws s3 ls / ssm start-session lines
See scripts/agent.py to run a curated set of commands and summarize output files.
Tools and Resources
| Resource | Purpose | Link |
|---|---|---|
| CloudFox GitHub | Source, releases, full command list | https://github.com/BishopFox/cloudfox |
| CloudFox docs/wiki | Per-command output explanations | https://github.com/BishopFox/cloudfox/wiki |
| Bishop Fox CloudFox blog | Design and usage walkthrough | https://bishopfox.com/blog/introducing-cloudfox |
| AWS CLI reference | Follow-up exploitation commands | https://docs.aws.amazon.com/cli/latest/reference/ |
| Pacu | Active exploitation after enumeration | https://github.com/RhinoSecurityLabs/pacu |
OPSEC and Detection Considerations
CloudFox is read-only, but its enumeration is far from silent. Each command issues
many Describe*/List*/Get* API calls in a short burst, which is highly visible
to defenders:
- CloudTrail records every read call. A spike of
iam:ListUsers,iam:ListRoles,secretsmanager:ListSecrets,ec2:DescribeInstances, andsts:GetCallerIdentityfrom one principal within seconds is a strong enumeration signal. - GuardDuty finding types such as
Discovery:IAMUser/AnomalousBehaviorandDiscovery:S3/MaliciousIPCallercan fire on this burst pattern. - Defenders should baseline normal API-call rates per principal and alert on enumeration bursts, especially from new IPs/ASNs or newly created credentials.
For an authorized assessment, document the source IP and timestamp of CloudFox runs so the blue team can correlate, and prefer running from an in-scope, attributable host.
Recommended Operator Workflow
- Run
all-checksonce to populate the full output directory. - Open
role-trustsfirst — it reveals the assume-role graph for lateral movement. - Cross-reference
secretsandenv-varsfor credentials that unlock new principals. - Use
endpoints+instancesto map externally reachable attack surface. - Feed confirmed assume-role / privesc candidates into Pacu for active exploitation.
High-Value Command Reference
| Command | Why it matters |
|---|---|
all-checks | Runs the full enumeration battery with defaults |
role-trusts | Maps assume-role paths — core for lateral movement/privesc |
endpoints | Surfaces internet-reachable attack surface |
secrets | Exposes credentials in Secrets Manager / SSM |
permissions | Lists effective IAM permissions per principal |
instances | EC2 with IPs and attached instance-profile roles |
access-keys | Active access keys (potential credential targets) |
Validation Criteria
- CloudFox installed and runs
cloudfox aws --help - Cloud credentials confirmed via
sts get-caller-identity/az account show -
all-checkscompleted and output directory populated - Internet-reachable endpoints and instances identified
- IAM principals, permissions, and role-trusts enumerated
- Exposed secrets located and documented
- Azure enumeration run (if Azure in scope)
- Loot files triaged for pivot opportunities
- Findings exported to a structured directory for reporting
- Enumeration confirmed to stay within authorized scope
Frequently asked questions about Enumerating Cloud with CloudFox
Similar skills
Cloudflare Security Audit
Perform authorized security audits on codebases.
Authenticated Scan with OpenVAS
Perform deep vulnerability scans using OpenVAS with credentials.
Active Directory Penetration Test
Conduct focused AD penetration tests with ease.
Active Directory BloodHound Analysis
Visualize Active Directory attack paths and risks.
Orchestrating LLM Attacks with PyRIT
Automate multi-turn adversarial attacks against LLMs.
Operating Sliver C2
Deploy and manage Sliver C2 for red-team engagements.
