Подписывайтесь на наш Telegram и не пропускайте важные новости! Перейти

Трабл с лоудером\сайтом

Эксперт
Эксперт
Статус
Оффлайн
Регистрация
17 Фев 2017
Сообщения
864
Реакции
420
Короче проблема такая:
Если я напрямую в браузере вбиваю ссылку
Код:
Expand Collapse Copy
http://domain_address/licensecheck?binding=HWID&login=LOGIN&password=PASSWORD
то все работает как надо.
Но если я это делаю через лоудер ( точно то же самое, только лоудер сам подставляет данные пользователя и ответ сервера возвращает как строку )
то нихера не работает ( хотя 4 месяца назад работало как надо )
это часть кода из лоудера с авторизацией.
Данные верные, проверял уже через логи.
Вот что возвращает функция
А должна возвращать лишь ответ сервера ( обычно что-то вроде regected, igrored, expired, success )
Вот это возвращает браузер, если напрямую.

Использую фракеншейна из NZT + MOLOF Панель + Самопис + рега хз откуда.
Данные от сервака получаю, тоже проверял через логи, связь с сервером стабильно есть. Не работает только чек авторизации.

Если что, код:
Код:
Expand Collapse Copy
td::string GetUrlData(std::string url)
    {
        std::string request_data = "";

        HINTERNET hIntSession = InternetOpenA("", INTERNET_OPEN_TYPE_DIRECT, NULL, NULL, 0);

        if (!hIntSession)
        {
            return request_data;
        }

        HINTERNET hHttpSession = InternetConnectA(hIntSession, LOADER_HOST, 80, 0, 0, INTERNET_SERVICE_HTTP, 0, NULL);

        if (!hHttpSession)
        {
            return request_data;
        }

        HINTERNET hHttpRequest = HttpOpenRequestA(hHttpSession, "GET", url.c_str()
            , 0, 0, 0, INTERNET_FLAG_RELOAD, 0);

        if (!hHttpSession)
        {
            return request_data;
        }

        char* szHeaders = ("");
        char szRequest[1024] = { 0 };

        if (!HttpSendRequestA(hHttpRequest, szHeaders, strlen(szHeaders), szRequest, strlen(szRequest)))
        {
            return request_data;
        }

        CHAR szBuffer[1024] = { 0 };
        DWORD dwRead = 0;

        while (InternetReadFile(hHttpRequest, szBuffer, sizeof(szBuffer) - 1, &dwRead) && dwRead)
        {
            request_data.append(szBuffer, dwRead);
        }

        InternetCloseHandle(hHttpRequest);
        InternetCloseHandle(hHttpSession);
        InternetCloseHandle(hIntSession);

        return request_data;
    }

Если что:
LOADER_HOST

Вот что возвращает браузер если все ок:
 
Последнее редактирование:
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Короче проблема такая:
Если я напрямую в браузере вбиваю ссылку
Код:
Expand Collapse Copy
http://domain_address/licensecheck?binding=HWID&login=LOGIN&password=PASSWORD
то все работает как надо.
Но если я это делаю через лоудер ( точно то же самое, только лоудер сам подставляет данные пользователя и ответ сервера возвращает как строку )
то нихера не работает ( хотя 4 месяца назад работало как надо )
это часть кода из лоудера с авторизацией.
Данные верные, проверял уже через логи.
Вот что возвращает функция
А должна возвращать лишь ответ сервера ( обычно что-то вроде regected, igrored, expired, success )
Вот это возвращает браузер, если напрямую.

Использую фракеншейна из NZT + MOLOF Панель + Самопис + рега хз откуда.
Данные от сервака получаю, тоже проверял через логи, связь с сервером стабильно есть. Не работает только чек авторизации.

Если что, код:
Код:
Expand Collapse Copy
td::string GetUrlData(std::string url)
    {
        std::string request_data = "";

        HINTERNET hIntSession = InternetOpenA("", INTERNET_OPEN_TYPE_DIRECT, NULL, NULL, 0);

        if (!hIntSession)
        {
            return request_data;
        }

        HINTERNET hHttpSession = InternetConnectA(hIntSession, LOADER_HOST, 80, 0, 0, INTERNET_SERVICE_HTTP, 0, NULL);

        if (!hHttpSession)
        {
            return request_data;
        }

        HINTERNET hHttpRequest = HttpOpenRequestA(hHttpSession, "GET", url.c_str()
            , 0, 0, 0, INTERNET_FLAG_RELOAD, 0);

        if (!hHttpSession)
        {
            return request_data;
        }

        char* szHeaders = ("");
        char szRequest[1024] = { 0 };

        if (!HttpSendRequestA(hHttpRequest, szHeaders, strlen(szHeaders), szRequest, strlen(szRequest)))
        {
            return request_data;
        }

        CHAR szBuffer[1024] = { 0 };
        DWORD dwRead = 0;

        while (InternetReadFile(hHttpRequest, szBuffer, sizeof(szBuffer) - 1, &dwRead) && dwRead)
        {
            request_data.append(szBuffer, dwRead);
        }

        InternetCloseHandle(hHttpRequest);
        InternetCloseHandle(hHttpSession);
        InternetCloseHandle(hIntSession);

        return request_data;
    }

