pentest-business-logic
Business logic vulnerability testing — workflow bypass, payment manipulation, state machine abuse, and function limit circumvention per WSTG-BUSL.
来源信息
- 仓库
- jd-opensource/JoySafeter
- 最近来源活动
- 2026年2月11日 09:17
- 检测到的 SKILL.md 语言
- 英语
- 星标
- 312
- 分支
- 58
安装方式
默认使用会先检查来源的 Prompt;你也可以切换为直接命令,或下载本地副本。
检查来源文件
决定是否安装前,请先阅读 SKILL.md,以及 SkillsMP 当前展示的配套文件。
文件资源管理器
3 个文件正在显示 SKILL.md
SKILL.md
来源说明 · 只读预览- name
- pentest-business-logic
- description
- Business logic vulnerability testing — workflow bypass, payment manipulation, state machine abuse, and function limit circumvention per WSTG-BUSL.
# Pentest Business Logic
## Purpose
Identify flaws in application workflow enforcement, business rule validation, and state machine integrity that cannot be found by taint analysis or pattern matching. These vulnerabilities require understanding intended behavior and finding deviations.
## Prerequisites
### Authorization Requirements
- **Written authorization** with explicit scope for business logic testing
- **Test accounts** at multiple privilege levels (user, admin, premium, etc.)
- **Test payment methods** or sandbox payment environment for financial testing
- **Rollback plan** for any data-mutating tests (order creation, account changes)
### Environment Setup
- Burp Suite Professional with Repeater/Intruder configured
- Playwright or Selenium for multi-step browser automation
- Proxy configured to capture all application traffic
- Test data seeded for workflow testing (products, coupons, user accounts)
## Core Workflow
1. **Workflow Mapping**: Extract multi-step flows (checkout, registration, approval chains, onboarding) from recon deliverables and source code. Document expected state transitions and business constraints.
2. **Rule Extraction**: Identify server-side business constraints — price validation, quantity limits, role-gated actions, time-based restrictions, coupon rules, referral limits.
3. **Step Circumvention**: Skip, replay, reorder steps in multi-step workflows. Access final-step endpoints directly without completing prerequisites (WSTG-BUSL-06).
4. **Data Integrity Abuse**: Submit negative quantities, zero-price items, boundary values, type confusion in business fields. Test forged request parameters (WSTG-BUSL-02/03).
5. **Function Limit Bypass**: Test coupon reuse, referral loops, vote stuffing, resource exhaustion through legitimate endpoints (WSTG-BUSL-05).
6. **File Upload Logic**: Upload unexpected file types, oversized files, polyglot files, content-type mismatch, path traversal in filenames (WSTG-BUSL-08/09).
7. **Payment Testing**: Price manipulation at each checkout stage, currency confusion, discount stacking, partial payment abuse (WSTG-BUSL-10).
## WSTG Coverage
| WSTG ID | Test Name | Status |
|---------|-----------|--------|
| WSTG-BUSL-01 | Test Business Logic Data Validation | ✅ |
| WSTG-BUSL-02 | Test Ability to Forge Requests | ✅ |
| WSTG-BUSL-03 | Test Integrity Checks | ✅ |
| WSTG-BUSL-04 | Test for Process Timing | ✅ |
| WSTG-BUSL-05 | Test Number of Times a Function Can Be Used Limits | ✅ |
| WSTG-BUSL-06 | Testing for the Circumvention of Work Flows | ✅ |
| WSTG-BUSL-07 | Test Defenses Against Application Misuse | ✅ |
| WSTG-BUSL-08 | Test Upload of Unexpected File Types | ✅ |
| WSTG-BUSL-09 | Test Upload of Malicious Files | ✅ |
| WSTG-BUSL-10 | Test Payment Functionality | ✅ |
## Tool Categories
| Category | Tools | Purpose |
|----------|-------|---------|
| Request Manipulation | Burp Repeater, Burp Intruder, mitmproxy | Modify request parameters, replay/reorder steps |
| Browser Automation | Playwright, Selenium | Multi-step workflow testing, UI interaction |
| Scripting | Python requests, aiohttp | Custom workflow abuse scripts, parallel requests |
| File Upload | custom polyglot generators, ExifTool | File type confusion, metadata injection |
| Payment Testing | Stripe test mode, PayPal sandbox | Safe payment manipulation testing |
## References
- `references/tools.md` - Tool function signatures and parameters
- `references/workflows.md` - Attack pattern definitions and test vectors
在 GitHub 查看