Skip to content
Cookie Scanner for GDPR compliance
Branch: master
Clone or download
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
cmd Use simplified email subject Apr 26, 2019
config Add covenantsql config Apr 25, 2019
example Rename Tester to Scanner Apr 26, 2019
parser Use fancy email report style Apr 26, 2019
utils Complete cookie tester server Apr 10, 2019
vendor Update deps Apr 25, 2019
.dockerignore Add dockerfile and env options in server command Apr 23, 2019
.gitignore Rename Tester to Scanner Apr 26, 2019
Dockerfile Rename Tester to Scanner Apr 26, 2019
Gopkg.lock Update deps Apr 25, 2019
Gopkg.toml Update deps Apr 25, 2019
LICENSE Initial commit Mar 27, 2019
README.md Update README.md Apr 26, 2019
example.png Update example.png Apr 25, 2019
main.go Rename Tester to Scanner Apr 26, 2019

README.md

Cookie Scanner

GDPR requires that all websites that provide services to European users must provide a complete report on the use of cookies to record user information and continue to use it with the express consent of the user. There are several commercial Cookie Scanner online.

But we decide to make our implementation Open Source. Hope to help more people getting aware of the privacy problems.

Cookie Scanner is a simple utility to analyze website cookie status and generate reports for GDPR-compliance.

For how to use the "Cookie Database", please see CQL QuickStart

Frontpage sets Cookie without user Consent:

Features

  1. Nice HTML or PDF report

  2. Detailed cookie description

  3. We collected more than 10000 cookie description and put them in free DB service CQL:

  • DSN: covenantsql://050cdf3b860c699524bf6f6dce28c4f3e8282ac58b0e410eb340195c379adc3a
  • Config & Key

Online Demo

Your can just try Cookie Scanner on gdprExpert.io

Installation

Requires MacOS/Linux system.

First, install Google Chrome in your operating system. Or you can start a headless Chrome in docker with

$ docker container run -d -p 9222:9222 zenika/alpine-chrome --no-sandbox \ 
 --remote-debugging-address=0.0.0.0 --remote-debugging-port=9222

Then, install the CookieScanner using go get.

$ go get github.com/CovenantSQL/CookieScanner

Usage

CookieScanner is capable of geneating reports in json/html/pdf format.

$ CookieScanner --help
usage: CookieScanner [<flags>] <command> [<args> ...]

website cookie usage report generator

Flags:
  --help                   Show context-sensitive help (also try --help-long
                           and --help-man).
  --chrome=CHROME          chrome application to run as remote debugger
  --verbose                run debugger in verbose mode
  --timeout=1m0s           timeout for a single cookie scan
  --wait=WAIT              wait duration after page load in scan
  --classifier=CLASSIFIER  classifier database for cookie report
  --log-level=LOG-LEVEL    set log level

Commands:
  help [<command>...]
    Show help.

  cli [<flags>] <site>
    generate report for a single website

  version
    get debugger version

  server [<flags>]
    start a report generation server

$ CookieScanner cli --help
usage: CookieScanner cli [<flags>] <site>

generate report for a single website

Flags:
  --help                   Show context-sensitive help (also try --help-long
                           and --help-man).
  --chrome=CHROME          chrome application to run as remote debugger
  --verbose                run debugger in verbose mode
  --timeout=1m0s           timeout for a single cookie scan
  --wait=WAIT              wait duration after page load in scan
  --classifier=CLASSIFIER  classifier database for cookie report
  --log-level=LOG-LEVEL    set log level
  --headless               run chrome in headless mode
  --port=9222              chrome remote debugger listen port
  --json                   print report as json
  --html=HTML              save report as html
  --pdf=PDF                save report as pdf

Args:
  <site>  site url

Examples

Generate HTML report for covenantsql.io using cli mode.

$ CookieScanner cli \
    --headless \
    --classifier "covenantsql://050cdf3b860c699524bf6f6dce28c4f3e8282ac58b0e410eb340195c379adc3a?config=./config/config.yaml" \
    --html cql.html covenantsql.io

Just wait for a while, you will found cql.html showing results like this:

You can’t perform that action at this time.