Skip to main content

Network Intrusion Detection using Zeek logs

Project description

AutoZeekWatch

AutoZeekWatch is a real-time, modular, configurable A.I. anomaly detector for Zeek logs. AutoZeekWatch enables you to generate anomaly scores for Zeek logs im real time, and correlate them with the initial 5-tuple and Zeek UID for downstream analysis, automated mitigation, and more.

Table of Contents

  • Features
  • Installation
  • Examples

Features

AutoZeekWatch functions in two distinct phases, training and inference. Under the hood, KitNET, a ensemble of autoencoders, is used to generate anomaly scores for individual logs in a unsupervised manner.

During training, the model must learn the normal distribution from provided data. The user is expected to provide a directory where historical, normal (not malicious) logs are stored. The model then learns this distribution.

During inference, the model provides a score of how anomalous a given log is to the distribution learned from training. This score along with the 5-tuple (Source IP, Destination IP, Source Port, Destination Port, Proto) is then dumped to a file which can be used for downstream tasks or alerting.

It is possible to specify different zeek log types to train on and perform inference on. Currently, the following are available:

  • Connection
  • HTTP
  • DNS
  • SSH
  • SSL

These can be used modularly, one, many, or all can be used at once.

Installation

...

Examples

Train a Model on Connection Data

python train.py --log-dir <PATH/TO/LOGS> --modules CONN

Start Inference on Incoming Connection Data

python infer.py --log-dir <PATH/TO/LOGS> --modules CONN

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

autozeekwatch-0.1.3.tar.gz (12.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

AutoZeekWatch-0.1.3-py3-none-any.whl (13.2 kB view details)

Uploaded Python 3

File details

Details for the file autozeekwatch-0.1.3.tar.gz.

File metadata

  • Download URL: autozeekwatch-0.1.3.tar.gz
  • Upload date:
  • Size: 12.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.9.19

File hashes

Hashes for autozeekwatch-0.1.3.tar.gz
Algorithm Hash digest
SHA256 1981a426bc859fc26c9d16a95c988beb6c5b7adde977ae6b32ba6213f8fd6988
MD5 b39df4c343624ad2377940ff1e8ac84c
BLAKE2b-256 9ce152b25f41d7dad1d5edebe06746f3195448c62d37d22ec4c63b6cd690cdce

See more details on using hashes here.

File details

Details for the file AutoZeekWatch-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: AutoZeekWatch-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 13.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.9.19

File hashes

Hashes for AutoZeekWatch-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 edfb8cd8ccf0e38c2d13c74bd7b261d8186c550a4dbec8975ba9563a825c2594
MD5 49b57faea8d92dc5298c0b5fb5b131fb
BLAKE2b-256 dc3ad88bc8b339974f36e5975a8be32c2691d2a9ec5e2621883aeb05d265ef3c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page