Сейчас на форуме: _MBK_ (+6 невидимых) |
![]() |
eXeL@B —› Вопросы новичков —› Помогите распаковать новый uTorrent 2.2 RC2 |
. 1 . 2 . >> |
Посл.ответ | Сообщение |
|
Создано: 23 октября 2010 13:01 · Личное сообщение · #1 |
|
Создано: 23 октября 2010 14:19 · Личное сообщение · #2 |
|
Создано: 23 октября 2010 15:37 · Личное сообщение · #3 Как вручную? По тем мануалам что нашел в инете и тут на сайте ничего не выходит. Загружаю exe в OllyDbg, ищу по Ctrl-F popap, нахожу какой-то по адресу 004db8c7, после которого идет jmp. Ставлю на него брекпоинт, F9 - вываливается Access violation где-то в ntdll, потом Shift-F9 и Debbuged program was unable to process exeption. ![]() ![]() |
|
Создано: 23 октября 2010 15:50 · Поправил: gena-m · Личное сообщение · #4 Как вручную? 1. Ставишь железный бряк в Олли на адрес ОЕП который дал Vovan666 и делаешь дамп с помощью PETools. 2. Прикручиваешь импорт по данным который дал Vovan666 с помощью ImpREC. 3. Можешь при желании разобраться с секцией ресурсов, а затем прикрутить импорт. 4. Говоришь спасибо Vovan666 за предоставленную информацию. ищу по Ctrl-F popap ??????????? нужно искать POPAD, нужный тебе находится здесь: Code:
а JMP utorrent.0048BD64 ведет на ОЕП ----- Надежда - есть худшее из зол, ибо она продлевает наши страдания.© Ф. Ницше ![]() |
|
Создано: 23 октября 2010 16:19 · Личное сообщение · #5 gena-m Железные брекпоинт на тот OEP срабатывает, но нак найти его? Не буду же я для каждой версии uTorrent-a тут OEP и остальные данные спрашивать? Как найти тот popad правильный? Если там делов на 5 секунд, можно хотя бы коротенькую инструкцию и какие инструменты использовать? У меня упорно отладка валится при брекпоинте на тот popad с jmp-ом, какой бы брекпоинт я не ставил - обычный или железный. ![]() |
|
Создано: 23 октября 2010 16:22 · Поправил: StUser · Личное сообщение · #6 |
|
Создано: 23 октября 2010 16:29 · Личное сообщение · #7 |
|
Создано: 23 октября 2010 16:39 · Личное сообщение · #8 можно хотя бы коротенькую инструкцию Коротенькая инструкция: стоим на ЕП и видим 004FE710 PUSHAD, приходит мысль что неплохо было бы нажать 1 раз F8. Обнаруживаем что в стеке, при выполнении команды PUSHAD сохранились все регистры. Набираем в окне дампа (Ctrl+G) адрес указателя вершины стека 30ffa4 и нажимаем ОК. Видим в окне дампа такое: 0030FFA4 38 07 91 7C FF FF FF FF F0 FF 30 00 C4 FF 30 00 8‘|яяяяря0.Дя0. 0030FFB4 00 C0 FD 7F 94 EB 90 7C B0 FF 30 00 00 00 00 00 .Аэ”лђ|°я0..... Левой клавишей мыша выбираем 38 07 91 7C и нажимаем правую клавишу мыша и в меню бряки выбираем железный на доступ. Нажимаем F9 и прерываемся в этом месте ниже POPAD: Code:
Дальше смотришь мой пост выше. У меня упорно отладка валится при брекпоинте на тот popad с jmp-ом 1. Выбрось все плагины. 2. Скачай чистую Олии и работай с ней. 3. Используй только железные бряки, если простые не умеешь. ----- Надежда - есть худшее из зол, ибо она продлевает наши страдания.© Ф. Ницше ![]() |
|
Создано: 23 октября 2010 16:40 · Поправил: StUser · Личное сообщение · #9 gena-m Vovan666 Спасибо. То есть. Последовательность действий примерно такая: 1. Загружаю в OllyDbg v2.0 uTorrent.exe. 2. Пролистываю вниз до нулей. 3. Ставлю брекпоинт на последний JMP utorrent.0048BD64 (в данном случае) 4. F9, F8 - оказываюсь на OEP. 5. В View->Memory map на всех секциях с owher uTorrent делаю Set access -> Full 6. Запускаю PETools, Dump Full на процессе uTorrent, сохраняю exe в файл. 7. Запускаю ImpREC и ... ![]() Вот тут затык. Не пойму куда тут вбивать эти IAT START ни IAT SIZE. Ни разу еще импорт не восстанавливал. И как определить эти IAT START ни IAT SIZE? ![]() |
|
Создано: 23 октября 2010 16:52 · Поправил: gena-m · Личное сообщение · #10 И что-то в ImpREC я ни IAT START ни IAT SIZE не нахожу. Внизу слева есть три окошка OEP - адрес ОЕП-400000 =8BD64 RVA - IAT START-400000= 8CFFC Size - IAT SIZE= 8A8 И не забудь - вверху есть окошко (Attach to an Active Process) и там выбери процесс с именем utorrent. И как определить эти IAT START ни IAT SIZE? Читай статьи по распаковке, а лучше --> это. <-- ----- Надежда - есть худшее из зол, ибо она продлевает наши страдания.© Ф. Ницше ![]() |
|
Создано: 23 октября 2010 17:07 · Поправил: StUser · Личное сообщение · #11 gena-m Значит дальше так? 7. Запускаю ImpREC, выбираю процесс uTorrent (он все еще висит остановленный в OlleDbg на OEP) 8. вбиваю в ImpREC OEP=8BD64, RVA=8CFFC, Size=8A8 9. нажимаю GetImports - все dll-ки valid:YES 10. Жму Fix Dump, выбираю Dumped.exe, сохраненный из PETools, получаю Dumped_.exe Что дальше? Полученый Dumped_.exe при запуске валится по адресу Offset: 0008bd98 Добавленно. Ага, кажется понял. Надо выставить соответствующие атрибыты секциям в exe. Пока тупо вбил в HIEW все единица в атрибуты всех секций. Вроде, работает, но думаю это не совсем правильно. ![]() |
|
Создано: 23 октября 2010 17:15 · Поправил: verdizela · Личное сообщение · #12 StUser Если в олли стоиш на оеп, смотриш и запоминаеш(или копируеш адрес). Далее скопированный адрес оеп в олли - 400000 = что получилось вводиш в имреке в поле оеп, жмеш AutoSearch, далее жмеш GetImports, после этого FixDump и сохраняеш. А вообще лучше бы почитал туторов по теме распаковки, их полно и есть подробное описание, как пользоваться ImpRec и т.д. ----- We do what we want because we can. ![]() |
|
Создано: 23 октября 2010 17:29 · Личное сообщение · #13 |
|
Создано: 23 октября 2010 17:34 · Личное сообщение · #14 |
|
Создано: 23 октября 2010 23:57 · Личное сообщение · #15 StUser пишет: download.utorrent.com/2.2/utorrent.exe Раньше просто upx-ом распаковывалось, сейчас не хочет. Файл после упаковки модифицировался, как минимум добавлена еще одна секция. Попробовал Quick Unpack и разные RL!deUPX - ничего не выходит. я сделал tutrial специально для тебя www.mediafire.com/?ytrrhjtck5mgwdk ![]() |
|
Создано: 24 октября 2010 05:36 · Личное сообщение · #16 |
|
Создано: 24 октября 2010 07:04 · Личное сообщение · #17 |
|
Создано: 24 октября 2010 12:56 · Поправил: StUser · Личное сообщение · #18 AKAB Спасибо. Примерно так и делал. Только дампил PETools. Заметил одну проблему с распакованным таким образом uTorrent-ом. Если он уже запущен, то добавлении торрентов из браузеров или просто кликом на *.torrent файле не срабатывает - не появляется окно добавления закачки. Что это может быть? Добавленно. А если дампить с помощью ImpREC, как в туторе AKAB - то все нормально. ![]() ![]() |
|
Создано: 24 октября 2010 13:57 · Личное сообщение · #19 StUser пишет: Только дампил PETools.Заметил одну проблему с распакованным таким образом uTorrent-ом. Если он уже запущен, то добавлении торрентов из браузеров или просто кликом на *.torrent файле не срабатывает - не появляется окно добавления закачки. Что это может быть? Скорее всего был косяк с настройками в PETools. ----- We do what we want because we can. ![]() |
|
Создано: 24 октября 2010 17:32 · Поправил: StUser · Личное сообщение · #20 verdizela Скорей-всего. Я тут подумал, для моих целей, возможно, и распаковывать не надо. Если я в оригинальный exe вставлю перед jmp-ом на OEP что-то типа: Code:
То никаких косяков по-идее не должно вылезти? Я там просто меняю условный переход на безусловный. Или адрес этого jmp-а будет меняться в зависимости от системы? ![]() |
|
Создано: 24 октября 2010 18:25 · Личное сообщение · #21 |
|
Создано: 24 октября 2010 19:28 · Личное сообщение · #22 |
|
Создано: 24 октября 2010 22:51 · Личное сообщение · #23 |
|
Создано: 25 октября 2010 00:51 · Поправил: 4kusNick · Личное сообщение · #24 |
|
Создано: 25 октября 2010 17:45 · Поправил: StUser · Личное сообщение · #25 То есть сегмент памяти, куда распаковывается код, может меняться и MOV BYTE PTR DS:[40AEDA],0EB может записать патч не туда? Тогда как лучше патчить без распаковки? Придумал пока такой вариант, вместо: Code:
делаю: Code:
В ESI в данном случае, как я понял, хранится адрес начала секции, куда UPX распаковывает код(???). У меня это постоянно 0x401000. Теоретически, такой вариант патчинга должен срабатывать и для случаев, когда, как пишет Vovan666, exe-шник грузится куда-попало? ![]() |
|
Создано: 25 октября 2010 18:10 · Личное сообщение · #26 |
|
Создано: 25 октября 2010 18:33 · Личное сообщение · #27 |
|
Создано: 28 ноября 2010 06:42 · Личное сообщение · #28 AKAB пишет: я сделал tutrial специально для тебя www.mediafire.com/?ytrrhjtck5mgwdk Уважаемый, если вас не затруднит, может можно такой же для BitTorrenta сделать? download.bittorrent.com/dl/BitTorrent-7.2.exe Я по вашему туториалу распаковал его, а обратно не запаковывается. DiE Scan 0.64 пишет "UPX <Modified>", а FastScanner 3 final выдал "UPX v3.0", но распаковать не может. ![]() |
|
Создано: 29 ноября 2010 02:31 · Личное сообщение · #29 Prividenie пишет: Уважаемый, если вас не затруднит, может можно такой же для BitTorrenta сделать? --> Link <-- Я по вашему туториалу распаковал его, а обратно не запаковывается. DiE Scan 0.64 пишет "UPX <Modified>", а FastScanner 3 final выдал "UPX v3.0", но распаковать не может. www.mediafire.com/?upvcyuy1mu2kpj5 ![]() |
|
Создано: 29 ноября 2010 05:06 · Личное сообщение · #30 AKAB пишет: www.mediafire.com/?upvcyuy1mu2kpj5 Спасибо! Но он всё равно не хочет сжиматься, UPX-ом. Насколько я понял, из того что мне говорили на ru-board, он не правильно распакован. На ru-board мне давали нормально распакованную версию, но она более старой версии. Извиняюсь за беспокойство, и ещё раз спасибо за попытку помоч. ![]() |
. 1 . 2 . >> |
![]() |
eXeL@B —› Вопросы новичков —› Помогите распаковать новый uTorrent 2.2 RC2 |
Эта тема закрыта. Ответы больше не принимаются. |