Skip to content
KitploitKITPLOIT
ИнструментыЭксплойтыБлог
Log in
Отправить
ИнструментыЭксплойтыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

ЛентыКонтактыКонфиденциальность© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
SuricataLog — Разбирайте, фильтруйте и визуализируйте логи Suricata eve.json с помощью инструментов командной строки для предупреждений, потоков, DNS и полезных нагрузок. Включает учебное пособие по изучению Suricata и тестированию правил. | Kitploit
Инструменты/GitHubGitHub/josevnz/suricatalog
Сетевая безопасностьОбнаружение ВторженийОбучение и ОбразованиеАнализ Журналов
GitHubjosevnz/suricatalog

SuricataLog

Разбирайте, фильтруйте и визуализируйте логи Suricata eve.json с помощью инструментов командной строки для предупреждений, потоков, DNS и полезных нагрузок. Включает учебное пособие по изучению Suricata и тестированию правил.

Репозиторий
2738721 дней назадПроверено Kitploit

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться
# SuricataLog

[![Downloads](https://pepy.tech/badge/suricatalog)](https://pepy.tech/project/suricatalog)

Когда я начал изучать, как использовать [Suricata](https://suricata.io/), я быстро обнаружил, что мне нужен инструмент для просмотра файла eve.json; большинство руководств
и документации, которые я находил, предлагали установить стек для выполнения следующих задач:
1. Хранить логи в центральном месте
2. Нормализовать и обогащать события, особенно оповещения
3. Использовать фронтенд для погружения в данные

Что очень полезно, но что если мне просто нужно было быстро просмотреть события?

Рано или поздно вам [надоест до смерти](https://suricata.readthedocs.io/en/suricata-6.0.0/output/eve/eve-json-examplesjq.html) делать это:

```shell
cat eve.json | jq -r -c 'select(.event_type=="alert")|.payload'| base64 --decode
```

SuricataLog — это набор инструментов/скриптов для разбора и отображения лог-файлов Suricata (таких как /var/log/suricata/eve.json)

[Формат Eve JSON](https://suricata.readthedocs.io/en/suricata-6.0.0/output/eve/eve-json-format.html) не очень сложен,
поэтому я написал несколько скриптов с функциями, которые, как я считал, будут наиболее полезны для анализа моей домашней сети.

В качестве бонуса я описал свой опыт обучения в [руководстве](https://github.com/josevnz/suricatalog/blob/dependabot/uv/uv-1176edd47e/TUTORIAL.md), которое вы можете использовать, чтобы изучить Suricata, а также узнать, как её тестировать.

## Установка из Pypi

### Установка из Pypi.org

```shell
uv pip install SuricataLog
```

### Установка из исходного кода

```shell
git clone [email protected]:josevnz/SuricataLog.git
cd SuricataLog
uv build
uv pip install dist/suricatalog-1.1.6-py3-none-any.whl
```

### Установка для разработчиков

Итак, вы хотите внести свой вклад? Или нашли ошибку и думаете, что можете отправить патч? Отлично! Вот что вы можете сделать, чтобы запустить режим разработки:

```shell
git clone [email protected]:josevnz/SuricataLog.git
cd SuricataLog
uv build
uv sync --dev
uv pip install --editable .
```

Запустить модульные тесты после этого очень просто:
```shell
(SuricataLog) [josevnz@dmaf5 SuricataLog]$ python -m unittest test/*.py
.........
----------------------------------------------------------------------
Ran 9 tests in 0.334s

OK
```

Если модульные тесты не проходят, то это, скорее всего, первое место, где нужно исправить проблему.

Я также рекомендую запустить консоль textualize и следить за сообщениями консоли:

```shell
# textual console
textual console --exclude SYSTEM --exclude EVENT
```

Затем в другом терминале:

```shell
textual run --dev --command eve_log --timestamp '2015-01-01 10:41:21.642899' test/eve.json
```
Это выведет даже отладочные сообщения в консоль (вы можете исключить их, если перезапустите консоль с '--exclude DEBUG')

### Создание Docker-образа

Пожалуйста, ознакомьтесь с [DOCKER.md](https://github.com/josevnz/suricatalog/blob/dependabot/uv/uv-1176edd47e/DOCKER.md) для получения более подробной информации.

## Запуск скриптов

После того как всё установлено в вашей виртуальной среде, вы должны иметь возможность вызывать скрипты

Вы можете узнать, какие приложения установились, используя автодополнение после активации виртуальной среды:

```shell
eve_[tab][tab]
```

А если вы установите расширение автодополнения Bash, вы также получите некоторые подсказки для флагов.


### Простой парсер EVE-логов

Лучше увидеть самому (помните, используйте --help, чтобы узнать, какие опции поддерживаются)

#### Формат таблицы:

![suricatalog-eve_log-table.png](https://assets.kitploit.com/production/public/readmes/5224/36d374e417cb4637fd40793343069f7091de579f771eea6d5567f60537b16711.png)

````shell
eve_log --timestamp '2015-01-01 10:41:21.642899' --formats TABLE test/eve.json
````

### Готовые отчёты с eve_json.py

```shell
(suricatalog) [josevnz@dmaf5 SuricataLog]$ eve_json --help
usage: eve_json [-h] [--nxdomain | --payload | --flow | --netflow NETFLOW | --useragent] eve [eve ...]

This script is inspired by the examples provided on [15.1.3. Eve JSON ‘jq’ Examples](https://suricata.readthedocs.io/en/suricata-6.0.0/output/eve/eve-json-
examplesjq.html) A few things: * The output uses colorized JSON

positional arguments:
  eve                Path to one or more /var/log/suricata/eve.json file to parse.

optional arguments:
  -h, --help         show this help message and exit
  --nxdomain         Show DNS records with NXDOMAIN
  --payload          Show alerts with a printable payload
  --flow             Aggregated flow report per protocol and destination port
  --netflow NETFLOW  Get the netflow for a given IP address
  --useragent        Top user agent in HTTP traffic
```

Взгляните на несколько примеров ниже:

#### NXDOMAIN

![suricatalog-eve_json-nxdomain.png](https://assets.kitploit.com/production/public/readmes/5224/2139a0ce5fa4d3ae3a9b3a283cbb9303569472b51920e8d0452d4bc1a797669f.png)

```shell
eve_json --nxdomain test/eve.json
```

#### PAYLOAD

![suricatalog-eve_json-payload.png](https://assets.kitploit.com/production/public/readmes/5224/00d98ad2b5576335419f798ad4010b0b8289386f9cd2c1814a75655fede8532b.png)

```shell
eve_json --payload ~/Downloads/eve.json
```

#### FLOW

![suricatalog_eve_json-flow.png](https://assets.kitploit.com/production/public/readmes/5224/3b08d3cb2232e0d7c21872280d64ceb1cf896a6f265176135ba23595ff96c4ea.png)

```shell
eve_json --flow test/eve_udp_flow.json
```

#### NETFLOW

![suricatalog_eve_json-netflow.png](https://assets.kitploit.com/production/public/readmes/5224/fee2c4ba36bb6da909f1bdcb596be556947af5e8dde1917945b0e6259333198e.png)

```shell
eve_json --netflow 224.0.0.251 test/eve_udp_flow.json
```

#### USERAGENT

![suricatalog-eve_json-useragent.png](https://assets.kitploit.com/production/public/readmes/5224/810561e21d2349edccb7a211c39fec35d408009490b7159d66e50e86a4f94a16.png)

```shell
eve_json --useragent test/eve.json
```

### Запуск приложений eve_* в браузере

![Suricata eve server, running eve* applications on a browser!](https://assets.kitploit.com/production/public/readmes/5224/091b64e8668b872df5748ab9409af0a401dcfdff8d0978c6e23e68baa49143ac.png)

Вы можете запускать приложения Suricata Log в браузере, используя обёртку `eve_server`:

```shell
# Show the flow report on a eve.json file
eve_server --application eve_json -- --flow ~/eve.json

# Show NX domain report
eve_server --application eve_json -- --nxdomain ~/eve.json

# Inspect the eve.json records
eve_server --applications eve_log -- ~/eve.json
```

Вам нужно передать '--', чтобы сообщить серверу, что эти опции принадлежат вызываемому eve_*, который вы хотите запустить.

## Запуск из Docker

Также возможно запустить SuricataLog из Docker-контейнера. Пожалуйста, ознакомьтесь с [DOCKER.md](https://github.com/josevnz/suricatalog/blob/dependabot/uv/uv-1176edd47e/DOCKER.md) для получения более подробной информации

## Запуск с uv

Если у вас есть uv, вы можете просто сделать это:

```shell
uvx --from SuricataLog eve_log /var/log/suricata/eve.json
uvx --from SuricataLog eve_json --useragent /var/log/suricata/eve.json
uvx --from SuricataLog eve_server --application eve_json -- --flow /var/log/suricata/eve.json
```

Вы поняли идею.

## Автодополнение Bash

Я старался следовать [8.6 Programmable Completion](https://www.gnu.org/software/bash/manual/html_node/Programmable-Completion.html#Programmable-Completion)

Я предоставил автодополнение для наиболее распространённых флагов. Вы можете узнать все флаги, передав '--help' любому из скриптов.

### Установка команд автодополнения
Вы можете установить автодополнение Bash для всех скриптов SuricataLog. Просто запустите 'eve_autocomplete' и следуйте инструкциям:

```shell
eve_autocomplete --help
```

## Поддерживаемые версии

Я работаю над этим проектом **в свободное время**, и я не могу поддерживать все возможные комбинации Linux/Python.
Это моя текущая тестовая среда, и она может измениться без дополнительного уведомления

| SuricataLog | Supported | OS                               | Python    | Suricata |
|-------------|-----------|----------------------------------|-----------|----------|
| <= 0.8      | NO        | NA                               | <  3.8    | 6.04     |
| 0.9+        | NO        | fedora 37                        | => 3.11.4 | 6.04     |
| 0.9+        | NO        | Armbian 23.02.2 Jammy            | => 3.10.6 | 6.04     |
| 0.9+        | NO        | Ubuntu 20.04.4 LTS (Focal Fossa) | => 3.8.10 | 6.04     |
| 1.0.3+      | YES       | fedora 40                        | => 3.11.4 | 7.0.6    |

*Вы более чем приветствуетесь*:
* Отправляйте патчи с новыми функциями и исправлениями ошибок.
* Открывайте отчёты об ошибках. Будьте как можно более подробными, иначе у меня не останется выбора, кроме как закрыть его.

## Руководства
* [Suricata, RaspberryPI4 и Python для защиты вашей домашней сети](https://github.com/josevnz/suricatalog/blob/dependabot/uv/uv-1176edd47e/TUTORIAL.md)
* [Использование SuricataLog для анализа ваших событий](https://github.com/josevnz/suricatalog/blob/dependabot/uv/uv-1176edd47e/Using_SuricataLog_to_analyze_your_events.md)
Скачать инструмент