Yara-Yara
Ещё в группе «Вредоносное ПО»
- Этот ваш Siemens…
Недавно наши коллеги из Центра промышленной экспертизы Позитива обнаружили на MalwareBazaar один любопытный Windows-образец. Вот его…
- Анти-антивирус
Недавно нам на глаза попалась APK-шка с интригующим и внушающим доверие названием «Антивирус ФСБ.apk». Установив его,…
- .exe .docm .xlsm
.exe .docm .xlsm Вредоносные файлы с этими расширениями чаще всего встречаются в сетевом трафике компаний. Давайте…
- Операция Chewbacca
В конце июня команда PT ESC в ходе расследования инцидентов обнаружила новую группу, нацеленную как минимум…
- Ваш сервер Zimbra под угрозой
Недавно наша команда PT ESC IR столкнулась с новой атакой ransomware-группировок на почтовые серверы Zimbra с…
🐧 Когда со строками разобрались, можно приступить к генерации байтовых сигнатур. Обычно их стараются делать как можно реже, так как для их генерации приходится смотреть на голый ассемблер 😗
Но рано или поздно найдется сампл, в котором не будет нужных строк для детекта 😶. Приведем парочку советов и примеров 😌, как
🐾 Практически нет смысла писать сигнатуру на пролог функции и ее завершение: поверьте, эти push\pop почти везде одинаковые 😤
🐾 Старайтесь ухватиться за константы или необычную последовательность инструкций: часто в бэкдорах злоумышленники используют кастомное шифрование пакетов, которые очень приятно детектить
$code1 = {
FF C6 // inc esi
B8 99 99 99 99 // mov eax, 99999999h
F7 EE // imul esi
D1 FA // sar edx, 1
8B C2 // mov eax, edx
C1 E8 1F // shr eax, 1Fh
03 D0 // add edx, eax
}
Code language: Intel x86 Assembly (x86asm)🐾 Компилятор может изменить порядок инструкций, или даже вставить выравнивающие nop 😨. Будет не лишним использовать пропуски между инструкциями —
{ <byte inst> [5-6] <byte inst2> } 🐾 Все оффсеты (в jmp, call и т.д.) надо заменять на знаки
?, поскольку смещения меняются компилятором /*разве что в рукописном шеллкоде это не так*/ Можно оставлять старшие 1-2 байта оффсета в сигнатуре — они почти всегда 00 или ff$code61 = {
68 DF 71 00 00 // push 71DFh ; request
53 // push ebx ; fd
E8 ?? ?? ?? ?? // call _ioctl
} // если вопросы стоят в конце байт-конструкцции, их можно вовсе убрать
Code language: Intel x86 Assembly (x86asm)🐾 Стоит учитывать, что один и тот же opcode может оперировать разными регистрами от сампла к самплу 😫. Чтобы сигнатура была актуальной, нужно затереть байты операндов знаками
? в инструкции$code21 = {
89 ?? // mov edi, esi
83 C? 01 // add esi, 1
83 E? 1F // and edi, 1Fh
0F B6 ?? ?? 10 // movzx edx, byte ptr [edx+eax+10h]
83 C? 01 // add eax, 1
30 ?? ?? 28 03 00 00 // xor [ebx+edi+328h], dl
83 F? 0C // cmp eax, 0Ch
}
Code language: Intel x86 Assembly (x86asm)🐾 Можно сделать выбор из нескольких вариантов
(<opcode1> | <opcode2>), когда в серии самплов используются разные opcode для цепочки инструкций $code_3 = {
80 34 (0? | 1? | 2? | 3?) 02 // xor byte ptr [eax + esi], 3
4? // inc eax
3D ?? ?? 00 00 // cmp eax, 0x21e6
(7C | 72) ?? // jl 0x10001322 \ jb ????????
B? ?? ?? 00 00
}
Code language: Intel x86 Assembly (x86asm)Все эти ассемблерные манипуляции с байтовыми сигнатурами зачастую приходится делать с декодером опкодов и инструкций. К счастью, один из наших коллег создал плагин для помощи 😏 в генерации сигнатур, который заменяет все параметризуемые участки сигнатуры на
? и группы (x | y). Инструмент yarg работает как плагин к Ida Pro, генерируя к выбранному участку кода готовую сигнатуру для Yara-правила. Вам останется только найти участок кода, подходящий для создания сигнатуры 🙂Успехов в работе!
#tips #malware #YARA
@ptescalator
Ещё в группе «Вредоносное ПО»
- Этот ваш Siemens…
Недавно наши коллеги из Центра промышленной экспертизы Позитива обнаружили на MalwareBazaar один любопытный Windows-образец. Вот его…
- Анти-антивирус
Недавно нам на глаза попалась APK-шка с интригующим и внушающим доверие названием «Антивирус ФСБ.apk». Установив его,…
- .exe .docm .xlsm
.exe .docm .xlsm Вредоносные файлы с этими расширениями чаще всего встречаются в сетевом трафике компаний. Давайте…
- Операция Chewbacca
В конце июня команда PT ESC в ходе расследования инцидентов обнаружила новую группу, нацеленную как минимум…
- Ваш сервер Zimbra под угрозой
Недавно наша команда PT ESC IR столкнулась с новой атакой ransomware-группировок на почтовые серверы Zimbra с…





