Professional Community

Additional CSRF Checks

This extension helps find weak CSRF-protection that can be bypassed. For example, content type based protection for API (Rest API, GraphQL API, etc) or CSRF-protection based on obscure data formats (binary format, etc) are known to be weak. Some tricks to bypass CSRF-protection were presented at ZeroNights 2017 conference.

The extension is not a scanner. A scanner implementation doesn't allow you to quickly check large WebApp with a mixture of APIs and endpoints for CSRF vulnerabilities. Also a scanner implementation has more false positives/negatives. This extension is a trade-off between manual and fully automatic check.

The extension automatically makes changes to POST/PUT/DELETE/PATCH requests and highlights modified requests in the Proxy HTTP history. To use it, you need to trigger actions in the WebApp, and judge by looking at the WebApp's UI which modified requests have failed or succeeded. Actions that are successful after modification are potentially interesting, and you should investigate them deeper.

Because the extension makes quite aggressive modifications to requests, it is disbaled by default. Enable it when you want to perform CSRF checks.

With EasyCSRF you can find APIs or endpoints that have weak CSRF-protection based on content type, referrer, obscure data format, etc.

The Settings tab provides the following options:

  • Enable/disable EasyCSRF extension.
  • Modify all or only in-scope requests.
  • Remove HTTP headers that are used for CSRF-protection.
  • Remove CSRF-token from parameters. URL-encoded, multipart, JSON parameters are supported.
  • Change PUT/DELETE/PATCH method to POST.
  • Convert URL-encoded body to JSON format.
  • Set text/plain value for Content-Type header.
  • Change POST/PUT/DELETE/PATCH request to GET request for url-encoded requests.

Author

Author

Mikhail Egorov

Version

Version

2.1

Rating

Rating

Popularity

Popularity

Last updated

Last updated

14 December 2018

Estimated system impact

Estimated system impact

Overall impact: Low

Memory
Low
CPU
Low
General
Low
Scanner
Low

You can install BApps directly within Burp, via the BApp Store feature in the Burp Extender tool. You can also download them from here, for offline installation into Burp.

You can view the source code for all BApp Store extensions on our GitHub page.

Follow @BApp_Store on Twitter to receive notifications of all BApp releases and updates.

Please note that extensions are written by third party users of Burp, and PortSwigger Web Security makes no warranty about their quality or usefulness for any particular purpose.

Go back to BappStore

Note:

Please note that extensions are written by third party users of Burp, and PortSwigger Web Security makes no warranty about their quality or usefulness for any particular purpose.