Сейчас на форуме: (+5 невидимых) |
eXeL@B —› Протекторы —› VMProtect 3.2: запуcтить приложение и остановить его на указанном адресе |
. 1 . 2 . 3 . >> |
Посл.ответ | Сообщение |
|
Создано: 22 ноября 2018 10:47 · Личное сообщение · #1 Доступ к оригинальному коду приложения защищенного любым протектором до недавнего времени выполнялся довольно просто - любой дебагер с защитой от антидебага и далее дело техники, поиск ОЕП, бряк и дамп. Сейчас же протекторы сделали шаг вперед и вся защита от антидебага уже не действует. Конкретный пример, вмпрот версии 3.2 + x64dbg + ScillaHide дает отрицательный результат что при прямом старте, что при аттаче. Драйверный же TitanHide на Windows 10 вообще не удается установить. Пока найдено такое решение вопроса - запуск приложения, дамп его процесса, загрузка в дебаг/дизасм и реверс кода. Довольно хорошая утилитка для этого имеется, например Была тут одна интересная тема от Инде по поиску ЕП, но он её закрыл. В принципе, я думаю, эту задачу его визору решить по силам, только нужно изменить формулировку, не искать ОЕП, т.к. в общем случае её может и не быть, а довести приложение до заданного адреса. ----- Everything is relative... |
|
Создано: 22 ноября 2018 11:45 · Поправил: lx60 · Личное сообщение · #2 |
|
Создано: 22 ноября 2018 12:04 · Поправил: f13nd · Личное сообщение · #3 Vamit пишет: Была тут одна интересная тема от Инде по поиску ЕП, но он её закрыл. В принципе, я думаю, эту задачу его визору решить по силам Есть также unicorn, которым бы наверное это тоже можно решить. Про бесконечный цикл на оеп тоже хороший совет, такое тоже мелькало в других темах. По дампу находишь оер, берешь какую-нибудь ближайшую апи, лодырем перехватываешь и поймав с нужным адресом возврата зацикливаешь. ----- 2 оттенка серого |
|
Создано: 22 ноября 2018 13:50 · Поправил: difexacaw · Личное сообщение · #4 f13nd > По дампу находишь оер Опять двацать пять.. как находишь среди событий. Это не вопрос, я даже не спрашиваю. Vamit Я давно говорил что отладка - не способ и не инструмент. Смотри - сбрасываем рабочий набор одним сервисом, затем его запрашиваем. Получается кернел лог со всеми вашими действиями(дамп выборок). Две апи существующие с xp и до сих пор ваши" плагины это не обрабатывают. Фактически обрабатываются лишь задействованные механизмы антиотладки. Любое изменение в механизмах приводит к неработоспособности всего этого набора тулз. > Вопрос, имеются ли какие либо инструменты позволяющие запускать приложение и останавливать его на указанном адресе? Таким образом было найдено множество уязвимостей в ядре Но это всё глобальное, если нужно локально сделать, то инструментов нет. Добавлено спустя 1 час 13 минут Vamit > нужно изменить формулировку, не искать ОЕП Вам нужно понять что это чисто викс методы, это лишь реализация под конкретную задачу. Это нужно что бы незаметно брать всё апп под контроль, реализовать софт анклавы(сокрытие памяти), обойти аввм. Данного типа визор так устроен, что можно на всё ап поставить атрибут N/X. В первых реализациях была исходная цель, это всё было запилено на высокий профайл - работа апп под визором не отличается от прямого исполнения, для это те все темы и нужны были; оптимизация циклов етц. Задача поиска EP заместила реализацию быстрого визора, я остановился на половине реализации. Там сборка в памяти для очень быстрого исполнения. Эти реализации не уместны в связи со сложностью, тоесть тут нет смысла это обсуждать. Так или иначе если вы хотите это использовать, то придётся: - собирать это налету", для этого нужно разобраться как устроен визор. Но тогда любые задачи легко решаются. - это всё написано на масме 32. Если нужен порт, то варианта два - либо реализовать на си, либо собирать копию под 64, в таком случае изменений минимум, механизмы теже. - С нуля реализовать это никто не может, слишком много нюансов, куча времени уходило на отладку, примерно год. ----- vx | Сообщение посчитали полезным: mak |
|
Создано: 22 ноября 2018 15:13 · Личное сообщение · #5 Vamit пишет: Сейчас же протекторы сделали шаг вперед и вся защита от антидебага уже не действует. Конкретный пример, вмпрот версии 3.2 + x64dbg + ScillaHide дает отрицательный результат что при прямом старте ----- Чтобы правильно задать вопрос, нужно знать большую часть ответа. Р.Шекли. | Сообщение посчитали полезным: BlackCode |
|
Создано: 24 ноября 2018 11:30 · Личное сообщение · #6 difexacaw пишет: - это всё написано на масме 32. Если нужен порт, то варианта два - либо реализовать на си, либо собирать копию под 64, в таком случае изменений минимум, механизмы теже. Мне помнится, что ты говорил только про 32 битные системы, уточнив что в х64 твой енжин работать не будет. Может я что-то путаю .. ----- RE In Progress [!] Coding Hazard [!] Stay Clear of this Cube |
|
Создано: 24 ноября 2018 14:18 · Личное сообщение · #7 |
|
Создано: 24 ноября 2018 19:24 · Поправил: gggeorggge · Личное сообщение · #8 |
|
Создано: 24 ноября 2018 19:41 · Личное сообщение · #9 |
|
Создано: 24 ноября 2018 20:00 · Личное сообщение · #10 |
|
Создано: 24 ноября 2018 20:11 · Личное сообщение · #11 |
|
Создано: 24 ноября 2018 20:19 · Личное сообщение · #12 |
|
Создано: 24 ноября 2018 20:20 · Личное сообщение · #13 |
|
Создано: 24 ноября 2018 20:28 · Личное сообщение · #14 |
|
Создано: 24 ноября 2018 20:43 · Личное сообщение · #15 Vamit Я про отладчик не говорю. Простую обработку ловушки написать и заинжектить. Либо в немного более сложном случае использовать запрет на доступ к памяти и обработать ловушки. Добавлено спустя 7 минут А есчо вам ведь не нужен универсальный вариант, у вас конкретная ведь версия прота. Почему не посмотреть что там по антидебагу, написать фильтры ? ----- vx |
|
Создано: 25 ноября 2018 10:36 · Поправил: lx60 · Личное сообщение · #16 |
|
Создано: 25 ноября 2018 12:39 · Личное сообщение · #17 Прога грузит библиотеки? Если грузит, прицепить свою длл к одной их них Грузит, но только системные, своих нет. Вообще это всё полуфабрикатные решения, хотелось бы универсальный вариант, позволяющий останавливать любую программу на заданном адресе, работающую в системе Вин10 как в х86, так и в х64 режимах. ----- Everything is relative... |
|
Создано: 25 ноября 2018 14:23 · Личное сообщение · #18 |
|
Создано: 25 ноября 2018 14:55 · Личное сообщение · #19 |
|
Создано: 25 ноября 2018 14:57 · Личное сообщение · #20 |
|
Создано: 25 ноября 2018 16:32 · Поправил: mak · Личное сообщение · #21 |
|
Создано: 25 ноября 2018 21:46 · Поправил: difexacaw · Личное сообщение · #22 Я немного покопался. Он как то ловит отладчик, видимо через гуй(тень), вот активность до вывода окна с сообщением, что отладчик запален: Code:
Все важные события я пометил. Базовыми сервисами детект невозможен, кроме как запрос токенов - отладочные привилегии етц. Для тени нужно смотреть подробно что за вызовы. Первая версия олли крэшит, он и раньше её дебагпринтом прибивал. Вторая версия как отладчик просто полный ппц. Я не использовал запуск под отладчиком, а аттач как jit на EP. Поэтому среда апп запускается не под отладчиком. В модуле нет тлс, которая могла бы сработать до еп. Кроме кучи тск интересных событий больше нет. ----- vx | Сообщение посчитали полезным: Jupiter, mak |
|
Создано: 25 ноября 2018 22:17 · Личное сообщение · #23 |
|
Создано: 25 ноября 2018 22:30 · Личное сообщение · #24 Jupiter > предлагаю в лог также писать результат вызова, чуть более информативно будет. В смысле статус после вызова сервиса ? Это не проблема, только чем это поможет с поиском метода его детекта. > Это твою учётку запрашивает или просто лезет за учётной записью администратора Откуда мне знать, я подробности не смотрел. Время ушло на дамп теневых сервисов что бы имена в логе посмотреть, пришлось обрабатывать таблицы j00ru, в сети ничего кроме этого не нашлось. А есчо гемор с олли, она столь глючна, что нужна куча времени что бы с ней нормально работать, пофиксить некоторые детали. Сам же вмп этой версии без каких либо проблем запускается под dye, только это как и раньше долго варится - минут 20 он крутит память ничего не вызывая. Можно почистить всё что бы быстрее было, отключить не нужное, но на это нужно время, почему то раньше никто не выложил семплы. ----- vx |
|
Создано: 25 ноября 2018 23:04 · Личное сообщение · #25 difexacaw пишет: В смысле статус после вызова сервиса ? Да difexacaw пишет: Это не проблема, только чем это поможет с поиском метода его детекта. Я специально написал, что это "по тулзе". С методом детекта вмпротом никак не связано. difexacaw пишет: пришлось обрабатывать таблицы j00ru Так они же в удобном difexacaw пишет: минут 20 он крутит память ничего не вызывая А по профайлу на чём самые тормоза? И это на каком проце? ----- EnJoy! |
|
Создано: 25 ноября 2018 23:41 · Личное сообщение · #26 Jupiter > быстро парсятся, чем ты не доволен? Масм не переваривает бинарный дамп. > А по профайлу на чём самые тормоза? И это на каком проце? Не зависит от проца. Инструмент изначально с нуля писался для доказательства что можно отследить некоторые инструкции, фактически был спор на пиво. Вы ведь читали. Затем задача появилась по поиску EP. Это не расчитано на профайл изначально, адресный транслятор слишком много выполняет работы, сохраняется стек вызовов и циркулярные буфера, нет кэша инструкций и пакетной обработки.. Пусть в данном случае и медленно, но эти инструменты отлично работают. ----- vx |
|
Создано: 26 ноября 2018 00:56 · Личное сообщение · #27 difexacaw пишет: Масм не переваривает бинарный дамп csv и json - это простые текстовые форматы можно на питоне написать парсер, чтобы ускорить, можно выкинуть лишние варианты и оставить только твою Windows XP (SP3) x86. Сохранил отдельно json под Windows XP (SP3) x86: win32k-winxp-sp3.json, можешь его грузить и парсить по int номеру syscall. b12b_26.11.2018_EXELAB.rU.tgz - win32k-winxp-sp3.json ----- EnJoy! |
|
Создано: 26 ноября 2018 11:14 · Личное сообщение · #28 |
|
Создано: 26 ноября 2018 11:22 · Личное сообщение · #29 |
|
Создано: 26 ноября 2018 16:51 · Личное сообщение · #30 |
. 1 . 2 . 3 . >> |
eXeL@B —› Протекторы —› VMProtect 3.2: запуcтить приложение и остановить его на указанном адресе |