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

 eXeL@B —› Основной форум —› ExeCryptor 2.0.x - 2.3.x OEP finder script by HAGGAR
Посл.ответ Сообщение

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

Создано: 25 апреля 2007 03:45
· Личное сообщение · #1

haggar
Some time ago I was trying to make script that would reach OEP in ExeCryptor targets. I didn't finish it but this one should bypass all tricks in EC targets so after running it you should be able to run any EC target (maybe not the 2.3.9 , I'm not sure for that one) under Olly. Script should also give you clue how to avoid all tricks in EC manually. Note that script patches some APIs and if target crushes than it is not that EC has detected you, but just application wanted to use those APIs. It never happened to me, but it is possible.

916f_24.04.2007_CRACKLAB.rU.tgz - ExeCryptor 2.0.x - 2.3.x OEP finder script by HAGGAR.txt




Ранг: 199.9 (ветеран), 4thx
Активность: 0.120.02
Статус: Участник

Создано: 25 апреля 2007 08:14
· Личное сообщение · #2

Неплохой скрипт. OEP, правда, у меня ни на одной проге не нашел, но антидебаг на чистой Оле фиксит хорошо.



Ранг: 284.8 (наставник), 6thx
Активность: 0.150
Статус: Участник

Создано: 25 апреля 2007 09:50
· Личное сообщение · #3

YDS
+1



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

Создано: 25 апреля 2007 09:57
· Личное сообщение · #4

YDS пишет:
у меня ни на одной проге не нашел

Как выглядит ОЕП к примеру ,в твоем представлении , в самом ExeCryptor 2.3.9 т.е что дожен найти скрипт?




Ранг: 199.9 (ветеран), 4thx
Активность: 0.120.02
Статус: Участник

Создано: 25 апреля 2007 10:20
· Личное сообщение · #5

pavka
OEP в моем представлении - это OEP ;) - адрес, с которого начинает выполняться распакованная программа, а не адрес в API, на котором тормозит скрипт.



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

Создано: 25 апреля 2007 11:54
· Личное сообщение · #6

YDS пишет:
OEP в моем представлении - это OEP ;) - адрес, с которого начинает выполняться распакованная программа,

Подробней с какого адреса? У HAGGAR начинается к примеру
004D2AB8 -E9 81560D00 JMP EXECrypt.005A813E
004D2ABD 45 INC EBP
004D2ABE 91 XCHG EAX,ECX ; EXECrypt.005A8100
004D2ABF 3D 6F43525F CMP EAX,5F52436F
004D2AC4 35 92C3E6E9 XOR EAX,E9E6C392
004D2AC9 DA87 0900D6AD FIADD DWORD PTR DS:[EDI+ADD60009]
004D2ACF 9E SAHF
004D2AD0 D7 XLAT BYTE PTR DS:[EBX+AL]



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

Создано: 25 апреля 2007 14:21
· Личное сообщение · #7

На свежей версии прота абсолютно бесполезный скрипт, EP самого прота показывает и завершается.




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

Создано: 25 апреля 2007 14:31
· Личное сообщение · #8

Spate
А ты все сделал как написано в комментариях?

-----
Тут не могла быть ваша реклама





Ранг: 199.9 (ветеран), 4thx
Активность: 0.120.02
Статус: Участник

Создано: 25 апреля 2007 15:42
· Личное сообщение · #9

pavka пишет:
Подробней с какого адреса? У HAGGAR начинается к примеру

У меня останавливается на адресе 77xxxxx, т.е. в системной библиотеке. Пробовал на: iuVCR, WMV Direct, DBF Viewer 2000, Advanced Diary.
Ну да и ладно, для меня в функционале скрипта важнее фикс антиотладки. С распаковкой сабжа сильно никогда не заморачивался - всегда проще и надежнее заинлайнить; будет нужно до OEP и руками дойду.



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

Создано: 25 апреля 2007 16:46
· Личное сообщение · #10

lord_Phoenix пишет:
А ты все сделал как написано в комментариях?

Отож Сначала тестил на своей патченой ольке которую самые свежие версии гпрота не детектят, потом распаковал чистую, запустил ольку, поставил стопиться на System breakpoint, почекал все эксепшены, добавил C000001E, запустил, убрал олькин брял, пустил скрипт и... ничего
Попробуй на чем-нибудь свежем, может у тебя заработает

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

У меня стопится в дебрях ntdll.
Как дойти до STOLEN_OEP_CODE руками ? на soc попасть немогу, а попадаю только на код после...




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

Создано: 25 апреля 2007 16:50
· Личное сообщение · #11

Spate пишет:
Попробуй на чем-нибудь свежем, может у тебя заработает

Да, на самом свежем не работает
YDS пишет:
Ну да и ладно, для меня в функционале скрипта важнее фикс антиотладки. С распаковкой сабжа сильно никогда не заморачивался - всегда проще и надежнее заинлайнить; будет нужно до OEP и руками дойду.

Солидарен

-----
Тут не могла быть ваша реклама




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

Создано: 25 апреля 2007 18:29
· Личное сообщение · #12

YDS пишет:
будет нужно до OEP и руками дойду.

Инлайн оставим в покое ;) К примеру в твоем списке Advanced Diary что в ней оеп или столен оеп как ты будешь доходить что в ней считать оеп с какого места начинает выполняться распакованная программа
прога не Борланд си ....
006AC404 68 28EB7F00 PUSH Advanced.007FEB28 ; ASCII "___CPPdebugHook"
006AC409 6A 00 PUSH 0
006AC40B E8 26DD0E00 CALL Advanced.0079A136 ; JMP to kernel32.GetModuleHandleA
006AC410 50 PUSH EAX ; Advanced.00400000
006AC411 E8 32DD0E00 CALL Advanced.0079A148
может это принять
00B34ACB /EB 10 JMP SHORT Advanced.00B34ADD
00B34ACD |66:623A BOUND DI,DWORD PTR DS:[EDX]
00B34AD0 |43 INC EBX
00B34AD1 |2B2B SUB EBP,DWORD PTR DS:[EBX]
00B34AD3 |48 DEC EAX
00B34AD4 |4F DEC EDI
00B34AD5 |4F DEC EDI
00B34AD6 |4B DEC EBX
00B34AD7 |90 NOP
00B34AD8 -|E9 00401DE9 JMP E9D08ADD
00B34ADD -\E9 00330B59 JMP 59BE7DE2
или это
005002A0 55 push ebp
005002A1 8BEC mov ebp,esp
005002A3 83C4 F4 add esp,-0C
005002A6 53 push ebx
005002A7 56 push esi
005002A8 57 push edi
005002A9 8B75 08 mov esi,dword ptr ss:[ebp+8]
005002AC 8B46 10 mov eax,dword ptr ds:[esi+10]
в отношении криптора это место чисто гипотетическое....




Ранг: 199.9 (ветеран), 4thx
Активность: 0.120.02
Статус: Участник

Создано: 25 апреля 2007 19:03
· Личное сообщение · #13

pavka пишет:
К примеру в твоем списке Advanced Diary что в ней оеп или столен оеп как ты будешь доходить что в ней считать оеп с какого места начинает выполняться распакованная программа
прога не Борланд си ....

Ничего не понял. Это вопросы? Хоть бы знаки препинания расставил ;)
Задачу дойти до OEP в этой проге я и не ставил - просто констатировал, что у меня он останавливается на адресе в ntdll - кино, если интересно, в аттаче.


b03a_25.04.2007_CRACKLAB.rU.tgz - Haggar_script.RAR



Ранг: 74.4 (постоянный)
Активность: 0.050
Статус: Участник

Создано: 25 апреля 2007 19:37
· Личное сообщение · #14

YDS
pavka имелл ввиду что для криптора ОЕП можеш выбрать где угодно там кагбы ОЕП очень уж размазаное понятие.




Ранг: 199.9 (ветеран), 4thx
Активность: 0.120.02
Статус: Участник

Создано: 25 апреля 2007 19:46
· Личное сообщение · #15

WoLFeR
Это я понимаю, но это понятие не может быть настолько размазаным, что находиться в системной библиотеке ;)



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

Создано: 26 апреля 2007 03:55
· Личное сообщение · #16

junk.WoLFeR пишет:
pavka имелл ввиду что для криптора ОЕП можеш выбрать где угодно там кагбы ОЕП очень уж размазаное понятие.

;) Где угодно это конечно сильно сказано, но достаточно много мест с которых можно дампить и искать данные необходимые для инициализации
Вот сто пишет автор:

haggar Today, 12:51 PM
Post #5
I think that OEP finder feature will not be possible to include in script. Simply, way how ExeCryptor jumps to OEP is different even in same version of protector. And there are no hard ground to relay. Sometimes ExeCryptor checks is breakpoint on OEP, sometimes not. Sometimes it overwrites OEP jump (stolen code) again with same byte in order to erase possible breakpoint. In most cases it doesn't do anything. Just junk and more junk.




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

Создано: 26 апреля 2007 14:19
· Личное сообщение · #17

а что скажут OEPофилы по поводу этой проги?
rapidshare.com/files/28008783/GAlert.zip.html



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

Создано: 26 апреля 2007 14:40
· Личное сообщение · #18

r99
Что ты\ хочешь услышать? На память сишшная прога в чем вопрос?




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

Создано: 26 апреля 2007 14:55
· Личное сообщение · #19

pavka
oep?
(можно по памяти)



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

Создано: 26 апреля 2007 16:38
· Личное сообщение · #20

r99 пишет:
oep?
(можно по памяти)

