Помогите Fix обхода лаунчера через bat-ик

  • Автор темы Автор темы ALLix
  • Дата начала Дата начала

ALLix

Активный участник
Пользователь
Баллы
88
Всем привет, и так данный обход стал достоянием общественности и теперь только ленивый не пользуется этим.

Как это исправить? Есть ли уже решения?

Как я понимаю все упирается в код сессии, достаточно его очищать сразу после авторизации и уже данный способ не будет работать. А вот как это реализовать?! У меня в частности авторизация на DLE.

В общем проблема серьезная. Всем спасибо за ответы.

Система авторизации - бухарика.
Лаунчер от maximusorg
 
С помощью специальной программы(например Wirellesshark) отыскивается код сессии, создаём bat-файл с определённым содержанием, запускаем его и мы зашли на сервер в обход лаунчера и, соответственно, его защиты.
 
Сделать сессию одноразовой, но сессия до входа выдается, поэтому это тоже не особо поможет 🙂
 
Сделать сессию одноразовой, но сессия до входа выдается, поэтому это тоже не особо поможет 🙂

Как я понимаю надо эту сессию стирать сразу после получения. А вот как блин ☹️ Гр****ный Mojang не могут сделать нормальный клиент-лаунчер.
 
эта тема уже обсуждалась на форуме и там приводили решение (одноразовая сессия), воспользуйся поиском
 
эта тема уже обсуждалась на форуме и там приводили решение (одноразовая сессия), воспользуйся поиском

Ага, нашел. Скопирую сюда, будет еще проще найти нуждающимся.

Добавляем/заменяем в файле checkserver.php код :

PHP:
<?php
define('INCLUDE_CHECK',true);
include ("connect.php");
$user = mysql_real_escape_string($_GET['user']);
$serverid = mysql_real_escape_string($_GET['serverId']);
$result = mysql_query("Select $db_columnUser From $db_table Where $db_columnUser='$user' And $db_columnServer='$serverid'") or die (mysql_error());
if(mysql_num_rows($result) == 1) echo "YES";
else echo "NO";
$sessid = generateSessionId();
mysql_query("Update $db_table SET $db_columnSesId='$sessid' Where $db_columnUser='$user'") or die (mysql_error());
function generateSessionId(){
// generate rand num
srand(time());
$randNum = rand(1000000000, 2147483647).rand(1000000000, 2147483647).rand(0,9);
return $randNum;
}

http://www.rubukkit.org/threads/Сессии-в-лаунчере.28470/#post-371667
 
Как я понимаю надо эту сессию стирать сразу после получения. А вот как блин ☹️ Гр****ный Mojang не могут сделать нормальный клиент-лаунчер.
лолчто? Вы используете Minecraft в обход лицензии и еще предъявляете какие то претензии?

ЗАЖРАЛИСЬ!
 
лолчто? Вы используете Minecraft в обход лицензии и еще предъявляете какие то претензии?

ЗАЖРАЛИСЬ!

Это не обход, разработчиками предусмотрено использование. А вот с версии 1.6 начнется канитель. Все лаунчеры можно выкинуть на помойку.
 
Это не обход, разработчиками предусмотрено использование. А вот с версии 1.6 начнется канитель. Все лаунчеры можно выкинуть на помойку.

пфф, исходники не так уж и трудно достать, то есть легко открыть ссылку на скачку или просто перехватить, после создаём обычный лаунчер с этой ссылкой.
 
Это не обход, разработчиками предусмотрено использование. А вот с версии 1.6 начнется канитель. Все лаунчеры можно выкинуть на помойку.
И правильно что все лаунчеры можно выкинуть, наконец-то станет меньше школоло серверов.
 
Ага, нашел. Скопирую сюда, будет еще проще найти нуждающимся.

Добавляем/заменяем в файле checkserver.php код :

PHP:
<?php
define('INCLUDE_CHECK',true);
include ("connect.php");
$user = mysql_real_escape_string($_GET['user']);
$serverid = mysql_real_escape_string($_GET['serverId']);
$result = mysql_query("Select $db_columnUser From $db_table Where $db_columnUser='$user' And $db_columnServer='$serverid'") or die (mysql_error());
if(mysql_num_rows($result) == 1) echo "YES";
else echo "NO";
$sessid = generateSessionId();
mysql_query("Update $db_table SET $db_columnSesId='$sessid' Where $db_columnUser='$user'") or die (mysql_error());
function generateSessionId(){
// generate rand num
srand(time());
$randNum = rand(1000000000, 2147483647).rand(1000000000, 2147483647).rand(0,9);
return $randNum;
}


