GithubHelp home page GithubHelp logo

gdraperi / authcov Goto Github PK

View Code? Open in Web Editor NEW

This project forked from authcov/authcov

0.0 1.0 0.0 10.65 MB

Web app authorization coverage scanning

License: GNU General Public License v3.0

JavaScript 89.86% CSS 1.47% HTML 8.68%

authcov's Introduction

AuthCov

npm version

Web app authorization coverage scanning.

Introduction

AuthCov crawls your web application using a Chrome headless browser while logged in as a pre-defined user. It intercepts and logs API requests as well as pages loaded during the crawling phase. In the next phase it logs in under a different user account, the "intruder", and attempts to access each of one of the API requests or pages discovered previously. It repeats this step for each intruder user defined. Finally it generates a detailed report listing the resources discovered and whether or not they are accessible to the intruder users.

An example report generated from scanning a local Wordpress instance:

Features

  • Works with single-page-applications and traditional multi-page-applications
  • Handles token-based and cookie-based authentication mechanisms
  • Generates an in-depth report in HTML format
  • Screenshots of each page crawled can be viewed in the report

Installation

Install node 10. Then run:

$ npm install -g authcov

Usage

  1. Generate a config for the site you want to scan:
$ authcov new myconfig.js
  1. Update the values in myconfig.js
  2. Test your configuration values by running this command to ensure the browser is logging in successfully.
$ authcov test-login myconfig.js --headless=false
  1. Crawl your site:
$ authcov crawl myconfig.js
  1. Attempt intrusion against the resources discovered during the crawling phase:
$ authcov intrude myconfig.js
  1. View the generated report at: ./tmp/report/index.html

Contributing

Unit Tests

Unit tests:

$ npm test test/unit

Integration tests:

First download and run the example app. Then run the tests:

$ npm test test/integration

authcov's People

Contributors

evanrolfe avatar

Watchers

James Cloos 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.