Skip to main content

The Prime Cross Site Request Forgery (CSRF) Audit & Exploitation Toolkit

Project description


xsrfprobe

XSRFProbe

The Prime Cross Site Request Forgery Audit & Exploitation Toolkit.

About:

XSRFProbe is an advanced Cross Site Request Forgery (CSRF/XSRF) Audit and Exploitation Toolkit. Equipped with a powerful crawling engine and numerous systematic checks, it is able to detect most cases of CSRF vulnerabilities, their related bypasses and futher generate (maliciously) exploitable proof of concepts with each found vulnerability. For more info on how XSRFProbe works, see XSRFProbe Internals on wiki.

xsrf-logo

XSRFProbe WikiGetting StartedGeneral UsageAdvanced UsageXSRFProbe InternalsGallery

Some Features:

  • Performs several types of checks before declaring an endpoint as vulnerable.
  • Can detect several types of Anti-CSRF tokens in POST requests.
  • Works with a powerful crawler which features continuous crawling and scanning.
  • Out of the box support for custom cookie values and generic headers.
  • Accurate Token-Strength Detection and Analysis using various algorithms.
  • Can generate both normal as well as maliciously exploitable CSRF proof of concepts.
  • Well documented code and highly generalised automated workflow.
  • The user is in control of everything whatever the scanner does.
  • Has a user-friendly interaction environment with full verbose support.
  • Detailed logging system of errors, vulnerabilities, tokens and other stuffs.

Gallery:

Lets see some real-world scenarios of XSRFProbe in action:

Usage:

For the full usage info, please take a look at the wiki's — General Usage and Advanced Usage.

Installing via Pypi:

XSRFProbe can be easily installed via a single command:

pip install xsrfprobe

Installing manually:

  • For the basics, the first step is to install the tool:
python3 setup.py install
  • Now, the tool can be fired up via:
xsrfprobe --help
  • After testing XSRFProbe on a site, an output folder is created in your present working directory as xsrfprobe-output. Under this folder you can view the detailed logs and information collected during the scans.

Version and License:

XSRFProbe v2.3 release is a Stage 5 Production-Ready (Stable) release and the work is licensed under the GNU General Public License (GPLv3).

Warnings:

Do not use this tool on a live site!

It is because this tool is designed to perform all kinds of form submissions automatically which can sabotage the site. Sometimes you may screw up the database and most probably perform a DoS on the site as well.

Test on a disposable/dummy setup/site!

Disclaimer:

Usage of XSRFProbe for testing websites without prior mutual consistency can be considered as an illegal activity. It is the final user's responsibility to obey all applicable local, state and federal laws. The author assumes no liability and is not exclusively responsible for any misuse or damage caused by this program.

Author's Words:

This project is based entirely upon my own research and my own experience with web applications on Cross-Site Request Forgery attacks. You can try going through the source code which is highly documented to help you understand how this toolkit was built. Useful pull requests, ideas and issues are highly welcome. If you wish to see what how XSRFProbe is being developed, check out the Development Board.

Copyright © @0xInfection

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

xsrfprobe-2.3.0.tar.gz (39.4 kB view details)

Uploaded Source

Built Distribution

xsrfprobe-2.3.0-py3.6.egg (107.4 kB view details)

Uploaded Egg

File details

Details for the file xsrfprobe-2.3.0.tar.gz.

File metadata

  • Download URL: xsrfprobe-2.3.0.tar.gz
  • Upload date:
  • Size: 39.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/44.0.0 requests-toolbelt/0.9.1 tqdm/4.41.1 CPython/3.6.9

File hashes

Hashes for xsrfprobe-2.3.0.tar.gz
Algorithm Hash digest
SHA256 4f16d9ecdde72ca93c574dde505a482461c26f06d4fab3fd86380c3586bd746d
MD5 57ba4448b8e392e347a4ff25e6adc091
BLAKE2b-256 30e7be0cb6e4af76317d3a669872c02db51cb32bbd7c1ae1f3daa577bfa6114e

See more details on using hashes here.

File details

Details for the file xsrfprobe-2.3.0-py3.6.egg.

File metadata

  • Download URL: xsrfprobe-2.3.0-py3.6.egg
  • Upload date:
  • Size: 107.4 kB
  • Tags: Egg
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/44.0.0 requests-toolbelt/0.9.1 tqdm/4.41.1 CPython/3.6.9

File hashes

Hashes for xsrfprobe-2.3.0-py3.6.egg
Algorithm Hash digest
SHA256 11b8a441098a0c6824d6b6fabe8d7e441817d181bd5cbe594f780d13daf81884
MD5 652883c486cf53c25d13e96d53cdca7a
BLAKE2b-256 4b01df704c4332a7406efb3467e11802917eba786f2f75fa26267fe8c113099d

See more details on using hashes here.

Supported by

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