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

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

Ранг: -0.1 (гость)
Активность: 0.010
Статус: Участник

Создано: 29 ноября 2011 15:13 · Поправил: peopl
· Личное сообщение · #1

Есть код который проверяет на наличия ключа. Как его можно пропатчить в WinHex и SAE ?




Ранг: 164.6 (ветеран), 65thx
Активность: 0.120
Статус: Участник
Волшебник

Создано: 29 ноября 2011 15:15
· Личное сообщение · #2

В правильно сформулированном вопросе содержится половина ответа. Пропатчить проверку наличия ключа.

-----
Следуй за белым кроликом




Ранг: -0.1 (гость)
Активность: 0.010
Статус: Участник

Создано: 29 ноября 2011 15:30
· Личное сообщение · #3

Code:
  1. private void esnJqbamQ(object sender, EventArgs e)
  2. {
  3.     this.timer_0.Stop();
  4.     try
  5.     {
  6.         string str3;
  7.         string s = string.Empty;
  8.         WebClient client = new WebClient();
  9.         string str2 = Class0.smethod_3();
  10.         if (this.mainWindow_0.SettingsForm.tEmail2.Text.Trim(  ) != "")
  11.         {
  12.             str3 = "http://game-bots.net/moswar/verify4.php?id=" + str2 + "&email=" + this.mainWindow_0.SettingsForm.tEmail2.Text.Trim()  ;
  13.         }
  14.         else
  15.         {
  16.             str3 = "http://game-bots.net/moswar/verify4.php?id=" + str2;
  17.         }
  18.         s = client.DownloadString(str3);
  19.         if (== "false")
  20.         {
  21.             string str4;
  22.             if (this.mainWindow_0.SettingsForm.groupBox_3.Visible  )
  23.             {
  24.                 str4 = "Ваш MosWar@Game-Bots.net ID '" + str2 + "' заблокирован!\nЕсли Вы не уверены";
  25.             }
  26.             else
  27.             {
  28.                 str4 = "Ваш MosWar@Game-Bots.net ID '" + str2 + "' для E-mail '" + this.mainWindow_0.SettingsForm.tEmail2.Text.Trim()   + "' заблокирован!\nЕсли Вы не уверены";
  29.             }
  30.             this.mainWindow_0.AddLogText(str4 + " в причинах блокировки, обратитесь, пожалуйста, по ICQ техподдержки: 603137693.", "red");
  31.             this.mainWindow_0.Terminate();
  32.         }
  33.         else if (== "multiple")
  34.         {
  35.             string strText = "Для правильной работы бота необходимо в настройках ввести E-mail, на который вы регистрировали бота.";
  36.             this.mainWindow_0.AddLogText(strText, "orange");
  37.             this.mainWindow_0.Terminate();
  38.             this.mainWindow_0.SettingsForm.groupBox_3.Visible = true;
  39.         }
  40.         else if (int.Parse(s) <= 0)
  41.         {
  42.             this.mainWindow_0.keyDialog.lblInfo.Text = "Срок действия Вашего ключа уже истек";
  43.             this.mainWindow_0.keyDialog.btnReg.Text = "Зарегистрировать";
  44.             this.mainWindow_0.Terminate();
  45.         }
  46.         this.iabuAyerO = 0;
  47.     }
  48.     catch (WebException)
  49.     {
  50.         try
  51.         {
  52.             if ((new Ping().Send("www.google.com").Status == IPStatus.Success) && (++this.iabuAyerO > 3))
  53.             {
  54.                 this.mainWindow_0.AddLogText("Ошибка соединения с сервером `game-bots.net`!", "red");
  55.                 this.mainWindow_0.Terminate();
  56.             }
  57.         }
  58.         catch (Exception)
  59.         {
  60.         }
  61.     }
  62.     this.timer_0.Interval = 0xea60 * (10 + this.random_0.Next(5));
  63.     this.timer_0.Start();
  64. }

Можно поподробней как это реализовать и воткнуть обратно в сборку!



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

Создано: 29 ноября 2011 15:39
· Личное сообщение · #4

peopl
Очень даже красивый код.
Code:
  1. 18.        s = client.DownloadString(str3);
закоментировать или сказать переменной s == "".



