![]() |
eXeL@B —› Основной форум —› по поводу отладчиков |
. 1 . 2 . >> |
Посл.ответ | Сообщение |
|
Создано: 29 мая 2006 15:27 · Личное сообщение · #1 Есть такая фигня как защита от аппаратных бряков и т.п. Так вот что я подумал: есть такая маза накатать прогу типа ольки, но работающую не как отладчик, а как интерпретатор (такая прога кт. ассемблирует напрямую в память), но у меня пока опыта в этом деле маловато! А плюс такой, что прога может прекратить ассемблирование в любой момент!!! ![]() ![]() Если есть такие проги - напишите пожалуйста. Спасибо. ![]() ![]() |
|
Создано: 29 мая 2006 15:35 · Личное сообщение · #2 |
|
Создано: 29 мая 2006 15:38 · Поправил: Gloomy · Личное сообщение · #3 |
|
Создано: 29 мая 2006 16:47 · Личное сообщение · #4 1) Эмулятор simics www.simics.net www.virtutech.com 2) Эмулятор bochs - есть исходные тексты bochs.sourceforge.net Эти эмуляторы хороши тем, что в них есть отладчик - именно то, что надо. К сожалению эти эмуляторы не эмулируют "тонкие вещи", поэтому в принципе возможно их определить. Но вот побороть это определение не проблема : быстро доходим до запуска программы и включаем полную трассировку команд. ![]() |
|
Создано: 31 мая 2006 21:20 · Личное сообщение · #5 |
|
Создано: 31 мая 2006 22:05 · Личное сообщение · #6 |
|
Создано: 01 июня 2006 05:52 · Личное сообщение · #7 |
|
Создано: 01 июня 2006 09:35 · Личное сообщение · #8 |
|
Создано: 01 июня 2006 16:33 · Личное сообщение · #9 tundra37 пишет: 1) Эмулятор simics www.simics.net www.virtutech.com 2) Эмулятор bochs - есть исходные тексты bochs.sourceforge.net Нихрена не понял что там написано ![]() Пол часа потратил на поиски по сайтам и в результате накачал гору исходников, которые мне влом компилять ElybonrehC пишет: Для Olly и стандартный плагин не спасает даже от функции IsDebuggerPresent. Asterix пишет: гонишь или пытаешься юзать плагин под вин9х Не, ну реально IsDebuggerPresent прячет не от всего, но со своими функциями он справляется кульно! А чтобы он работал надо: -Olly -Мозги -Хороший (в крайнем случае - нормальный) комп -Прямые руки(на своем опыте)! ![]() ![]() |
|
Создано: 01 июня 2006 17:32 · Личное сообщение · #10 |
|
Создано: 02 июня 2006 09:00 · Поправил: PE_Kill · Личное сообщение · #11 |
|
Создано: 02 июня 2006 10:44 · Личное сообщение · #12 dxp пишет: которые мне влом компилять А зачем компилять-то. Для bochs есть готовая версия и даже с инсталлятором, по-моему. В поисковиках можно найти информацию на русском. Основная проблема с ним, что изначально он предназначен для Линукса и под Виндами его компильнуть - большая проблема. Simics - это эмулятор разных процессоров. Начинали они на Спарке(Solaris), теперь достаточно успешно эмулируют х86 и х86-64, Альфа, Итаниум, PPC, MIPS,ARM(!!!). Аппаратуру эмулируют на минимальнои уровне. Эмулятор у них платный, есть для Виндов и для Линукса. Т.к. используется питон, то можно свои примочки добавлять. ![]() |
|
Создано: 02 июня 2006 16:09 · Личное сообщение · #13 |
|
Создано: 03 июня 2006 10:39 · Личное сообщение · #14 |
|
Создано: 03 июня 2006 10:41 · Личное сообщение · #15 |
|
Создано: 03 июня 2006 16:37 · Личное сообщение · #16 Я могу сказать что OllyDbg абсолютно непригоден для полноэкранных приложений. Например для взлома игр.Потому что комп зависает намертво до тех пор,пока не выгрузишь процесс ollydbg.exe dxp пишет: Не, ну реально IsDebuggerPresent прячет не от всего, но со своими функциями он справляется кульно! Я пробовал много программ с ним,ни от одной не спрятал... Скорее всего это только для лажовых крякмисов срабатывает.Если автор проги более менее в трезвом уме,он наверняка предусмотрит защиту от отладки. Видел даже программы,которые в WinDASM не дизассемблируются... ![]() |
|
Создано: 03 июня 2006 19:05 · Личное сообщение · #17 dxp пишет: А плюс такой, что прога может прекратить ассемблирование в любой момент!!! Другое, более легкое предложение: можно написать криптовалку с наркоманским алгоритмом, и не надо никаких интерпретаторов. Или юзать - мега - протекторы. ----- Харе курить веники и нюхать клей, к вам едет из Америки бог Шива, и он еврей. ![]() |
|
Создано: 03 июня 2006 19:56 · Личное сообщение · #18 |
|
Создано: 05 июня 2006 10:08 · Личное сообщение · #19 |
|
Создано: 05 июня 2006 12:30 · Личное сообщение · #20 |
|
Создано: 05 июня 2006 15:05 · Личное сообщение · #21 А кто что может сказать про двойную отладку? Т.е. есть два процесса - отладчик и отлаживаемый(защищенный). Отлаживаемый процесс содержит мусорные инструкции (int3 и не только). Отладчик, как и положенно, сидит в цикле ожидания отладочных событий. Когда несколько раз возникает исключение int 3 родной процесс-отладчик должен вписать в код отлаживаемого процесса опкод на место int 3. Так вот, когда я запускаю прогу под Олей, получается, что у отлаживаемого процесса два отладчика, и по-ходу отладочные сообщения получает оля, а не родной процесс-отладчик. Вопрос, возможна ли отладка Олей такого добра? Дело в том, что процесс при отладке Олей падает в кому... P.S. речь про SafeDisk 4. SoftICE не вспоминать - я и так в нем благополучно отлаживаю, просто решил в ольке попробовать - и не получилось (антидебаг обошел). ----- Research is my purpose ![]() |
|
Создано: 05 июня 2006 15:11 · Личное сообщение · #22 |
|
Создано: 05 июня 2006 15:22 · Личное сообщение · #23 |
|
Создано: 05 июня 2006 16:20 · Личное сообщение · #24 Asterix пишет: глупость Так проще всего написать, лучше обьясни в чем тогда проблема: родной процесс-отладчик входит в WaitForDebugEvent с параметром INFINITE и никогда оттуда не возвращается, хотя по идее должен вернуться при получении отладочного события... До наномитов дело даже не доходит, все в кому падает раньше, чем управление попадает на ОЕР... Врядли антидебаг, поскольку когда SafeDisk палит отладчик он либо выдает месагу, либо завершается... Я долго экспериментировал с разными плагинами и опциями - результат один, кома... Просто я первый раз сталкиваюсь с таким случаем, неужто никто не копал SafeDisk в Оле? ----- Research is my purpose ![]() |
|
Создано: 05 июня 2006 16:24 · Личное сообщение · #25 |
|
Создано: 06 июня 2006 08:41 · Личное сообщение · #26 |
|
Создано: 06 июня 2006 15:36 · Личное сообщение · #27 |
|
Создано: 06 июня 2006 16:43 · Личное сообщение · #28 PE_Kill SafeDisk использует DebugAPI для работы, процесс-отладчик распаковывается в темп каталог, и оттуда запускается. Драйвер он тоже использует(например, для обнаружения SoftICE), но основную работу с обработкой наномитов и импортом делает dll процесса-отладчика в темп каталоге. Av0id Ничего удивительного, один из учасников этого форума (если захочет - сам отпишется) распаковал недавно NFSMW, полностью отковыряв оригинальный exe (т.е. тело прота снято полностью). Если постараться, то можно написать анпакер ![]() ----- Research is my purpose ![]() |
|
Создано: 06 июня 2006 19:49 · Личное сообщение · #29 |
|
Создано: 06 июня 2006 21:12 · Личное сообщение · #30 UnSafeDisc_46_by_ARTeam Да уж,автоматизация -- вещь,конечно,хорошая,но весьма привередливая. Мельком глянул исходник и что-то не заметил там самого главного -- обработки SDAPI,о которых писалось тут.А это сейчас самая актуальная начинка последних версий протектора. Попробовал сейчас распаковать две вещи этим распаковщиком -- NFSMW и The Godfather -- в обоих случаях падение с ошибкой доступа... Av0id пишет: вручную это вручную, а вот анпакер куда сложнее написать имхо ...полностью согласен,но что в данном случае более приемлимо -- руками создать распакованный рабочий файл или иметь фигу и ошибку с кодом C0000005 ?? Что же касается NFSMW,которую я намедни обесчестил,то можно сказать,что разработчики игр сами создают себе проблемы,оставляя такие дыры в защищаемых файлах.Следовательно трудность снятия протектора(полного снятия) зависит в данном случае скорее от прозорливости разработчиков,чем от версии протектора. ----- the Power of Reversing team ![]() |
. 1 . 2 . >> |
![]() |
eXeL@B —› Основной форум —› по поводу отладчиков |