Сейчас на форуме: (+9 невидимых)

 [email protected] —› Протекторы —› VMProtect (Туторы, скрипты, плагины, ...)
<< . 1 . 2 . 3 . 4 . 5 . 6 . 7 . 8 . 9 . 10 ... 14 . 15 . >>
Посл.ответ Сообщение


Ранг: 154.2 (ветеран), 66thx
Активность: 0.080
Статус: Участник
REVENGE Crew

Создано: 18 марта 2010 11:56 · Поправил: kioresk
· Личное сообщение · #1

Решил создать отдельную тему по VMProtect'у, чтобы собирать в одном месте информацию по этому проту и обсуждать детали.

Для начала ответ на самый распространенный вопрос.

1. Почему OllyDbg вылетает при запуске программы, защищенной VMProtect'ом?

Потому что VMProtect использует баг с переполнением буфера в старых версиях dbghelp.dll, из-за которого отладчик падает. Чтобы обойти его необходимо исправить баг в dbghelp.dll или положить в папку отладчика новую версию файла dbghelp.dll, который можно взять из комплекта Debugging Tools for Windows:

http://www.microsoft.com/whdc/devtools/debugging/default.mspx

Добавлено

Microsoft включил дистрибутив Debugging Tools в состав пакета Windows SDK (который весит достаточно прилично), поэтому вот альтернативные ссылки на:

1. Дистрибутив Debugging Tools v6.12.2.633 x86 от 26.02.2010 (18,3 Мбайт)

2. Только библиотека dbghelp.dll из дистрибутива Debugging Tools v6.12.2.633 x86 (0,5 Мбайт)




Ранг: 1131.7 (!!!!), 447thx
Активность: 0.670.2
Статус: Участник

Создано: 08 марта 2016 02:05
· Личное сообщение · #2

antipod
--> Link <--



Ранг: 9.5 (гость), 4thx
Активность: 0.010
Статус: Участник

Создано: 08 марта 2016 02:17 · Поправил: antipod
· Личное сообщение · #3

Gideon Vi
Эту тему я знаю.Мне именно beta 2 нужна



Ранг: 1.2 (гость), 2thx
Активность: 0=0
Статус: Участник

Создано: 08 марта 2016 14:37
· Личное сообщение · #4

vnekrilov ,



d4ee_08.03.2016_EXELAB.rU.tgz - vmp.rar

| Сообщение посчитали полезным: v00doo, vnekrilov

Ранг: 222.2 (наставник), 115thx
Активность: 0.140.01
Статус: Участник

Создано: 13 марта 2016 17:30 · Поправил: HandMill
· Личное сообщение · #5

Некий деобфускатор vmp, возможно даже с рабочей поддержкой x86/x64
https://github.com/fvrmatteo/DeobfuscatorTest
ещё один:
https://github.com/Pigrecos/CodeDeobfuscator
работоспособность не проверял
источник

-----
все багрепорты - в личные сообщения


| Сообщение посчитали полезным: v00doo, VodoleY


Ранг: 324.3 (мудрец), 221thx
Активность: 0.480.37
Статус: Участник

Создано: 14 марта 2016 03:38
· Личное сообщение · #6

А можете меня просвятить о "знаменитых" проблемах с антидампами?

-----
IZ.RU




Ранг: 488.1 (мудрец), 272thx
Активность: 0.350
Статус: Участник

Создано: 14 марта 2016 11:24
· Личное сообщение · #7

DenCoder пишет:
А можете меня просвятить о "знаменитых" проблемах с антидампами?

тут я совсем потерял нить беседы.. а в чем проблема? чистый анпак вмпрота не благодарное занятие.. как я писал уже высше.. а с дампом что не так?

-----
Наша работа во тьме, Мы делаем, что умеем. Мы отдаем, что имеем, Наша работа во тьме....





Ранг: 57.3 (постоянный), 67thx
Активность: 0.060
Статус: Участник

Создано: 14 марта 2016 11:44
· Личное сообщение · #8

