Mastodon Mastodon Mastodon Mastodon

Пакувальник

Оновлено: · CyberSecureFox Editorial Team

Пакувальник (packer) — інструмент, що стискає чи шифрує виконуваний файл і додає невеликий код, який розпаковує оригінал у пам’яті під час запуску.

Як працює пакувальник

Пакувальник бере програму, стискає й часто шифрує її код і дані та загортає в новий виконуваний файл. Під час запуску розпакувальна заглушка відновлює вихідну програму в пам’яті й передає керування на її справжню точку входу. На диску файл зовсім не схожий на оригінал.

  • Пакувальники-компресори, як відкритий UPX, просто зменшують розмір файлів.
  • Протектори на кшталт Themida чи VMProtect додають захист від налагодження й віртуалізацію коду, щоб комерційне ПЗ було складніше зламати.
  • Криптори — пакувальники, які продають на кримінальних форумах саме для того, щоб зробити шкідливе ПЗ непомітним для антивірусів.

Чим пакувальники важливі для безпеки

Більшість сучасного шкідливого ПЗ упаковано. Пакування приховує рядки, імпорти й шаблони коду, за якими працюють сигнатури, а кожна нова збірка може виглядати унікально. Тому фахівці вважають пакування тривожною ознакою: висока ентропія секцій, дуже мало імпортованих функцій чи незвичні назви секцій. Самого статичного аналізу часто замало, і аналітики розпаковують зразки в пісочницях, через дампи пам’яті та налагоджувачі. Водночас легітимне ПЗ теж буває упакованим, тож упакований файл — ще не вирок.

Рекомендації

  • Використовуйте захист кінцевих точок з аналізом поведінки й пам’яті, а не лише сигнатури файлів.
  • Вважайте упаковані файли з невідомих джерел високоризиковими й перевіряйте їх у пісочниці.
  • Розробникам — підписувати упаковані файли, щоб їх можна було відрізнити від шкідливих.
Синоніми:
Пакер, Packer