@waftester/cli 2.9.6 → 2.9.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +66 -13
- package/package.json +7 -7
package/README.md
CHANGED
|
@@ -5,14 +5,14 @@
|
|
|
5
5
|
[](https://github.com/waftester/waftester/blob/main/LICENSE)
|
|
6
6
|
[](https://npmjs.com/package/@waftester/cli)
|
|
7
7
|
|
|
8
|
-
The most comprehensive WAF testing CLI & MCP server. Detect, fingerprint, and bypass Web Application Firewalls with **2,800+ payloads**, **
|
|
8
|
+
The most comprehensive WAF testing CLI & MCP server. Detect, fingerprint, and bypass Web Application Firewalls with **2,800+ payloads**, **90+ tamper scripts**, and quantitative security metrics (FPR, F1, MCC).
|
|
9
9
|
|
|
10
10
|
## Why WAFtester?
|
|
11
11
|
|
|
12
12
|
| Traditional Approach | WAFtester |
|
|
13
13
|
|---------------------|-----------|
|
|
14
14
|
| Chain 5+ tools (wafw00f, sqlmap, nuclei, scripts) | Single `auto` command — end-to-end |
|
|
15
|
-
| Manually select tampers per WAF vendor | Auto-selects from
|
|
15
|
+
| Manually select tampers per WAF vendor | Auto-selects from 90+ tampers based on detected WAF |
|
|
16
16
|
| Binary pass/fail results | Statistical metrics: FPR, Precision, F1 Score, MCC |
|
|
17
17
|
| HTTP only | Native GraphQL, gRPC, SOAP, WebSocket support |
|
|
18
18
|
| Manual result correlation | Unified JSON, SARIF, HTML, JUnit, CycloneDX output |
|
|
@@ -21,11 +21,11 @@ The most comprehensive WAF testing CLI & MCP server. Detect, fingerprint, and by
|
|
|
21
21
|
|
|
22
22
|
```bash
|
|
23
23
|
# Run without installing — downloads correct binary for your platform
|
|
24
|
-
npx -y @waftester/cli scan
|
|
24
|
+
npx -y @waftester/cli scan -u https://example.com
|
|
25
25
|
|
|
26
26
|
# Or install globally
|
|
27
27
|
npm install -g @waftester/cli
|
|
28
|
-
waf-tester scan
|
|
28
|
+
waf-tester scan -u https://example.com
|
|
29
29
|
```
|
|
30
30
|
|
|
31
31
|
## What You Can Do
|
|
@@ -71,6 +71,16 @@ Top Bypass Chains:
|
|
|
71
71
|
|
|
72
72
|
The mutation engine combines 49 mutator functions with base payloads for comprehensive encoding, evasion, and injection variation coverage.
|
|
73
73
|
|
|
74
|
+
Automate bypass chain discovery by testing tamper combinations against WAF rules:
|
|
75
|
+
|
|
76
|
+
```bash
|
|
77
|
+
# Automated bypass discovery — tests tamper combinations systematically
|
|
78
|
+
waf-tester bypass -u https://target.com --discover
|
|
79
|
+
|
|
80
|
+
# Write custom tamper scripts in Tengo and load from a directory
|
|
81
|
+
waf-tester scan -u https://target.com --tamper-dir ./my-tampers
|
|
82
|
+
```
|
|
83
|
+
|
|
74
84
|
### Enterprise Assessment with Metrics
|
|
75
85
|
|
|
76
86
|
```
|
|
@@ -101,9 +111,19 @@ waf-tester scan -u grpc://service:50051 -types grpc
|
|
|
101
111
|
waf-tester scan -u wss://api.example.com/socket -types websocket
|
|
102
112
|
```
|
|
103
113
|
|
|
114
|
+
### Browser & SPA Testing
|
|
115
|
+
|
|
116
|
+
```bash
|
|
117
|
+
# DOM event crawling — discovers hidden UI states in single-page apps
|
|
118
|
+
waf-tester headless -u https://spa.example.com --event-crawl
|
|
119
|
+
|
|
120
|
+
# Browser-based scanning for JavaScript-rendered targets
|
|
121
|
+
waf-tester headless -u https://app.example.com --smart
|
|
122
|
+
```
|
|
123
|
+
|
|
104
124
|
## MCP Server (AI Integration)
|
|
105
125
|
|
|
106
|
-
WAFtester includes a built-in [Model Context Protocol](https://modelcontextprotocol.io/) server for AI-powered security testing from Claude Desktop, VS Code, Cursor, and other MCP clients.
|
|
126
|
+
WAFtester includes a built-in [Model Context Protocol](https://modelcontextprotocol.io/) server with **27 tools**, **7 guided prompts**, and **12 resources** for AI-powered security testing from Claude Desktop, VS Code, Cursor, and other MCP clients.
|
|
107
127
|
|
|
108
128
|
### Claude Desktop
|
|
109
129
|
|
|
@@ -150,6 +170,24 @@ Add to Cursor MCP settings:
|
|
|
150
170
|
}
|
|
151
171
|
```
|
|
152
172
|
|
|
173
|
+
## API Spec Scanning
|
|
174
|
+
|
|
175
|
+
Scan OpenAPI, Swagger, Postman, HAR, AsyncAPI, gRPC, and GraphQL endpoints with one command:
|
|
176
|
+
|
|
177
|
+
```bash
|
|
178
|
+
# OpenAPI / Swagger spec (auto-detected)
|
|
179
|
+
waf-tester scan --spec openapi.yaml -u https://api.example.com
|
|
180
|
+
|
|
181
|
+
# Postman Collection with environment variables
|
|
182
|
+
waf-tester scan --spec collection.postman_collection.json --env staging.postman_environment.json
|
|
183
|
+
|
|
184
|
+
# HAR recording from browser DevTools
|
|
185
|
+
waf-tester scan --spec recording.har -u https://api.example.com
|
|
186
|
+
|
|
187
|
+
# Preview endpoints without scanning
|
|
188
|
+
waf-tester scan --spec openapi.yaml -u https://api.example.com --dry-run
|
|
189
|
+
```
|
|
190
|
+
|
|
153
191
|
## Output Formats
|
|
154
192
|
|
|
155
193
|
| Format | Use Case | Flag |
|
|
@@ -191,26 +229,37 @@ Use the official [WAFtester Action](https://github.com/marketplace/actions/wafte
|
|
|
191
229
|
|
|
192
230
|
Also integrates with SonarQube, GitLab SAST, DefectDojo, Elasticsearch, Slack, Teams, PagerDuty, Jira, Azure DevOps, and OpenTelemetry.
|
|
193
231
|
|
|
194
|
-
## All
|
|
232
|
+
## All 36 Commands
|
|
195
233
|
|
|
196
234
|
| Command | Description |
|
|
197
235
|
|---------|-------------|
|
|
198
236
|
| `auto` | Full automated assessment (discovery → detection → testing → report) |
|
|
199
237
|
| `scan` | Targeted vulnerability scanning across 50+ categories |
|
|
200
238
|
| `vendor` | WAF vendor detection and fingerprinting (197 signatures) |
|
|
239
|
+
| `probe` | WAF detection + protocol info in one pass |
|
|
201
240
|
| `bypass` | Bypass discovery with tamper chain optimization |
|
|
202
241
|
| `assess` | Enterprise assessment with statistical metrics |
|
|
203
242
|
| `tampers` | List and rank tamper scripts by WAF vendor effectiveness |
|
|
204
|
-
| `
|
|
243
|
+
| `discover` | Full discovery (crawl + JS + sitemap + Wayback + event crawl) |
|
|
205
244
|
| `fuzz` | Smart fuzzing with parameter-aware mutation |
|
|
206
|
-
| `
|
|
245
|
+
| `mutate` | Mutation matrix testing (49 mutator functions) |
|
|
246
|
+
| `headless` | Browser-based testing for JS-rendered targets |
|
|
247
|
+
| `template` | Run Nuclei-compatible YAML templates (HTTP, DNS, TCP, UDP) |
|
|
248
|
+
| `openapi` | Scan OpenAPI/Swagger spec endpoints |
|
|
249
|
+
| `grpc` | Test gRPC services via reflection |
|
|
250
|
+
| `soap` | Test SOAP/WSDL endpoints |
|
|
207
251
|
| `mcp` | Start MCP server for AI-powered testing |
|
|
208
|
-
| `
|
|
252
|
+
| `cicd` | Generate CI/CD pipeline configs |
|
|
253
|
+
| `crawl` | Spider target for endpoint and parameter discovery |
|
|
254
|
+
| `analyze` | JavaScript analysis for endpoints and secrets |
|
|
255
|
+
| `cloud` | Cloud resource discovery |
|
|
256
|
+
| `report` | Generate reports from saved results |
|
|
257
|
+
| `run` | Execute specific payload categories against target |
|
|
209
258
|
| `benchmark` | Performance benchmarking and rate limit detection |
|
|
210
259
|
| `compare` | Compare assessments across WAF configs or vendors |
|
|
211
|
-
| `
|
|
212
|
-
| `
|
|
213
|
-
| ... |
|
|
260
|
+
| `race` | Race condition testing |
|
|
261
|
+
| `smuggle` | HTTP request smuggling tests |
|
|
262
|
+
| ... | 10 more specialized commands |
|
|
214
263
|
|
|
215
264
|
## Platform Support
|
|
216
265
|
|
|
@@ -241,8 +290,12 @@ Community payloads are licensed under [MIT](https://github.com/waftester/waftest
|
|
|
241
290
|
|
|
242
291
|
## Links
|
|
243
292
|
|
|
293
|
+
- [Website](https://waftester.com)
|
|
294
|
+
- [Documentation](https://waftester.com/docs)
|
|
295
|
+
- [Command Reference](https://waftester.com/commands)
|
|
296
|
+
- [Cheat Sheet](https://waftester.com/cheat-sheet)
|
|
244
297
|
- [GitHub](https://github.com/waftester/waftester)
|
|
245
|
-
- [
|
|
298
|
+
- [Examples](https://github.com/waftester/waftester/blob/main/docs/EXAMPLES.md)
|
|
246
299
|
- [Installation Guide](https://github.com/waftester/waftester/blob/main/docs/INSTALLATION.md)
|
|
247
300
|
- [Changelog](https://github.com/waftester/waftester/blob/main/CHANGELOG.md)
|
|
248
301
|
- [Issues](https://github.com/waftester/waftester/issues)
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@waftester/cli",
|
|
3
|
-
"version": "2.9.
|
|
3
|
+
"version": "2.9.8",
|
|
4
4
|
"description": "WAFtester — the most comprehensive WAF testing CLI & MCP server",
|
|
5
5
|
"license": "BUSL-1.1",
|
|
6
6
|
"repository": {
|
|
@@ -43,11 +43,11 @@
|
|
|
43
43
|
"node": ">=16"
|
|
44
44
|
},
|
|
45
45
|
"optionalDependencies": {
|
|
46
|
-
"@waftester/darwin-x64": "2.9.
|
|
47
|
-
"@waftester/darwin-arm64": "2.9.
|
|
48
|
-
"@waftester/linux-x64": "2.9.
|
|
49
|
-
"@waftester/linux-arm64": "2.9.
|
|
50
|
-
"@waftester/win32-x64": "2.9.
|
|
51
|
-
"@waftester/win32-arm64": "2.9.
|
|
46
|
+
"@waftester/darwin-x64": "2.9.8",
|
|
47
|
+
"@waftester/darwin-arm64": "2.9.8",
|
|
48
|
+
"@waftester/linux-x64": "2.9.8",
|
|
49
|
+
"@waftester/linux-arm64": "2.9.8",
|
|
50
|
+
"@waftester/win32-x64": "2.9.8",
|
|
51
|
+
"@waftester/win32-arm64": "2.9.8"
|
|
52
52
|
}
|
|
53
53
|
}
|