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

 eXeL@B —› Протекторы —› UnDefined aspr
Посл.ответ Сообщение

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

Создано: 18 декабря 2005 21:10
· Личное сообщение · #1

Посоветуйте 4то делать (версию аспра и способ борьбы с ним)

Пеид показывает: ASProtect v1.2x (New Strain) *
На OEP выдает:

0053BE6C > $ E8 8F413701 CALL 018B0000
0053BE71 DB DB DB
0053BE72 $ E8 89413701 CALL 018B0000
0053BE77 C6 DB C6
0053BE78 E8 DB E8
0053BE79 83 DB 83
0053BE7A 41 DB 41 ; CHAR 'A'
0053BE7B 37 DB 37 ; CHAR '7'
0053BE7C 01 DB 01
0053BE7D CD DB CD
0053BE7E $-FF25 38146000 JMP DWORD PTR DS:[601438] ; kernel32.GetProcAddress
0053BE84 $-FF25 3C146000 JMP DWORD PTR DS:[60143C] ; kernel32.GetProcessHeap
0053BE8A $ E8 71413701 CALL 018B0000
0053BE8F 30 DB 30 ; CHAR '0'
0053BE90 $ E8 6B413701 CALL 018B0000

Если это Stolen Byte, то аспр должен быть > 1.23, а на вид сходится с >=2.0

-----
HOW MUCH BLOOD WOULD YOU SHED TO STAY ALIVE




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

Создано: 19 декабря 2005 00:05
· Личное сообщение · #2

ну 4е, мож ответит кто? 4то это за дрянь на OEP вместо stolen bytes или полезного кода? 4то с ней делать?

-----
HOW MUCH BLOOD WOULD YOU SHED TO STAY ALIVE




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

Создано: 19 декабря 2005 00:31
· Личное сообщение · #3

Делать нужно следующее - для начала верно найти OEP, потом часть вопросов отпадет сама собой.



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

Создано: 19 декабря 2005 02:28
· Личное сообщение · #4

inferno_mteam пишет:
для начала верно найти OEP,


странно, но я имхо все верно нашел (last exception -> bp on access codesection)
а 4то за версия-то (ASProtect v1.2x (New Strain) *
), кто встре4ал?

-----
HOW MUCH BLOOD WOULD YOU SHED TO STAY ALIVE




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

Создано: 19 декабря 2005 05:39
· Личное сообщение · #5

На OEP выдает:
0053BE6C > $ E8 8F413701 CALL 018B0000
Не факт, что это ОЕР. Но код, очень похож по 2-й Аспр. Чтобы точно сказать, нужна ссылка на прогу.



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

Создано: 19 декабря 2005 17:03
· Личное сообщение · #6

програ = 4ат CommFort v2.01
www.commfort.com/download/commfort_client.zip

-----
HOW MUCH BLOOD WOULD YOU SHED TO STAY ALIVE




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

Создано: 20 декабря 2005 07:04 · Поправил: tar4
· Личное сообщение · #7

У меня Peid показывает Asprotect 2.1.x SE и я склонен этому доверять.
ProTeuS пишет:
0053BE6C > $ E8 8F413701 CALL 018B0000
0053BE71 DB DB DB

Этот код находится в секции кода. А его начало раньше, где-то здесь:
00CD2354 MOV EBP,4811DE
00CD2359 ROL EBP,8B
00CD235C LEA EBP,[DWORD DS:EDI+EAX]
00CD235F SUB EBP,57
00CD2362 MOV EBP,43D2E6
... и далее. По-моему это эмуляция команды Push EBP. А далее эмулируются и другие команды. Если
трассировать дальше, приходим на первый вызов ВМ (014C02CC CALL 01540000).
Так что все это подтверждает, это 2-й Аспр. И еще. Обнови сигнатуры Peid.




Ранг: 793.4 (! !), 568thx
Активность: 0.740
Статус: Участник
Шаман

Создано: 20 декабря 2005 07:30
· Личное сообщение · #8

ProTeuS
Судя по коду это второй АСПР, прога написана на делфи и у нее сперта таблица иничиализации...

-----
Yann Tiersen best and do not fuck





Ранг: 332.0 (мудрец)
Активность: 0.180
Статус: Участник
•Pr0tEcToRs KiLLeR•

Создано: 20 декабря 2005 12:04
· Личное сообщение · #9

ну если продолжить сложившуюся в этом топике традицию гадания, то я бы сказал, что, с учётом "last exception -> bp on access codesection" и приведённого куска и "прога написана на делфи", по адресу 0053BE6C должен быть JMP DWORD PTR DS:[iat] ; GetModuleHandleA =)))



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

Создано: 20 декабря 2005 12:09 · Поправил: tar4
· Личное сообщение · #10

Mario555 пишет:
MP DWORD PTR DS:[iat] ; GetModuleHandleA

Точно. Первая, по ходу, АПИ-функция.
ProTeuS пишет:
версию аспра и способ борьбы с ним

А на счет борьбы, даже не знаю, что ответить. Задавай конкретные вопросы. На счет версии тебе ответили. ОЕР - "размазано" по коду, то, что приведено выше, этот код уже после ОЕР.



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

Создано: 21 декабря 2005 01:24
· Личное сообщение · #11

