Сейчас на форуме: _MBK_, ut2004, vsv1 (+6 невидимых)

 eXeL@B —› Вопросы новичков —› Как разобратся в бреду?)
Посл.ответ Сообщение

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

Создано: 02 февраля 2007 14:12
· Личное сообщение · #1

После некоторых действий прога джампится на кусок кода который можно посмотреть в аттаче, но там ьред какой-то =)
Мне нужно понять что там происходит... Но я не понимаю как в этом бреде можно разобратся))
Как в таких случаях следует поступать и т.д.
Help plz =)

c4e2_02.02.2007_CRACKLAB.rU.tgz - Code.jpg



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

Создано: 02 февраля 2007 14:32
· Личное сообщение · #2

читай туторы по снятию xпрота и картинки учись сжимать.




Ранг: 107.6 (ветеран)
Активность: 0.110
Статус: Участник

Создано: 02 февраля 2007 15:17
· Личное сообщение · #3

gegter пишет:
картинки учись сжимать.

Ага! А еще с подобными вопросами в "новички" - нечего им на основном подфоруме делать...

-----
программистом не рождаются - им умирают




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

Создано: 03 февраля 2007 02:33
· Личное сообщение · #4

gegter пишет:
читай туторы по снятию xпрота.

Почему ты решил что это какой-то протектор?
Сам волкер я уже давно распаковал.
То что ты видишь на скрине приходит от сервера и причем каждый раз приходит разный код)
Или ты имеешь ввиду что хпрот как-то аналогично действует?



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

Создано: 03 февраля 2007 05:32 · Поправил: tundra37
· Личное сообщение · #5

KilUSlf пишет:
Сам волкер я уже давно распаковал.
То что ты видишь на скрине приходит от сервера и причем каждый раз приходит разный код)

От сервера приходит исполняемый код - не смеши. Скорее всего ты что-то неправильно распаковал.
1000хххх - это адрес в DLL. Раз код разный - значит код на входе ее неправильно распаковывает и берет мусор откуда-то. Причем здесь сервер ?! Конечно бывает, что апдейтят, но явно, а не через



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

Создано: 03 февраля 2007 05:47
· Личное сообщение · #6

писали, что на валкере висит termida, я проверить не могу, т.к. надо качать 13 метров. по скрину мало, что скажешь. одно ясно - ты в dll.



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

Создано: 03 февраля 2007 06:07
· Личное сообщение · #7

tundra37 пишет:
От сервера приходит исполняемый код - не смеши. Скорее всего ты что-то неправильно распаковал.
1000хххх - это адрес в DLL. Раз код разный - значит код на входе ее неправильно распаковывает и берет мусор откуда-то. Причем здесь сервер ?! Конечно бывает, что апдейтят, но явно, а не через

Это модифицированный волкер. Я писал свой снифер, смотрел в нем пакеты, то что на скрине в прямом виде соответствует тому что приходит от сервера =) И еще я нашел функцию которая данные с сервера в память записывает) Еще я знаю что прежде чем с сервера приходит этот кусок кода ему отпраявлется смещение в памяти где это кусок кода будет (что бы сервер сгенерировал правельный код)

gegter пишет:
писали, что на валкере висит termida, я проверить не могу, т.к. надо качать 13 метров. по скрину мало, что скажешь. одно ясно - ты в dll.

Да нету там никакой крутой защиты, после запуска волкера по нему можно спакойно трейсится =) Облом только после того как на этот кусок кода попадаешь.



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

Создано: 03 февраля 2007 06:22
· Личное сообщение · #8

gegter пишет:
писали, что на валкере висит termida

В старых версиях PEArmor, в какойто 10.7.* themida а в остальных Aspotect



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

Создано: 03 февраля 2007 06:51
· Личное сообщение · #9

2 Veliant:
Не заморачивайтесь на то что там =)

Давайте будем считать, что утверждение "KilUSlf правельно распаковал волкера" верно.




Ранг: 107.6 (ветеран)
Активность: 0.110
Статус: Участник

Создано: 03 февраля 2007 07:46 · Поправил: Gambit
· Личное сообщение · #10

Ага, а давайте будем считать, что утверждение "KilUSlf решил свою проблему и с благодарностями откланялся" верно

-----
программистом не рождаются - им умирают




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

Создано: 03 февраля 2007 08:14
· Личное сообщение · #11

2 Gambit:

Если вашему форуму будет так угодно, то пожалуйста.




Ранг: 107.6 (ветеран)
Активность: 0.110
Статус: Участник

Создано: 03 февраля 2007 12:27
· Личное сообщение · #12

KilUSlf пишет:
Если вашему форуму будет так угодно,

Нашему форуму - ты тоже его часть и вообще: или уточняй проблему или закрывай тему, флуд развел тут

-----
программистом не рождаются - им умирают




Ранг: 495.3 (мудрец)
Активность: 0.30
Статус: Участник

Создано: 03 февраля 2007 22:35
· Личное сообщение · #13

Gambit, не стоит устраивать перебранку... И кстати, флуда в этой теме больше всего от тебя ;).

