Сейчас на форуме: Slinger, Rio (+5 невидимых)

 eXeL@B —› Основной форум —› Исследование Auto Debug 3.0
. 1 . 2 . 3 . >>
Посл.ответ Сообщение


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

Создано: 28 июня 2006 21:14
· Личное сообщение · #1

Обнаружил сёдня у себя на харде, но злобный наг достал просто
[ссылка] hxxp://hellspawn.nm.ru/tmp/setup.exe
[размер] 1.16мб
[запакована] ASPack 2.12 + PECompact 1.xx

интересно взломать самому программа не для новичка...
уже насколько часов бъюсь, вот что нарыл:
-куча int 3 в коде
-проверка на бряки
-проверка crc
-издебаггер презент
заставить работать расспакованную пока не удалось...
собственно в это и интерес, ну теперь к коду:

oep 0043DDE3
...
004011E2 |. 3941 04 CMP DWORD PTR DS:[ECX+4],EAX
004011E5 |. 74 3F JE SHORT 00401226 // одна из проверок
...
проверки зарегенности имеют вид CMP DWORD PTR DS:[REG32_1+4],REG32_2
их там не много, но меня убивает, что она отключает хардварные бряки

проверку крк вроде нашёл, ща настряпую лоадер...
Прога интересная, советую посмотреть

-----
[nice coder and reverser]




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

Создано: 28 июня 2006 21:25
· Личное сообщение · #2

А для чего собсно прога-то?




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

Создано: 28 июня 2006 21:36 · Поправил: Hellspawn
· Личное сообщение · #3

вот зачем

Auto Debug for Windows is used to trace the target program automatically, record the results of input and output during API call. Support the tracing to COM interface. Auto analysis the target program, auto display and trace the export functions of DLL. Auto Debug for Windows is an auto-tracing tool of software. User can set breakpoints, this application will auto trace the target program and record the input and output of function call.

-----
[nice coder and reverser]




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

Создано: 28 июня 2006 22:39 · Поправил: Luminescent
· Личное сообщение · #4

Распаковал, запустил, сначала грузит, а потом слетает
Посмотрел каналом, чето дохрена там крипто, Hellspawn, подскажи где там скс чек

ЗЫ а можно какойнить скрипт написать, чтоб он все CCh заменял на 90h




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

Создано: 28 июня 2006 23:34 · Поправил: Hellspawn
· Личное сообщение · #5

Всё не могу, голова кипит, завтра посмотрю...
Смысл в том что после распаковки, в файле не будет хватать некоторых процедур
которые расшифровываются во время работы проги... + ещё грёбанная проверка crc

Luminescent пишет:
ЗЫ а можно какойнить скрипт написать, чтоб он все CCh заменял на 90h


а смысл? просто поставь галку в exceptions - ignore int3

-----
[nice coder and reverser]




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

Создано: 29 июня 2006 06:22
· Личное сообщение · #6

Hellspawn
Ты хоть бы предупреждал что прога то злобная! Ребутит !



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

Создано: 29 июня 2006 10:36
· Личное сообщение · #7

А как бороться в таких случаях с ребутами ? Как сделать так что б прога не кидала в ребут ?

-----
~ the Power Of Reversing team ~





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

Создано: 29 июня 2006 11:20
· Личное сообщение · #8

pavka пишет:
Ты хоть бы предупреждал что прога то злобная! Ребутит !


извени у меня 98 и не ребутит а прога ещё та...
короче я её зарегил, но crc обламывает лоадер, ща выспался и буду добивать
разозлила она меня, своей агрессией! защита прямо скажем не стандартная...

-----
[nice coder and reverser]




Ранг: 228.7 (наставник), 2thx
Активность: 0.120
Статус: Участник
malware research

Создано: 29 июня 2006 11:43
· Личное сообщение · #9

newborn пишет:
Как сделать так что б прога не кидала в ребут

Попробовать поставить бряк на ExitWindowsEx; InitiateSystemShutdownA; InitiateSystemShutdownExA и исправить переход немного выше этой функции...

-----
Research is my purpose




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

Создано: 29 июня 2006 12:08
· Личное сообщение · #10

Hellspawn
Там не в crc похоже дело! Там с криптоваными процедурами хрень какая то !




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

Создано: 29 июня 2006 12:24 · Поправил: Hellspawn
· Личное сообщение · #11

