Logstash
Logstash
Logstash використовується для збору, перетворення та розподілу журналів через систему, відому як конвеєри. Ці конвеєри складаються з вхідних, фільтруючих та вихідних етапів. Цікавий аспект виникає, коли Logstash працює на скомпрометованій машині.
Конфігурація конвеєра
Конвеєри налаштовуються в файлі /etc/logstash/pipelines.yml, який перераховує місця розташування конфігурацій конвеєрів:
Цей файл розкриває місцезнаходження файлів .conf, що містять конфігурації конвеєрів. При використанні модуля виведення Elasticsearch, зазвичай конвеєри включають облікові дані Elasticsearch, які часто мають широкі привілеї через необхідність Logstash писати дані в Elasticsearch. Джокери в шляхах конфігурації дозволяють Logstash виконувати всі відповідні конвеєри в призначеному каталозі.
Підвищення привілеїв через записувані конвеєри
Для спроби підвищення привілеїв спочатку ідентифікуйте користувача, під яким працює служба Logstash, зазвичай користувач logstash. Переконайтеся, що ви відповідаєте одному з цих критеріїв:
Маєте право на запис до файлу конфігурації конвеєра .conf або
Файл /etc/logstash/pipelines.yml використовує джокер, і ви можете записувати в цільову теку
Додатково повинні бути виконані одна з цих умов:
Можливість перезапуску служби Logstash або
У файлі /etc/logstash/logstash.yml встановлено config.reload.automatic: true
З урахуванням джокера в конфігурації, створення файлу, який відповідає цьому джокеру, дозволяє виконання команд. Наприклад:
Тут інтервал визначає частоту виконання у секундах. У даному прикладі команда whoami виконується кожні 120 секунд, а її вивід спрямовується в /tmp/output.log.
З config.reload.automatic: true в /etc/logstash/logstash.yml, Logstash автоматично виявлятиме та застосує нові або змінені конфігурації конвеєрів без необхідності перезапуску. Якщо немає метасимволів, зміни все одно можна вносити до існуючих конфігурацій, але рекомендується бути обережним, щоб уникнути перебоїв.
Посилання
Last updated