- Сообщения
- 956
- Реакции
- 1 028

Доброго дня,
на сегодня единственной нерешённой проблемой в разборе ВМ является проблематика автоматической классификации любого ВМ хендлера на графе, сам я изучал только два теоретически подходящих метода, первый на мета-шаблонах по автоматическому набору и второй модификация первой, но с дальнейшей автоматизацией через символический анализ. С такой утилитой в хозяйстве можно было бы кардинально сдвинуть рубеж сложности любой ВМ ориентированной обфускации. Почти каждая утилита имеет проблемы с добавлением новых хендлеров, какой бы подход автор не использовал. Можно сказать, что это направление затрагивает DBI движки, т.к. оперирует абстракциями, поэтому имеет огромный теоретический потенциал, а также охватывает любой тип виртуальных хендлеров.
Ниже представлена работа, которую выполнили "поднебесные драконы", с которой можно начать эту тему -
на сегодня единственной нерешённой проблемой в разборе ВМ является проблематика автоматической классификации любого ВМ хендлера на графе, сам я изучал только два теоретически подходящих метода, первый на мета-шаблонах по автоматическому набору и второй модификация первой, но с дальнейшей автоматизацией через символический анализ. С такой утилитой в хозяйстве можно было бы кардинально сдвинуть рубеж сложности любой ВМ ориентированной обфускации. Почти каждая утилита имеет проблемы с добавлением новых хендлеров, какой бы подход автор не использовал. Можно сказать, что это направление затрагивает DBI движки, т.к. оперирует абстракциями, поэтому имеет огромный теоретический потенциал, а также охватывает любой тип виртуальных хендлеров.
Ниже представлена работа, которую выполнили "поднебесные драконы", с которой можно начать эту тему -
The idea of using machine learning to analyze vmp.
masm:
0077e533 push 0xfeddf3fd
0077e538 call 0x64d713
0064d713 push esi
0064d71c push ebp
0064d71d push edx
0064d71e push ecx
0064d71f pushfd
0064d726 push eax
0064d728 push edi
0064d72c xchg edi, edi
0064d72e push ebx
0064d734 shld di, sp, 0x8f
0064d739 mov edx, 0
0064d745 push edx
0064d748 mov ebp, dword ptr [esp + 0x28]
0064d74c sub ebp, 0x1d6f2625
0064d752 bswap ebp
0064d75b neg ebp
0064d76b not ebp
0064d772 sub ebp, 0x38be537b
0064d77f rol ebp, 3
0064d789 lea ebp, [ebp + edx]
0064d78d mov esi, esp
0064d797 inc edi
0064d798 sub esp, 0xc0
[10, 0, 6, 5, 2, 0, 1, 0, 0, 7, 25] 5
007c053c mov ecx, dword ptr [esi]
006b22f6 mov dword ptr [esp + edx], ecx
[0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 2] 0
007f839c mov edx, dword ptr [ebp]
007f83a7 xor edx, ebx
007f83a9 bswap edx
007f83ab not edx
007f83b1 rol edx, 1
007f83bc xor edx, 0x6f3b0b63
007f83c8 xor ebx, edx
007f83d9 mov dword ptr [esi], edx
[0, 0, 3, 0, 5, 0, 0, 0, 0, 2, 8] 4
0064fb73 mov eax, dword ptr [esi]
0064fb7d mov edx, dword ptr [esi + 4]
006b7076 add eax, edx
006b707f mov dword ptr [esi + 4], eax
006b7087 pushfd
006b708a pop dword ptr [esi]
[1, 1, 3, 1, 0, 0, 0, 0, 0, 0, 6] 10
0081c8fb mov ecx, dword ptr [esi]
0081c903 mov edx, dword ptr [esi + 4]
0081c906 not ecx
006e651b not edx
006e651e or ecx, edx
0069a067 mov dword ptr [esi + 4], ecx
0069a06a pushfd
0069a072 pop dword ptr [esi]
[1, 1, 3, 0, 3, 0, 0, 0, 0, 0, 8] 8
Прикрепленные файлы:
-
30,9 КБ 19
-
2 МБ 12
-
1,2 МБ 8
-
806,2 КБ 31