Тоже не понимаю... Инлайн лучше сделать, по времени быстрее и ошибок меньше

| Сообщение посчитали полезным: Jaa


Ранг: 324.3 (мудрец), 221thx
Активность: 0.480.37
Статус: Участник

Создано: 14 марта 2016 14:26
· Личное сообщение · #9

VodoleY пишет:
тут я совсем потерял нить беседы..

Ты ничего не потерял! У той нити просто конец достигнут

А проблема антидампа... Я увидел это слово давно. И честно понял тогда под этим словом невозможность скопировать из памяти какую-то часть кода/данных. С год, как вижу, что это не так, а слово осталось и до сих пор встречается. Значит, проблема? Действительно ли она есть? Или всё это миф?

Например, дампа распакованного модуля с правками в хидере хватает для анализа в иде.

Под "антидампом" имелось в виду, что невозможно запустить такой дамп? Что мне встречалось - вся распаковка на единственной вм, то есть диспетчер один. И импорт делается через диспетчер на одной ленте. Сообразил, что для ленты этой можно сделать девирт статически, статически выловить весь импорт и нормально вписать в IAT. Но чтоб всё работало без лишнего анализа оригинальных вызовов такого импорта - вписать часть девирт-асм-кода перед OEP. Чем плох вариант? Если тут проблема, то считайте, что её нет!

Для релоков есть выход на загаженную мусором функцию, но таблица без изменений стандартная, подчиняется обычной вставке в соответствующую секцию...

Раскрыл полностью свою мысль DenCoder пишет:
А можете меня просвятить о "знаменитых" проблемах с антидампами?

, которую запостил из необычайного интереса. Где эта проблема?

Добавлено спустя 3 минуты
-Sanchez- пишет:
Инлайн лучше сделать, по времени быстрее и ошибок меньше

Тут уже я не понимаю

Инлайн куда? У меня в уме не клеится "инлайн" к проверкам CRC. )

-----
IZ.RU





Ранг: 56.2 (постоянный), 14thx
Активность: 0.120
Статус: Участник

Создано: 14 марта 2016 15:38
· Личное сообщение · #10

а не замахнуться ли нам на распаковку нашего VMProtect 3.0.8,знаите ли самого протекта?



Ранг: 53.9 (постоянный), 33thx
Активность: 0.050
Статус: Участник

Создано: 14 марта 2016 17:28 · Поправил: deniskore
· Личное сообщение · #11

script_kidis пишет:
а не замахнуться ли нам на распаковку нашего VMProtect 3.0.8,знаите ли самого протекта?

Вы замахнитесь и все кому надо подтянутся, вы про анпак или все таки девиртуализацию?
P.S проверил деобфускаторы выложенные выше, единственное что нормально оптимизируется это "DEAD code", даже примитивные конструкции разобрать/собрать не смог.

| Сообщение посчитали полезным: HandMill

Ранг: 488.1 (мудрец), 272thx
Активность: 0.350
Статус: Участник

Создано: 14 марта 2016 18:34 · Поправил: VodoleY
· Личное сообщение · #12

DenCoder
так.. ну вобщем смотри.. с вмпртом проблем несколько.. если смотреть глобально.. и эту тему ИНТег и ВАМит достаточно красочно уже освещали..
1. касательно антидебага.. тема сисек так почти раскрыта.. оно там конечно все жутенько.. но терпимо
2. касательно ЦРЦ.. есть одна нехорошая хрень.. типа часть кода.. который морфируется .. црц считается уже поморфированного кода.. т.е. я когда давно сдрадал эксперементом.. подменой црц примитива, испльзуя образ файла(типа копию файла делал, и црц с непатченного файла считал).. так вот.. из 1000 срабатываний црц.. гдето 20.. попадали в морфированные зоны.. т.е.. прога сначала себя поменяет.. а црц правильное.. ты только в измененном состоянии проги можешь получить. но и это детали..
3. самый модный гиморой. это код.. который вызываем VM из VM .. т.е. call так кой себе из виртуальной машины.. в другую виртуальную машину.

