Хостинг серверов Minecraft playvds.com
  1. Вы находитесь в русском сообществе Bukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на русский язык плагины наших собратьев из других стран.
    Dismiss Notice

Туториал [1.7.2] Внутриклиентная проверка по MD5 для вашего клиента

Discussion in 'Руководства, инструкции, утилиты' started by EvilEnginer, Mar 11, 2014.

  1. Автор темы
    EvilEnginer

    EvilEnginer Активный участник Пользователь

    Trophy Points:
    88
    Имя в Minecraft:
    EvilEnginer
    Внимание - для этого гайда вам потребуется кодер пак для обычного ванильного майна версии 1.7.2. Скачать его можно тут

    Когда то sashok724 создавал темку по проверке клиента по MD5 под версию майна 1.0. Я портировал его защиту на майн 1.7.2 и допилил пару плюх на проверку длины строк.

    Итак по порядку:
    1) Качаем кодер пак устанавливаем - этому я учить не буду
    2) Скачиваем исходные коды из вложения
    3) Файлы *.java из архива помещаем в папку mcp903\src\minecraft\net\minecraft\client\gui
    4) Скрипт check.php заливаем на сайт
    5) Открываем eclipse и редактируем строки 93, 105, 368, 380,
    6) Если название вашего файла не minecraft.jar то редактируем строки 384, 395,428,429

    Значит так поясню детали плюхи собственно код

    Code:
     byte[] utf8 = null;
                int urlCount = 0;
                try {
                      utf8 = md5url.getBytes("UTF-8");
                      urlCount = md5url.length();
                    } catch (UnsupportedEncodingException ex) {
                      ex.printStackTrace();
                    }
                System.out.printf("[MD5] UTF-8 MD5 Url Byte Count: %d\n", urlCount);
    Выводит длину строки md5url
    Code:
    String md5url = "http://your_domain/check.php?md5=";

    Условие сверяет длину строки с контрольным числом
    Code:
     if(urlCount != 38)
                {
                  multiplayerButton.enabled = false;
                }
    Конечно эта штука уязвима но можно запутать пользователя и не дать ему сломать защиту вашего minecraft.jar с собственной системой обфускации например + контрольная сумма архива изменится в любом случае и клиент не пустит игрока но это не помешает ему использовать другой minecraft.jar если лаунчер взломали каким то образом. В общем пока что я не придумал как модифицировать библиотеку авторизации сервера чтобы сервер проверял ответ скрипта check.php при входе игрока на сервер - нет достаточного опыта. Но думаю если выйдет то получится подобие серверной защиты на самую последнюю версию майна в паблике. Собственно именно поэтому я пишу сюда :D.
    Всем спасибо и я прошу вас нажать кнопку мне нравится, если этот небольшой мод оказался для вас полезным. Жду отзывы и идеи.
     

    Attached Files:

    • MD5.zip
      File size:
      7.5 KB
      Views:
      5
    Last edited: Mar 11, 2014
    Plasticable and Hephest like this.
  2. Хостинг MineCraft
    <
  3. alexandrage

    alexandrage Администратор

    Trophy Points:
    173
    Skype:
    alexandr0116
    1) Самый банальный фикс этого, заменой главного меню на оригинал!
    2) О да мне нравится это String s4 = "minecraft.jar";
    кладем измененную копию клиентя с другим именем рядом с оригиналом.
    3) И это мне понравилось

    $md5 = $_GET["md5"];
    $realmd5 = md5(file_get_contents("minecraft.jar"));
    if($md5 == $realmd5) { echo ("OK"); } else { echo ("ERROR"); }
    ---------------------------------------------------------------------
    your_domain/check.php?md5=(realmd5)&AdminLuzer=

    4) А это мой безотказный фикс java -cp cheat.jar;minecraft.jar.[DOUBLEPOST=1394515923,1394515703][/DOUBLEPOST]Как же смешно смотреть на новичков которые наступают на старые грабли!
     
    Last edited: Mar 11, 2014
    General and saharin94 like this.
  4. dirt34

    dirt34 Старожил Пользователь

    Trophy Points:
    143
    Skype:
    alucid2
    Имя в Minecraft:
    dirt34
    Я так понимаю эта проверка даёт возможность проверять все файлы во время игры?
     
  5. dirt34

    dirt34 Старожил Пользователь

    Trophy Points:
    143
    Skype:
    alucid2
    Имя в Minecraft:
    dirt34
    Давай без этого пожалуйста. Ты тоже когда то не знал этого. Лень описать в двух словах?
     
  6. alexandrage

    alexandrage Администратор

    Trophy Points:
    173
    Skype:
    alexandr0116
    Я и написал, хрень это и никак вам не поможет.
     
  7. dirt34

    dirt34 Старожил Пользователь

    Trophy Points:
    143
    Skype:
    alucid2
    Имя в Minecraft:
    dirt34
    но я правильно понимаю что это проверка во время игры?
     
  8. dirt34

    dirt34 Старожил Пользователь

    Trophy Points:
    143
    Skype:
    alucid2
    Имя в Minecraft:
    dirt34
    Вместо того что бы рассказать, показать, объяснить ты начинаешь оскор****ь, это по твоему нормально?
    А если у тебя нет уважения(Его и так нет, мы считаем себя виликими знатоками, как будто мы прожили жизнь, многое познали) к тем кто в той или иной сфере деятельности не совсем шарит то пожалуйста уйди с форума или хотя бы не пиши никому и никуда.[DOUBLEPOST=1394651721,1394651684][/DOUBLEPOST]
    и можно было это сказать без оскорблений?[DOUBLEPOST=1394651764][/DOUBLEPOST]
    Если тебе нужно повыделываться то это уже диагноз который называется "Звезда над головой", которая к хорошему не приводит
     
  9. alexandrage

    alexandrage Администратор

    Trophy Points:
    173
    Skype:
    alexandr0116
    @dirt34, В моем первом же посте все сказано было. И нечего тут пукан рвать.[DOUBLEPOST=1394655272,1394655200][/DOUBLEPOST]
    И зачем было переспрашивать очевидное?
     
  10. WCRAFT

    WCRAFT Старожил Пользователь

    Trophy Points:
    173
    Skype:
    worldplaytv
    Имя в Minecraft:
    World
    Малек, ты на кого напал, он тебе в папы годится, эта "защита" тоже самое что и лаунчер, и её можно выпилить за 5 секунд.
     

Share This Page