Многие знают про игру Botva Online, а скорее всего и про ее удобного бота Botva Assistance, но отдавать за него 330 рублей... меня душит жаба (наверно не только меня). Может попробуем коллективно его сделать бесплатным? Прошу о помощи, так как сам еще совсем зеленый в этом деле, но научится хочу. Для вскрытия проги использую софт: Kurapica DotNET DeObfuscator v0.5 - для деобфускации функций Reflector + модуль Reflexil (для внесения изменений в код IL) Деобфусцированный экзешник проги не запускается, поэтому в рефлекторе приходится открывать сразу два экзешника и по эталону деобфусцированного редактировать обфусцированый. Чего я добился пока: В деобфусцированном файле Namespace_1 -> Class_6_Form -> Function_Boolean_4 Code: private bool Function_Boolean_4() { if (this.Function_String_1(this.Field_3.Text) == this.Function_String_1(this.Function_String_1(this.Field_2.Text + Class_9_Object.Function_String_1(0x1b7bf8fa)).ToUpper())) { MessageBox.Show(Class_9_Object.Function_String_1(0x1b7b2f0b)); this.Procedure_2(); return true; } MessageBox.Show(Class_9_Object.Function_String_1(0x1b7b2ed4)); return false; } В данной функции в первом if сменить его на if !(... , что заставит прогу принимать любой серийник кроме правильного. Но дальше идут еще какие-то проверки, что не дает проге до конца принять неправильный серийник. Я нашел еще одну функцию, в деобфусцированном файле Namespace_1 -> Class_3_Form -> Procedure_85(object , EventArgs) в которой, как мне кажется идет последующая проверка кода...... но вот к сожалению, что делать дальше я не знаю... пытался что то сделать дня 3, потом времени не было, сейчас время появилось, опять решил побиться..... а так же попробовать обратиться к более продвинутым в этом деле. У кого какие мысли еще есть по дальнейшим шагам? ЗЫ: не по уровню я себе выбрал объект для взлома, но эта прога мне была бы полезна в дальнейшем, а платить за нее не хочется Всем заранее спасибо за отклики на мою просьбу. ЗЫ: скачать прогу можно вот тут http://botva.onlinebots.net/download
Да, этого действительно было достаточно... Как я сам то не догадался что проверка регистрации проходит в форме типа сплэшскрина. Но теперь другая проблема.... эта зараза рвется на сервер чтобы проверить обновления и соответственно проверяет ключ. (естественно введённый ей не нравится )
Не запустится. Мб идея бредовая,но все же. Заменить сервер проверки на свой в hosts и создать свой скриптик,который возвращал true,или,что он там должен возвращать
Ботва ассистанс строит защиту на следующем: 1. Генерится ключ на основе аппаратуры компа (незнаю какой да и не важно) 2. По ключу автор генерит свой ключ, он проверяется при вводе формы, и теперь ещё при запуске программы (кусок кода показанный Kaimi) 3. При запуске бота, он стучится к серверу ассистанса, при этом проверяет серийный ключ, и версию. Причём проверка серийного ключа сделана с помощью той же функции которая работает непосредственно с ботвой, и есть проверка на выпиливание (она обязанна выполнится). Если сервер не найден, бот не запустится (отсечение файрволлом тоже забудьте) 4. Проверяется модификация файла hosts, чтобы вы не перенаправили бота на локальный сервер (я его только за это поломал бы) Вот собственно и всё. Из подсказок лично от себя скажу. 1. У тебя отвратительный деобфускатор, найди тот, который хотябы строки будет показывать, а от того что ты используешь толку нету, проще копаться сразу в недеобфусцированном 2. Серийный ключ ассистанса это md5(ключ исходный+botva assistance) в верхнем регистре разумеется. То есть можно попробовать изящно выпилить обращение к серваку, и сгенерить себе ключ, или выпилить проверку hosts и сделать свой сервак, или перенаправить трафик чем то ещё (проксиком например). ПыСы. если помог, плюсик знаешь где ) Ну и на последок, если взломаешь, используй для себя, но не кидай в паблик, автор на него всётаки кучу времени потратил, а товарищы которые не могут залезть внутрь и покопаться, пусть платят 330р, не огромные это деньги.
http://sites.google.com/site/simpledotnet/simple-assembly-explorer (отдельное спасибо zeppel1n за то что открыл для меня в своё время эту замечательную тулзу)