Добавлено спустя 7 минут
зы.. ты антидамп с армой не попутал случайно? я вот первый раз слышу что в вмпроте есть области с защитой памяти.. да и техник таких по сути практически нету

-----
Наша работа во тьме, Мы делаем, что умеем. Мы отдаем, что имеем, Наша работа во тьме....


| Сообщение посчитали полезным: script_kidis


Ранг: 324.3 (мудрец), 221thx
Активность: 0.480.37
Статус: Участник

Создано: 14 марта 2016 18:56
· Личное сообщение · #13

script_kidis пишет:
а не замахнуться ли нам на распаковку нашего VMProtect 3.0.8,знаите ли самого протекта?

Ветер туда пока даже не подул, а парусная конструкция у меня пока не айс

VodoleY пишет:
т.е. я когда давно сдрадал эксперементом.. подменой црц примитива,

нашёл таблицу с CRC, посчитал алго, и подменил )
Я так делал при первом изучении вмпрота перед запуском ещё не до конца написанного трейсера. Правда потом наткнулся на big-проверку, и не хотелось уже считать. Почему конкретно не помню, но вроде две из причин:
1) использовался другой алго на байт-коде, который было уже лень реверсить, проще было обойти. (А зачем вообще в ней, в этой таблице что-то подменять? Так ведь первое изучение! Понаставлено было бряков, а это изменение кода)
2) в big-проверке црц считался и от таблицы со "случайными" црц (проверялся случайным образом взятый кусок кода, генератором был rdtsc-примитив)

VodoleY пишет:
3. самый модный гиморой. это код.. который вызываем VM из VM .. т.е. call так кой себе из виртуальной машины.. в другую виртуальную машину

Это видел. В первом случае мне попадался файл с 2мя вм, во втором - с одной, в 3ем - аж 3. Даже пришлось трейсер переписывать

Добавлено спустя 0 минут
так, а где про антидамп?

-----
IZ.RU


| Сообщение посчитали полезным: script_kidis


Ранг: 328.7 (мудрец), 73thx
Активность: 0.170.01
Статус: Участник

Создано: 14 марта 2016 20:07
· Личное сообщение · #14

LocalAlloc heapalloc virtualAlloc - вызываемые из тела программы - основа антидампа

| Сообщение посчитали полезным: -Sanchez-


Ранг: 331.1 (мудрец), 561thx
Активность: 0.190.06
Статус: Участник

Создано: 15 марта 2016 08:03
· Личное сообщение · #15

DenCoder пишет:
так, а где про антидамп?

Нет там никакого антидампа, Олька снимает дамп любой версии вмпрота (если стоять в нужном месте) без проблем, импорт же восстанавливает корректно Свипер в 90% случаев (может быть проблемка с Паскалем при полностью сожранной ИАТ). Так что изучать в ИДЕ всё это можно вполне успешно, вот только запускать это не получится.

-----
Everything is relative...


| Сообщение посчитали полезным: gloom


Ранг: 324.3 (мудрец), 221thx
Активность: 0.480.37
Статус: Участник

Создано: 15 марта 2016 14:10 · Поправил: DenCoder
· Личное сообщение · #16

VodoleY пишет:
зы.. ты антидамп с армой не попутал случайно? я вот первый раз слышу что в вмпроте есть области с защитой памяти.. да и техник таких по сути практически нету

Может быть и да... Но некоторые связывают антидамп с впротом. Из того, что смог найти тут:
https://exelab.ru/f/action=vthread&forum=5&topic=24036#4
https://exelab.ru/f.../action=vthread&forum=13&topic=17944&page=2#17

на офф. сайте вмпрота
http://www.vmpsoft.com/forum/viewtopic.php?p=547

и на тутсях
https://tuts4you.com/download.php?view.3432

Добавлено спустя 26 минут
Vamit пишет:
Так что изучать в ИДЕ всё это можно вполне успешно, вот только запускать это не получится.

