All Projects → jangelesg → py3webfuzz

jangelesg / py3webfuzz

Licence: GPL-2.0 license
A Python3 module to assist in fuzzing web applications

Programming Languages

python
139335 projects - #7 most used programming language
java
68154 projects - #9 most used programming language
HTML
75241 projects
shell
77523 projects
ColdFusion
112 projects
ASP.NET
160 projects

Projects that are alternatives of or similar to py3webfuzz

awesome-api-security
A collection of awesome API Security tools and resources. The focus goes to open-source tools and resources that benefit all the community.
Stars: ✭ 2,079 (+3750%)
Mutual labels:  fuzzing
ras-fuzzer
RAS(RAndom Subdomain) Fuzzer
Stars: ✭ 42 (-22.22%)
Mutual labels:  fuzzing
titanm
This repository contains the tools we used in our research on the Google Titan M chip
Stars: ✭ 149 (+175.93%)
Mutual labels:  fuzzing
wordlists
Aggregated wordlist pulled from commonly used tools for discovery, enumeration, fuzzing, and exploitation.
Stars: ✭ 94 (+74.07%)
Mutual labels:  fuzzing
5-AFL-suite-docker
Dockerfile for AFL++ and helpful other tools
Stars: ✭ 20 (-62.96%)
Mutual labels:  fuzzing
SourceWolf
Amazingly fast response crawler to find juicy stuff in the source code! 😎🔥
Stars: ✭ 132 (+144.44%)
Mutual labels:  fuzzing
Sloth
Sloth 🦥 is a coverage guided fuzzing framework for fuzzing Android Native libraries that makes use of libFuzzer and QEMU user-mode emulation
Stars: ✭ 91 (+68.52%)
Mutual labels:  fuzzing
RTSPhuzz
RTSPhuzz - An RTSP Fuzzer written using the Boofuzz framework
Stars: ✭ 33 (-38.89%)
Mutual labels:  fuzzing
vaf
Vaf is a cross-platform very advanced and fast web fuzzer written in nim
Stars: ✭ 294 (+444.44%)
Mutual labels:  fuzzing
StochFuzz
Sound and Cost-effective Fuzzing of Stripped Binaries by Incremental and Stochastic Rewriting
Stars: ✭ 165 (+205.56%)
Mutual labels:  fuzzing
afl-dyninst
American Fuzzy Lop + Dyninst == AFL Fuzzing blackbox binaries
Stars: ✭ 65 (+20.37%)
Mutual labels:  fuzzing
Regaxor
A regular expression fuzzer.
Stars: ✭ 35 (-35.19%)
Mutual labels:  fuzzing
virgo
Crowdsourced fuzzing cluster. 🚀
Stars: ✭ 21 (-61.11%)
Mutual labels:  fuzzing
MediaTek-Fuzzing-Workshop
MediaTek Fuzzing Workshop in HITCON 2021
Stars: ✭ 59 (+9.26%)
Mutual labels:  fuzzing
fuzz-rest-api
Derive property based testing fast-check into a fuzzer for REST APIs
Stars: ✭ 38 (-29.63%)
Mutual labels:  fuzzing
LibAFL
Advanced Fuzzing Library - Slot your Fuzzer together in Rust! Scales across cores and machines. For Windows, Android, MacOS, Linux, no_std, ...
Stars: ✭ 1,348 (+2396.3%)
Mutual labels:  fuzzing
AndroidFuzz
JavaFuzz 4 Android
Stars: ✭ 27 (-50%)
Mutual labels:  fuzzing
HITB2020 FSFUZZER
My Material for the HITB presentation
Stars: ✭ 33 (-38.89%)
Mutual labels:  fuzzing
bsod-kernel-fuzzing
BSOD: Binary-only Scalable fuzzing Of device Drivers
Stars: ✭ 130 (+140.74%)
Mutual labels:  fuzzing
roboxtractor
Extract endpoints marked as disallow in robots files to generate wordlists.
Stars: ✭ 40 (-25.93%)
Mutual labels:  fuzzing

Py3webFuzz

made--python

';-- Python Web Fuzzing module Library

Python3 Module Compatible
Awesome

Author

Contributors

  • Nathan Hamiel @nathanhamiel

DESCRIPTION

Based on pywebfuzz, Py3webfuzz is a Python3 module to assist in the identification of vulnerabilities in web applications, Web Services through brute force, fuzzing and analysis. The module does this by providing common testing values, generators and other utilities that would be helpful when fuzzing web applications, API endpoints and developing web exploits.

py3webfuzz has the fuzzdb and some other miscellaneous sources implemented in Python classes, methods and functions for ease of use. fuzzdb project is just a collection of values for testing. The point is to provide a pretty good selection of values from fuzzdb project and some others sources, cleaned up and available through Python3 classes, methods and namespaces. This makes it easier and handy when the time comes up to use these values in your own exploits and PoC.

Effort was made to match the names up similarly to the folders and values from the latest fuzzdb project. This effort can sometimes make for some ugly looking namespaces. This balance was struck so that familiarity with the fuzzdb project would cross over into the Python code. The exceptions come in with the replacement of hyphens with underscores.

INSTALLATION

Installation can be done in a couple of ways. If you want use virtual environment

Using Python setuptools

http://pypi.python.org/pypi/setuptools

$ git clone https://github.com/jangelesg/py3webfuzz.git
$ cd py3webfuzz/

You can run the supplied setup.py with the install command

 $  python setup.py install

You can also use easy_install if that's what you do to manage your installed packages

 $ easy_install py3webfuzz_VERSION.tar.gz

You can also point to the location where the tar.gz lives on the web

 $ easy_install URL_package

You should be able to go.

Use in your Code

  • Some test cases can be found within info sub folder
# Accessing SQLi values and encode them for further use 
# Import Library
from py3webfuzz import fuzzdb
from py3webfuzz import utils, encoderFuncs
# Instantiate a Class Object that give you access to a set of SQLi values
sqli_detect_payload = fuzzdb.Attack.AttackPayloads.SQLi.Detect()
# Getting Access to those values through a list
for index, payload in enumerate(sqli_detect_payload.Generic_SQLI):
    print(f"Payload: {index} Value: {payload}")
    # Using encoderFuncs you can get different handy encodings to develop exploits
    print(f"SQLi Char Encode: {encoderFuncs.sqlchar_encode(payload)}")
# Send HTTP request to your target
# Import Library
from py3webfuzz import utils
# Custome your target and Headers
location = "http://127.0.0.1:8080/WebGoat/start.mvc#lesson/WebGoatIntroduction.lesson"
    headers = {"Host": "ssl.scroogle.org", "User-Agent": \
               "Mozilla/4.0 (compatible; MSIE 4.01; AOL 4.0; Mac_68K)",
               "Content-Type": "application/x-www-form-urlencoded"}
# at this point you have a dic object with all the elements for your pentest
# "headers": response.headers, "content": response.content, "status_code": response.status_code,
# 'json': response.json, "text": response.text, "time": f"Total in seconds: {time}"
res = utils.make_request(location, headers=headers, method="get")
# print the response 
print(res)

Demo

FUTURE

  • Uploading this module to the Python Package Index.
  • Integrate features, classes , methods and values for Mobile Pentest
  • Enhance the XSS, XXE, techniques throw some new features (Any ideas are welcome)
  • Feature for Server-Side Template Injection
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].