pavka пишет:
Там не в crc похоже дело! Там с криптоваными процедурами хрень какая то !


возможно... но + крк окошко вылетает, типо программа повреждена и всё такое.. (это про лоадер,
а если ставлю wait, то просто прога вываливается)
млин нафиг они 2 пакера то навесили, PECompact - он вообще инлайница?

из за чего дамп вылетает,
1 -ое, что пока нашёл

004317D8 . FF75 10 PUSH DWORD PTR SS:[EBP+10]
004317DB . E8 4CF3FFFF CALL 00430B2C <-- тут будет бред +) // сравните с оригинальным
...
CALL 0043B8E0 <-- это грёбанная процедура она копирует расшифрованный код из буфера
на его место, но проблема в том что в буфере каша...


-----
[nice coder and reverser]




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

Создано: 29 июня 2006 12:31
· Личное сообщение · #12

PECompact без проблем!
крк окошко вылетает это как раз PECompact ! Это фигня!
Там чехарда с этими криптованми процедурами меняешь флаг и понеслось каша какая то!




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

Создано: 29 июня 2006 12:34
· Личное сообщение · #13

pavka

родилась идея, в принципе все процедуры, которые становятся кашей,
можно подсмотреть в оригинальном файле и сдампить кусочками,
+ кое-где занопить (чтобы ещё раз не записывалось, ведь мы уже вручную скопируем)

-----
[nice coder and reverser]




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

Создано: 29 июня 2006 12:39
· Личное сообщение · #14

Хм .. можно попробовать!




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

Создано: 29 июня 2006 13:03 · Поправил: Hellspawn
· Личное сообщение · #15

аххахаахха pavka не поверишь, восстановил 2 процедуры и нечаянно увидел строку

006AF35C 010E4A48 |Arg1 = 010E4A48 ASCII "80B0861574C1B34A6C08EF4A29CF6126"
006AF360 00000010 |Arg2 = 00000010
006AF364 011F0730 |Arg3 = 011F0730 ASCII "WANTJZWXLOUVFJLP"

угадай, что будет если ввести 80B0861574C1B34A6C08EF4A29CF6126 ?
но я чувствую - это только для моей машины Ох и по**** я с этой прогой..

вот сама процедура

004312C9 |. 50 PUSH EAX ; /Arg6 = 011F0A88 ASCII "%эA"
004312CA |. 53 PUSH EBX ; |Arg5 = 00000000
004312CB |. 6A 10 PUSH 10 ; |Arg4 = 00000010
004312CD |. FFB6 A8000000 PUSH DWORD PTR DS:[ESI+A8] ; |Arg3 = 011F0730 ASCII "WANTJZWXLOUVFJLP"
004312D3 |. 6A 10 PUSH 10 ; |Arg2 = 00000010
004312D5 |. FF75 08 PUSH [ARG.1] ; |Arg1 = 010E4A48 ASCII "80B0861574C1B34A6C08EF4A29CF6126"
004312D8 |. E8 CF9FFFFF CALL 0042B2AC ; \123_2.0042B2AC


з.ы. а кто-нибудь знает, как сделать лоадер, который будет запускать прогу и вытаскивать ключ?
я ниразу не делал такого

-----
[nice coder and reverser]





Ранг: 536.4 (!), 171thx
Активность: 0.660.13
Статус: Администратор
Создатель CRACKL@B

Создано: 29 июня 2006 13:51
· Личное сообщение · #16

Hellspawn пишет:
з.ы. а кто-нибудь знает, как сделать лоадер, который будет запускать прогу и вытаскивать ключ?

Идея проста: если вводишь неправильный ключ то показывается диалог, что ключ неверный (не знаю как в этой проге, но по идее), задача в том чтобы перед вызовом диалога сделать PUSH правильного кода вместо этого сообщения, ну раз там упаковано то лоадер при запуске должен подождать немного прежде чем патчить память, а вот дальше ты говоришь црц - это может конечно и помешать, смотря как заюзано.

-----
Всем не угодишь





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

Создано: 29 июня 2006 14:03
· Личное сообщение · #17

А можно запустить файло, подождать пока распакуется, сдампить, найти это место по сигнатуре, считать адрес буфера, скопировать из буфера к сеье. Это так сказать мультиплотформеный вариант. А так - дебаг апи, перехват апи, внедрение кода и т.д.

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




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

Создано: 29 июня 2006 14:11
· Личное сообщение · #18

