mebjas / CSRF-Protector-PHP

CSRF Protector library: standalone library for CSRF mitigation
https://owasp.org/www-project-csrfprotector/
Other
211 stars 89 forks source link
csrf csrf-protector owasp php security standalone-library

CSRF Protector

Todo Status Build Status Minimum PHP Version
CSRF protector php, a standalone php library for csrf mitigation in web applications. Easy to integrate in any php web app.

Add to your project using packagist

Add a composer.json file to your project directory

 {
    "require": {
        "owasp/csrf-protector-php": "dev-master"
    }
}

Then open terminal (or command prompt), move to project directory and run

composer install

## Or alternatively

php composer.phar install

This will add CSRFP (library will be downloaded at ./vendor/owasp/csrf-protector-php) to your project directory. View packagist.org for more help with composer!

Configuration

For composer installations: Copy the config.sample.php file into your root folder at config/csrf_config.php For non-composer installations: Copy the libs/csrf/config.sample.php file into libs/csrf/config.php Edit config accordingly. See Detailed Information link below.

Link to wiki - Editing Configurations & Mandatory requirements before using this library

How to use

<?php
include_once __DIR__ .'/vendor/owasp/csrf-protector-php/libs/csrf/csrfprotector.php';

// Initialise CSRFProtector library
csrfProtector::init();

simply include the library and call the init() function!

More information

Discussions

Join Discussions at Google Group \ OWASP \ CSRF Protector

For any other queries contact me at: minhazav@gamil.com | minhaz@owasp.org

How to contribute?

General steps

More?

Well, there are various ways to contribute to this project. Find a few of them listed below:

FAQ:

  1. What happens if token expires? - https://github.com/mebjas/CSRF-Protector-PHP/wiki/what-if-token-expires
  2. Secure flag in a cookie? - https://github.com/mebjas/CSRF-Protector-PHP/issues/54
  3. [Deprecated] ~NoJS support? - https://github.com/mebjas/CSRF-Protector-PHP/tree/nojs-support~