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

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

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

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

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

Категории

Все категории
Loading categories
DShield-SIEM — DShield Sensor Log Collection with ELK | Kitploit
Инструменты/GitHubGitHub/bruneaug/dshield-siem
Defensive ToolsThreat Feeds & AggregatorsNetwork SecurityThreat IntelligenceIntrusion DetectionIncident ResponseLog Analysis
GitHubbruneaug/dshield-siem

DShield-SIEM

DShield Sensor Log Collection with ELK

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

Популярное

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

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

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

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

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

DShield Sensor Log Collection with Elasticsearch

Введение

Это форк и значительное обновление первоначальной публикации на сайте ISC Storm Center, автором которой является Скотт Дженсен (Scott Jensen), в виде статьи BACS и скриптов, опубликованных на Github.
https://github.com/fkadriver/Dshield-ELK
https://isc.sans.edu/diary/DShield+Sensor+Monitoring+with+a+Docker+ELK+Stack+Guest+Diary/30118

Это хороший справочный материал по использованию DShield-SIEM для анализа: https://isc.sans.edu/diary/30962/

Сетевой поток DShield SIEM

Здесь представлен обзор того, как осуществляется сбор журналов с помощью датчика DShield.
https://github.com/bruneaug/DShield-SIEM/blob/main/Troubleshooting/DShield-SIEM-Flow.png

Зачем это использовать?

Этот Docker-образ специально создан для использования с DShield Honeypot для сбора и разбора журналов, а также для сбора данных, чтобы упростить поиск в исследовательских целях. Рекомендуемая установка — развернуть датчик DShield на Raspberry Pi с ОС Raspbian или на системе под управлением Ubuntu 24.04 LTS, либо в вашей сети, либо в облаке по вашему выбору.

Примечание: В соответствии с приведёнными ниже инструкциями, это должно быть установлено на отдельном сервере.

  • Протестировано на Ubuntu 24.04 и 26.04 LTS или в контейнере Proxmox LXC
  • Шаг 1: создание Ubuntu
  • Шаг 2: установка Docker и ELK
  • Шаг 3: установка и настройка Filebeat на датчике(ах) DShield

Настройка Ubuntu

Как и в корпоративной среде, система, собирающая журналы безопасности и наблюдающая за сетью, такая как DShield SIEM, должна быть установлена на отдельном сервере, а не вместе с датчиком DShield.

  • Ubuntu 24.04 LTS Live Server 64-Bit
  • Минимум 10+ ГБ — рекомендуется 12 ГБ ОЗУ
    • Если объём ОЗУ, выделенный каждому контейнеру (см. ниже), превышает 2 ГБ, рассмотрите возможность увеличения объёма ОЗУ сервера.
  • 4-8 ядер
  • Добавьте 2 раздела: один для ОС, другой для Docker
  • Минимальный раздел 300 ГБ, назначенный на /var/lib/docker
  • После перезагрузки Ubuntu настройте раздел Docker
  • Добавление раздела на 300 ГБ к VM

Установленные пакеты Elastic

Текущая версия ELK: 8.19.15 (обновлено 30 апреля 2026 г.)

  • Kibana
  • Elasticsearch
  • Logstash
  • Elastic-Agent
  • Filebeat
  • Heartbeat
  • Metricbeat

Дополнительное ПО

  • CyberChef
  • Mitre ATT&CK - Attack Navigator

Примечание: Чтобы обновить компоненты сервера ELK, выполните следующие действия:
https://github.com/bruneaug/DShield-SIEM/blob/main/README.md#download-github-update

Установка Docker

Установите Docker под учетной записью пользователя ($):```` sudo apt-get install ca-certificates curl gnupg network-manager txt2html sudo install -m 0755 -d /etc/apt/keyrings curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg sudo chmod a+r /etc/apt/keyrings/docker.gpg Note: You may need to take the next line, remove the backlash () and put everythin in a single line in Notepad to run this echo. echo "deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu
"$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null sudo apt update && sudo apt upgrade sudo reboot (if update were applied) sudo apt-get install -y jq docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin pip sudo systemctl enable docker sudo systemctl start docker.service

