Skip to content

Commit 24a64f1

Browse files
committed
docs: update for new fuzzer types
1 parent 69a638f commit 24a64f1

File tree

2 files changed

+33
-5
lines changed

2 files changed

+33
-5
lines changed

README.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -50,12 +50,12 @@ pip install pirebok[guided]
5050
```
5151

5252
## Features
53-
- Random generic fuzzer w/ multiple transformers
54-
- Random sql fuzzer w/ multiple transformers
55-
- Guided random sql fuzzer w/ iterative evolutionary search and [metamaska](https://github.com/HappyHackingSpace/metamaska)
53+
- **4 attack types**: SQL injection, XSS, command injection, path traversal
54+
- Random and guided (evolutionary) fuzzers for each attack type
55+
- Guided fuzzers use [metamaska](https://github.com/HappyHackingSpace/metamaska) classifier to iteratively mutate payloads until they evade detection
5656
- Priority-queue-based payload pool ranked by confidence
5757
- Configurable `max_rounds`, `round_size`, and `timeout`
58-
- Random comment injection transformer (`/**/` at token boundaries)
58+
- 17 type-specific transformers + 6 generic transformers
5959

6060
## Credits
6161
- [Cookiecutter](https://github.com/audreyr/cookiecutter)

docs/usage.md

Lines changed: 29 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,21 +25,49 @@ fuzzer = (
2525
fuzzer.fuzz("admin' OR 1=1#")
2626
```
2727

28+
### XSS fuzzing
29+
30+
```python
31+
from pirebok.fuzzers import FuzzerBuilder
32+
fuzzer = FuzzerBuilder().choice("RandomXssFuzzer").build()
33+
fuzzer.fuzz("<script>alert(1)</script>")
34+
```
35+
36+
### Command injection fuzzing
37+
38+
```python
39+
from pirebok.fuzzers import FuzzerBuilder
40+
fuzzer = FuzzerBuilder().choice("RandomCmdiFuzzer").build()
41+
fuzzer.fuzz("; cat /etc/passwd")
42+
```
43+
44+
### Path traversal fuzzing
45+
46+
```python
47+
from pirebok.fuzzers import FuzzerBuilder
48+
fuzzer = FuzzerBuilder().choice("RandomPathTraversalFuzzer").build()
49+
fuzzer.fuzz("../../etc/passwd")
50+
```
51+
2852
To use from CLI
2953

3054
```
3155
pirebok --help
3256
Usage: pirebok [OPTIONS]
3357
3458
Options:
35-
-f, --fuzzer [randomgenericfuzzer|guidedrandomsqlfuzzer|randomsqlfuzzer]
59+
-f, --fuzzer [guidedrandomcmdifuzzer|randomcmdifuzzer|randomgenericfuzzer|
60+
guidedrandompathtraversalfuzzer|randompathtraversalfuzzer|
61+
guidedrandomsqlfuzzer|randomsqlfuzzer|
62+
guidedrandomxssfuzzer|randomxssfuzzer]
3663
choose fuzzer [required]
3764
-s, --steps INTEGER Number of iteration [default: 10]
3865
-t, --threshold FLOAT Threshold for the guided fuzzers [default: 0.5]
3966
--max-rounds INTEGER Maximum mutation rounds for guided fuzzers [default: 100]
4067
--round-size INTEGER Mutations per round for guided fuzzers [default: 20]
4168
--timeout INTEGER Timeout in seconds, 0=unlimited [default: 0]
4269
-p, --payload TEXT Payload to fuzz [required]
70+
-q, --silent Suppress banner
4371
--help Show this message and exit.
4472
```
4573

0 commit comments

Comments
 (0)