Giter Club home page Giter Club logo

etip's Introduction

ETIP - εxodus tracker investigation platform

Build Status

ETIP is meant to ease investigations on tracker detection. For the moment, it offers few features:

  • track all modifications on trackers
  • detect rules collisions for both network and code signature

Contribute to the identification of trackers

If you wish to help us identify new trackers, you can request an ETIP account by sending a username and an email address to [email protected].

Contributing to ETIP development

If you want to contribute to this project, you can refer to this documentation.

Development environment

Requirements

You need pipenv to run this project locally

pip install pipenv

Installation

Clone the project

git clone https://github.com/Exodus-Privacy/etip.git

Install dependencies in pipenv environment

cd etip
pipenv install --dev

Create the database

echo "DJANGO_SETTINGS_MODULE=etip.settings.dev" > .env

# enter into python environment
pipenv shell

cd etip/
python manage.py migrate

# Import tracker definitions from the official instance of εxodus
python manage.py import_trackers

# Import predefined tracker categories
python manage.py import_categories

Create admin user

python manage.py createsuperuser

Run the tests

python manage.py test

Start the server

python manage.py runserver

Useful commands

Some admin commands are available to help administrate the ETIP database.

Compare with Exodus

This command retrieves trackers data from an εxodus instance and looks for differences with trackers in the local database.

python manage.py compare_with_exodus

Note: for now, it only compares with local trackers having the flag is_in_exodus.

The default εxodus instance queried is the public one available at https://reports.exodus-privacy.eu.org (see --exodus-hostname parameter).

Administration API

An API is available to help administrate the ETIP database.

Authenticate

POST /api/get-auth-token/

Example:

curl -X POST http://localhost:8000/api/get-auth-token/ --data "username=admin&password=testtest"

You need to include your token as an Authorization header in all subsequent requests.

Get trackers

GET /api/trackers/

Example:

curl -X GET http://localhost:8000/api/trackers/ -H 'Authorization: Token <your-token>'

etip's People

Contributors

pnu-s avatar u039b avatar dependabot[bot] avatar ammelanie avatar jean-baptistec avatar eighthave avatar quoidautre avatar lgtm-com[bot] 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.