root@kitploit:~
Подтвердите, что служба Docker запущена<br>````
sudo systemctl status docker.service

Обновление /etc/hosts

Добавьте следующие имена серверов ELK es01 kibana fleet-server heartbeat logstash filebeat filebeat01
в /etc/hosts после IP-адреса и имени сервера:
```` sudo vi /etc/hosts

root@kitploit:~
Добавьте это в /etc/hosts после IP-адресов ELK-сервера<br>
127.0.0.1 sensor es01 ...<br>
192.168.25.80 sensor es01 ...<br>````
es01 kibana fleet-server heartbeat logstash filebeat filebeat01

Добавьте в sysctl vm.max_map_count

Отредактируйте файл sysctl.conf:
```` sudo vi /etc/sysctl.conf

root@kitploit:~
Добавьте следующее в конец файла:<br>````
vm.max_map_count=262144

Добавьте и сохраните это. Это для Elasticsearch при использовании Docker.

Убедитесь, что брандмауэр выключен````

sudo iptables -nL

root@kitploit:~
![image](https://assets.kitploit.com/production/public/readmes/50066/61adc10f495abf67cd0f3a004a0fde2497402c3bafa0db0bc07a9464e21804d9.png)

# Настройка и установка DShield ELK
Используя учётную запись пользователя ($), выполните следующие команды:<br>````
git clone https://github.com/bruneaug/DShield-SIEM.git
mkdir scripts
mv DShield-SIEM/AddOnScripts/*.sh scripts
chmod 754 scripts/*.sh
cd ~/DShield-SIEM

Примечание: Перед установкой вы можете отредактировать файл .env (посмотрите его с помощью ls -la), чтобы внести любые желаемые изменения.
- Текущий пароль по умолчанию для elastic — student
Лимиты памяти в .env — это максимальный объем памяти, который docker выделит для каждого из контейнеров ELK.
По умолчанию 3 ГБ для Elasticsearch, но можно расширить, если у вас есть ресурсы
Отредактируйте файл .env и настройте свой собственный стек ELK.
```` vi .env

root@kitploit:~
Обновите следующие переменные в файле **.env**, чтобы они соответствовали информации о DNS вашего ELK-сервера, имени хоста, IP-адресу и паролю Elastic по умолчанию, если вы хотите его изменить: <br>
  - HOSTNAME="ubuntu"
  - DNS_SERVER="9.9.9.9"
  - IPADDRESS="192.168.25.231"
  - ELASTIC_PASSWORD=student
  - ES_MEM = Elasticsearch -> 4g, KB_MEM = Kibana -> 2g
- Если вы хотите изменить информацию о сервере(ах) имён по умолчанию и локальное расположение вашей частной сети для адреса назначения (например, сопоставление сенсора DShield — в настоящее время установлено для **Оттавы, Канада**), отредактируйте файлы в следующем каталоге перед загрузкой docker:<br>````
  cd logstash/pipeline
  • logstash-200-filter-cowrie.conf
    • logstash-201-filter-iptables.conf
    • logstash-202-filter-cowrie-webhoneypot.conf
      Вы можете оставить их по умолчанию или отредактировать каждый файл и изменить их.

Настройка мониторинга инфраструктуры ELK

Отредактируйте heartbeat.yml, чтобы заменить IP-адрес датчика (с именем PI) на ваш собственный IP-адрес датчика. Kibana heartbeat проверяет статус ваших сервисов и определяет, доступны ли они.
Обновите этот IP-адрес и имя хоста, чтобы они соответствовали вашему датчику. Примечание: Вы можете скопировать и добавить те же 5 строк, если хотите отслеживать более одного датчика

Это можно посмотреть в разделе Observability -> Uptime Monitors
image

Эта строка — IP-адрес датчика. Если при подключении к TCP 12222 не получен ответ, интерфейс отметит его как недоступный.
Это инициируется сервером ELK для проверки ответа от датчика.
Обновите эту строку: hosts: ["192.168.25.165"]
```` vi ~/DShield-SIEM/heartbeat/heartbeat.yml

root@kitploit:~
Скрипт **change_perms.sh** настроит некоторые файлы перед началом установки компонентов docker.<br>
Скрипт также обновит IP-адрес, используемый в запросе панели управления, на IP-адрес вашего стека ELK.<br>````
~/scripts/change_perms.sh
~/scripts/get_researchers.sh

Теперь выполните docker compose для сборки приложений сервера ELK.
Это соберёт: Kibana, Elasticsearch, elastic-agent, Logstash и загрузит парсеры Cowrie, файлы конфигурации и панель мониторинга.
```` sudo docker compose up -d

root@kitploit:~
Установка завершена

<img width="375" height="354" alt="image" src="https://assets.kitploit.com/production/public/readmes/50066/b192e2cc430ca7eaa43934ebde637400b29d23212dce39e81f521b0806df1bc0.png" />

# Добавьте ca.crt в список доверенных сертификатов сервера
- Добавьте ca.crt в список доверенных сертификатов сервера```
sudo cp /var/lib/docker/volumes/dshield-elk_certs/_data/ca/ca.crt /usr/local/share/ca-certificates/dshield.crt
```
Обновить доверенные сертификаты ```
 sudo update-ca-certificates
```
### Добавление дашбордов и сигнатур SIEM в Kibana
Это загружает дашборды DShield SIEM и сигнатуры SIEM в Kibana.<br>```
~/scripts/dashboard-setup.sh
```
### Список каталогов Docker
Эта команда показывает список каталогов Docker, используемых после установки всех компонентов Elasticsearch.<br>
По мере добавления данных в Elasticsearch вы также можете отслеживать доступный объем дискового пространства либо с помощью приведенной ниже команды, либо внутри ELK.<br>````
sudo du --human-readable --max-depth 1 --no-dereference --one-file-system /var/lib/docker

image

Следующие сервисы ELK настроены

С помощью netstat эти 4 сервиса должны сейчас прослушиваться.
``` netstat -an | grep '80|9200|9300|8220|5601|5044|5066|5067|5068|9600'

root@kitploit:~
Это должен быть вывод, который вы увидите:<br>
<pre>
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN  ---> Local CyberChef
tcp        0      0 0.0.0.0:5601            0.0.0.0:*               LISTEN  ---> Kibana Web Access
tcp        0      0 0.0.0.0:8080            0.0.0.0:*               LISTEN  ---> Local Attack Navigator
tcp        0      0 0.0.0.0:8220            0.0.0.0:*               LISTEN  ---> elastic-agent Service
tcp        0      0 0.0.0.0:9200            0.0.0.0:*               LISTEN  ---> Elasticsearch Service
tcp        0      0 0.0.0.0:9300            0.0.0.0:*               LISTEN  ---> Elasticsearch Cluster Service
tcp        0      0 0.0.0.0:5044            0.0.0.0:*               LISTEN  ---> Logstash Data Collection
tcp        0      0 0.0.0.0:5066            0.0.0.0:*               LISTEN  ---> Metricbeat Stack Node Information
tcp        0      0 0.0.0.0:5067            0.0.0.0:*               LISTEN  ---> Filebeat Stack Node Information
tcp        0      0 0.0.0.0:5068            0.0.0.0:*               LISTEN  ---> Filebeat Stack Node Information (Process ISC Threat Intel to Logstash)  
tcp        0      0 0.0.0.0:9600            0.0.0.0:*               LISTEN  ---> Logstash Stack Node and Pipeline Information
tcp6       0      0 :::80                   :::*                    LISTEN
tcp6       0      0 :::5601                 :::*                    LISTEN
tcp6       0      0 :::8080                 :::*                    LISTEN
tcp6       0      0 :::8220                 :::*                    LISTEN
tcp6       0      0 :::9200                 :::*                    LISTEN
tcp6       0      0 :::9300                 :::*                    LISTEN
tcp6       0      0 :::5044                 :::*                    LISTEN
tcp6       0      0 :::5066                 :::*                    LISTEN
tcp6       0      0 :::5067                 :::*                    LISTEN
tcp6       0      0 :::5068                 :::*                    LISTEN
tcp6       0      0 :::9600                 :::*                    LISTEN
</pre>

# Загрузка стандартных шаблонов Filebeat в Kibana
Это установит стандартные шаблоны и панели мониторинга, которые можно использовать для хранения данных netflow от удалённых датчиков DShield.<br>
Чтобы Logstash начал хранить данные, необходимо выполнить следующие команды. Первый шаг — войти в filebeat:<br>````
sudo docker exec -ti filebeat bash

Затем выполните эту команду Filebeat, чтобы загрузить шаблоны в Kibana:
```` ./filebeat setup -e

root@kitploit:~
# Доступ к интерфейсу Kibana
После того как docker завершит установку всех docker-компонентов ELK, пришло время войти в стек ELK, используя IP-адрес вашего сервера Ubuntu.<br>
- Войдите в Kibana с именем пользователя: **elastic** и паролем по умолчанию _если он не был изменён_: **student**<br>
Веб-доступ: https://serverIP

![image](https://assets.kitploit.com/production/public/readmes/50066/fba7fa8349e3d5e1fffc81bcb15fc9188c48505874b45ca14452d3db9b8a7940.png)

# Настройка управления ELK Stack
Чтобы увидеть состояние стека ELK, необходимо настроить мониторинг стека, перейдя в раздел: Management -> Stack Monitoring<br>

- Этот шаг необходим только в том случае, если Stack Monitoring не был настроен автоматически при установке<br>
- Выберите "_Or, set up with self monitoring_"<br>
- Мониторинг сейчас выключен -> Выберите: _Turn on monitoring_<br>
![image](https://assets.kitploit.com/production/public/readmes/50066/8f3c95494efb450e7ffad8f1fc2b8ccef595c2328eab8a3ea8d0d5913eb78e62.png)


![image](https://assets.kitploit.com/production/public/readmes/50066/937bc942f103644cb8d2dc1e934e82f34b02203c8acde2a9c1f3db8553684e82.png)

# Настройка fleet-agent
Fleet-agent (это elastic-agent, работающий в стеке ELK) будет использоваться для загрузки данных об угрозах.<br>

- В выпадающем меню выберите Management → Fleet →Settings → Edit Outputs (Actions)<br>
- Войдите на сервер по SSH<br>
- Скопируйте сертификат ca.crt в /tmp<br>````
sudo cp /var/lib/docker/volumes/dshield-elk_certs/_data/ca/ca.crt /tmp
  • Получите копию доверенного отпечатка CA Elasticsearch
    ```` sudo openssl x509 -fingerprint -sha256 -noout -in /tmp/ca.crt | awk -F"=" {' print $2 '} | sed s/://g
root@kitploit:~
- Вывод будет выглядеть так:<br>
673FB617E15CCCE73F9B647EF99449642A19CFC1D75BF5772047DA99DB950844

- Получите содержимое CA-сертификата Elasticsearch, чтобы применить его в расширенной конфигурации YAML. Введите команду вручную, потому что она плохо копируется<br>````
sudo cat /tmp/ca.crt | sed -r 's/(.*)/    \1/g'

Следуйте примеру из руководства Troubleshooting fleet-server-examples по указанной выше ссылке для правильного формата.
sed добавит 4 пробела вместе с предыдущей командой для сертификата CA.

  • Измените Hosts на: https://es01:9200

После добавления информации о сертификате сохраните и примените эти настройки.
Затем нажмите Save and deploy

image image

В разделе Settings настройте хосты Fleet server: либо отредактируйте их, либо добавьте Fleet Server, как показано ниже:

image

Следующий этап — выбрать Agent Policy → Add Agent → Enroll in Fleet → Add Fleet Server

  • Укажите Name: es01
  • Укажите URL: https://fleet-server:8220
  • В конце: Generate Fleet Server policy
  • Выберите: RPM Обратитесь к этой странице за примером Fleet-Server SSL Configuration:
    https://github.com/bruneaug/DShield-SIEM/blob/main/Troubleshooting/fleet-server-examples.txt

image

Нам понадобится эта информация для настройки нашего fleet server.
Войдите по SSH на fleet-server и убедитесь, что fleet-server запущен, прежде чем настраивать нашего агента:
```` sudo docker exec -ti fleet-server bash ./elastic-agent status (check it is running) ./elastic-agent restart (if it doesn't appear to be running, force a restart, and recheck the status)

root@kitploit:~
Это пример того, что нужно скопировать на сервер fleet. Убедитесь, что адрес fleet server: https://es01:9200<br>
Добавьте выделенную жирным секцию после port=8220, потому что сертификаты являются самосгенерированными. Это гарантирует, что агент применит обновление.<br>

Токен и отпечаток будут отличаться от этого примера<br>

Скопируйте команду elastic-enrol ниже и замените эти 2 строки, взятые с вашего собственного сервера; всё остальное останется прежним.<br>
<pre>
--fleet-server-service-token=AAEAAWVsYXN0aWMvZmxlZXQtc2VydmVyL3Rva2VuLTE3MzEwOTcwODU3MzI6VjMyLU13cmFUOUM1eUFvMUhVUFl5QQ \
--fleet-server-es-ca-trusted-fingerprint=0D9A25F4C147EB3A496253525DF6F039CF3C19776E64A1F77CEFCCD08B76BC61 \
</pre>

Находясь в системе на fleet-agent, зарегистрируйте elastic-agent в вашем fleet-agent:

Используйте этот шаблон для установки вашего сертификата и обязательно замените на свои собственные<br>
fleet-server-service-token и fleet-server-es-ca-trusted-fingerprint<br>````
elastic-agent enroll \
--url=https://fleet-server:8220 \
--fleet-server-es=https://es01:9200 \
--fleet-server-service-token=AAEAAWVsYXN0aWMvZmxlZXQtc2VydmVyL3Rva2VuLTE3MzEwOTcwODU3MzI6VjMyLU13cmFUOUM1eUFvMUhVUFl5QQ \
--fleet-server-policy=fleet-server-policy \
--fleet-server-es-ca=/certs/es01/es01.crt \
--fleet-server-es-ca-trusted-fingerprint=0D9A25F4C147EB3A496253525DF6F039CF3C19776E64A1F77CEFCCD08B76BC61 \
--fleet-server-port=8220 \
--certificate-authorities=/certs/ca/ca.crt \
--fleet-server-cert=/certs/fleet-server/fleet-server.crt \
--fleet-server-cert-key=/certs/fleet-server/fleet-server.key \
--elastic-agent-cert=/certs/fleet-server/fleet-server.crt \
--elastic-agent-cert-key=/certs/fleet-server/fleet-server.key \
--fleet-server-es-cert=/certs/fleet-server/fleet-server.crt \
--fleet-server-es-cert-key=/certs/fleet-server/fleet-server.key

Это заменит ваши текущие настройки. Продолжить? [Y/n]: Y

image

Агент Elastic успешно зарегистрирован.

Из вашего текущего местоположения проверьте, что он установлен корректно
```` ./elastic-agent status ./elastic-agent restart (if you got what appears to be errors, force a restart and check the status)

root@kitploit:~
![image](https://assets.kitploit.com/production/public/readmes/50066/dacf9f3a4c64b99fcf619a308cdf9bd69ef1500a3c40abed39a93d6955a5c446.png)

Теперь, когда Fleet Server подключён, закройте это окно и перейдём к следующему шагу.

![image](https://assets.kitploit.com/production/public/readmes/50066/287c7f66c75928f875105276583e36ba5b0a13b623afbf135a4beabe95ff521f.png)


В Elastic Management → Fleet обновите Agents, и появится следующее:

![image](https://assets.kitploit.com/production/public/readmes/50066/94397f8eb1e423477efc100fd4b6c83a3bd2e3376a6a2f06c32639128a6c912a.png)

Теперь сервер готов к установке агентов Threat Intel для использования в Security (части SIEM) против журналов honeypot.<br>
Следующий шаг — выбрать Agent policies → Fleet Server Policy → Add integration:<br>
Используйте эту панель мониторинга, чтобы просматривать метрики, собираемые elastic-agent:<br>
![image](https://assets.kitploit.com/production/public/readmes/50066/2b066c97de7a12d11b9b6c154541e0b8ab01991b7b5d9f1d4d1b3b4211768223.png)


- Выберите и добавьте AlienVault OTX (нужен API-ключ)<br>
- Выберите AbuseCH (нужен API-ключ)<br>
- Выберите Threat Intelligence Utilities<br>
- Elasticsearch<br>
- Выберите Kibana<br>
- Выберите Docker<br>

![image](https://assets.kitploit.com/production/public/readmes/50066/175377a7a348b449a3afa4bdd3bd6cb6a46c2e8c2672a8f36a0ef310ed4b0eb6.png)

# Пример политики Fleet Server

![image](https://assets.kitploit.com/production/public/readmes/50066/4e3c594d3f064864b2521306c0cf45da93cb11d1f6a91e1b327d7dcfa379b96e.png)

- В Elastic Management → Installed Integration<br>
- Выберите каждую установленную интеграцию, затем выберите Settings и включите вкладку _keep the policy up to date_:<br>

![image](https://assets.kitploit.com/production/public/readmes/50066/32c207719c11a7b2edf5e006ea97ed8c1557530d0826f002517484d56172d0c8.png)

## Настройка Security → Rules

- Выберите Rules → Detection rules (SIEM) → Add Elastic rules
- В разделе Search Tags: Rule Type: Threat Intel (добавьте как минимум эти 4 правила)
- Установите и включите эти 4 правила
  - Threat Intel Indicator Match - Cowrie (пользовательское правило загружается и включается, когда docker загружает все компоненты стека ELK)
  - Threat Intel Windows Registry Indicator Match
  - Threat Intel Hash Indicator Match
  - Threat Intel URL Indicator Match
- Вы можете просмотреть правила и включить другие правила, которые хотите опробовать на данных своего honeypot.<br>

![image](https://assets.kitploit.com/production/public/readmes/50066/c01aa5fadf403fd7ca026a9a25c93e0f838e1ef66b39e3a58007063b8cd3ae4b.png)


## Просмотр активности, фиксируемой правилами, в тренде оповещений
Если некоторые из указанных выше threat intel были добавлены в elastic-agent, а cowrie* был добавлен в Management → Advanced Settings во время первоначальной установки, теперь он может отслеживать правила, совпадающие в трендах оповещений части SIEM стека ELK.<br>
Это результат из Management → Stack Management → Advanced Settings<br>
 ![image](https://assets.kitploit.com/production/public/readmes/50066/f4c587e5a62c5dc6b6358a059e80b320211d6aece01ea23f1c2afa60beaa54e0.png)

Если какое-либо threat intel совпадёт, SIEM отобразит следующую активность, которая теперь может быть расследована:<br>
 
![image](https://assets.kitploit.com/production/public/readmes/50066/e73e300695e54d4cb7c55ada132886e262711a232dbde73acb817ad16a0b457f.png)
![image](https://assets.kitploit.com/production/public/readmes/50066/20c192551974a78bc2fce7200629a8e03421a85ac2c768a11b185fa51ab1d6a1.png)


# Настройка Filebeat на сенсоре DShield — отправка журналов в ELK

Следующий шаг — добавить пакет Filebeat на сенсор DShield, чтобы отправлять журналы в Elasticsearch.<br>

Используйте следующие шаги для установки Filebeat с помощью приведённых ниже команд из этого справочника [3]: <br>````
wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -
sudo apt-get install apt-transport-https
echo "deb https://artifacts.elastic.co/packages/8.x/apt stable main" | sudo tee -a /etc/apt/sources.list.d/elastic-8.x.list
echo "deb https://artifacts.elastic.co/packages/oss-8.x/apt stable main" | sudo tee -a /etc/apt/sources.list.d/elastic-8.x.list
sudo apt-get update 

Установите версию, соответствующую вашей архитектуре

После установки мы ставим hold на filebeat, чтобы вы могли обновить сенсор без изменения версии filebeat. Версия filebeat
должна всегда соответствовать версии docker Elasticsearc/Kibana.
Linux - X86_64``` wget https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-8.19.15-amd64.deb sudo apt install ./filebeat-8.19.15-amd64.deb sudo apt-mark hold filebeat

root@kitploit:~
<ins>PI - aarch64</ins>```
wget https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-8.19.15-arm64.deb
sudo apt install ./filebeat-8.19.15-arm64.deb
sudo apt-mark hold filebeat

Чтобы обновить filebeat, когда придёт время, вам нужно будет снять удержание. Сначала проверьте, есть ли удержание на filebeat, прежде чем снимать его
``` sudo apt-mark showhold sudo apt-mark unhold filebeat

root@kitploit:~
Если вы хотите использовать Zeek на вашем датчике DShield, ознакомьтесь с этими [шагами по установке](https://github.com/bruneaug/DShield-SIEM/blob/main/AddOn/Configure_Zeek_DShield_Sensor.md)

### Настройка облачного датчика - Filebeat -> Домашний маршрутизатор -> Logstash
Чтобы подключиться из облачного датчика к вашему локальному ELK Stack, вам нужно сделать следующее:
- Настройте домашний маршрутизатор для NAT на локальный IP-адрес вашего ELK Stack<br>
- Используйте IP-адрес маршрутизатора (я рекомендую добавить имя хоста для вашего домашнего IP на случай его изменения) из вашего датчика для подключения к вашему домашнему маршрутизатору<br>
- Итоговое подключение должно выглядеть так: датчик -> IP-адрес NAT-маршрутизатора -> ELK Stack

### Перенос всех файлов датчика на датчик DShield
Перейдите по этому URL-адресу, чтобы загрузить все файлы, связанные с датчиком DShield<br>
https://github.com/bruneaug/DShield-Sensor````
git clone https://github.com/bruneaug/DShield-Sensor.git
sudo cp ~/DShield-Sensor/filebeat/filebeat.yml /etc/filebeat/filebeat.yml
  • Отредактируйте filebeat.yml и измените IP-адрес или имя хоста на парсер logstash (192.168.25.23), чтобы он соответствовал IP-адресу, используемому Logstash.
  • Этот IP-адрес может быть локальным IP или IP-адресом роутера вашего интернет-провайдера, если вы используете облачный сенсор (т.е. OVH, AWS, Azure и т.д.)
  • Если используется облачный сенсор, для IP-адреса роутера вашего интернет-провайдера необходимо настроить проброс порта (5044) в роутере на DShield SIEM.
    ```` sudo vi /etc/filebeat/filebeat.yml
root@kitploit:~
output.logstash:<br>
  hosts: ["192.168.25.23:5044"]<br>
  #hosts: ["logstash.com:5044"]<br>

### Устранение неполадок Filebeat````
sudo su -
filebeat test config

Ожидаемый вывод: Config OK
```` filebeat test output

root@kitploit:~
Ожидаемый результат:
<pre>
logstash: 192.168.25.231:5044...
  connection...
    parse host... OK
    dns lookup... OK
    addresses: 192.168.25.231
    dial up... OK
  TLS... WARN secure connection disabled
  talk to server... OK
</pre>

## Запуск Filebeat````
sudo systemctl enable filebeat
sudo systemctl start filebeat
sudo systemctl status filebeat

Файл отслеживания Filebeat

Filebeat отслеживает обработанные события с помощью файла под названием log.json. Если его удалить, все события, ранее отправленные в Elasticsearch, будут обработаны повторно при перезапуске filebeat.
Расположение этого файла:
sudo su -```` cd /var/lib/filebeat/registry/filebeat

root@kitploit:~
Если вы планируете повторно отправить все логи, потому что ваш ELK-сервер был пересобран, _остановите filebeat, удалите log.json и перезапустите filebeat_.
Обычно требуется некоторое время, чтобы данные появились на панели мониторинга ELK Stack. Если вы хотите проверить, отправляются ли логи в ELK Stack, вы можете<br>
- tail -f log.json
- Искать данные за последние 30 дней на панели мониторинга, пока идёт загрузка

# Интерфейс - Logs DShield Sensor Overview
Чтобы получить доступ к панели мониторинга, выберите Analytics -> Dashboard -> **[Logs DShield Sensor] Overview**<br>

![image](https://assets.kitploit.com/production/public/readmes/50066/3780acfd85837ddc01d1dc8fd4f56de873a09416d7b488959bee52c1c1155c51.png)

## Добавление ca.crt в браузер рабочей станции
Выполните шаги, описанные на этой [странице](https://github.com/bruneaug/DShield-SIEM/blob/main/AddOn/Workstation_Browser_CA_Certificate.md), чтобы добавить в Kibana сертификат ca.crt, используемый ELK-сервером.<br>

![image](https://assets.kitploit.com/production/public/readmes/50066/75b1b24c5a0e625a5827bf8b75697228550f8c270a5fec1f96b91524a4b82cb0.png)

# Полезные команды Docker
Обратитесь к этой странице за списком полезных команд Docker.<br>
https://github.com/bruneaug/DShield-SIEM/edit/main/Troubleshooting/docker_useful_commands..md

# Информация об Elastic через консоль
Эти команды выполняются из Dev Tool -> Console<br>

GET _nodes/http?pretty	(Получить список и информацию обо всех узлах)<br>
GET _security/_authenticate<br>
GET /_cat/nodes?v=true<br>

# Аналитические скрипты и код DShield от студентов
Ниже приведён список скриптов и кода, написанных студентами программы BACS для помощи в анализе логов.<br>

Jesse La Grew [cowrieprocessor](https://github.com/jslagrew/cowrieprocessor)<br>
jrjobe [DShield-Cowrie-json-Parser](https://github.com/jrjobe/DShield-Cowrie-json-Parser)<br>
ham-sauce [vt_cowrie](https://github.com/ham-sauce/vt_cowrie)<br>
NickTheSecurityDude [dshield-honeypot-scripts](https://github.com/NickTheSecurityDude/dshield-honeypot-scripts/tree/main) и [Публикация в LinkedIn](https://www.linkedin.com/pulse/how-i-used-honeypot-track-analyze-cyberattacks-nicholas-gilbert-jcste)<br>
Josh Gilman [DShieldKickStarter](https://github.com/iamjoshgilman/DShieldKickStarter)<br>
kcustom11 [dshield-azure](https://github.com/kcustom11/dshield-azure) Azure Terraform<br>
Boggby [ec2-honeypot-template](https://github.com/Boggby/ec2-honeypot-template)<br>
amelete11235
 [homelab](https://github.com/amelete11235/homelab/blob/main/Installing%20DShield%20SIEM%20on%20a%20Raspberry%20Pi%205%20-%208%20GB%20RAM/Installing%20DShield%20SIEM%20on%20a%20Raspberry%20Pi%205%20-%208%20GB%20RAM.md) DShiel SIEM Raspberry 5<br>
William Constantino [Cowrie logfile_investigation на Python](https://github.com/JJWCons/log-scripts/blob/main/logfile_investigation.py)<br>
William Constantino [Cowrie single_multi_IP на Python](https://github.com/JJWCons/log-scripts/blob/main/single_multi_IP.py)<br>
Steven C. Peterson [DShield Model Context Protocol](https://github.com/datagen24/dsheild-mcp)<br>
Nathan Smisson [dshield-tooling](https://github.com/neurohypophysis/dshield-tooling)<br>

# Ссылки
[1] https://isc.sans.edu/tools/honeypot/<br>
[2] https://www.elastic.co/downloads/beats/filebeat<br>
[3] https://www.elastic.co/guide/en/beats/filebeat/8.8/setup-repositories.html#_apt<br>
[4] https://isc.sans.edu/diary/DShield+Honeypot+Activity+for+May+2023/29932<br>
[5] https://isc.sans.edu/diary/DShield+Sensor+JSON+Log+to+Elasticsearch/29458<br>
[6] https://isc.sans.edu/diary/DShield+Sensor+JSON+Log+Analysis/29412<br>
[7] https://github.com/jslagrew/cowrieprocessor/blob/main/submit_vtfiles.py<br>
[8] https://handlers.sans.edu/gbruneau/elastic.htm<br>
[9] https://www.elastic.co/guide/en/fleet/current/secure-connections.html<br>
[10] https://www.docker.elastic.co/<br>
[11] https://github.com/gchq/CyberChef<br>
[12] https://github.com/mitre-attack/attack-navigator/pkgs/container/attack-navigator
Скачать инструмент