# kassandra **Repository Path**: TopOpenSource/kassandra ## Basic Information - **Project Name**: kassandra - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2021-06-15 - **Last Updated**: 2024-11-25 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # kassandra [![KASSANDRA VERSION](https://img.shields.io/badge/kassandra-v0.1-blue?style=for-the-badge&color=8B12D1)](https://github.com/albact7/kassandra) [![GitHub license](https://img.shields.io/badge/license-Apache-blue?style=for-the-badge)](https://github.com/albact7/kassandra/blob/master/LICENSE) [![GitHub release](https://img.shields.io/badge/release-v.0.0.1-yellowgreen?style=for-the-badge)](https://github.com/albact7/kassandra/releases)
Logo


Explore the docs »

View Source · Report Bug · Request Feature

## Table of Contents * [About the Project](#about-the-project) * [Prerequisites](#prerequisites) * [Installation](#installation) * [Getting Started](#getting-started) * [Running Tests](#running-tests) * [Run Dockerfile](#run-dockerfile) * [License](#license) * [Contact](#contact) ## About the Project Kassandra analyzes user activity and detects anomalous behaviour in HTTP requests that could be identified as non-malicious by other systems. Kassandra allows designing of anomaly detection policies. Kassandra is part of the project Egida and Kassandra, Egida can be checked here. ## Prerequisites #### Prepare environment ##### Install Python 3 and pip ```bash apt install -y python3 pip3 virtualenv ``` ## Installation #### 1. Download the source from [here](https://github.com/albact7/kassandra/releases). #### 2. Create virtualenv ```python virtualenv -p /usr/bin/python3 venv source venv/bin/activate ``` #### 3. Install requirements Run install.bat ## Getting started To start running Kassandra run the following on the root folder of the project. ```bash python kassandra.py ``` This will run an UDP server in localhost:5000, configure your proxy to point to that address. ### Try on my own #### Needed files To test Kassandra with you own files you should change [here](https://github.com/albact7/kassandra/blob/master/kassandra.py) the path to those files. You will need: 1. Train file. Log file with a huge number (40000 is OK) of HTTP requests of a server. 2. Test file. Log file with some HTTP requests for testing. #### Designing of anomaly detection policies You can also customize the anomaly values obtained by editing [config.yml](https://github.com/albact7/kassandra/blob/master/kass_nn/config/config.yml) * Danger values are reserved to change the weigh for each characteristc * Extended Isolation Forests are reserved for adjust the Machine Learning model to the training data ## Running tests To run Kassandra with your own requests and test the model, run the following command and introduce the HTTP request corresponding log. ```bash python kassandra-app.py ``` ## Run Dockerfile ### 1. Build ```bash docker image build -t kassandra . ``` ### 2. Run ```bash docker run -p kassandra ``` ## License Distributed under the Apache 2.0 License. See `LICENSE` for more information. ## Contact Authors: * [Alba Cotarelo Tuñón](https://www.albact.ml/) * [Antonio Payá González](https://antoniopg.tk) * [Jose Manuel Redondo Lopez](http://orcid.org/0000-0002-0939-0186) Project Link: [https://github.com/Egida-Kassandra/kassandra](https://github.com/Egida-Kassandra/kassandra)