-----
Всем привет, я вернулся




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

Создано: 03 февраля 2007 23:40
· Личное сообщение · #14

KilUSlf пишет:
Облом только после того как на этот кусок кода попадаешь.

Вариантов все равно куча :
1) версия клиента и сервера не совпадает и они не понимают друг друга.
2) защита в шифровании кода и нужно знать "ключ"
3) ты попался на хитрый антиотладочный прием - тогда без отладчика должно работать.
4) распаковал все-таки неправильно и данные попадают на место команд. Это легко проверить, если кусок кода до затирания был "разумным".
Версия, что клиент расшифровывает код на лету сомнительна с чисто практической точки зрения - замедление работы. Если же расшифровка производится до "игры", тогда все возможно.
Без сравнения с правильно работающей версией боюсь тебе не справиться.



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

Создано: 04 февраля 2007 02:22 · Поправил: KilUSlf
· Личное сообщение · #15

2 tundra37:
Без отладчика все работает, если пытаешься с отладчиком пройти то выкидывает в ntdll с эксепшеном и там зависает.
Тоесть это вариант номер три... Что посоветуете?

Кстате волкер тут вообще не причем =) Могу на самом ла2 клиенте вам тоже самое показать.
Только я джамп в клиенте на этот код найти не могу... Но могу найти возврат из call'a на этот кусок кода, после этого там можно отладчиком гулять.



Ранг: 495.3 (мудрец)
Активность: 0.30
Статус: Участник

Создано: 04 февраля 2007 07:00
· Личное сообщение · #16

KilUSlf пишет:
Тоесть это вариант номер три... Что посоветуете?

Прежде всего приатачится и не ставить int3 бряки (железные попробовать).
Если поможет, то возможно CRC кода участвует в формировании...
Приатач пожалуйста PNG сохранённый в PhotoShop'e через Save for Web (цветов как можно меньше, типа 4 =).
Тогда многие глянут на этот странный мусор (и я в том числе).

-----
Всем привет, я вернулся




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

Создано: 04 февраля 2007 22:34
· Личное сообщение · #17

KilUSlf пишет:
Что посоветуете?

1) Сделать attach и посмотреть это кусок(адрес) до перехода в него из клиента.
2) Вроде говорили, что в 10.8 apsr Вчера прочел, что плаг IsDebugPresent ->Hide помогает против аспра - попробуй. И почитай про антиотладку в аспре.
3) Это аксиома для меня : ставить железные бряки, если дурить начинает и как последнее - бряк на память по выполнению. Последнее помогает, когда не срабатывает железный. Почему не знаю, но помогало.



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

Создано: 05 февраля 2007 03:36
· Личное сообщение · #18

2 tundra37, Bitfry:
Ага, спс =) int3 бряки не рулят....
А железные бряки это как?) Всегда думал что железный бряк это и есть на память на выполнение =)

Прошу модераторов тему удалить)




Ранг: 240.5 (наставник)
Активность: 0.190
Статус: Участник
Author of ACKiller

Создано: 05 февраля 2007 03:47
· Личное сообщение · #19

tundra37 пишет:
не срабатывает железный.

Отлаживаемая прога имеет доступ к Hardware регистрам на момент обработки исключения. Большинство протов просто обнуляют их, некоторые используют их для создания своих исключений.

Бряк на память - вызов VirtualProtectEx(NO_ACCESS) на страницу с данным блоком памяти. При обращении к этой странице возникает исключение, которое обрабатывается отладчиком. Обход - вызов в самой проге VirtualProtect.

KilUSlf пишет:
Всегда думал что железный бряк это и есть на память на выполнение =)

Даже с практической точки зрения - hardware можно установить только 4 штуки и размером только 1, 2, 4 байта. Бряк на память же ставится с любым размером и в любом количестве. При этом с такими бряками прога начинает ОЩУТИМО тормозить.



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

Создано: 05 февраля 2007 05:10
· Личное сообщение · #20

Еще один вопрос =) Можно что бы Олька исполнила код с полным логом всех инструкций? Скорость не критична.
Мб плагин специальный есть или еще чего-нибудь...



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

Создано: 05 февраля 2007 05:34 · Поправил: gegter
· Личное сообщение · #21

оля сама это умеет делать - трэйсить называется, щас выпустил кто-то не помню кто TraceExpand - почитай последние темы форума и найдешь. он записывает регистры и etc

а чтоб тебя не палили юзай HideToolz - тож в последних темах - и скрывай олю




Ранг: 240.5 (наставник)
Активность: 0.190
Статус: Участник
Author of ACKiller

Создано: 05 февраля 2007 06:33
· Личное сообщение · #22

Плагин пребывает в стадии разработки:
http://exelab.ru/f/action=vthread&forum=7&topic=7355



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

Создано: 06 февраля 2007 02:13
· Личное сообщение · #23

KilUSlf пишет:
А железные бряки это как?)

Hardware on execution


 eXeL@B —› Вопросы новичков —› Как разобратся в бреду?)
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


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