->
DenCoder пишет:
Сообразил, что для ленты этой можно сделать девирт статически, статически выловить весь импорт и нормально вписать в IAT. Но чтоб всё работало без лишнего анализа оригинальных вызовов такого импорта - вписать часть девирт-асм-кода перед OEP

так что можно, если поработать над этим.

-----
IZ.RU




Ранг: 21.5 (новичок), 4thx
Активность: 0.010.03
Статус: Участник

Создано: 03 апреля 2016 01:58 · Поправил: freudz
· Личное сообщение · #17

Добрый вечер,

Комрады, есть два вопроса:
- какие существуют способы и тулзы для отладки\трассировки vmprotect 2.x/3.x на win64?
(сам пробовал x64dbg+scyllahide - не могу вызов MapViewOfFile поймать)
- есть ли способы статического анализа для определения мест контроля CRC?

Спасибо за любой ответ!



Ранг: 488.1 (мудрец), 272thx
Активность: 0.350
Статус: Участник

Создано: 03 апреля 2016 06:58
· Личное сообщение · #18

freudz пишет:
- есть ли способы статического анализа для определения мест контроля CRC?

да нефик делать.. ищи главный цикл ВМ. ищи в нем таблицу примитивов.. в ней 1 из 256 и будет примитив который за ЦРЦ отвечает

-----
Наша работа во тьме, Мы делаем, что умеем. Мы отдаем, что имеем, Наша работа во тьме....


| Сообщение посчитали полезным: freudz

Ранг: 21.5 (новичок), 4thx
Активность: 0.010.03
Статус: Участник

Создано: 03 апреля 2016 12:32
· Личное сообщение · #19

VodoleY
Спасибо, а есть ли доки\туторы по этому вопросу?




Ранг: 529.0 (!), 110thx
Активность: 0.290.04
Статус: Участник
5KRT

Создано: 03 апреля 2016 13:50
· Личное сообщение · #20

freudz пишет:
VodoleY
Спасибо, а есть ли доки\туторы по этому вопросу?


Полагаю, это был сарказм) Нету ничего готового под ВМ прот кроме плага от Вамита. И то, плагом ещё надо научиться пользоваться, что тоже не просто

-----
Research For Food


| Сообщение посчитали полезным: mushr00m


Ранг: 324.3 (мудрец), 221thx
Активность: 0.480.37
Статус: Участник

Создано: 05 апреля 2016 00:58
· Личное сообщение · #21

VodoleY пишет:
в ней 1 из 256

если из 256, то может быть и все 15

Добавлено спустя 5 минут
Шо уж хотя б вот так не сделать?
Code:
  1.                  SetFilePointer(hFile, disp, NULL, FILE_BEGIN);
  2.                  ReadFile(hFile, Buffer, 0x800, &dwRead, NULL);
  3.                  CloseHandle(hFile);
  4.  
  5.                  MAP_FUNCS mapFuncs;
  6.                  for(int i = 0; i < 0x100; i++)
  7.                  {
  8.                         Buffer[i] = decode(Buffer[i]);
  9.                         Buffer[i] += delta;
  10.                         mapFuncs[Buffer[i]].push_back(i);
  11.                  }


Добавлено спустя 7 минут
Будет сразу видно, что их не 256. А вм для распаковки совпадёт по группам индексов с одной из под слоем пака...

-----
IZ.RU




Ранг: 488.1 (мудрец), 272thx
Активность: 0.350
Статус: Участник

Создано: 05 апреля 2016 11:55
· Личное сообщение · #22

DenCoder ну примитивов всего то штук 80 если правильно помню, они дублируются.. я описал общий принцип.

-----
Наша работа во тьме, Мы делаем, что умеем. Мы отдаем, что имеем, Наша работа во тьме....





Ранг: 324.3 (мудрец), 221thx
Активность: 0.480.37
Статус: Участник

Создано: 05 апреля 2016 16:21 · Поправил: DenCoder
· Личное сообщение · #23

VodoleY пишет:
ну примитивов всего то штук 80 если правильно помню

