Сейчас на форуме: bartolomeo (+4 невидимых) |
eXeL@B —› Вопросы новичков —› прога под дос на 5.25" дискете |
. 1 . 2 . >> |
Посл.ответ | Сообщение |
|
Создано: 03 мая 2006 09:05 · Личное сообщение · #1 |
|
Создано: 03 мая 2006 12:57 · Личное сообщение · #2 |
|
Создано: 03 мая 2006 17:40 · Личное сообщение · #3 На всякий случай - враг собственной персоной. 1992 год однако. 8be5_03.05.2006_CRACKLAB.rU.tgz - convoy.arj |
|
Создано: 04 мая 2006 07:17 · Личное сообщение · #4 |
|
Создано: 04 мая 2006 09:17 · Поправил: tundra37 · Личное сообщение · #5 zuk пишет: придется изучать Если так, то помогу. Саму защитную программу изучать нет смысла - это долго. Надо бороться с isimage.exe В ней перехватывают прерывания INT 1 и INT 3. Причем прерывание INT 3 используется. Поэтому трассировка и бряки приводят к ее зависанию. Я при случае попробую снять эти "заморочки" и проверить работоспособность отладчика. Остальное в твоих руках - может повезет или кто еще добрый попадется. По поводу отладки. Т.к. прога на Борланде ( ega.bgi), то можно ее прямо под Виндами ( даже 2000-м) отлаживать Турбо-Дебаггером стареньким. Только отследить запись в ячейки 0:4 0:6 ( INT 1) и 0:C 0:E (INT 3). Когда встретится INT 3, придется ее эмулировать. К сожалению Турбо-дебаггером это не просто сделать. Возможно анти-глюкер умеет... Если старый Softice умеет аппаратные бряки делать, то можно им, но это уже в чистом ДОС-е или Вин 3.11 ++++++++++++++++++++++++ А что с дискетой случилось. Может проще ее восстановить ?! Кстати возможно, что без нее вообще ничего не получится, если ключ поменяли - в архиве convoy ключ есть, но где гарантия что это именно твой. Кстати, ссылочку дай на статью про взлом, но если там про адрес E8E, как в ruhacker.narod.ru/teach.htm , то увы - алгоритм шифровки остался старым наверное, но адреса поменялись. Но если действительно ключ - это слово, то не все еще потеряно. |
|
Создано: 04 мая 2006 12:59 · Личное сообщение · #6 tundra37 пишет: Кстати, ссылочку дай на статью про взлом это ruhacker.narod.ru/teach.htm я уже смотрел. адрес другой странички к сожалению не помню, вот кусок из нее (сохранена на компе): ---- Q: Есть такая защита - Convoy, как снять ее? A: У меня ушло на нее 4 часов, при этом я вскрыл ее не имея ключевой дискеты: на самом деле с диска читалось 400h байт, а потом из них получали СЛОВО, посредством немерянных преобразований, по которому затем просто xor-или процедурку раскодирования основной программы, а потом и саму программу. Это слово можно получить простым перебором (проверка на правильность раскодирования там уже написана - считает контрольный xor). Ключевое слово можно отыскать проще: Проверка на правильность состоит в том, что нечетное число слов x1, x2, ..., xn (зашифрованные данные) xorятся ключевым словом y, получается x1 xor y,x2 xor y,...,xn xor y (расшифрованные данные). Далее считается их контрольный xor = (x1 xor y) xor (x2 xor y) xor ... xor (xn xor y), который, ввиду нечетности n, просто равен (x1 xor x2 xor ... xor xn) xor y, и сравнивается со словом z (т.е. его значение нам известно . Hо тогда слово y можно вычислить по формуле : y = (x1 xor x2 xor ... xor xn) xor z А можно и еще проще : Учитывая то, что код процедурки раскодирования основной программы во всех версиях начинается со слова 0DB33h, то ключевое слово просто вычисляется в лоб: начальное слово зашифрованного кода xorим с 0DB33h и получаем то, что надо. ---- при запуске программы с дискетки программа говорит, что key disk not found. я пытался дискетку копирнуть fda, не вышло. |
|
Создано: 04 мая 2006 14:38 · Личное сообщение · #7 zuk пишет: при запуске программы с дискетки программа говорит, что key disk not found. Так это всегда было или все-таки "испортилось" ?! Про ссылочки - это я все видел. Колдую с эмулятором bochs - он позволяет отлаживать "извне", т.е. программа и не узнает, что она не на настоящей машине bochs.sourceforge.net/ |
|
Создано: 04 мая 2006 16:01 · Личное сообщение · #8 |
|
Создано: 04 мая 2006 18:40 · Личное сообщение · #9 Ну вообщем ситуация такая. Bochs позволяет покомандно отслеживать что делает программа и делать остановы в нужных местах. Т.е. если с ключом алгоритм не изменился, то можно будет все отломать на днях. Правда автор предусмотрел и эмулятор похоже. Поросенок - он поставил циклы на 65000 пустые. Нужны макросы, а в bochs их нет |
|
Создано: 05 мая 2006 14:42 · Личное сообщение · #10 |
|
Создано: 05 мая 2006 15:01 · Личное сообщение · #11 |
|
Создано: 06 мая 2006 08:37 · Поправил: tundra37 · Личное сообщение · #12 Asterix В VPC и VmWare нет встроенного отладчика. Даже под bochs нарвался на на пустой цикл - CX=0. На всех этапах расшифровки используется вызов INT 3( это скорее всего можно обойти), но еще куча хитростей типа вызова INT 21 через call и команд типа pop word ptr ds:0xd1b5 после которой происходит переход в обработчик в протект-моде. Короче на этой программе можно поучится многому. zuk Задание есть : попробуй изготовить защищенную дискету с помощью convoy /x test.exe Я пробовал на нескольких компах и даже относительно старых, но на 3-хдюймовых не идет он. Просто лень ковырять то, что народ уже сломал 10 лет назад. Если защита окажется такой же, как в твоей программе, то перейду к "кавалерийскому наскоку" - попытаюсь не трассируя защиту, побороть ее, угадав ключ и место куда его надо ставить. +++++++++++++++++++++++++++++++ Вроде все прояснилось - короче теперь только время свободное нужно. |
|
Создано: 06 мая 2006 11:22 · Личное сообщение · #13 Привет! tundra37 пишет: Задание есть : попробуй изготовить защищенную дискету с помощью convoy /x test.exe пробовал уже, не создает - выдает ошибка диска. пробовал даже под bochs, выдал код иошибки и просьбу позвонить по телефону ) попробую на 5.25, есть у меня один дисковод, 386 комп с 40 Мб винтом. |
|
Создано: 06 мая 2006 14:16 · Личное сообщение · #14 zuk пишет: пробовал уже, не создает - выдает ошибка диска. Это хорошо, что вы не ленивы Еще бы зоркий глаз. convoy /debug_ /x test.exe Номер ошибки вроде 24, а адреса - 2 цилиндр, 0-головка, 48 сектор и длина 27776 ! Кстати забыл сказать - запускать надо в 98-м и ниже. В bochs тоже бесполезно. ++++++++++++++++++++++++++++++++++= Если запустить bochsdbg.exe, выполнить команду c(continue) и получить соощение Key disk not found, то вызвав отладчик по ctrl+с можно командой х /100mc 0x28000 выдать дамп и поискать в нем это сообщение. Естественно придется перебирать адреса от 28 и выше - у меня 0x2f410, но я гоняю китайский мини-98. Если добавить в конфиг debugger_log: deb.out , можно выдать х /30000mc 0x20000 и искать потом в файле лога. Это если вдруг хочешь сам посмотреть, что программа делает - надо найти адрес начала. Я именно так искал, т.к. по брякам не удалось. |
|
Создано: 06 мая 2006 14:39 · Поправил: tundra37 · Личное сообщение · #15 |
|
Создано: 06 мая 2006 15:17 · Поправил: Asterix · Личное сообщение · #16 |
|
Создано: 06 мая 2006 17:26 · Личное сообщение · #17 Asterix пишет: я имел ввиду связку VPC(VMWare)->Win98->TRW2000(отладчик) если она не пашет, тогда DOS->DeGlucker Моя связка меньше : bochsdbg -> дискета с ДОС+программа. DeGlucker конечно вариант, но он наверняка потребует 98-го. Увы без дискетки( пусть даже с неправильным ключом) тоскливо - нет гарантии что проверка, которую я нашел, сработала из-за отсутствия ключа или даже просто из-за того, что bochs физику дискеты не эмулирует. Кстати две идеи возникло - 1)физдискету под 98-м под bochs погонять и 2)обойти сообщение об ошибке при создании ключа на дискете под bochs - это уже при тестовом прогоне создания защищенного экзе. Во втором случае я получу защищенную программу, но без ключа - все-таки инфа. |
|
Создано: 08 мая 2006 10:36 · Поправил: tundra37 · Личное сообщение · #18 Asterix пишет: может в этой статье что-нибудь полезное найдете Не то слово. Прямо в яблочко. Вот что в трассе, за 95% до конца: (0).[542074972] [0x0003b3b3] 3a5e:0dd3 (unk. ctxt): jnz .+0xdca ; (0).[542074973] [0x0003b3b5] 3a5e:0dd5 (unk. ctxt): mov word ptr cs:0xc31, 0x1 ; 2ec706310c0100 (0).[542074974] [0x0003b3bc] 3a5e:0ddc (unk. ctxt): stc ; f9 (0).[542074975] [0x0003b3bd] 3a5e:0ddd (unk. ctxt): retf ; По сравнению со статьей, 1 в ячейку. Гран мерси Asterix Главное, я совсем забыл про dlrd - действительно Досовые int3, int1 абсолютно не страшны Виндовому айсу - они в разных пространствах обитают Просто bochs уже настроенный был, а айс я уж год наверное почти не трогаю. ++++++++++++++++++++ zuk Проблема с созданием дискеты, наверное, в скорости компа. Нужно искать доПентиумный и можно с 3-мя дюймами. На 1-м Пентиуме помогает отключение внутреннего кеша |
|
Создано: 08 мая 2006 18:08 · Личное сообщение · #19 Asterix пишет: я имел ввиду связку VPC(VMWare)->Win98->TRW2000(отладчик) Проверил. TRW2000 ( v1.23) сходит с ума после первого INT 3. Две команды и аут. I3here off , бряки только аппаратные. Жаль - действительно удобный отладчик - под айс косит. Ну да можно в bochs такой же забацать - текст-то есть. |
|
Создано: 10 мая 2006 09:18 · Личное сообщение · #20 |
|
Создано: 10 мая 2006 09:38 · Личное сообщение · #21 |
|
Создано: 14 мая 2006 17:59 · Личное сообщение · #22 1) Напрягся я и понял, чего не любят отладчики под ДОС. В этой проге помимо задания собственных обработчиков INT1 и INT3, на выходе обработчика по INT3 устанавливается бит "трассировки". Этот же бит устанавливается при выходе из обработки INT1(точнее бита трассировки). Ни один из деглюкеров, даже SoftIce 4.05 под 98-м(правда под виртуалкой) не могут это обойти правильно. Если учесть, что защита сделана в 1993 году( по крайней мере копирайт 1993), то я снимаю шляпу перед автором. Где-то он теперь работает ?! 2) Сравнил защиту 1992 и 1993 годов. Антиотладочный прием был введен только в новой версии, поэтому ценность советов по снятию защиты почти нулевая, т.к. автор слегка поменял алгоритм шифрования и наверняка теперь использует другой алгоритм проверки. 3) Наиболее ценная статья указанная Asterix, только придется учесть, что автор любит делать "искуственный выход из подпрограмм" и если не удастся победить его антиотладку под реальным 98-м, то придется писать обработчик трасс эмулятора bochs, чтобы засечь, когда call кончается не ret, а jmp на продолжение алгоритма. 4) Я научился компилить bochs под Винды и даже исправил глюк с точками останова по доступу к памяти. Если реализовать дамп памяти в файл и поправить дизассемблер, то можно будет работать. А так - одна морока. |
|
Создано: 14 мая 2006 18:23 · Поправил: =TS= · Личное сообщение · #23 |
|
Создано: 15 мая 2006 10:11 · Личное сообщение · #24 =TS= пишет: Юзай Axe-Hack отладчик или AvpUtil Могу приаттачить программу - попробуй сам. Честно говоря, про эти программы слышу первый раз и потому - "не верю!". =TS= пишет: Юзай VMWARE или вообще грузись с дискетки с RAM-диском на компе с отключеным винтом... Про VmWare понятно - не очень хочется на голой 98-й работать. А про дискету и без винта - это перебор, хотя под bochs я именно это и делаю - ДОС-дискета, программа и все - даже РАМ-диска нет. Кстати Софт-айс 2.80(ДОС) тоже умещается на ту же дискету, но под bochs и VirtualPC не хотит он работать. ================================ На самом деле отладчик нужен только для скорости. Все программы работы с флопом я вижу, программы верхнего уровня тоже можно выделить, но защита периодически что-то пишет в область команд и сначала надо определить "красную зону", а потом уж можно будет дизассемблер снимать. И вообще - время советов уже прошло, поисковиками я умею пользоваться - жду реальной помощи, хотя самое трудное - это вспомнить давно забытое мной описание регистров контроллера флопов и проскрестисть сквозь "замусоренный" код. А главное - если автор пошифровал программу содержимым 2-х секретных секторов, то все почти бесполезно - восстановить 1024 байт по 170 кило нереально. Поэтому я и не тороплюсь, тем более что теперь ясно, что сказочка про легкое восстановление одного слова, для новой версии защиты скорее всего именно сказка. Да, в библиотеке Мошкова было два дистрибутива системы convoy. В нынешней библиотеке я что-то программ(особенно старых) не нашел. |
|
Создано: 15 мая 2006 12:53 · Поправил: tundra37 · Личное сообщение · #25 =TS= пишет: Юзай Axe-Hack отладчик или AvpUtil Сначала прочитай внимательно с чем я имею дело. AvpUtil загнулся на подмене прерывания INT1, которое SoftIce прекрасно проходит. Правда вчера на гугле в ньюсах я нашел обсуждение, в котором четко об"ясняется как такая легкость может порушить алгоритм расшифровки. AxeHack вообще в FAQ вынесен. Тема конечно в "Вопросах для новичков", но она уже ее давно переросла. +++++++++++++++++++++++++++++++++ Ну вот, слегка победил отладчики. Софт-айс для ДОС 2.80 позволяет по аппаратной точке останова добраться до конца цикла расшифровки. И ....... программа восстановлена неверно. Проверено на дискете с ДОС под VmWare и на реальной машине. И то хлеб - не надо реальный комп гонять и перезагружать. Блин, в 98-м тоже заработало - я точку останова ставил неправильно. А я уж собрался все софт-айсы проверять, но в 4.27 все та же ляпа - его "видно" !!! И видит его программа написанная в 1993 году. Не думаю, что в плане невидимости деглюкеры и прочие с ним сравнятся. ++++++++++++++++++++++++++++ Сосветил. Как и предполагалось, указатель стека на 2 сдвинут. Соответственно и часть регистров исказилась. После исправления их на то, что "нужно", программа расшифровалась верно. Следующий шаг - ловим следующий INT1 |
|
Создано: 15 мая 2006 20:54 · Личное сообщение · #26 В аттаче AVP Util, AXE-Hack ищи сам ЗЫ. На реверсинг защиты нету времени -- диплом 23ae_15.05.2006_CRACKLAB.rU.tgz - Avputil.com ----- DREAMS CALL US |
|
Создано: 16 мая 2006 12:45 · Личное сообщение · #27 |
|
Создано: 16 мая 2006 13:30 · Личное сообщение · #28 |
|
Создано: 16 мая 2006 15:04 · Личное сообщение · #29 =TS= пишет: AXE-Hack -- эмулирующий с очень крутыми наворотами, имхо под досом он даже круче айса просто попробуй Попробую при случае. Мои проблемы с отладчиком разрешились. Во всем виновата утилита ldr/dldr - она искажает регистры на входе. Если работать с софтайс чисто - прога в bochs и под софтайс работает идентично. Поэтому никакой супер-защиты нет, просто алгоритмы замаскированы и все. Просто надо аккуратно пользоваться инструментами и не облегчать себе жизнь вспомогательными утилитами. |
|
Создано: 02 июня 2006 08:42 · Личное сообщение · #30 |
. 1 . 2 . >> |
eXeL@B —› Вопросы новичков —› прога под дос на 5.25" дискете |