http://www.rubukkit.org/threads/Сессии-в-лаунчере.28470/#post-371667
Этот вариант дырявый, если не провести полного захода на сервер.
Вот так надо на joinserver.php.
PHP:
<?php
    define('INCLUDE_CHECK',true);
    include("connect.php");
if(sizeof($_GET)==4&&($_GET['sessionId']!=NULL&&$_GET['user']!=NULL&&$_GET['serverId']!=NULL&&$_GET['s']!=NULL))
{
    $sessionid = mysql_real_escape_string($_GET['sessionId']);
    $user = mysql_real_escape_string($_GET['user']);
    $serverid = mysql_real_escape_string($_GET['serverId']);
    $md5 = $_GET["s"];
    $realmd5 = md5(file_get_contents("clients/voxelaria/bin/minecraft.jar"));
    $result = mysql_query("Select $db_columnUser From $db_table Where $db_columnSesId='$sessionid' And $db_columnUser='$user' And $db_columnServer='$serverid'") or die ("Ошибка");
    if($md5 == $realmd5 or die ("Обновите клиент."));
    if(mysql_num_rows($result) == 1) echo "OK";
    else
    {
        $result = mysql_query("Update $db_table SET $db_columnServer='$serverid' Where $db_columnSesId='$sessionid' And $db_columnUser='$user'") or die ("Ошибка");
        if(mysql_affected_rows() == 1) echo "OK";
        else echo "Bad login";
    }
} else {
  echo "Bad_login";
}
    $sessid = generateSessionId();
    mysql_query("Update $db_table SET $db_columnSesId='$sessid' Where $db_columnUser='$user'") or die ("Ошибка");
        function generateSessionId(){
    srand(time());
    $randNum = rand(1000000000, 2147483647).rand(1000000000, 2147483647).rand(0,9);
    return $randNum;
    }
?>

Сессия еще с аплета палится, там тоже вырезать надо.
 
Этот вариант дырявый, если не провести полного захода на сервер.
Вот так надо на joinserver.php.
PHP:
<?php
    define('INCLUDE_CHECK',true);
    include("connect.php");
if(sizeof($_GET)==4&&($_GET['sessionId']!=NULL&&$_GET['user']!=NULL&&$_GET['serverId']!=NULL&&$_GET['s']!=NULL))
{
    $sessionid = mysql_real_escape_string($_GET['sessionId']);
    $user = mysql_real_escape_string($_GET['user']);
    $serverid = mysql_real_escape_string($_GET['serverId']);
    $md5 = $_GET["s"];
    $realmd5 = md5(file_get_contents("clients/voxelaria/bin/minecraft.jar"));
    $result = mysql_query("Select $db_columnUser From $db_table Where $db_columnSesId='$sessionid' And $db_columnUser='$user' And $db_columnServer='$serverid'") or die ("Ошибка");
    if($md5 == $realmd5 or die ("Обновите клиент."));
    if(mysql_num_rows($result) == 1) echo "OK";
    else
    {
        $result = mysql_query("Update $db_table SET $db_columnServer='$serverid' Where $db_columnSesId='$sessionid' And $db_columnUser='$user'") or die ("Ошибка");
        if(mysql_affected_rows() == 1) echo "OK";
        else echo "Bad login";
    }
} else {
  echo "Bad_login";
}
    $sessid = generateSessionId();
    mysql_query("Update $db_table SET $db_columnSesId='$sessid' Where $db_columnUser='$user'") or die ("Ошибка");
        function generateSessionId(){
    srand(time());
    $randNum = rand(1000000000, 2147483647).rand(1000000000, 2147483647).rand(0,9);
    return $randNum;
    }
?>

Сессия еще с аплета палится, там тоже вырезать надо.

$_GET['s'] это клиент должен передавать, или как вы вычисляете хеш?
 
Disconnecting PlayerName [/IP: PORT]: Failed to verify username, session authentication server unavailable!
Бред, началось сегодня пол часа назад...

Кстати мониторинг тоже не хочет конектится
Down
UP!
На пк все заходит, пробовал, может из-за многих запросов кил сессии и создании, VDS блокирует конект?
Хотя по моему полный бред сказал...
Проверял подключение через wget на checkserver.php
Результат
--2013-06-03 16:12:51-- (try:20) http://сайт/checkserver.php
Connecting to riotcraft.ru|91.234.32.250|:80... failed: Connection timed out.
Giving up.
 
Назад
Верх