Там похоже без ключа гимор! Ребята не дураки!
В отдельных тредах проверяют и подсовывают всякую фигню типа
00431605 8B4D 08 mov ecx,dword ptr ss:[ebp+8]
00431608 6A 01 push 1
0043160A 58 pop eax
0043160B 8901 mov dword ptr ds:[ecx],eax---------------eax=00000001ds:[00000000]=??
при том на простые бряки на хард на мемори на crk и т.д
Ковыряешь проверку регистрации
00423F18 8B8D A4FDFFFF mov ecx,dword ptr ss:[ebp-25C]
00423F1E B8 8E3F4200 mov eax,DebugApi.00423F8E <--------------------- Reboot!
00423F23 8901 mov dword ptr ds:[ecx],eax
00423F25 33C9 xor ecx,ecx
00423F27 898D F4FCFFFF mov dword ptr ss:[ebp-30C],ecx
00423F2D 898D F8FCFFFF mov dword ptr ss:[ebp-308],ecx
00423F33 898D FCFCFFFF mov dword ptr ss:[ebp-304],ecx
00423F39 898D 00FDFFFF mov dword ptr ss:[ebp-300],ecx
00423F3F 8985 A8FDFFFF mov dword ptr ss:[ebp-258],eax
00423F45 8D9E 00030000 lea ebx,dword ptr ds:[esi+300]
00423F4B 8D85 F0FCFFFF lea eax,dword ptr ss:[ebp-310]
00423F51 50 push eax
00423F52 FF33 push dword ptr ds:[ebx]
00423F54 FF15 14724400 call dword ptr ds:[447214] ; kernel32.SetThreadContext
00423F5A FF33 push dword ptr ds:[ebx]
00423F5C FF15 D4714400 call dword ptr ds:[4471D4] ; kernel32.ResumeThread
00423F62 8B5D E4 mov ebx,dword ptr ss:[ebp-1C]
00423F65 ^ E9 17FEFFFF jmp DebugApi.00423D81
00423F6A FF75 C8 push dword ptr ss:[ebp-38]
00423F6D FF15 F4714400 call dword ptr ds:[4471F4] ; kernel32.CloseHandle
00423F73 6A 00 push 0
00423F75 E8 AD850100 call DebugApi.0043C527
00423F7A 59 pop ecx
00423F7B 33C0 xor eax,eax
00423F7D 8B4D F0 mov ecx,dword ptr ss:[ebp-10]




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

Создано: 29 июня 2006 14:15 · Поправил: Hellspawn
· Личное сообщение · #19

pavka читай мой пост не много выше
еще попадается что-то типа

004316AB . 8B65 E8 MOV ESP,DWORD PTR SS:[EBP-18]
004316AE . 817D E0 050000C0 CMP DWORD PTR SS:[EBP-20],C0000005 // проверка исключения
004316B5 . 74 10 JE SHORT 004316C7
004316B7 . 78 1A JS SHORT 004316D3
004316B9 . 68 0532015C PUSH 5C013205
004316BE E9 DB E9
004316BF . 6A 00 PUSH 0 ; /ExitCode = 0
004316C1 > FF15 4C724400 CALL DWORD PTR DS:[44724C] ; \ExitProcess


-----
[nice coder and reverser]




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

Создано: 29 июня 2006 14:19
· Личное сообщение · #20

0012F4E4 003E4268 |Arg1 = 003E4268 ASCII "74FAD4E56E2F17A7D5472C3616E7E837"
0012F4E8 00000010 |Arg2 = 00000010
0012F4EC 003E44E0 |Arg3 = 003E44E0 ASCII "WANTJZWXLOUVFJLP"

Да стоило им такую канитель разводить! Бля аж обидно ;))




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

Создано: 29 июня 2006 14:23 · Поправил: Hellspawn
· Личное сообщение · #21

pavka пишет:
Да стоило им такую канитель разводить! Бля аж обидно ;))


и не говори, защита очень понравилась, а тут такая подстава...
Такое ощущение, что её дорабатывало несколько человек,
не могли они же так ошибиться всё остальное же на уровне.
Ты кстати не нашёл как она хардварные бряки отключает?

з.ы. ща попытаюсь набросать лоадер

-----
[nice coder and reverser]




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

Создано: 29 июня 2006 14:27
· Личное сообщение · #22

Несмотря на этот баг все равно интересная штучка



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