Если что:
LOADER_HOST

Вот что возвращает браузер если все ок:
А ты проверял, отправляет ли данные, твой лоадер?
 
ОБЪЯСНЯЮ ДЛЯ ВСЕХ ТРУ КОДЕРОВ:
На БЕСПЛАТНОМ бегете блокируются ВСЕ ЗАПРОСЫ, которые были сделаны без ЮЗЕРАГЕНТА БРАЗУЕРА - оттуда и 403 ошибка.
Что сверху написали - бред, они даже не хотят вдумываться.

РЕШЕНИЕ ДАННОЙ ПРОБЛЕМЫ:
Меняем это
HINTERNET hIntSession = InternetOpenA("", INTERNET_OPEN_TYPE_DIRECT, NULL, NULL, 0);
На это
HINTERNET hIntSession = InternetOpenA("Mozilla/5.0 (YA PIDORAS)", INTERNET_OPEN_TYPE_DIRECT, NULL, NULL, 0);

UPD: ради Бога, не начинайте продавать пасты после решения данной проблемы....
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
ОБЪЯСНЯЮ ДЛЯ ВСЕХ ТРУ КОДЕРОВ:
На БЕСПЛАТНОМ бегете блокируются ВСЕ ЗАПРОСЫ, которые были сделаны без ЮЗЕРАГЕНТА БРАЗУЕРА - оттуда и 403 ошибка.
Что сверху написали - бред, они даже не хотят вдумываться.

РЕШЕНИЕ ДАННОЙ ПРОБЛЕМЫ:
Меняем это
HINTERNET hIntSession = InternetOpenA("", INTERNET_OPEN_TYPE_DIRECT, NULL, NULL, 0);
На это
HINTERNET hIntSession = InternetOpenA("Mozilla/5.0 (YA PIDORAS)", INTERNET_OPEN_TYPE_DIRECT, NULL, NULL, 0);

UPD: ради Бога, не начинайте продавать пасты после решения данной проблемы....
Я хотел написать бегет, но посчитал, что он просто не отправляет запрос, переменные логин и пароль
 
ОБЪЯСНЯЮ ДЛЯ ВСЕХ ТРУ КОДЕРОВ:
На БЕСПЛАТНОМ бегете блокируются ВСЕ ЗАПРОСЫ, которые были сделаны без ЮЗЕРАГЕНТА БРАЗУЕРА - оттуда и 403 ошибка.
Что сверху написали - бред, они даже не хотят вдумываться.

РЕШЕНИЕ ДАННОЙ ПРОБЛЕМЫ:
Меняем это
HINTERNET hIntSession = InternetOpenA("", INTERNET_OPEN_TYPE_DIRECT, NULL, NULL, 0);
На это
HINTERNET hIntSession = InternetOpenA("Mozilla/5.0 (YA PIDORAS)", INTERNET_OPEN_TYPE_DIRECT, NULL, NULL, 0);

UPD: ради Бога, не начинайте продавать пасты после решения данной проблемы....
оу, надо попробовать)
 
ОБЪЯСНЯЮ ДЛЯ ВСЕХ ТРУ КОДЕРОВ:
На БЕСПЛАТНОМ бегете блокируются ВСЕ ЗАПРОСЫ, которые были сделаны без ЮЗЕРАГЕНТА БРАЗУЕРА - оттуда и 403 ошибка.
Что сверху написали - бред, они даже не хотят вдумываться.

РЕШЕНИЕ ДАННОЙ ПРОБЛЕМЫ:
Меняем это
HINTERNET hIntSession = InternetOpenA("", INTERNET_OPEN_TYPE_DIRECT, NULL, NULL, 0);
На это
HINTERNET hIntSession = InternetOpenA("Mozilla/5.0 (YA PIDORAS)", INTERNET_OPEN_TYPE_DIRECT, NULL, NULL, 0);

