kolorbee/lnu-secllm/api-security-testing

Claude Code and agent skill by kolorbee/lnu-secllm

Trust tier 3
  • community
Source check pending

Checking that the SKILL.md file is still in the repository.

API安全测试的专业技能和方法论

Install

npx vskill@latest install kolorbee/lnu-secllm/api-security-testing

SKILL.md

The same SKILL.md was published earlier as ac1d1c-a1fa1fa/cyberstruck/api-security-testing.

API安全测试

概述

API安全测试是确保API接口安全性的重要环节。本技能提供API安全测试的方法、工具和最佳实践。

测试范围

1. 认证和授权

测试项目:

  • Token有效性验证
  • Token过期处理
  • 权限控制
  • 角色权限验证
2. 输入验证

测试项目:

  • 参数类型验证
  • 数据长度限制
  • 特殊字符处理
  • SQL注入防护
  • XSS防护
3. 业务逻辑

测试项目:

  • 工作流验证
  • 状态转换
  • 并发控制
  • 业务规则
4. 错误处理

测试项目:

  • 错误信息泄露
  • 堆栈跟踪
  • 敏感信息暴露

测试方法

1. API发现

识别API端点:

bash
# 使用目录扫描
gobuster dir -u https://target.com -w api-wordlist.txt
# 使用Burp Suite被动扫描
# 浏览应用,观察API调用
# 分析JavaScript文件
# 查找API端点定义
2. 认证测试

Token测试:

http
# 测试无效Token
GET /api/user
Authorization: Bearer invalid_token
# 测试过期Token
GET /api/user
Authorization: Bearer expired_token
# 测试无Token
GET /api/user

JWT测试:

bash
# 使用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. 授权测试

水平权限:

http
# 用户A访问用户B的资源
GET /api/user/123
Authorization: Bearer user_a_token
# 应该返回403

垂直权限:

http
# 普通用户访问管理员接口
GET /api/admin/users
Authorization: Bearer user_token
# 应该返回403
4. 输入验证测试

SQL注入:

http
POST /api/search
{
"query": "test' OR '1'='1"
}

命令注入:

http
POST /api/execute
{
"command": "ping; id"
}

XXE:

http
POST /api/parse
Content-Type: application/xml
<?xml version="1.0"?>
<!DOCTYPE foo [<!ENTITY xxe SYSTEM "file:///etc/passwd">]>
<foo>&xxe;</foo>
5. 速率限制测试

测试速率限制:

python
import requests
for i in range(1000):
response = requests.get('https://target.com/api/endpoint')
print(f"Request {i}: {response.status_code}")

工具使用

Postman

创建测试集合:

  1. 导入API文档
  2. 设置认证
  3. 创建测试用例
  4. 运行自动化测试
Burp Suite

API扫描:

  1. 配置API端点
  2. 设置认证
  3. 运行主动扫描
  4. 分析结果
OWASP ZAP
bash
# API扫描
zap-cli quick-scan --self-contained \
--start-options '-config api.disablekey=true' \
http://target.com/api
REST-Attacker
bash
# 扫描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测试
  • [ ] 参数污染
业务逻辑
  • [ ] 工作流验证
  • [ ] 状态转换
  • [ ] 并发控制
  • [ ] 业务规则
错误处理
  • [ ] 错误信息泄露
  • [ ] 堆栈跟踪
  • [ ] 敏感信息暴露

防护措施

推荐方案
  1. 认证
  • 使用强Token
  • 实现Token刷新
  • 验证Token签名
  1. 授权
  • 基于角色的访问控制
  • 资源所有权验证
  • 最小权限原则
  1. 输入验证
  • 参数类型验证
  • 数据长度限制
  • 白名单验证
  1. 错误处理
  • 统一错误响应
  • 不泄露详细信息
  • 记录错误日志
  1. 速率限制
  • 实现API限流
  • 防止暴力破解
  • 监控异常请求

注意事项

  • 仅在授权测试环境中进行
  • 避免对API造成影响
  • 注意不同API版本的差异
  • 测试时注意请求频率

Security

  • Security scanPassed, 90 of 100Pattern checks on the skill's files.
  • Model reviewPassed

Quality evaluation

  • Task evaluationNot runNo evaluation yet. Run one in Skill Studio.

Source

Popularity

7-day trend score
0

Not refreshed yet.

Works with

Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.

  • Claude Code
  • Cursor
  • GitHub Copilot
  • Windsurf
  • Codex
  • Gemini CLI
  • Cline
  • Amp
  • Roo Code
  • Goose
  • Continue
  • Kilo Code
  • Junie
  • Trae
  • OpenHands
  • Qwen Code
  • AI Agent
  • Tabnine Chat
  • Sourcegraph Cody
  • Amazon Q
  • Firebase Genkit
  • Sweep
  • Devin
  • Phind
  • Mentat
  • Claude Desktop
  • Aider
  • GPT Pilot
  • Plandex
  • bolt.new
  • v0
  • Replit Agent
  • Anse
  • TypingMind
  • BetterChatGPT
  • LibreChat
  • Warp AI
  • Pieces
  • Fig AI
Embed badge
vskill VERIFIED badge
[![vskill VERIFIED](https://verified-skill.com/api/v1/skills/kolorbee/lnu-secllm/api-security-testing/badge)](https://verified-skill.com/skills/kolorbee/lnu-secllm/api-security-testing)

Something wrong with this skill or its page? Tell us.