На самом деле уникальных всего 68(для x64, винда, юзермод), из которых 2 никогда не используются: 1) push ss и 2) callVoidFunc. Дублями число вырастает до 78..81, что мне приходилось видеть. Под дублем имеется в виду примитив-двойник с отличным адресом от ранее разобранного такого же по смыслу(и с отличным мусором). Ну и использование каждой новой вм подразумевает наличие одного дополнительного примитива на каждую для перехода в неё.

-----
IZ.RU




Ранг: 419.0 (мудрец), 647thx
Активность: 0.460.51
Статус: Участник
"Тибериумный реверсинг"

Создано: 05 апреля 2016 19:35
· Личное сообщение · #24

VodoleY пишет:
ищи главный цикл ВМ. ищи в нем таблицу примитивов

В последних денуво (вмпротект 3.0) таблица примитивов растворена в p-code



Ранг: 3.9 (гость)
Активность: 0.010
Статус: Участник

Создано: 17 августа 2016 16:12
· Личное сообщение · #25

кто может поделится готовой сборкой одним архивом:
olly dbg antidetect vmprotect + scrypt unpack wmprotect
dumper vmprotect
vmprotect oep
vmprotect анализатор версий
и тутор по распаковке
s2:
если не жалко конечно всем спасибо мира добра Вам.



Ранг: 3.9 (гость)
Активность: 0.010
Статус: Участник

Создано: 21 августа 2016 10:09
· Личное сообщение · #26

у кого есть txt-овик тутор по распаковке vmprotect?



Ранг: 134.1 (ветеран), 246thx
Активность: 0.220.1
Статус: Участник
realist

Создано: 21 августа 2016 10:50
· Личное сообщение · #27

lenovo
https://forum.tuts4you.com/topic/30733-vmprotect-ultra-unpacker-10/

| Сообщение посчитали полезным: lenovo

Ранг: 95.1 (постоянный), 247thx
Активность: 0.260.01
Статус: Участник

Создано: 21 августа 2016 10:53
· Личное сообщение · #28

lenovo пишет:
у кого есть txt-овик тутор по распаковке vmprotect?

1.Пролистать эту тему назад к 5-ой странице.
2.Найти интересный пост в конце.
3.Проанализировать то, что там написано.
4.Cкачать все необходимое.
5.Внимательно все изучить и приступить к делу.
6.Повторить, если не получилось.
7.Привыкать к самостоятельности, не тупить и не наглеть и внимательно прочесть заголовок этой темы.

-----
TEST YOUR MIGHT


| Сообщение посчитали полезным: lenovo

Ранг: 3.9 (гость)
Активность: 0.010
Статус: Участник

Создано: 21 августа 2016 17:44
· Личное сообщение · #29

Jaa и unknownproject огромное вам спасибо, долгих лет жизни вам в достатке и почёте.



Ранг: 5.6 (гость)
Активность: 0=0
Статус: Участник

Создано: 14 сентября 2016 14:30 · Поправил: zolodei
· Личное сообщение · #30

Кто может поделится сборкой для ollydbg v2.01, чтоб можно было vmprotect спокойно распаковать(UnPackMe_VMProtect 1.8.a.exe) по урокам с Ссылка. Или расскажите как собрать?
Пробовал с ollydbg v2.01 и плагином ScyllaHideOlly2 и профилем VMProtect x86/x64, при установке брекпойна на VirtualProtect получаю ошибку "A debugger has been found running in your system. Please, unload it from memory and restart your program." помогите.



Ранг: 281.8 (наставник), 272thx
Активность: 0.250.01
Статус: Участник
Destroyer of protectors

Создано: 14 сентября 2016 14:49
· Личное сообщение · #31

zolodei пишет:
при установке брекпойна на VirtualProtect получаю ошибку

ставь бряк на следующую команду:
Code:
  1. MOV EDI, EDI
  2. PUSH EBP - сюда



<< . 1 . 2 . 3 . 4 . 5 . 6 . 7 . 8 . 9 . 10 ... 14 . 15 . >>
 [email protected] —› Протекторы —› VMProtect (Туторы, скрипты, плагины, ...)
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати