Посл.ответ |
Сообщение |
 Ранг: 116.9 (ветеран) Активность: 0.04↘0 Статус: Участник
|
Создано: 16 ноября 2005 21:40 · Личное сообщение · #1
Вот длл'ка зашифрована сабжем посоветуйте как найти OEP желательно OllyDbg, хотя SICE тож сойдёт. Заранее спасибо.
З.Ы. Кстати есть какие-нибудь отличия для снятия ASPRа с DLL от снятия с EXE? Что поставить на OllyDbg чтобы его не обнаруживал ASPR?
Искал статьи, подходящего ничего не нашёл...
----- Nothing just happens. You choose it to happen. | Сообщение посчитали полезным: |
|
 Ранг: 116.9 (ветеран) Активность: 0.04↘0 Статус: Участник
|
Создано: 23 ноября 2005 01:24 · Личное сообщение · #2
короче вот что происходит:
OEP:
009785B0 > $ 55 PUSH EBP
009785B1 . 8BEC MOV EBP,ESP
009785B3 . 83C4 C4 ADD ESP,-3C
009785B6 . B8 78833A00 MOV EAX,3A8378
009785BB . E8 2C8DFFFF CALL SourceWi.009712EC <<<<<далее входит сюда
009785C0 . 833D CCA03A00 >CMP DWORD PTR DS:[3AA0CC],0
009785C7 . 74 06 JE SHORT SourceWi.009785CF
009785C9 . FF15 CCA03A00 CALL DWORD PTR DS:[3AA0CC]
а вот что внутри этого CALL'а:
009712EC /$ BA 00903A00 MOV EDX,3A9000
009712F1 |. 837D 0C 01 CMP DWORD PTR SS:[EBP+C],1
009712F5 75 2A JNZ SHORT SourceWi.00971321
009712F7 |. 50 PUSH EAX
009712F8 |. 52 PUSH EDX
009712F9 |. C605 00A03A00 >MOV BYTE PTR DS:[3AA000],1<<<<<<<<<<<здесь Access Violation
00971300 |. 8B4D 08 MOV ECX,DWORD PTR SS:[EBP+8]
00971303 |. 890D 0CA03A00 MOV DWORD PTR DS:[3AA00C],ECX
00971309 |. 894A 04 MOV DWORD PTR DS:[EDX+4],ECX
0097130C |. C742 08 000000>MOV DWORD PTR DS:[EDX+8],0
00971313 |. C742 0C 000000>MOV DWORD PTR DS:[EDX+C],0
0097131A |. E8 C1FFFFFF CALL SourceWi.009712E0
0097131F |. 5A POP EDX
00971320 |. 58 POP EAX
00971321 |> FF35 10A03A00 PUSH DWORD PTR DS:[3AA010]
00971327 |. B9 18903A00 MOV ECX,3A9018
0097132C |. E8 B7FDFFFF CALL SourceWi.009710E8
00971331 \. C3 RETN
я так понял это aspr'овский код... что с ним лучше всего сделать чтобы он не обращался к невыделеной памяти и как результат Access Violation???
----- Nothing just happens. You choose it to happen. | Сообщение посчитали полезным: |
Ранг: 384.1 (мудрец) Активность: 0.25↘0 Статус: Участник www.int3.net
|
Создано: 23 ноября 2005 07:21 · Личное сообщение · #3
Av0id
Ну если у тебя нормально грузится, значит импорт неправильно прикрутил
----- Подписи - ЗЛО! Нужно убирать! | Сообщение посчитали полезным: |
Ранг: 384.1 (мудрец) Активность: 0.25↘0 Статус: Участник www.int3.net
|
Создано: 23 ноября 2005 07:24 · Личное сообщение · #4
Viktoro
Если это аспровый код, тогда жопа, т.к. придется пришивать секцию к длл, хорошо если таких вызовов не много, но если часть кода вынесено в аспр...
----- Подписи - ЗЛО! Нужно убирать! | Сообщение посчитали полезным: |
 Ранг: 116.9 (ветеран) Активность: 0.04↘0 Статус: Участник
|
Создано: 23 ноября 2005 14:08 · Личное сообщение · #5
незнаю как она может нормально грузиться у Av0id, у меня он и из Olly вылетает с "...память не может быть read"
----- Nothing just happens. You choose it to happen. | Сообщение посчитали полезным: |
 Ранг: 116.9 (ветеран) Активность: 0.04↘0 Статус: Участник
|
Создано: 23 ноября 2005 22:36 · Личное сообщение · #6
nice пишет:
Если это аспровый код, тогда жопа, т.к. придется пришивать секцию к длл, хорошо если таких вызовов не много, но если часть кода вынесено в аспр...
а где можно про подобное почитать?
----- Nothing just happens. You choose it to happen. | Сообщение посчитали полезным: |
Ранг: 516.1 (!), 39thx Активность: 0.28↘0 Статус: Участник
|
Создано: 24 ноября 2005 11:18 · Личное сообщение · #7
arteam -> tutorials
| Сообщение посчитали полезным: |
 Ранг: 116.9 (ветеран) Активность: 0.04↘0 Статус: Участник
|
Создано: 27 ноября 2005 16:38 · Личное сообщение · #8
Вобщем в ImpREC ввожу OEP: 000085b0, RVA: 0000b000, Size: 2000
и вот что он выдаёт
Current imports:
0 (decimal:0) valid module(s) (added: -1 (decimal:-1))
81B (decimal:2075) imported function(s). (added: +7C2 (decimal:+1986))
(6EE (decimal:1774) unresolved pointer(s)) (added: +6D3 (decimal:+1747))
RVA:0000B000 Level1 Failed!
~~~~~~~~~~~~
и так до...
~~~~~~~~~~~~
RVA:0000F074 Level1 Failed!
и далее хз сколько раз пишет:
Problem in initialization
Can't initialize the tracer!
Problem in initialization
Can't initialize the tracer!
Problem in initialization
Can't initialize the tracer! 
и ничего не восстанавливает... что за????
----- Nothing just happens. You choose it to happen. | Сообщение посчитали полезным: |
 Ранг: 116.9 (ветеран) Активность: 0.04↘0 Статус: Участник
|
Создано: 27 ноября 2005 16:50 · Личное сообщение · #9
З.Ы. это когда Show Invalid+Auto Trace
----- Nothing just happens. You choose it to happen. | Сообщение посчитали полезным: |
 Ранг: 116.9 (ветеран) Активность: 0.04↘0 Статус: Участник
|
Создано: 27 ноября 2005 23:32 · Личное сообщение · #10
и ещё я спросить хотел у Av0id, долгий trace это сколько?
----- Nothing just happens. You choose it to happen. | Сообщение посчитали полезным: |