Сейчас на форуме: _MBK_ (+5 невидимых) |
![]() |
eXeL@B —› Вопросы новичков —› Антиотладка |
Посл.ответ | Сообщение |
|
Создано: 30 октября 2010 19:55 · Личное сообщение · #1 Всем привет! Есть игра Ragnarok. В клиенте реализована защита с помощью dll. При выборе ее в Olly Debug попадаю на модуль ntdll 775F1D78. Также хотел посмотреть список функций, реализованных в dll с помощью DLL Export Viewer. Увидел только одну функцию dummy(наводит на мисль, что реальные функции спрятали). Подскажите пожалуйста как можно обойти данные ограничения, и каким образом они реализованы. Модуль защиты в аттаче. ![]() ![]() |
|
Создано: 30 октября 2010 20:01 · Поправил: HiEndsoft · Личное сообщение · #2 UPX снимите и радуйтесь. Декомпильнутая в аттаче. DeleteFileA("ws2_32.dll"); - в DllMain наводит на мысли... Ну и IsDebuggerPresent там же. ![]() ----- продавец резиновых утёнков ![]() |
|
Создано: 30 октября 2010 20:24 · Личное сообщение · #3 HiEndsoft, спасибо большое за проделанную работу. ![]() upx.exe -d protect.dll В результате получил dll размером побольше чем оригинал, чего и следовало ожидать. Потом опробовал открыть ее в Olly Debug и DLL Export Viewer. Результат оказался таким же как и в первом сообщении. Почему так? DLL со снятым мною upx в аттаче. P.S. Я только начинаю изучать отладку. Посоветуйте пожалуйста, с прочтения чего стоит начинать. ![]() ![]() |
|
Создано: 30 октября 2010 20:27 · Поправил: HiEndsoft · Личное сообщение · #4 Dynamic пишет: Посоветуйте пожалуйста, с прочтения чего стоит начинать. Поставьте на олю для начала фантом хотя бы. Вот распакованая dll. В импорте все видно. И пользуйтесь Dependency Walker. DeleteFileA("ws2_32.dll"); - в DllMain - реально напрягает ![]() ![]() ----- продавец резиновых утёнков ![]() |
|
Создано: 30 октября 2010 20:37 · Личное сообщение · #5 |
|
Создано: 30 октября 2010 20:51 · Личное сообщение · #6 HiEndsoft, а каким отладчиком пользовались Вы для данной ситуации? IDA PRO? Распакованая dll в Olly Debug ведет себя также. Потом поставлю плагин phantom и попробую еще раз. Если я верно понял, то данный плагин для скрытия отладки. Верно? Какая мотивация могла быть у разработчиков защиты, чтоб удалять ws2_32.dll в папке клиента? Исключение подмены системной dll? За Dependency Walker спасибо. Это аналог DLL Export Viewer? Также посоветуйте пожалуйста книги, статьи, сайты для повышения знаний в отладке программ. ![]() |
|
Создано: 30 октября 2010 20:56 · Личное сообщение · #7 |
|
Создано: 30 октября 2010 21:02 · Личное сообщение · #8 |
|
Создано: 30 октября 2010 21:06 · Поправил: Maximus · Личное сообщение · #9 BoRoV А че в старике такого, чего нельзя сломать (смотри подпись)? Основная система: от простого к сложному, китайская - от сложного простого. Пусть пробует, если сломает, то будет крушить все остальное. Dynamic ломать dll очень долго потому как там висит виртуальная машина. Легче наверное сделать инлайн патч что бы прога думала всегда что вставлен лицензионный диск. Я бы на твоем месте нашел любую NOCD игру с такой же dll но сломанной и посмотрел бы как там сделано. С вероятностью 90% на твоей игре прокатит тоже самое, но, может быть, с небольшими вариациями. ----- StarForce и Themida ацтой! ![]() |
|
Создано: 30 октября 2010 21:10 · Личное сообщение · #10 |
|
Создано: 30 октября 2010 21:12 · Личное сообщение · #11 |
|
Создано: 30 октября 2010 21:17 · Личное сообщение · #12 Maximus, если я правильно понимаю, StarForce это система защиты от незаконного копирования. Данная мною dll шифрует трафик, защищает от перехвата трафика сниферами, внедрения сторонних библиотек в процесс, модификаций игрового файла. То есть защиты от незаконного копирования там нет. Или я что-то не верно понял? ![]() |
|
Создано: 30 октября 2010 21:34 · Личное сообщение · #13 |
|
Создано: 31 октября 2010 00:50 · Личное сообщение · #14 Dynamic protect.dll 1. Распаковывает файл 2. В ней хранится некоторое количество критичных процедур защищенной программы, которые обрабатываются в вм, а это делает что то другое, например сама игра... >шифрует трафик, защищает от перехвата трафика сниферами, внедрения сторонних библиотек в процесс ----- StarForce и Themida ацтой! ![]() |
|
Создано: 31 октября 2010 13:19 · Поправил: Coderess · Личное сообщение · #15 |
|
Создано: 31 октября 2010 16:18 · Личное сообщение · #16 |
|
Создано: 31 октября 2010 19:52 · Личное сообщение · #17 Maximus, на счет того что данная dll распаковывает файл - правда. Бинарник игры обычно весит 3-4 мб. А в моем случае 9. У разработчиков защиты есть возможность заказать вариант защиты с лоадером. Видимо для удобности замены бинарника игры(?). Что значит "которые обрабатываются в вм"? вм = виртуальная машина? Дайте пожалуйста намек(ссылку) где можна про это почитать. ![]() |
|
Создано: 01 ноября 2010 09:11 · Поправил: Maximus · Личное сообщение · #18 Coderess я не написал "снять", я написал "сломать". Я, например, просто добавлял в импорт protect.dll свою dll, и делал таким способом универсальный кряк (по сигнатруам) Dynamic информация по ВМ=виртуальной машине закрытая инфа. Сам я ее не ковырял, считаю что сломать старика можно и не разбирая ВМ. ----- StarForce и Themida ацтой! ![]() |
|
Создано: 01 ноября 2010 16:21 · Личное сообщение · #19 |
|
Создано: 02 ноября 2010 08:34 · Личное сообщение · #20 Coderess пишет: Ну раз для вас так легко снять старфорс, тогда пустить инфу в массы, напишите статью, давно не было новых Никакого смысла в этом нет. ![]() Maximus пишет: информация по ВМ=виртуальной машине закрытая инфа. Сам я ее не ковырял, считаю что сломать старика можно и не разбирая ВМ. +1 Dynamic пишет: то есть ВМ это дополнительная защита StarForce ну как сказать...вм юзают те кому не в лом юзать маркеры, правильно навесить защиту тоже нужно уметь, некоторые разрабы почему-то этим принебрегают....в вашем случае не знаю, не смотрел, по одному файлу protect.dll не скажешь, нужен как минимум ещё exe. P.S.: подобные топики заканчиваются грозным рыком арчи, а потом закрываются ибо это очередной флудотопик... Dynamic поищи по форуму и в нете, инфы по стару и подобных тем хватает для того, чтобы вникнуть немного. ![]() |
|
Создано: 02 ноября 2010 10:54 · Личное сообщение · #21 |
|
Создано: 03 ноября 2010 05:47 · Поправил: Dynamic · Личное сообщение · #22 |
|
Создано: 03 ноября 2010 08:40 · Поправил: BoRoV · Личное сообщение · #23 Dynamic пишет: Заметил что при загрузке любой программы в Olly Debug, происходит останов в ntdll(Paused). Я сижу под Win7 x64. Подскажите пожалуйста в чем дело и возможные пути решения проблемы. Видимо у тебя в Options->Events->Make first pause at стоит System Breakpoint, нужно сменить на Entry point of main module ----- Лучше быть одиноким, но свободным © $me ![]() |
|
Создано: 03 ноября 2010 09:58 · Личное сообщение · #24 |
|
Создано: 04 ноября 2010 04:14 · Поправил: Dynamic · Личное сообщение · #25 |
![]() |
eXeL@B —› Вопросы новичков —› Антиотладка |