Сейчас на форуме: vsv1, _MBK_ (+3 невидимых)

 eXeL@B —› Вопросы новичков —› Как расколоть тест?
Посл.ответ Сообщение

Ранг: 1.1 (гость)
Активность: 0=0
Статус: Участник

Создано: 26 сентября 2007 17:28
· Личное сообщение · #1

Есть тест. Состоит из файла test.exe и 5-ти файлов test.fad (test1.fad, test2.fad...). *.fad-ы зашифрованы. При запуске test.exe он спрашивает какой из файлов *.fad загрузить. В каждом файле разное количество вопросов - от 127 до 212-ти. Запускается оболочка, где нужно ответить на вопросы. Если выбрать test1.fad, то в нем задается вопрос и перечислено несколько ответов. Нужно напротив правильного ответа поставить в боксе галочку. Если выбрать test2.fad, то в нем нужно набрать на клавиатуре вариант правильного ответа - "да", "нет", "никогда", "34 гайки" етс... Пользую Олли Дебаг. Разных сборок. В основном - SND. IdaPro 4.x по русски не понимает. Другие на моей машине не работают (Сисер и СофтАйс), как только я вокруг нее с бубном не прыгал. Так вот, нашел я в памяти где она берет ответы. Прямо рядом с вопросом "Сколько гаек" через пару байт ответ - 34. В большинстве случаев. Но не всегда. Бывает так, что рядом просто набор мусора какой-то. Это Олли так интерпретирует? Ведь не может она некоторые части блока перевести правильно, а некоторые - нет? Потом, в тех местах, где надо ставить галочки в боксах - там как определить, что галку в нужное место воткнул? Ставил брейки на обращение к данному участку памяти - что-то не сработали.



Ранг: 61.7 (постоянный), 12thx
Активность: 0.090.02
Статус: Участник

Создано: 26 сентября 2007 17:49
· Личное сообщение · #2

Хм, неясно немного- тебе надо, чтобы при неверных ответах прога думала, что верные? проца проверки, думаю, одна. попробовать можно отловить место, где кнопка нажимается, а там потрейсить- и проца нужная, глядишь,найдется.
Кидай екзешник с одним из тестов.



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

Создано: 26 сентября 2007 18:13 · Поправил: SeaMan
· Личное сообщение · #3

А что происходит, например если ты неправильно ответишь? Программа закрывается, или ошибка итд.

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

Думаю так вроде. Хотя вслепую както неочень



Ранг: 61.7 (постоянный), 12thx
Активность: 0.090.02
Статус: Участник

Создано: 26 сентября 2007 18:49
· Личное сообщение · #4

SeaMan - cолидарен.
Попробуй отдизасмить в HDasm, если не пакована, он ASCII строки покажет, либо плагин есть для ольки- ищет сообщения о неверных ответах.



Ранг: 1.1 (гость)
Активность: 0=0
Статус: Участник

Создано: 26 сентября 2007 21:12
· Личное сообщение · #5

Желательно найти верные ответы. Пытался заставить прогу давать правильную оценку - там куча проверок. Сначала выдает, но только отвернешься - сбрасывает, "палит" тебя. Показывает реальное количество правильных ответов и соотв. оценку. Я три уровня этих защит обошел, потом сдался. Там их наверное штук 10. До корня так и не добрался. Потому и хочу ответы посмотреть. Прогу залить не могу - она внутри предприятия. Сам могу кывирять сколько угодно, никто мне ничего не скажет, но выносить не могу. А так бы с удовольствием.
"либо плагин есть для ольки- ищет сообщения о неверных ответах"
- что за плагин? В HDasmе еще не пробовал, но Олли и Ида Про одинаково ее дизасмят. Попробую в HD, но сомневаюсь, что будет что-то другое. Мне еще пояснили, что это организация памяти такая в Windows - блок кончился, вот и пошел мусор в этом месте вместо ответа. Точнее не мусор а адрес другого блока, где ответ лежит. Но что-то я сомневаюсь. Сами то вопросы не разрываются.



Ранг: 1.1 (гость)
Активность: 0=0
Статус: Участник

Создано: 26 сентября 2007 22:16
· Личное сообщение · #6

HDasm дизассемблит только ехе-шник. А вопросы с ответами в другом файле.



Ранг: 61.7 (постоянный), 12thx
Активность: 0.090.02
Статус: Участник

Создано: 26 сентября 2007 23:14
· Личное сообщение · #7

Хм, ясно... Hdasm иногда корректно кириллицу отображает(в причину еще не вник полностью),
плагин держи.
Попробуй все-таки ответы в .fad найти, иначе пока даже и не знаю, как быть тебе...
имхо, проверки в екзешнике, там и надо патчить.
грузи в HIEW, может, че увидишь, там тоже поиск по тексту есть, но в отладке он не поможет, скорее всего.
нереально без проги...


783c_26.09.2007_CRACKLAB.rU.tgz - Ultra String Reference.rar



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

Создано: 27 сентября 2007 16:51
· Личное сообщение · #8

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

Есть 2 варианта.

Вариант номер раз:
Находим программный код (или если так угодно алгоритм) с помощью которого расшифровываются ответы из файлов. Вникаем в алгоритм и пишем прогу, которая с выдранным алгоритмом полностью расшифровывает файлы скажем в текстовый файл.

Вариант номер два:
Ищем место в программе, где каждый раз сравнивается правильный ответ с введённым (я как понял ты уже на это место наткнулся когда нашёл в памяти "34 гайки"), ставим бряк на этот адрес и при каждом новом вопросе "подсматриваем" правильный ответ. Записываем все правильные ответы в какую нибудь базу данных с поисковкой.



Ранг: 1.1 (гость)
Активность: 0=0
Статус: Участник

Создано: 27 сентября 2007 16:56
· Личное сообщение · #9

Я fad вижу только в памяти, когда ехе-шник его запускает и разворачивает там. Т.е. дизасмить один ехе-шник нет смысла. fad только в режиме отладки можно увидеть, когда он подцеплен и распакован. Искать в ехе алгоритм распаковки - мне не по зубам, слишком много времени потеряю. Тем паче, думаю он хорошо запрятан, раз у проги такая нехилая многоуровневая защита, то и распаковку поди закрыли. Т.е. остается все-таки попытаться в памяти снять дамп fad - а и нормально его расшифровать. Благо большинство ответов уже видны. Спасибо за плагин.


 eXeL@B —› Вопросы новичков —› Как расколоть тест?
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


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