GithubHelp home page GithubHelp logo

baeeq / owasp-csrfguard Goto Github PK

View Code? Open in Web Editor NEW

This project forked from sayeed-anjum/owasp-csrfguard

0.0 3.0 0.0 1.4 MB

OWASP CSRFGuard is a library that implements a variant of the synchronizer token pattern to mitigate the risk of Cross-Site Request Forgery (CSRF) attacks.

Home Page: http://www.owasp.org/index.php/Category:OWASP_CSRFGuard_Project

Java 78.40% HTML 3.82% JavaScript 17.78%

owasp-csrfguard's Introduction

OWASP CSRFGuard 3.0

http://www.owasp.org/index.php/Category:OWASP_CSRFGuard_Project

BSD License, All rights reserved.

Overview

Welcome to the home of the OWASP CSRFGuard Project! OWASP CSRFGuard is a library that implements a variant of the synchronizer token pattern to mitigate the risk of Cross-Site Request Forgery (CSRF) attacks. The OWASP CSRFGuard library is integrated through the use of a JavaEE Filter and exposes various automated and manual ways to integrate per-session or pseudo-per-request tokens into HTML. When a user interacts with this HTML, CSRF prevention tokens (i.e. cryptographically random synchronizer tokens) are submitted with the corresponding HTTP request. It is the responsibility of OWASP CSRFGuard to ensure the token is present and is valid for the current HTTP request. Any attempt to submit a request to a protected resource without the correct corresponding token is viewed as a CSRF attack in progress and is discarded. Prior to discarding the request, CSRFGuard can be configured to take one or more actions such as logging aspects of the request and redirecting the user to a landing page. The latest release enhances this strategy to support the optional verification of HTTP requests submitted using Ajax as well as the optional verification of referrer headers.

Project Lead

This projet is now run by Azzeddine RAMRAMI. He can be reached at azzeddine.ramrami at owasp.org.

License

OWASP CSRFGuard 3.0 is offered under the BSD license

Using with Maven

OWASP CSRFGuard 3.0 is available on Maven Central. Add the following dependency to your Maven POM file to use the library:

<dependency>
    <groupId>org.owasp</groupId>
    <artifactId>csrfguard</artifactId>
    <version>3.0.0</version>
</dependency>

Building the code

  1. Make sure that you have Apache Maven 3.0.4 or higher installed;
  2. Clone this repository locally;
  3. Build the csrfguard project first as cd csrfguard followed by mvn clean install;
  4. Build and run the csrfguard-test project as cd ../csrfguard-test followed by mvn clean package tomcat7:run;
  5. Use a web browser to access http://localhost to open the home page of the test project.

Uploading to the Maven Central repository

  1. Follow the Sonatype Open-Source Project Maven Repository Usage Guide to create a Sonatype user account;
  2. Next, open a support request to get your newly created username added to the Maven groupId org.owasp;
  3. Once the support request has been completed, follow the instructions in the Sonatype Maven repository usage guide mentioned above to upload new versions to the Maven Central repository.

Email List

You can sign up for the OWASP CSRFGuard email list here.

owasp-csrfguard's People

Contributors

esheri3 avatar elementalvoid avatar pradtke avatar upcrob avatar manish-in-java avatar shaneargo avatar atomicframeworks avatar aramrami avatar koto avatar pstibrany avatar jason-lindquist avatar skepticfx avatar cpweaver avatar jeevanragula avatar kakawait avatar crydust avatar mswulius avatar

Watchers

James Cloos avatar baeeq avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.