Создано: 29 июня 2006 14:31
· Личное сообщение · #23

У меня не отключает! Она подсовывает на любые бряки типа ds:[00000000]=??
ипрога падает!




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

Создано: 29 июня 2006 14:44
· Личное сообщение · #24

всё из за Win наврное на 98 она не может полностью проявить себя

-----
[nice coder and reverser]




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

Создано: 29 июня 2006 14:46
· Личное сообщение · #25

Похоже они нас накололи)))) Ну молодцы ! Она вырубается!




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

Создано: 29 июня 2006 15:20
· Личное сообщение · #26

pavka пишет:
Похоже они нас накололи)))) Ну молодцы ! Она вырубается!


мля +) да чтоб её **** проморгал я этот момент... мля ппц, что ловить её выход?

-----
[nice coder and reverser]




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

Создано: 29 июня 2006 16:07
· Личное сообщение · #27

Чет пока тупик ! Выход найти фигня!
00421204 55 push ebp
00421205 8BEC mov ebp,esp
00421207 81EC 08010000 sub esp,108
0042120D 53 push ebx
0042120E 8B1D 14704400 mov ebx,dword ptr ds:[447014] ; ADVAPI32.GetUserNameA
00421214 56 push esi
00421215 57 push edi
00421216 8B3D 50714400 mov edi,dword ptr ds:[447150] ; kernel32.GetComputerNameA
0042121C C745 F8 64000000 mov dword ptr ss:[ebp-8],64
00421223 BE FF000000 mov esi,0FF
00421228 8D45 FC lea eax,dword ptr ss:[ebp-4]
0042122B 8975 FC mov dword ptr ss:[ebp-4],esi
0042122E 50 push eax
0042122F 8D85 F8FEFFFF lea eax,dword ptr ss:[ebp-108]
00421235 50 push eax
00421236 FFD3 call ebx
00421238 8D85 F8FEFFFF lea eax,dword ptr ss:[ebp-108]
0042123E 6A 64 push 64
00421240 50 push eax
00421241 8D85 02FFFFFF lea eax,dword ptr ss:[ebp-FE]
00421247 50 push eax
00421248 E8 13C40100 call DebugApi.0043D660
0042124D 83C4 0C add esp,0C
00421250 8D45 FC lea eax,dword ptr ss:[ebp-4]
00421253 8975 FC mov dword ptr ss:[ebp-4],esi
00421256 50 push eax
00421257 8D85 F8FEFFFF lea eax,dword ptr ss:[ebp-108]
0042125D 50 push eax
0042125E FFD7 call edi
00421260 8D85 F8FEFFFF lea eax,dword ptr ss:[ebp-108]
00421266 50 push eax
00421267 E8 F4B20100 call DebugApi.0043C560
0042126C 59 pop ecx
0042126D 50 push eax
0042126E FF15 4C724400 call dword ptr ds:[44724C] ; kernel32.ExitProcess
00421274 8D45 FC lea eax,dword ptr ss:[ebp-4]
00421277 8975 FC mov dword ptr ss:[ebp-4],esi
0042127A 50 push eax

Я не могу врубится чего ему не нравится ?




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

Создано: 29 июня 2006 16:45 · Поправил: Hellspawn
· Личное сообщение · #28

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

з.ы. павка смотри один прикол, когда я перезагружаюсь (из за этой проги) и включаю её заново,
тот ключ что я вводил тогда не пашет, а если я её запущу под олли,
то прога опять становится зарегеной и вылетает через некоторое время..

-----
[nice coder and reverser]




Ранг: 330.4 (мудрец), 334thx
Активность: 0.160.17
Статус: Участник
ILSpector Team

Создано: 29 июня 2006 17:31
· Личное сообщение · #29

rapidshare.de/files/24464210/ADfWv_2_3_1_62.zip.html
Правда для довольно старой версии но судя по вашим описаниям ничего не изменилось. Исходников нет. Забыл давно было.



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

Создано: 29 июня 2006 17:51
· Личное сообщение · #30

Hellspawn
0041FF9A C786 E4020000 0412>mov dword ptr ds:[esi+2E4],DebugApi.00421204
0041FFA4 E8 F26F0100 call DebugApi.00436F9B
0041FFA9 899E 80010000 mov dword ptr ds:[esi+180],ebx


. 1 . 2 . 3 . >>
 eXeL@B —› Основной форум —› Исследование Auto Debug 3.0
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


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