Ранг: -0.1 (гость)
Активность: 0.010
Статус: Участник

Создано: 29 ноября 2011 15:43
· Личное сообщение · #5

а как это все воткнуть обратно в exe ? Это самый главный вопрос




Ранг: 164.6 (ветеран), 65thx
Активность: 0.120
Статус: Участник
Волшебник

Создано: 29 ноября 2011 15:49 · Поправил: neomant
· Личное сообщение · #6

Никакой проверки ключа здесь не происходит, разбирается лишь ответ от сервера. Как вариант можете повыкидывать все проверки оставив только строку
Code:
  1. this.iabuAyerO = 0;
Как пропатчить .Net приложение ищите ответ и соответсятвующие инструменты на форуме.

-----
Следуй за белым кроликом





Ранг: 793.4 (! !), 568thx
Активность: 0.740
Статус: Участник
Шаман

Создано: 29 ноября 2011 15:59
· Личное сообщение · #7

Если совсем примитивно, то ildasm->вырезаем->ilasm->профит

-----
Yann Tiersen best and do not fuck




Ранг: 330.4 (мудрец), 334thx
Активность: 0.160.17
Статус: Участник
ILSpector Team

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

а еще в sae место "if (s == "false")" - которое в il выглядит "brfalse.s кудато" поменять на "br" с переходом на строку this.iabuAyerO = 0 - но этот вариант слишком простой.



Ранг: -0.1 (гость)
Активность: 0.010
Статус: Участник

Создано: 29 ноября 2011 16:48
· Личное сообщение · #9

PE_Kill пишет:

Если совсем примитивно, то ildasm->вырезаем->ilasm->профит

Открыл я в ildasm приложение нашел где код , а как от туда вырезать.Там вообще нечего не получается делать!Или как в SAE так сделать?



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

Создано: 29 ноября 2011 17:12
· Личное сообщение · #10

Medsft пишет:
а еще в sae место "if (s == "false")" - которое в il выглядит "brfalse.s кудато" поменять на "br" с переходом на строку this.iabuAyerO = 0 - но этот вариант слишком простой.

Это не будет работать !
peopl
Варианта 2-а
1. Замени Адрес проверки на свой.
2. Пробуй подменить переходы на обратные.



Ранг: 330.4 (мудрец), 334thx
Активность: 0.160.17
Статус: Участник
ILSpector Team

Создано: 29 ноября 2011 18:44
· Личное сообщение · #11

Tyra пишет:
Это не будет работать !
почему?



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

Создано: 29 ноября 2011 18:51
· Личное сообщение · #12

Medsft пишет:
почему?

А Вы Попробуйте на Любои простом проэкте. У Меня получалось менять brfalse только на brtrue ! Это Вам не С++ !




Ранг: 127.3 (ветеран), 44thx
Активность: 0.090
Статус: Участник

Создано: 29 ноября 2011 20:32
· Личное сообщение · #13

Tyra пишет:
А Вы Попробуйте на Любои простом проэкте. У Меня получалось менять brfalse только на brtrue ! Это Вам не С++ !

потому что в стеке значение прыгать или нет. можно сделать pop br например, или убрать опускание в стек условия для прыжка.

-----
zzz


| Сообщение посчитали полезным: Medsft


Ранг: 793.4 (! !), 568thx
Активность: 0.740
Статус: Участник
Шаман

Создано: 30 ноября 2011 05:53
· Личное сообщение · #14

Tyra пишет:
Это Вам не С++ !

Естественно, сначала нужно ознакомиться со структурой и инструкциями IL кода, прежде чем править, а уже тем более, говорить что так нельзя.

-----
Yann Tiersen best and do not fuck




Ранг: 330.4 (мудрец), 334thx
Активность: 0.160.17
Статус: Участник
ILSpector Team

Создано: 30 ноября 2011 11:15
· Личное сообщение · #15

правильно люди говорят перед инструкцией надо еще занопить ldloc



Ранг: 330.4 (мудрец), 334thx
Активность: 0.160.17
Статус: Участник
ILSpector Team

Создано: 30 ноября 2011 11:24 · Поправил: Medsft
· Личное сообщение · #16

