Giter Site home page Giter Site logo

rita's Introduction

RITA

("John's mom" was already taken)

Current Version 0.1

RITA is a toolkit which is intended to help approach the often overwhelming task of combing through piles of log data looking for suspect behavior.

RITA is inteded to help in the search for indicators of compromise in enterprise networks of varying size. The framework was instructed by it's engineers experience in penetration testing with the question of how they'd catch themselves, thus the analysis tends to looks specifically at the indicators their tools tend to leave behind.

Running the tools

RITA was developed under Debian based Linux operating systems, and has not yet been tested anywhere else. Anyone who is interested in running it under other conditions is encouraged to contact the development team at [email protected].

On Debian based distrobutions start by installing at least these dependancies the command:

You will also need to install a full ELK stack. There's an excellent guide to installing Elasticsearch, Logstash, and Kibana over at DigitalOcean.

There's also a sizeable pile of system dependencies that help do math and parse logs:

sudo apt-get install build-essential python-dev python-pip libatlas-dev libatlas3-base liblapack-dev gfortran libpng12-dev libfreetype6-dev libblas-dev liblapack.dev gfortran python-numpy python-scipy python-matplotlib ipython ipython-notebook python-pandas python-sympy python-nose

Also, you'll need a number of python specific dependencies.

sudo pip install -r requirements.txt

Start up the flask server.

python run.py

Then navigate to http://localhost:5000 to use the interface.

Loading log files into Elasticsearch:

Currently, the RITA framework contains only a simple module for parsing CSV files into Elasticsearch.

Some things to keep in mind

When you choose a customer name you must choose and ALL LOWER CASE customer name, otherwise Elasticsearch will stop working. This is due to the fact that the customer name field is being used as an index to Elasticsearch which has a REST style interface, and therefore refuses to load URL strings which wil have caps in them.

There is a specific way that data must be parsed into elasticsearch, look at app/analysis/field_names.py for the specific field names that the data must be mapped to.

This is a work in progress. Right now the "Results" page contains a link to kibana. Soon it will contain data.

Once again, we're working on this, and we'd love to hear from you, suggestions, requests for bug fixes, and code are all welcome.

Planned Progress

  1. Documentation. There needs to be explanation of how to use this framework, how to add to the framework, and how the framework works in general.
  2. Better log parsing solutions. If you have logstash filters that work for your environment we'd love to hear about those filters, or add them to the framework with your permission.
  3. Results, we'd like to see a results page that shows data on the fly as logs are being processed.
  4. Add algorithms. Do you have ideas for finding interesting data in logs? Let us know! Do you have code that already does it? If you want to share, send us a merge and we'll look at getting it into the project.

rita's People

Contributors

joelillo avatar lawrencehoffman avatar lisasw avatar

Watchers

 avatar  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.