tar4 пишет:
Задавай конкретные вопросы

где дампить? вродь конкретный вопрос ;)
тоесть мне нужно дампить на OEP, а при бряке на доступ к секции кода OEP уже пройдена? Или можно на
0053BE6C? Тогда как потом восстановить украденый код?

ЗЫ: буду благодарен за ссылку на новые сигнатуры к пеиду (у меня базовая 0.93 версия)

-----
HOW MUCH BLOOD WOULD YOU SHED TO STAY ALIVE




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

Создано: 21 декабря 2005 05:47
· Личное сообщение · #12

ProTeuS пишет:
за ссылку на новые сигнатуры к пеиду

Я брал где-то здесь, на форуме, в одном из топиков была ссылка.
ProTeuS пишет:
Или можно на 0053BE6C?

Можно. А затем еще сдампить регион, в котором расположен "размазанный" ОЕР и прицепить его к дампу.
ProTeuS пишет:
Тогда как потом восстановить украденый код

Мне кажется, в данном случае его не надо восстанавливать (по крайней мере я этого не делал).
Проще сделать так: ЕР проги (это уже относится к твоему дампу) указываешь какое-нибудь пустое место
в конце секции кода. А в нем jmp [адрес начала "размазанного" кода] .




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

Создано: 21 декабря 2005 09:46
· Личное сообщение · #13

ProTeuS пишет:
буду благодарен за ссылку на новые сигнатуры к пеиду (у меня базовая 0.93 версия)

Посмотри в аттаче от Ara на странице http://exelab.ru/f/action=vthread&forum=3&topic=3209 Думаю, поможет...

-----
Сколько ни наталкивали на мысль – все равно сумел увернуться




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

Создано: 21 декабря 2005 14:51
· Личное сообщение · #14

ValdiS пишет:
Посмотри в аттаче от Ara на странице http://exelab.ru/f/action=vthread&forum=3&topic=3209 Думаю, поможет...


пасибЪ - ска4ал

-----
HOW MUCH BLOOD WOULD YOU SHED TO STAY ALIVE




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

Создано: 21 декабря 2005 14:55
· Личное сообщение · #15

tar4 пишет:
Можно. А затем еще сдампить регион, в котором расположен "размазанный" ОЕР и прицепить его к дампу.

а как его искать? trace и смотреть лог?

tar4 пишет:
Тогда как потом восстановить украденый код
Мне кажется, в данном случае его не надо восстанавливать (по крайней мере я этого не делал).
Проще сделать так: ЕР проги (это уже относится к твоему дампу) указываешь какое-нибудь пустое место
в конце секции кода. А в нем jmp [адрес начала "размазанного" кода] .

тоесть сделать своеобразную таблицу переходов...понял

-----
HOW MUCH BLOOD WOULD YOU SHED TO STAY ALIVE




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

Создано: 22 декабря 2005 05:21
· Личное сообщение · #16

ProTeuS пишет:
а как его искать? trace и смотреть лог?

По-моему в последнем Call, после прохождения последнего исключения.
Начало 00CD2354 MOV EBP,4811DE.
Адреса у тебя будут другие, опкод - тот же.



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

Создано: 22 декабря 2005 11:58
· Личное сообщение · #17

(сильно не пинать - я только начинающий) скрипт из статьи практически всегда находит ОЕП, а по поводу восстановления данных спертых инструкций - скрипты из статьи у меня вообще не пошли, поэтому свой написал (его если знаешь как - писать не более 30 минут, скрипт где-то за секунд 10 восстанавливает 70 инструкций ), да и на форуме уже разобрали подробно 2-й аспр

-----
Само плывет в pуки только то, что не тонет.




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

Создано: 22 декабря 2005 12:14
· Личное сообщение · #18

DrFits пишет:
Cкрипт где-то за секунд 10 восстанавливает 70 инструкций

Наверное, речь идет об восстановлении импорта?



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

Создано: 22 декабря 2005 12:28
· Личное сообщение · #19

tar4 пишет:
Наверное, речь идет об восстановлении импорта?
- так эти инструкции надо привести к виду JMP DWORD PTR DS:[ xxx ]

-----
Само плывет в pуки только то, что не тонет.




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

Создано: 22 декабря 2005 12:47
· Личное сообщение · #20

DrFits пишет:
эти инструкции надо привести к виду JMP DWORD PTR DS:[ xxx ]

Это я знаю. Там не только это надо менять. Я не совсем понял твой ответ и поэтому уточнял.



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

Создано: 22 декабря 2005 12:54
· Личное сообщение · #21

tar4 пишет:
Там не только это надо менять
- а что ещё? кроме того что - сдампить нужные участки памяти и прикрутить их к общему дампу?

-----
Само плывет в pуки только то, что не тонет.




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

Создано: 22 декабря 2005 13:55
· Личное сообщение · #22

DrFits пишет:
а что ещё?

Ну, во-первых, решение проблемы VM. Во-вторых, решение вопроса имитации вызова Call EAX (ну или другого регистра). Там их более 100 вызовов в различные участки кода. Ну и далее, есть и другие вопросы, требующие их решения. Кстати, не знаешь, как проще изменить размер кучи? Аспр динамически увеличивает ее размер, а потом обращается к ней.


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


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