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

 eXeL@B —› Протекторы —› Вопросы по Obsidium
<< . 1 . 2 .
Посл.ответ Сообщение

Ранг: 196.0 (ветеран), 72thx
Активность: 0.140.02
Статус: Участник

Создано: 08 ноября 2008 16:24 · Поправил: Модератор
· Личное сообщение · #1

Сегодня смотрел обсидиум на боликах.Впринципе ничё серьёзного не заметил и прогу распаковал,только осталось несколько вопросов.
В коде встречается динамическая раскриптовка вида:
004XXXXX 68 90000000 PUSH 90
004XXXXX FF15 E267C000 CALL DWORD PTR DS:[C067E2]
Это лечится бинарным копирование после расшифровки и занопливаем затем ненужных криптующих и раскриптующих call.
Ещё в коде встречается такое:
00793857 55 PUSH EBP
00793858 68 3E397900 PUSH 0079393E
0079385D 64:FF30 PUSH DWORD PTR FS:[EAX]
00793860 64:8920 MOV DWORD PTR FS:[EAX],ESP
00793863 FF15 E667C000 CALL DWORD PTR DS:[C067E6]
---------------------------------------------------------------------- ----------
тут мусор
---------------------------------------------------------------------- ----------
jmp на нормальный код

Весь этот мусор отрабатывает в секции протектора.Я никак чё-то не додумаюсь как эту хрень восстанавливать.С этой хернёй я боролся так: просто прилепил к дампу две секции протектора.Плюс конечно есть:не нужно востанавливать динамическую раскриптовку и прекрасно работают апи обсида.Возможно будет работать и регистрация.Не знаю не проверял.Но как-то не красиво получается,хочется обойтись без секций прота.Хотелось бы услышать кто как справляется с этим.

Далее нашёл апи обсида:
0054783C - FF25 983E9B00 JMP DWORD PTR DS:[9B3E98] ; \GetRegState
00547842 8BC0 MOV EAX,EAX
00547844 - FF25 943E9B00 JMP DWORD PTR DS:[9B3E94] ; \name
0054784A 8BC0 MOV EAX,EAX
0054784C - FF25 903E9B00 JMP DWORD PTR DS:[9B3E90] ; \trial day
00547852 8BC0 MOV EAX,EAX
00547854 - FF25 8C3E9B00 JMP DWORD PTR DS:[9B3E8C] ;
0054785A 8BC0 MOV EAX,EAX
0054785C - FF25 883E9B00 JMP DWORD PTR DS:[9B3E88] ; \CheckRegCode
Не могу понять нахера ещё одна апи.Для ключа что-ли?И как точно можно узнать что считывает каждая апи.Ну с CheckRegCode понятно:один раз считывается при проверке имени и ключа,а вот с остальными.....Трейсить эти апи в оригинале у меня не получается,слишком много исключений



Ранг: 196.0 (ветеран), 72thx
Активность: 0.140.02
Статус: Участник

Создано: 23 января 2009 19:49
· Личное сообщение · #2

Кто нибудь смотрел как в самом обсиде (в протекторе) убрать наг окно? Чёт застопорился на этом местеВообще чё-то у меня с этими наг окнами постоянные проблемы



Ранг: 1045.7 (!!!!), 31thx
Активность: 0.570
Статус: Участник

Создано: 24 января 2009 06:35
· Личное сообщение · #3

Djeck пишет:
Эта опция хоть как называется кто знает?.

Эта опция джек называется виртуализация ;) или вм кому как удобней
А наг убирается одним байтом



Ранг: 196.0 (ветеран), 72thx
Активность: 0.140.02
Статус: Участник

Создано: 24 января 2009 13:19
· Личное сообщение · #4

pavka пишет:
Эта опция джек называется виртуализация ;) или вм кому как удобней

Да я уже понял уже это виртуализация. Дело в том что она же появилась, только в 1.4 beta, а уменя этой версии не было. Только не давно скачал и увидел.
pavka пишет:
А наг убирается одним байтом

Возможно, но только где пропатчить найти не могу. Ты же вроде убирал наг, может подскажешь?



Ранг: 1045.7 (!!!!), 31thx
Активность: 0.570
Статус: Участник

Создано: 24 января 2009 15:58
· Личное сообщение · #5

Схема убирания нагов пракический всегда одинова! Протектишь екзешник, находишь функу нага. Открывешь в дебагере прот суешь ему екзешник для протекта , и в любом удобном месте когда стаб записан , до компрессии, правишь функу любым удобным для тебя способом ( изменяешь аргументы, нопишь и т.п)



Ранг: 196.0 (ветеран), 72thx
Активность: 0.140.02
Статус: Участник

Создано: 25 января 2009 05:42 · Поправил: Djeck
· Личное сообщение · #6

pavka пишет:
Схема убирания нагов пракический всегда одинова! Протектишь екзешник, находишь функу нага. Открывешь в дебагере прот суешь ему екзешник для протекта , и в любом удобном месте когда стаб записан , до компрессии, правишь функу любым удобным для тебя способом ( изменяешь аргументы, нопишь и т.п)

Ёпанный я ландух. Я же таким макаром раз пятьдесят это место находил:
003908CB 6A 10 PUSH 10
003908CD 50 PUSH EAX
003908CE 51 PUSH ECX
003908CF 6A 00 PUSH 0
003908D1 68 8E5D2D57 PUSH 572D5D8E
003908D6 6A 01 PUSH 1
003908D8 FF53 18 CALL DWORD PTR DS:[EBX+18]
В мусоре, когда нопил верхний Push 10 не зацепил, поэтому прога падала. Всё pavka спасибо за наводку, убрал наг.


<< . 1 . 2 .
 eXeL@B —› Протекторы —› Вопросы по Obsidium
Эта тема закрыта. Ответы больше не принимаются.
   Для печати Для печати