← Back to list

api-security-testing
by Ed1s0nZ
CyberStrikeAI is an AI-native security testing platform built in Go. It integrates 100+ security tools, an intelligent orchestration engine, role-based testing with predefined security roles, a skills system with specialized testing skills, and comprehensive lifecycle management capabilities.
⭐ 564🍴 90📅 Jan 23, 2026
SKILL.md
name: api-security-testing description: API安全测试的专业技能和方法论 version: 1.0.0
API安全测试
概述
API安全测试是确保API接口安全性的重要环节。本技能提供API安全测试的方法、工具和最佳实践。
测试范围
1. 认证和授权
测试项目:
- Token有效性验证
- Token过期处理
- 权限控制
- 角色权限验证
2. 输入验证
测试项目:
- 参数类型验证
- 数据长度限制
- 特殊字符处理
- SQL注入防护
- XSS防护
3. 业务逻辑
测试项目:
- 工作流验证
- 状态转换
- 并发控制
- 业务规则
4. 错误处理
测试项目:
- 错误信息泄露
- 堆栈跟踪
- 敏感信息暴露
测试方法
1. API发现
识别API端点:
# 使用目录扫描
gobuster dir -u https://target.com -w api-wordlist.txt
# 使用Burp Suite被动扫描
# 浏览应用,观察API调用
# 分析JavaScript文件
# 查找API端点定义
2. 认证测试
Token测试:
# 测试无效Token
GET /api/user
Authorization: Bearer invalid_token
# 测试过期Token
GET /api/user
Authorization: Bearer expired_token
# 测试无Token
GET /api/user
JWT测试:
# 使用jwt_tool
python jwt_tool.py <JWT_TOKEN>
# 测试算法混淆
python jwt_tool.py <JWT_TOKEN> -X a
# 测试密钥暴力破解
python jwt_tool.py <JWT_TOKEN> -C -d wordlist.txt
3. 授权测试
水平权限:
# 用户A访问用户B的资源
GET /api/user/123
Authorization: Bearer user_a_token
# 应该返回403
垂直权限:
# 普通用户访问管理员接口
GET /api/admin/users
Authorization: Bearer user_token
# 应该返回403
4. 输入验证测试
SQL注入:
POST /api/search
{
"query": "test' OR '1'='1"
}
命令注入:
POST /api/execute
{
"command": "ping; id"
}
XXE:
POST /api/parse
Content-Type: application/xml
<?xml version="1.0"?>
<!DOCTYPE foo [<!ENTITY xxe SYSTEM "file:///etc/passwd">]>
<foo>&xxe;</foo>
5. 速率限制测试
测试速率限制:
import requests
for i in range(1000):
response = requests.get('https://target.com/api/endpoint')
print(f"Request {i}: {response.status_code}")
工具使用
Postman
创建测试集合:
- 导入API文档
- 设置认证
- 创建测试用例
- 运行自动化测试
Burp Suite
API扫描:
- 配置API端点
- 设置认证
- 运行主动扫描
- 分析结果
OWASP ZAP
# API扫描
zap-cli quick-scan --self-contained \
--start-options '-config api.disablekey=true' \
http://target.com/api
REST-Attacker
# 扫描OpenAPI规范
rest-attacker scan openapi.yaml
常见漏洞
1. 认证绕过
Token验证缺陷:
- 弱Token生成
- Token可预测
- Token不验证签名
2. 权限提升
IDOR:
- 直接对象引用
- 未验证资源所有权
3. 信息泄露
错误信息:
- 详细错误信息
- 堆栈跟踪
- 敏感数据
4. 注入漏洞
常见注入:
- SQL注入
- NoSQL注入
- 命令注入
- XXE
5. 业务逻辑
逻辑缺陷:
- 价格操作
- 数量限制绕过
- 状态修改
测试清单
认证测试
- Token有效性验证
- Token过期处理
- 弱Token检测
- Token重放攻击
授权测试
- 水平权限测试
- 垂直权限测试
- 角色权限验证
- 资源访问控制
输入验证
- SQL注入测试
- XSS测试
- 命令注入测试
- XXE测试
- 参数污染
业务逻辑
- 工作流验证
- 状态转换
- 并发控制
- 业务规则
错误处理
- 错误信息泄露
- 堆栈跟踪
- 敏感信息暴露
防护措施
推荐方案
-
认证
- 使用强Token
- 实现Token刷新
- 验证Token签名
-
授权
- 基于角色的访问控制
- 资源所有权验证
- 最小权限原则
-
输入验证
- 参数类型验证
- 数据长度限制
- 白名单验证
-
错误处理
- 统一错误响应
- 不泄露详细信息
- 记录错误日志
-
速率限制
- 实现API限流
- 防止暴力破解
- 监控异常请求
注意事项
- 仅在授权测试环境中进行
- 避免对API造成影响
- 注意不同API版本的差异
- 测试时注意请求频率
Score
Total Score
80/100
Based on repository quality metrics
✓SKILL.md
SKILL.mdファイルが含まれている
+20
○LICENSE
ライセンスが設定されている
0/10
✓説明文
100文字以上の説明がある
+10
✓人気
GitHub Stars 500以上
+10
✓最近の活動
1ヶ月以内に更新
+10
✓フォーク
10回以上フォークされている
+5
✓Issue管理
オープンIssueが50未満
+5
✓言語
プログラミング言語が設定されている
+5
✓タグ
1つ以上のタグが設定されている
+5
Reviews
💬
Reviews coming soon

