# Интенсив №9. Особенности работы инженеров ## 9.1 Развертывание решения ELK Использовать будем виртуализацию Oracle Virtual Box. Создадим пару машин. Windows и Ubuntu Linux. На Ubuntu будем разворачивать стек ELK. Так как сейчас репозиторий ELK не доступен из локации с российскими адресами, будем использовать зеркало Yandex. Обновим машину: ```bash= sudo apt update && sudo apt upgrade ```   Поключаем репозиторий Yandex ```bash= echo "deb [trusted=yes] https://mirror.yandex.ru/mirrors/elastic/8/ stable main" | sudo tee /etc/apt/sources.list.d/elastic-8.x.list ```  ### 9.2.1 Установка Elastic Устанавливаем Elastic ```bash= sudo apt-get update && sudo apt install elasticsearch ```    Добавим в автозагрузку и запустим ```bash= sudo systemctl daemon-reload sudo systemctl enable elasticsearch.service sudo systemctl start elasticsearch.service ```  Проверим статус ```bash= sudo systemctl status elasticsearch.service ```  Сбросим пароль elastic ```bash= ./bin/elasticsearch-reset-password -u elastic ``` Новый пароль P0z9n-VWUYCGPY8xTid2  Проверим работу сервиса: ```bash= sudo curl --cacert /etc/elasticsearch/certs/http_ca.crt -u elastic https://localhost:9200 ``` Elastic работает  ### 9.2.2 Установка Kibana Устанавливаем Kibana ```bash= sudo apt install kibana ```  Добавим Kibana в автозагрузку и запустим ```bash= sudo systemctl daemon-reload sudo systemctl enable kibana.service sudo systemctl start kibana.service ```  Проверим статус ```bash= sudo systemctl status kibana.service ``` Kibana работает но не сконфигурирована  Настроим Kibana ```bash= sudo nano /etc/kibana/kibana.yml ```  Перезапустим ```bash= sudo systemctl restart kibana.service ```  Откроем в браузере  Сгенерируем токен для Kibana ```bash= sudo /usr/share/elasticsearch/bin/elasticsearch-create-enrollment-token -s kibana ``` Token: eyJ2ZXIiOiI4LjEuMSIsImFkciI6WyIxOTIuMTY4LjEuMjQxOjkyMDAiXSwiZmdyIjoiNzZlZDcxMDliYzRjZTZmYWE4MTFlZjZlYWRhYzJlNjliYjc3NDhjYjQyNTUwMzBhMjVmMmYyODMyODA1ZDJjOCIsImtleSI6IjlLU3Vvb01CNkVwV3pobENkdkxTOlNCTVRUcjZ3UTFpZkVzZ05CN3JOTEEifQ==  Установим токен   ```bash= sudo /usr/share/kibana/bin/kibana-verification-code ```  Код: 965 428 Передадим его в браузер   Kibana стартовала  Залогинимся под пользователем elastic  xpack.encryptedSavedObjects.encryptionKey: 5b91739895ffc5a50d7a1ac27ba73ab1 xpack.reporting.encryptionKey: 88c89279215112328db030a39ea18908 xpack.security.encryptionKey: fa725de4cf3b17a741751e62c18047be ### 9.2.3 Установка Logstash Установим Logstash ```bash= sudo apt install logstash ```  Создадим пользователя logstash_internal с паролем bcJCm7GKCKtHrrP  Создадим роли logstash_reader logstash_writer, назначим им права.    Создадим конфигурацию ```bash= sudo nano /etc/logstash/conf.d/winbeats.conf ```  Конфигурация ```jsonld= input { beats { port => 5044 } } output { elasticsearch { hosts => ["https://localhost:9200"] index => "%{[@metadata][beat]}-%{[@metadata][version]}-%{+YYYY.MM.dd}" ssl => true cacert => '/etc/logstash/http_ca.crt' user => "logstash_internal" password => "bcJCm7GKCKtHrrP" } } ``` Добавим Logstash в автозагрузку и запустим ```bash= sudo systemctl daemon-reload sudo systemctl enable logstash.service sudo systemctl start logstash.service ```  Проверим статус ```bash= sudo systemctl status logstash.service ```   Проверим что Logstash слушает порт ```bash= sudo netstat -anp | grep 5044 ```  ## 9.3 Развертывание Windows + sysmon Sysmon часть пакета sysinternals. Воспользуемся winget установим sysinternal ```powershell= winget install sysinternals ```  Установим sysmon ```powershell= sysmon -accepteula -i ```  Возьмем готовый файл конфигурации предоставляемый SwiftOnSecurity https://github.com/SwiftOnSecurity/sysmon-config Подключим его ```powershell= sysmon -c C:\sysmon-config.xml ```  Включим событие 10  Sysmon работает    ## 9.4 Подключение WinlogBeat к ELK Windlogbeat скачаем через vpn. Распакуем архив в каталог Program Files Установим winlogbeat. ```powershell= .\install-service-winlogbeat.ps1 ```  Создадим конфигурацию: ```yml= winlogbeat.event_logs: - name: Application ignore_older: 72h - name: System - name: Security - name: Microsoft-Windows-Sysmon/Operational - name: Windows PowerShell - name: Microsoft-Windows-PowerShell/Operational - name: ForwardedEvents logging.level: info logging.to_files: true logging.files: path: C:/Program Files/Winlogbeat/logs name: winlogbeat keepfiles: 7 setup.kibana: host: "192.168.1.241:5601" output.elasticsearch: hosts: ["https://192.168.1.241:9200"] username: "elastic" password: "P0z9n-VWUYCGPY8xTid2" ssl: enabled: true ca_trusted_fingerprint: "a75b240db8482f22f4d63c00f26f72899f4cd066" pipeline: "winlogbeat-%{[agent.version]}-routing" setup.template.settings: index.number_of_shards: 1 ```  Протестируем конфигурацию ```cmd= .\winlogbeat.exe test config -c .\winlogbeat.yml -e ```    Стартуем winlogbeat ```powershell= Start-Service winlogbeat Get-Service -Name winlogbeat ```       ## 9.5 Перехват хэшей при использовании Mimikatz Склонируем репозиторий с mimikatz. Сдампим хэши. ```cmd= # запустим mimikatz mimikatz.exe # получим права отладки privilege::debug # дамп хэшей sekurlsa::logonpasswords ```  ## 9.6 Настройка дашбордов Kibana   ## 9.7 Настройка фильтра событий в Kibana ## 9.8 Развертывание и настройка Apache Nifi Установим Java ```bash= sudo apt install default-jre ```   Создадим каталог и скачаем дистрибутив ```bash= mkdir nifi wget https://archive.apache.org/dist/nifi/1.16.3/nifi-1.16.3-bin.tar.gz ```  Распакуем архив с nifi ```bash= tar -xvf nifi-1.16.3-bin.tar.gz ```  Установим переменную JAVA_HOME ```bash= export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64/ echo $JAVA_HOME ```  Запустим ```bash= ./nifi.sh start ```  Проверим статус и создадим пользователя ```bash= ./nifi.sh status ./nifi.sh set-single-user-credentials nifi Pa@@Wor1D13453 ```  Установим как службу ```bash= sudo ./nifi.sh install nifi ```  Добавим в автозагрузку ```bash= sudo systemctl enable nifi ```  Посмотрим статус ```bash= sudo systemctl status nifi ```  Уажем адрес прослушивания  Откроем в браузере адрес https://192.168.1.241:8443/nifi/login  Результат  ## 9.9 Обогащение событий Syslog средствами Apache Nifi  ## 9.10 Настройка Syslog ```bash= *. * @192.168.1.241:514 ```
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up