UPD: ради Бога, не начинайте продавать пасты после решения данной проблемы....
Братан, от души просто. Всё заработало. Спас десятки тысяч моих нервных клеток и несколько дней в попытках выяснить что сломалось.
Я уже и права доступа и htaccess редачил и даже лоудер разбирал ( и не мог понять откуда ноги растут )
Если хочешь, в благодарность выдам тебе первую подписку на альфа тест.
Софт конечно же продавать пока не буду ( поэтому и использую бесплатный хостинг, дабы не вкладываться со своего кармана ) и моя задача отладить его и пофиксить все мемы. Короче, если заинтересован, то будем на связи. Спасибо ещё раз
 
Братан, от души просто. Всё заработало. Спас десятки тысяч моих нервных клеток и несколько дней в попытках выяснить что сломалось.
Я уже и права доступа и htaccess редачил и даже лоудер разбирал ( и не мог понять откуда ноги растут )
Если хочешь, в благодарность выдам тебе первую подписку на альфа тест.
Софт конечно же продавать пока не буду ( поэтому и использую бесплатный хостинг, дабы не вкладываться со своего кармана ) и моя задача отладить его и пофиксить все мемы. Короче, если заинтересован, то будем на связи. Спасибо ещё раз
Да не, ничего не надо, рад помочь людям
 
Последнее редактирование:
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
удачи продавать что-то с таким лоадером, который крякается за 10 секунд
 
удачи продавать что-то с таким лоадером, который крякается за 10 секунд
Пока софт не будет доведен до внятного состояния с минимальным количеством багов и других проблем, то никто его продавать не будет. Да и покупать такое тоже никто не станет.

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

То что лоудер крякается за 10 секунд, это я и так знаю, но этого можно избежать, посидев лишний вечерок и зашифровав все соединение и добавив защиты
соединение ты никаким образом не зашифруешь, держу в курсе)
 
Это бегет, вот и весь ответ, он жрет запросы только с юзерагентом. Хостинг меняй, либо прописывай юзерагент.
 
Это бегет, вот и весь ответ, он жрет запросы только с юзерагентом. Хостинг меняй, либо прописывай юзерагент.
Проблема уже решена. Выше человек написал рабочее решение и все работает как часы. Причем такое решение будет одинаково работать как на бесплатном, так и на платном тарифе.
 
соединение ты никаким образом не зашифруешь, держу в курсе)
Я имею ввиду зашифровать респонс от сервера дабы было сложнее подменить ответы полученые от сервера. На данный момент две уязвимости: можно просто вырезать проверку Auth и второй вариант - подмена ответа с сервера. дабы Auth прошла валидацию и лоудер не крашнулся ( у меня стоит целая куча проверок и если хоть одна из них не совпадает то лоудер видит что была попытка крякнуть )

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

Ключ будет либо хвид, который получается от клиента ( он же при конекте сравнивается с серверным )

и если лоудер запущен на другом пк, то лоудер сам уже никак не разшифрует длл, так как ключ будет другой, а крякеру придется самому это делать либо же ломать ещё и это.

Ну а хранение длл-ки в лоудере это уже как говорится на вкус и цвет. Как варик можно оставить зашифрованным и каждый инжект расшифровывать, но это мне кажется, слишком медленно и не подходит как вариант.
 
Последнее редактирование:
дальше этот хеш разшифровать с помощью лоудера
что ты несешь? )) хэш только сравнить можно, его нельзя расшифровать
который уже внутри себя сохранит распакованный вариант
пиздец шо ))
и если лоудер запущен на другом пк, то лоудер сам уже никак не разшифрует длл, так как ключ будет другой, а крякеру придется самому это делать либо же ломать ещё и это.
чел, это не так работает, все гораздо проще ))
1. ищешь WPM ( самый первый )
2. смотришь на аргументы
3. ищешь референс на массив
4. you're welcome

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

рекомендую тебе ознакомится с тем, что такое PE формат, и как это все дело работает, а не писать лоадер, с загрузкой либы с сайта ))

p.s. хорошая защита - премаппинг PE на сервере + thread hijacking, но вряд ли тебе это что-то даст, ведь для такого дела надо писать бекенд ))
 
что ты несешь? )) хэш только сравнить можно, его нельзя расшифровать

пиздец шо ))

чел, это не так работает, все гораздо проще ))
1. ищешь WPM ( самый первый )
2. смотришь на аргументы
3. ищешь референс на массив
4. you're welcome


???

рекомендую тебе ознакомится с тем, что такое PE формат, и как это все дело работает, а не писать лоадер, с загрузкой либы с сайта ))

p.s. хорошая защита - премаппинг PE на сервере + thread hijacking, но вряд ли тебе это что-то даст, ведь для такого дела надо писать бекенд ))
Ну я в защитах слабо шарю, профан полный. Как будет время посмотрю че да как.
 
Назад
Сверху Снизу