eXeL@B —› Протекторы —› Помогите добить.... |
Посл.ответ | Сообщение |
|
Создано: 13 февраля 2005 22:54 · Поправил: arnix · Личное сообщение · #1 Программа - WebSite-Watcher 4.02, PEiD говорит - ASProtect 1.22 - 1.23 Beta 21 -> Alexey Solodovnikov [Overlay], OEP нашёл (2AA200), сделал дамп, импорты восстановил, спёртые байты нашёл, вот они: push ebp (55) mov ebp, esp (8B EC) add esp, -10 (83 C4 F0) push ebx (53) mov eax, 6A9918 (B8 18 99 6A 00)Запускаю, а она бах, runtime error 216, падает вот здесь: ... /*4025BC*/ ADD EAX,3 /*4025BF*/ SAR EAX,2 /*4025C2*/ MOV EDX,DWORD PTR DS:[6B4624] /*4025C8*/ MOV EDX,DWORD PTR DS:[EDX+EAX*4-C] <<<--- падает здесь /*4025CC*/ MOV DWORD PTR SS:[EBP-8],EDX /*4025CF*/ CMP DWORD PTR SS:[EBP-8],0 /*4025D3*/ JE dumped_.00402662 /*4025D9*/ MOV EDX,DWORD PTR SS:[EBP-8] /*4025DC*/ ADD EDX,EBX /*4025DE*/ MOV DWORD PTR SS:[EBP-14],EDX ...в этот момент в DWORD PTR DS:[EDX+EAX*4-C] находится адрес из самых низов, откуда читать запрещено, вот и падает подлец, Что делать? Что это за адрес? Прогу качать здесь: http://www.aignes.com/download/wswsetup.exe http://www.aignes.com/download/wswsetup.exe (1.9 МБ) Если хотите могу где-нить положить распакованный мною файл. (в RAR-е весит порядка 1.3 МБ) |
|
Создано: 13 февраля 2005 23:10 · Личное сообщение · #2 |
|
Создано: 13 февраля 2005 23:37 · Личное сообщение · #3 Ara запустил оригинал, сделал дамп, посмотрел, в этом адресе там DWORD 0015DAE0, а в распакованном - 0015D6B0: Оригинал: .006B461F: 0000 add [eax],al .006B4621: 0000 add [eax],al .006B4623: 00E0 add al,ah .006B4625: DA1500E4F015 ficom d,[15F0E400] .006B462B: 00B4F015000000 add [eax][esi]*8[00000015],dh .006B4632: 0000 add [eax],al .006B4634: 0000 add [eax],alРаспакованный: .006B461F: 0000 add [eax],al .006B4621: 0000 add [eax],al .006B4623: 00B0D6150028 add [eax][280015D6],dh .006B4629: 46 inc esi .006B462A: 6B0028 imul eax,d,[eax],000000028 .006B462D: 46 inc esi .006B462E: 6B0000 imul eax,d,[eax],000000000 .006B4631: 0000 add [eax],al .006B4633: 0000 add [eax],alсделал всё как в оригинале, не помогло |
|
Создано: 14 февраля 2005 00:06 · Поправил: Tim · Личное сообщение · #4 |
|
Создано: 14 февраля 2005 00:12 · Поправил: arnix · Личное сообщение · #5 Stripper пробовал, 2.07f (ведь 2.11rc2 для 1.3 и 2 да?), после чего пришлось перезагрузить комп Винда выдала ошибку, закрыла Стриппер, а прога осталась в памяти, жрала проц. на все 100% и не вырубалась Больше Стриппер пробовать не буду Update: Кажется знаю как его "сделать", завтра попробую, о резултатах скажу |
|
Создано: 14 февраля 2005 01:25 · Личное сообщение · #6 |
|
Создано: 14 февраля 2005 01:40 · Личное сообщение · #7 Mario555 пишет: ну по такому куску мало что сказать можно, но скорее всего причина - записи сделанные апром в третью секцию (BSS которая)... просто попробуй заполнить её нолями ;) Опа, спасибо, сделал так как ты сказал, прогресс есть но теперь выдаёт другую ошибку: Internal Error (1161) Please Reinstall WebSite-Watcher Помоему это уже из части защиты копать и выяснять причины буду завтра, сейчас спать хочется ) Кстати, если не трудно, можешь обяснить что это за секция была и чем она мешала? Или ссылку на статью где об этом говорится.. спасибо. |
|
Создано: 14 февраля 2005 04:19 · Личное сообщение · #8 |
|
Создано: 14 февраля 2005 17:00 · Личное сообщение · #9 |
|
Создано: 14 февраля 2005 20:03 · Личное сообщение · #10 |
|
Создано: 14 февраля 2005 20:34 · Личное сообщение · #11 arnix >Internal Error (1161) Please Reinstall WebSite-Watcher Насколько я помню, она пару раз свой размер проверяет. Там еще есть случайные проверки по дате номерка из ключа + проверка номера ключа в файле закладок + еще чего мож забыл. Получал полностью рабочую распакованную версию, а не такую, как некоторые делают, только давно это было ;) Gelios >если я ничё не путаю, то в этой проге часть кода без >валидного ключа тебе не достать Не путаешь, ключей к ней было завались. Так что проблем быть не должно с этим. |
|
Создано: 14 февраля 2005 21:59 · Поправил: arnix · Личное сообщение · #12 Значит так, решил всё на всякий случай сделать снова, но на этот раз основную работу ImpRec-a сделал сам (использовал метод Рикардо Нарвахи, из его статьи "ASProtect 1.2 o 1.3 paso a paso"), тойсть занопил место где Аспр меняет настоящий апи-шный адрес на свой, внутренний, в результате в таблицу импортов записались настоящие адреса, а эмулированные функции находил вручную, без плагинов ImpRec-a. После того как залил нолями третью секцию (привет Mario555 ;), программа уже не говорит Runtime error, но зато происходит exception - Olly говорит "Access violation when executing [00000000] - use Shift+F7/F8/F9 to pass execution to program". Когда нажимаю Shift-F9, прога берёт обработку ИС на себя и предлагает послать разработчикам какую-то инфу (там нет ничего интересного), когда нажимаю Shift-F7/F8 Оlly ругается (на картинке). И что самое интересное, я не могу найти где происходит exception, и где его обработчик. Потрейсил вручную, потрейсил.. долго будет. Поставил бряк на адресе текущего обработчика ИС, нажал F9, но бряк не сработал, наверно беред возникновением ИС обработчик поменялся... И есть один вопрос, насчёт эмулированных функций, посмотрите на этот: 00D41420 55 PUSH EBP 00D41421 8BEC MOV EBP,ESP 00D41423 8B05 F86CD400 MOV EAX,DWORD PTR DS:[D46CF8] 00D41429 8B45 08 MOV EAX,DWORD PTR SS:[EBP+8] 00D4142C 5D POP EBP 00D4142D C2 0400 RETN 4Как вы думаете, это FreeResource или SetHandleCount, я смотрел код этих функций в kernel32, помоему оба подходят, я думаю разницы нет, но так, для проверки спрашиваю, может кто что-нить знает А что насчёт того что без ключа прога не будет функционировать полностью, то ну и ладно, мне прога не нужна, просто после тренировок на всяких FSG,ARM Protector, PECompact и даже SVKP , решил что я уже готов для схватки с Аспром, и взял первую попавшую под руку Аспрованную прогу, откуда мне было знать что он так накручен Но я еще не сдался, я его еще сделаю И без всякиз стрипперов! (со всем уважением к этой замечачельной программе и Syd-у) 465b_clip.png |
|
Создано: 14 февраля 2005 22:33 · Личное сообщение · #13 |
|
Создано: 14 февраля 2005 22:40 · Личное сообщение · #14 arnix LockResource это. >После того как залил нолями третью секцию (привет Mario555 ;), >программа уже не говорит Runtime error, но зато происходит exception А не надо всю секцию было обнулять, там ссылка на рег.инфу должна быть, возможно из-за этого и вылетает. Так же возможно это проверки на наличие аспра. >Но я еще не сдался, я его еще сделаю И без всякиз стрипперов! Молоток, не раслабляться ;) |
|
Создано: 14 февраля 2005 23:05 · Поправил: arnix · Личное сообщение · #15 Madness пишет: LockResource это ок, спасибо Madness пишет: А не надо всю секцию было обнулять, там ссылка на рег.инфу должна быть, возможно из-за этого и вылетает. Так же возможно это проверки на наличие аспра. Ойй, наверно в этом и проблема, я там нули пишу, а управление наверно туда передайтся - вот и результат - Access violation when executing [00000000], а я поверил Mario555 наслово Значит мне нужно посмотреть что Аспр там хочет делать, что он там ожидает увидеть.. (если конечно причина в этом) Madness пишет: Молоток, не раслабляться ;) |
|
Создано: 14 февраля 2005 23:43 · Личное сообщение · #16 arnix >поверил Mario555 наслово Он правильно сказал, только всё нулями забивать не надо было. >начит мне нужно посмотреть что Аспр там хочет делать, что он там ожидает увидеть.. Дампишь файл на oep, смотришь где в BSS не нули, ищешь адреса, по ссылке которых будет 00h (нет ключа) или рег.инфа (есть ключ), да и где то рядом с аспровой dll они будут, их видно. А вообще пусти прогу не под olly, и посмотри в виндовой ошибке по какому адресу вылетает. |
|
Создано: 14 февраля 2005 23:46 · Личное сообщение · #17 |
|
Создано: 17 февраля 2005 01:52 · Личное сообщение · #18 Хотел сообщить что всё еще борюсь И еще, уверяю вас, это особенный случай, здесь не только простой Аспр, я так, из интереса распаовал вчера две программы запакованные Аспром этих версий, всё очень легко, после распаковки программы нормально запускаются, а этот WebSite-Watcher 4.02 - особенный, в нём очень много дополнительной защиты, сотни обращений на несуществующие аспровые адреса, я даже пробовал сдампить эту часть памаяти из нераспакованного аспра, стоя на OEP, потом добавил в распакованной проге секцию, и туда всё это поставил, переходы из BSS секции поменял на новые адреса, всё равно падает... и всё так, что патчишь одно место, падает в другом, патчишь эту, падает в другой, и не видно конца всему этому... Так что опытные АспраРаспаковщики, попробуйте распаковать! |
eXeL@B —› Протекторы —› Помогите добить.... |