中文 | English
📖 User Guide | 📖 中文指南 | 🚀 Quick Start | 📝 Changelog
A modern SQLMap web interface that provides a convenient SQL injection testing platform for security researchers. Built-in VulnShop Lab for hands-on practice.
- Task Management: Create, monitor, and stop SQL injection scanning tasks
- Real-time Logs: View real-time log output during task execution
- Scan Results: Intuitive display of injection points and payload information
- HTTP Request Viewer: Complete display of raw HTTP request information
- Enhanced Task List:
- Multi-dimensional filtering (URL/message keywords, status, date range, injection status)
- Multi-field sorting (Task ID, status, creation time)
- Summary statistics row (real-time task statistics display)
- Smart polling (automatically adjusts refresh frequency based on task status)
- Default Configuration: Set global default scan parameters
- Preset Configurations: Save commonly used configuration combinations with full CRUD support
- History Configurations: View configurations used in past scans
- Guided Editor: Visually configure SQLMap parameters without memorizing command line
- Parameter Preview: Real-time preview of generated command line parameters
- Support for automatic parsing of multiple request formats:
- cURL (Bash/CMD)
- PowerShell Invoke-WebRequest
- JavaScript fetch
- Raw HTTP message
- Smart Format Detection: Automatically identify input format
- Code Editor: Line numbers, syntax highlighting, search filter
- Batch Stop: Stop multiple running tasks at once
- Batch Delete: Delete completed or failed tasks in bulk
- Batch Import: Support batch import of HTTP requests to create scan tasks
- Select All/Deselect: Convenient task selection operations
- Persistent Rules: Create long-term header rules with full CRUD support
- Session-level Rules: Set temporary headers with TTL auto-expiration
- Scope Configuration: Flexible URL matching rules
- Protocol matching (http/https)
- Hostname matching (supports wildcards
*.example.com) - Port matching (supports multiple ports
80,443,8080) - Path matching (supports wildcards
/api/*) - Regular expression matching
- Priority Control: Support 0-100 priority settings
- Replace Strategies: Full replace, append, conditional replace, and more
- Batch Import: Support importing headers from text in bulk
- Burp Suite Plugin: Supports both Legacy API and Montoya API versions
- Right-click menu to send requests to backend server
- Right-click menu to execute SQLMap scan directly (local terminal execution)
- Configurable scan parameters (Level, Risk, DBMS, Technique)
- Default configuration and saved presets management
- Command preview and copy to clipboard
- Terminal window title customization rules
- Configuration import/export functionality
- Activity logging
Built-in e-commerce platform simulation with 8 types of SQL injection vulnerabilities:
| Vulnerability Type | Endpoint | Description |
|---|---|---|
| Error-based | POST /api/user/login | Error-based injection |
| Union-based | GET /api/user/profile | Union query injection |
| Boolean-blind | GET /api/products/search | Boolean blind injection |
| Time-based | GET /api/products/detail | Time-based blind injection |
| Stacked Queries | GET /api/orders/query | Stacked queries injection |
| 2nd Order | POST /api/user/register | Second-order injection |
Lab Features:
- 🎨 Modern UI with light/dark theme toggle
- 🛒 Complete shopping flow: browse products, cart, checkout
- ⚙️ 3 difficulty levels (Easy/Medium/Hard) with WAF protection
- 🔄 One-click database reset
- 📱 Optimized for Chrome browser on PC
- FastAPI - High-performance asynchronous web framework
- SQLMap - Automatic SQL injection detection tool
- Python 3.10+ - Runtime environment
- SQLite - Database storage
- uv - Modern Python package manager
- Vue 3 - Progressive JavaScript framework
- TypeScript - Type-safe JavaScript
- PrimeVue - Enterprise-grade UI component library
- Pinia - Vue state management
- Vite - Next-generation frontend build tool
- Burp Suite Plugin
- Montoya API (Java 17+, Burp 2023.1+)
- Legacy API (Java 11+)
- Python 3.10+
- Node.js 20+
- pnpm 9+
- Java 17+ (Burp Montoya API) or Java 11+ (Legacy API)
# Windows
cd src\backEnd
start.bat
# Linux/macOS
cd src/backEnd && chmod +x start.sh && ./start.shThe startup script supports configuring mirror sources, intranet environment, offline mode, etc. See startup.conf for details.
# Enter backend directory
cd src/backEnd
# Install dependencies using uv
uv sync --extra thirdparty
# Start service
uv run python main.py# Enter frontend directory
cd src/frontEnd
# Install dependencies
pnpm install
# Development mode
pnpm run dev
# Build production version
pnpm run build# Enter lab directory
cd src/vulnTestServer
# Install dependencies (if not installed)
pip install flask
# Start server
python server.py| Service | Address |
|---|---|
| Frontend Dev Server | http://localhost:5173 |
| Backend API Server | http://localhost:8775 |
| VulnShop Lab | http://127.0.0.1:9527 |
sqlmapWebUI/
├── src/
│ ├── backEnd/ # Backend code
│ │ ├── api/ # API routes
│ │ │ ├── webApi/ # Web browser page API
│ │ │ ├── burpSuiteExApi/ # Burp Suite API
│ │ │ └── commonApi/ # Common API (auth/header rules/config)
│ │ ├── model/ # Data models
│ │ ├── service/ # Business logic
│ │ ├── utils/ # Utility functions
│ │ ├── third_lib/sqlmap/ # SQLMap integration
│ │ ├── app.py # FastAPI application
│ │ └── main.py # Entry point
│ ├── frontEnd/ # Frontend code
│ │ ├── src/
│ │ │ ├── api/ # API requests
│ │ │ ├── components/ # Common components
│ │ │ ├── stores/ # Pinia stores
│ │ │ ├── types/ # TypeScript types
│ │ │ ├── utils/ # Utility functions
│ │ │ └── views/ # Page views
│ │ └── vite.config.ts # Vite configuration
│ ├── burpEx/ # Burp Suite extensions
│ │ ├── legacy-api/ # Legacy API (Java 11)
│ │ └── montoya-api/ # Montoya API (Java 17)
│ └── vulnTestServer/ # VulnShop vulnerability lab
│ ├── static/ # Frontend static assets
│ ├── server.py # HTTP server
│ ├── database.py # Database management
│ └── waf.py # WAF module
└── doc/ # Project documentation
- Click "New Task" on the task list page
- Enter target URL or import HTTP request
- Configure scan parameters (optional)
- Click "Start Scan"
- Start lab server:
python server.py - Visit http://127.0.0.1:9527 in your browser
- Login with test accounts (admin/admin123 or test/test)
- Follow page prompts to test various injection types
- Build plugin:
mvn clean package -DskipTests - Load JAR file in Burp Suite
- Configure backend server address
- Right-click request and select "Send to SQLMap WebUI"
- Go to "Config" → "Header Rules Management" tab
- Click "Add Rule"
- Fill in rule information:
- Rule name, Header name, Header value
- Replace strategy, Priority
- Optional: Configure scope to limit effective range
- Save the rule
- Go to "Config" page
- Find "System Log Viewer" entry
- Select log type (Application/Access/Error)
- Set display lines and refresh to view
📚 For detailed usage, please refer to User Guide
Includes complete feature descriptions, operation steps, configuration guides, and FAQ.
Important: This tool is for authorized security testing only.
- Only test on systems with explicit authorization
- Do not use on production or unauthorized systems
- VulnShop Lab binds to localhost only - never expose to public network
Please read the Disclaimer before use.
Important: The complete version history has been moved to a standalone document CHANGELOG_EN.md.
All future version updates will be maintained in that document. This README no longer includes detailed changelog.
Latest Version: v1.8.53 (2026-04-16)
- Reorganized Burp plugin architecture with layered structure
- Pure code reorganization, no functional changes, improved maintainability
View Full Changelog: CHANGELOG_EN.md | 中文更新日志
This project is open sourced under the MIT License.
Issues and Pull Requests are welcome!
- Fork this repository
- Create feature branch (
git checkout -b feature/AmazingFeature) - Commit changes (
git commit -m 'Add some AmazingFeature') - Push to branch (
git push origin feature/AmazingFeature) - Submit Pull Request