hacktricks/forensics/basic-forensic-methodology/malware-analysis.md

13 KiB
Raw Blame History

Аналіз шкідливих програм

{% hint style="success" %} Вивчайте та практикуйте взлом AWS: Навчання HackTricks AWS Red Team Expert (ARTE)
Вивчайте та практикуйте взлом GCP: Навчання HackTricks GCP Red Team Expert (GRTE)

Підтримайте HackTricks
{% endhint %}

Шпаргалки Forensics

https://www.jaiminton.com/cheatsheet/DFIR/#

Онлайн сервіси

Офлайн антивірусні та інструменти виявлення

Yara

Встановлення

sudo apt-get install -y yara

Підготовка правил

Використовуйте цей скрипт для завантаження та об'єднання всіх правил виявлення шкідливих програм yara з github: https://gist.github.com/andreafortuna/29c6ea48adf3d45a979a78763cdc7ce9
Створіть каталог rules та виконайте його. Це створить файл з назвою malware_rules.yar, який містить всі правила yara для виявлення шкідливих програм.

wget https://gist.githubusercontent.com/andreafortuna/29c6ea48adf3d45a979a78763cdc7ce9/raw/4ec711d37f1b428b63bed1f786b26a0654aa2f31/malware_yara_rules.py
mkdir rules
python malware_yara_rules.py

Сканування

yara -w malware_rules.yar image  #Scan 1 file
yara -w malware_rules.yar folder #Scan the whole folder

YaraGen: Перевірка наявності шкідливих програм та створення правил

Ви можете використовувати інструмент YaraGen для генерації правил yara з бінарного файлу. Перегляньте ці уроки: Частина 1, Частина 2, Частина 3

python3 yarGen.py --update
python3.exe yarGen.py --excludegood -m  ../../mals/

ClamAV

Встановлення

sudo apt-get install -y clamav

Сканування

sudo freshclam      #Update rules
clamscan filepath   #Scan 1 file
clamscan folderpath #Scan the whole folder

Capa

Capa виявляє потенційно шкідливі можливості в виконуваних файлах: PE, ELF, .NET. Таким чином, він знайде такі речі, як тактика Att&ck або підозрілі можливості, такі як:

  • перевірка помилки OutputDebugString
  • запуск як служба
  • створення процесу

Отримайте його в репозиторії Github.

IOCs

IOC означає Індикатор Компрометації. IOC - це набір умов, які ідентифікують деяке потенційно небажане програмне забезпечення або підтверджене шкідливе програмне забезпечення. Команди Blue використовують цей тип визначення для пошуку цього типу шкідливих файлів у своїх системах та мережах.
Дуже корисно ділитися цими визначеннями, оскільки коли шкідливе програмне забезпечення ідентифікується на комп'ютері і створюється IOC для цього шкідливого програмного забезпечення, інші команди Blue можуть використовувати його для ідентифікації шкідливого програмного забезпечення швидше.

Інструмент для створення або зміни IOCs - IOC Editor.
Ви можете використовувати інструменти, такі як Redline для пошуку визначених IOCs на пристрої.

Loki

Loki - це сканер для простих індикаторів компрометації.
Виявлення базується на чотирьох методах виявлення:

1. File Name IOC
Regex match on full file path/name

2. Yara Rule Check
Yara signature matches on file data and process memory

3. Hash Check
Compares known malicious hashes (MD5, SHA1, SHA256) with scanned files

4. C2 Back Connect Check
Compares process connection endpoints with C2 IOCs (new since version v.10)

Виявлення шкідливих програм для Linux

Linux Malware Detect (LMD) - це програма для виявлення шкідливих програм для Linux, яка випущена під ліцензією GNU GPLv2 і призначена для боротьби з загрозами, з якими стикаються в спільних хостингових середовищах. Вона використовує дані про загрози з систем виявлення вторгнень на мережевому краю для вилучення шкідливих програм, які активно використовуються в атаках, та генерує підписи для виявлення. Крім того, дані про загрози також походять від користувацьких внесків за допомогою функції перевірки LMD та ресурсів спільноти щодо шкідливих програм.

rkhunter

Інструменти, такі як rkhunter, можуть бути використані для перевірки файлової системи на можливі rootkits та шкідливі програми.

sudo ./rkhunter --check -r / -l /tmp/rkhunter.log [--report-warnings-only] [--skip-keypress]

FLOSS

FLOSS - це інструмент, який спробує знайти зашифровані рядки всередині виконуваних файлів, використовуючи різні техніки.

PEpper

PEpper перевіряє деякі основні речі всередині виконуваного файлу (бінарні дані, ентропія, URL-адреси та IP-адреси, деякі правила yara).

PEstudio

PEstudio - це інструмент, який дозволяє отримувати інформацію про виконувані файли Windows, таку як імпорт, експорт, заголовки, а також перевіряє VirusTotal та знаходить потенційні техніки Att&ck.

Detect It Easy(DiE)

DiE - це інструмент для виявлення того, чи є файл зашифрованим, а також для пошуку упаковувальників.

NeoPI

NeoPI - це сценарій Python, який використовує різноманітні статистичні методи для виявлення зашифрованого та зашифрованого вмісту в текстових/сценарних файлах. Призначення NeoPI - допомогти в виявленні прихованого коду веб-оболонок.

php-malware-finder

PHP-malware-finder робить все можливе для виявлення зашифрованого/підозрілого коду, а також файлів, які використовують функції PHP, які часто використовуються в зловмисних програмах/веб-оболонках.

Apple Binary Signatures

При перевірці деякого зразка шкідливого ПЗ ви завжди повинні перевіряти підпис бінарного файлу, оскільки розробник, який підписав його, може вже бути пов'язаний з шкідливим ПЗ.

#Get signer
codesign -vv -d /bin/ls 2>&1 | grep -E "Authority|TeamIdentifier"

#Check if the apps contents have been modified
codesign --verify --verbose /Applications/Safari.app

#Check if the signature is valid
spctl --assess --verbose /Applications/Safari.app

Техніки виявлення

Стекінг файлів

Якщо ви знаєте, що деяка тека, що містить файли веб-сервера, була останнім разом оновлена на певну дату. Перевірте дату всіх файлів у веб-сервері були створені та змінені, і якщо яка-небудь дата є підозрілою, перевірте цей файл.

Базові лінії

Якщо файли теки не повинні були бути змінені, ви можете обчислити хеш оригінальних файлів теки та порівняти їх з поточними. Будь-що, що було змінено, буде підозрілим.

Статистичний аналіз

Коли інформація зберігається в журналах, ви можете перевірити статистику, таку як скільки разів кожен файл веб-сервера був доступний, оскільки веб-оболонка може бути одним з найбільш.

{% hint style="success" %} Вивчайте та практикуйте взлом AWS:Навчання HackTricks AWS Red Team Expert (ARTE)
Вивчайте та практикуйте взлом GCP: Навчання HackTricks GCP Red Team Expert (GRTE)

Підтримайте HackTricks
{% endhint %}