Skip to main content Skills Marktplatz Entdecken und erkunden Sie KI-Skills, die von der Community erstellt wurden.
Mit Codex oder Claude installieren Kopieren Sie diesen Prompt, fügen Sie ihn in Codex, Claude oder einen anderen Assistant ein und lassen Sie die Skill-Seite prüfen und installieren.
Prompt kopierenPrompt-Details anzeigen Ein direkter Befehl überspringt den Prüf-Prompt. Prüfen Sie die Quelle, bevor Sie ihn ausführen.
npx skills add https://github.com/CyberStrikeus/CyberStrike --skill wstg-conf-11Der Befehl bleibt in einer Zeile. Scrollen Sie horizontal, um ihn vor dem Kopieren vollständig zu prüfen.
Sie bevorzugen eine lokale Kopie? Laden Sie die Dateien herunter, die SkillsMP derzeit vorliegen.
ZIP herunterladen Herunterladen... Mehr aus diesem Repository
Verwandte Berufe SOC
Basierend auf der SOC-Berufsklassifikation
name wstg-conf-11 description Test Cloud Storage category configuration owasp_id WSTG-CONF-11 version 1.0.0 author cyberstrike-official tags ["misconfiguration","hardening","server","wstg","conf"] tech_stack [] cwe_ids ["CWE-16"] chains_with [] prerequisites [] severity_boost {}
wstg-conf-11
Test ID
WSTG-CONF-11
Test Name
Test Cloud Storage
High-Level Description
Cloud storage services (AWS S3, Azure Blob Storage, Google Cloud Storage) are commonly used to store application data, backups, and static assets. Misconfigured access controls can expose sensitive data to unauthorized users or allow arbitrary file uploads. This test identifies publicly accessible buckets, overly permissive ACLs, and other cloud storage misconfigurations.
What to Check
Access Control Issues
Cloud Providers
Provider Service URL Pattern AWS S3 bucket.s3.amazonaws.comAzure Blob Storage account.blob.core.windows.netGoogle Cloud Storage storage.googleapis.com/bucketDigitalOcean Spaces bucket.region.digitaloceanspaces.com
How to Test
Step 1: Identify Cloud Storage Usage
curl -s https://target.com | grep -oP 's3\.amazonaws\.com[^"' "'" ' ]*'
curl -s https://target.com | grep -oP '[a-z0-9-]+\.s3\.[a-z0-9-]+\.amazonaws\.com'
curl -s https://target.com | grep -oP '[a-z0-9]+\.blob\.core\.windows\.net[^"' "'"
curl -s https://target.com | grep -oP
curl -s https://target.com | grep -oP
' ]*'
'storage\.googleapis\.com/[^"'
"'"
' ]*'
'storage\.cloud\.google\.com/[^"'
"'"
' ]*'
Step 2: Test AWS S3 Buckets
Basic Access Tests
curl -s https://bucket-name.s3.amazonaws.com/
curl -s "https://bucket-name.s3.amazonaws.com/?list-type=2"
curl -s https://bucket-name.s3.amazonaws.com/test.txt
curl -X PUT -d "test" https://bucket-name.s3.amazonaws.com/test.txt
AWS CLI Tests
aws s3 ls s3://bucket-name --no-sign-request
aws s3 ls s3://bucket-name
aws s3 cp test.txt s3://bucket-name/ --no-sign-request
aws s3 cp s3://bucket-name/file.txt ./downloaded.txt --no-sign-request
aws s3api get-bucket-acl --bucket bucket-name --no-sign-request
Step 3: Test Azure Blob Storage
curl -s "https://account.blob.core.windows.net/?comp=list"
curl -s "https://account.blob.core.windows.net/container?restype=container&comp=list"
curl -s "https://account.blob.core.windows.net/container/blob.txt"
az storage blob list --account-name account --container-name container --auth-mode anonymous
Step 4: Test Google Cloud Storage
curl -s "https://storage.googleapis.com/bucket-name"
curl -s "https://storage.googleapis.com/storage/v1/b/bucket-name/o"
curl -s "https://storage.googleapis.com/bucket-name/object.txt"
gsutil ls gs://bucket-name
gsutil cp gs://bucket-name/file.txt ./
Step 5: Bucket Enumeration
company="targetcompany"
patterns=(
"$company "
"${company} -dev"
"${company} -staging"
"${company} -prod"
"${company} -backup"
"${company} -uploads"
"${company} -data"
"${company} -assets"
"${company} -media"
"${company} -logs"
)
for bucket in "${patterns[@]} " ; do
status=$(curl -s -o /dev/null -w "%{http_code}" "https://${bucket} .s3.amazonaws.com" )
if [ "$status " != "404" ]; then
echo "[FOUND] $bucket - Status: $status "
fi
done
Step 6: Check for Sensitive Data
sensitive_files=(
"backup.sql"
"database.sql"
"dump.sql"
"users.csv"
"credentials.txt"
"config.json"
".env"
"id_rsa"
"private.key"
)
for file in "${sensitive_files[@]} " ; do
status=$(curl -s -o /dev/null -w "%{http_code}" "https://bucket.s3.amazonaws.com/$file " )
if [ "$status " == "200" ]; then
echo "[CRITICAL] Sensitive file found: $file "
fi
done
Tools
AWS Tools Tool Description Usage AWS CLI Official AWS CLI aws s3 ls s3://bucketS3Scanner S3 bucket scanner s3scanner scan --bucket bucket-nameAWSBucketDump Dump S3 buckets python AWSBucketDump.py -l buckets.txtBucket Finder Enumerate buckets bucket_finder.rb wordlist
Multi-Cloud Tools Tool Description Usage CloudBrute Multi-cloud enum cloudbrute -d target.comcloud_enum Cloud resource enum python3 cloud_enum.py -k targetGrayhat Warfare Bucket search Online service
Azure/GCP Tools Tool Description Azure CLI az storage blob listgsutil gsutil ls gs://bucketMicroBurst Azure security toolkit
Example Commands/Payloads
Comprehensive Cloud Storage Scanner #!/bin/bash
TARGET=$1
echo "=== CLOUD STORAGE SCANNER ==="
echo "Target: $TARGET "
echo ""
variations=(
"$TARGET "
"${TARGET} -dev"
"${TARGET} -prod"
"${TARGET} -staging"
"${TARGET} -backup"
"${TARGET} -uploads"
"${TARGET} -assets"
"${TARGET} -data"
"${TARGET} -media"
"${TARGET} backup"
"${TARGET} dev"
"${TARGET} prod"
)
echo "[+] Testing AWS S3 buckets..."
for bucket in "${variations[@]} " ; do
response=$(curl -s -o /dev/null -w "%{http_code}" "https://${bucket} .s3.amazonaws.com" )
case $response in
200)
echo " [OPEN] $bucket - Publicly accessible!"
aws s3 ls "s3://${bucket} " --no-sign-request 2>/dev/null | head -5
;;
403)
echo " [EXISTS] $bucket - Access denied (bucket exists)"
;;
404)
;;
*)
echo " [?] $bucket - Status: $response "
;;
esac
done
echo ""
echo "[+] Testing Azure Blob Storage..."
for account in "${variations[@]} " ; do
response=$(curl -s -o /dev/null -w "%{http_code}" "https://${account} .blob.core.windows.net/?comp=list" )
if [ "$response " != "000" ] && [ "$response " != "404" ]; then
echo " [CHECK] $account .blob.core.windows.net - Status: $response "
fi
done
echo ""
echo "[+] Testing Google Cloud Storage..."
for bucket in "${variations[@]} " ; do
response=$(curl -s -o /dev/null -w "%{http_code}" "https://storage.googleapis.com/${bucket} " )
if [ "$response " == "200" ]; then
echo " [OPEN] $bucket - Publicly accessible!"
elif [ "$response " == "403" ]; then
echo " [EXISTS] $bucket - Access denied"
fi
done
echo ""
echo "[+] Scan complete"
S3Scanner Usage
pip install s3scanner
s3scanner scan --bucket bucket-name
s3scanner scan --buckets-file buckets.txt
s3scanner dump --bucket bucket-name --out-dir ./dump/
Remediation Guide
1. AWS S3 Best Practices
{
"Version" : "2012-10-17" ,
"Statement" : [
{
"Sid" : "DenyPublicAccess" ,
"Effect" : "Deny" ,
"Principal" : "*" ,
"Action" : "s3:*" ,
"Resource" : [ "arn:aws:s3:::bucket-name" , "arn:aws:s3:::bucket-name/*" ] ,
"Condition" : {
"Bool" : {
"aws:SecureTransport" : "false"
}
}
}
]
}
aws s3api put-public-access-block \
--bucket bucket-name \
--public-access-block-configuration \
"BlockPublicAcls=true,IgnorePublicAcls=true,BlockPublicPolicy=true,RestrictPublicBuckets=true"
aws s3api put-bucket-encryption \
--bucket bucket-name \
--server-side-encryption-configuration \
'{"Rules": [{"ApplyServerSideEncryptionByDefault": {"SSEAlgorithm": "AES256"}}]}'
2. Azure Blob Security
az storage account update \
--name accountname \
--resource-group rg \
--allow-blob-public-access false
3. GCP Cloud Storage
gsutil iam ch -d allUsers gs://bucket-name
gsutil iam ch -d allAuthenticatedUsers gs://bucket-name
gsutil uniformbucketlevelaccess set on gs://bucket-name
4. General Recommendations
Enable "Block Public Access" at account level
Use bucket policies to restrict access
Enable encryption at rest
Enable access logging
Regular security audits
Use pre-signed URLs for temporary access
Risk Assessment
CVSS Score Finding CVSS Severity Publicly readable bucket with sensitive data 9.8 Critical Publicly writable bucket 9.8 Critical Publicly listable bucket 7.5 High Bucket exists (enumeration) 3.7 Low
Critical Finding Vector : CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N
CWE Categories CWE ID Title Description CWE-284 Improper Access Control Misconfigured bucket ACLs CWE-200 Information Exposure Public data disclosure CWE-306 Missing Authentication Unauthenticated access
References
Checklist [ ] Cloud storage URLs identified in application
[ ] AWS S3 buckets tested (read/write/list)
[ ] Azure Blob Storage tested
[ ] Google Cloud Storage tested
[ ] Bucket enumeration performed
[ ] Sensitive files checked
[ ] ACL/permissions reviewed
[ ] Encryption status verified
[ ] Logging enabled
[ ] Public access settings reviewed
[ ] Findings documented