Вот егошная оеп, адреса валидны для unpacked target. написана на MSVC++ 7
Если ничего не путаю, украдены байты с 43D4CB по 43D51D, т.е. 54h
---
.0043D4CB: 6A60 push 000000060 ;'`'
.0043D4CD: 68D8224700 push 0004722D8 --↓1
.0043D4D2: E8A5350000 call .000440A7C --↓2
.0043D4D7: BF94000000 mov edi,000000094 ;' Ф'
.0043D4DC: 8BC7 mov eax,edi
.0043D4DE: E8DD370000 call .000440CC0 --↓3
.0043D4E3: 8965E8 mov [ebp][-18],esp
.0043D4E6: 8BF4 mov esi,esp
.0043D4E8: 893E mov [esi],edi
.0043D4EA: 56 push esi
.0043D4EB: FF15B4924600 call GetVersionExA ;kernel32
.0043D4F1: 8B4E10 mov ecx,[esi][10]
.0043D4F4: 890DAC0E4900 mov [00490EAC],ecx
.0043D4FA: 8B4604 mov eax,[esi][04]
.0043D4FD: A3B80E4900 mov [00490EB8],eax
.0043D502: 8B5608 mov edx,[esi][08]
.0043D505: 8915BC0E4900 mov [00490EBC],edx
.0043D50B: 8B760C mov esi,[esi][0C]
.0043D50E: 81E6FF7F0000 and esi,000007FFF ;' ⌂ '
.0043D514: 8935B00E4900 mov [00490EB0],esi
.0043D51A: 83F902 cmp ecx,2
.0043D51D: 740C je .00043D52B --↓4

.0043D51F: 81CE00800000 or esi,000008000 ;' А '
.0043D525: 8935B00E4900 mov [00490EB0],esi
.0043D52B: C1E008 4shl eax,8
.0043D52E: 03C2 add eax,edx
.0043D530: A3B40E4900 mov [00490EB4],eax
.0043D535: 33F6 xor esi,esi
.0043D537: 56 push esi
.0043D538: 8B3DE4924600 mov edi,GetModuleHandleA ;kernel32
.0043D53E: FFD7 call edi
.0043D540: 6681384D5A cmp w,[eax],05A4D ;'ZM'
.0043D545: 751F jne .00043D566 --↓5
---
Если ошибся поправьте.



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

Создано: 26 апреля 2007 17:09
· Личное сообщение · #21

Ну примерно что то такое Там кроме оеп полным полно метаморфа если ни чего не путаю




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

Создано: 26 апреля 2007 22:33
· Личное сообщение · #22

все верно
и даже совпадает по форме с другим екзешником из полного дистрибутива (поленился сразу посмотреть на него)
Microsoft Visual C++ 7.0 [Debug] -- по peid



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

Создано: 27 апреля 2007 07:38
· Личное сообщение · #23

r99 пишет:
все верно
и даже совпадает по форме с другим екзешником из полного дистрибутива (поленился сразу посмотреть на него)
Microsoft Visual C++ 7.0 [Debug] -- по peid


OEP это всё фигня... подскажите лучше как инлайнить гп 2.3.9+, прыгаю на инлайн после процедуры восстановления call'ов, проверяю распаковалась-ли секция, если да, патчу вервый thread C3 или EBFE,
и ... после запуска ничего не происходит, процесс висит в памяти. До патча треда, он хотябы MB выдавал, а сейчас ничего.

p.s. можно в ЛС.



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

Создано: 27 апреля 2007 09:12
· Личное сообщение · #24

Spate пишет:
или EBFE

Вот он и висит что хотел то и получил...




Ранг: 990.2 (! ! !), 380thx
Активность: 0.680
Статус: Модератор
Author of DiE

Создано: 27 апреля 2007 10:17
· Личное сообщение · #25

помоему там первый поток не надо трогать

-----
[nice coder and reverser]




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

Создано: 27 апреля 2007 12:30
· Личное сообщение · #26

Hellspawn пишет:
помоему там первый поток не надо трогать

?? Имхо все лишние треды до оеп можно убивать



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

Создано: 27 апреля 2007 17:51
· Личное сообщение · #27

Hellspawn пишет:
помоему там первый поток не надо трогать

Я не потрогал, патчу второй, пускаю прогу, в итоге fault, память не может быть written
pavka пишет:
Имхо все лишние треды до оеп можно убивать

подскажи как...
pavka пишет:
или EBFE
Вот он и висит что хотел то и получил...

если RET пишу тоже висит.



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

Создано: 27 апреля 2007 18:19
· Личное сообщение · #28

Spate пишет:
подскажи как...

При анпаке на CreateThread ret после оеп вернуть на место там уже смотреть по ситуации..




Ранг: 990.2 (! ! !), 380thx
Активность: 0.680
Статус: Модератор
Author of DiE

Создано: 27 апреля 2007 18:57
· Личное сообщение · #29

pavka пишет:
?? Имхо все лишние треды до оеп можно убивать


иногда прога тупо висит в памяти и ничего не происходит, сам хз почему так..
вообще по ситуации всё...

-----
[nice coder and reverser]





Ранг: 199.9 (ветеран), 4thx
Активность: 0.120.02
Статус: Участник

Создано: 27 апреля 2007 19:58 · Поправил: YDS
· Личное сообщение · #30

Частенько в сабже проверка CRC осуществляется в TLS Callback, т.е. еще даже до EP, не то что OEP - до создания нехороших потоков. Ловится на CreateFileA.


 eXeL@B —› Основной форум —› ExeCryptor 2.0.x - 2.3.x OEP finder script by HAGGAR
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


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