Мониторинг, IDS и системный анализ. YARA

от автора

Что делает

YARA — инструмент для идентификации и классификации вредоносного программного обеспечения по правилам. Правила YARA описывают паттерны (строки, бинарные последовательности, регулярные выражения) в файлах. Широко используется в антивирусах, IDS, threat hunting для поиска малвари.

Установка

sudo apt install yara

Синтаксис

yara [опции] <файл правил> <цель>

Ключевые флаги и опции

Флаг

Описание

-r

Рекурсивный обход директорий

-s

Показывать совпавшие строки

-p N

Количество потоков

-m

Показать метаданные правил

-n

Инвертировать результаты (только несовпадения)

-g

Показать теги

-l N

Лимит строк

-d VAR=VAL

Определить внешнюю переменную

--no-warnings

Без предупреждений

-f

Быстрый режим

-x MODULE

Загрузить внешний модуль

Практические примеры

Пример 1 — поиск малвари по готовым правилам:

# Скачиваем правила (например, из репозитория):git clone https://github.com/Yara-Rules/rules.git /opt/yara-rules# Сканируем подозрительный файл:yara /opt/yara-rules/malware/RAT.yar /tmp/suspicious_file.exe
QUASAR_RAT /tmp/suspicious_file.exeWin32_Trojan_Generic /tmp/suspicious_file.exe

Пример 2 — написание кастомного правила:

cat > detect_webshell.yar << 'EOF'rule WebShell_PHP_Generic {    meta:        description = "Detect PHP web shells"        severity = "critical"    strings:        $s1 = "eval(" nocase        $s2 = "base64_decode(" nocase        $s3 = "system(" nocase        $s4 = "passthru(" nocase        $s5 = "$_REQUEST" nocase        $s6 = "$_POST" nocase    condition:        filesize < 100KB and        3 of ($s*)}EOFyara detect_webshell.yar /var/www/html/ -r -s
WebShell_PHP_Generic /var/www/html/images/thumb.php0x0: $s1: eval(0x15: $s2: base64_decode(0x45: $s5: $_REQUEST

Пример 3 — сканирование памяти процесса:

# Получаем PID подозрительного процесса:ps aux | grep suspicious# Сканируем процесс:yara -p 4 /opt/rules/malware.yar 1234
Cobalt_Strike_Beacon 1234

Частые ошибки

  • “Error: could not open file” — проверьте права доступа к файлу правил.

  • Медленное сканирование директорий — используйте -p 8 для многопоточности.

Заметки OPSEC

  • YARA часто используется защитниками для threat hunting — знание правил помогает их обходить.

  • Создавайте собственные правила для охоты на конкретные угрозы.

Связка с другими инструментами

yara (обнаружение малвари) → ghidra (реверс-инжиниринг найденных образцов)yara + volatility (сканирование дампа памяти)yara → sigma (конвертация правил в SIEM форматы)

ссылка на оригинал статьи https://habr.com/ru/articles/1044952/