Что-то не могу догадаться может поможете.. можно ли на С# написать такой код который при компиляции даст в il-code последовательность nop`ов?



Ранг: 617.3 (!), 677thx
Активность: 0.540
Статус: Участник

Создано: 30 ноября 2011 12:26
· Личное сообщение · #17

Вместо возни с нопами возьмите Reflector+Reflexil и удалите всё ненужное.



Ранг: 330.4 (мудрец), 334thx
Активность: 0.160.17
Статус: Участник
ILSpector Team

Создано: 30 ноября 2011 15:04
· Личное сообщение · #18

Vovan666 пишет:
Вместо возни с нопами
- то вообще вопрос риторический и к топику отношение имеет опосредованное



Ранг: -0.1 (гость)
Активность: 0.010
Статус: Участник

Создано: 30 ноября 2011 16:19
· Личное сообщение · #19

Как из Hex кода :
Code:
  1. 00001B3005006002000055000011027B360300046F6D00000A7E5800000A0A731301000A0B28EC0000060C027B2F0300047B550000047B070200046F4900000A6FE600000A72DD130070285100000A2C2D7286C800700872DEC80070027B2F0300047B550000047B070200046F4900000A6FE600000A28E000000A0D2B0C7286C8007008285400000A0D07096F1401000A0A0672F2320070285C00000A39AA000000027B2F0300047B550000047B060200046FC700000A2C1472EEC8007008722AC90070285700000A13042B4F1B8D31000001130511051672EEC80070A211051708A21105187270C90070A2110519027B2F0300047B550000047B070200046F4900000A6FE600000AA211051A722AC90070A2110528C600000A1304728EC900701306027B2F03000411041106285400000A72F22900706F49000006027B2F0300046F4C000006389500000006722FCA0070285C00000A2C3C7241CA00701307027B2F030004110772EA0F00706F49000006027B2F0300046F4C000006027B2F0300047B550000047B06020004176FA800000A2B4C06285900000A1308110816303F027B2F0300047B660000047B6C000004720CCB00706F4400000A027B2F0300047B660000047B68000004727E0700706F4400000A027B2F0300046F4C00000602167D3C030004DE582673DA01000A723A78017028DB01000A130911096FDC01000A2D3602257B3C030004175825130A7D3C030004110A193120027B2F030004722633007072F22900706F49000006027B2F0300046F4C000006DE0326DE00DE00027B360300042060EA00001F0A027B3D0300041B6F7500000A585A6F7100000A027B360300046F7200000A2A4134000000000000DD010000520000002F0200000300000037000001000000000B000000D1010000DC0100005800000082000001

Получить код :
private void timer_1_Tick(object sender, EventArgs e)
{
this.timer_1.Stop();
this.int_3 = 0;
this.timer_1.Interval = 60000 * (10 + this.random_0.Next(5));
this.timer_1.Start();
}
Но тоже в формате Hex!



Ранг: 330.4 (мудрец), 334thx
Активность: 0.160.17
Статус: Участник
ILSpector Team

Создано: 30 ноября 2011 16:26
· Личное сообщение · #20

Человек этот бот все равно уже не робит аффтар забил на него, юзай лучше суис .. у тебя какой левел?



Ранг: -0.1 (гость)
Активность: 0.010
Статус: Участник

Создано: 30 ноября 2011 16:39 · Поправил: peopl
· Личное сообщение · #21

Не забил , сегодня уже 1.8.2 вышла .Да и для себя разобраться надо
10 левел



Ранг: 330.4 (мудрец), 334thx
Активность: 0.160.17
Статус: Участник
ILSpector Team

Создано: 30 ноября 2011 17:03
· Личное сообщение · #22

Ты бы лучше сначала c прогой "hello world" разобрался. Что тебе мешает использовать SAE? или reflexil



Ранг: -0.1 (гость)
Активность: 0.010
Статус: Участник

Создано: 30 ноября 2011 17:16
· Личное сообщение · #23

Что то у меня не получается в SAE удалять и добавлять .Расскажи как правильно надо



Ранг: 330.4 (мудрец), 334thx
Активность: 0.160.17
Статус: Участник
ILSpector Team

Создано: 30 ноября 2011 17:46
· Личное сообщение · #24

во вкладке details правая кнопка рулит


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


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