Skip to forum content

You are not logged in. Please login or register.


forums.pvpgn.pro → [RU] Research & Development → [Fixed] Warcraft III IconSwitch Hack

Pages 1

You must login or register to post a reply

RSS topic feed

Posts: 30

1 (edited by kucc 14.01.2012 13:39)

Topic: [Fixed] Warcraft III IconSwitch Hack

Длл-ку кидать в папку с игрой Warcraft3, работает на 1.26а версии.

Открывает все иконки в клиенте для выбора, нужна хоть одна победа чтобы иконка установилась.

Что она делает: инъекция в процесс war3.exe, встроенная в лоадер, эмуляция пакета от сервера, что все иконки открыты.
При установке иконки, клиент отправляет как положено родной пакет - установить выбранную иконку, PVPGN устанавливает её без каких либо вопросов навсегда, даже после перезахода останется.

Не забываем говорить Спасибо.

2

Re: [Fixed] Warcraft III IconSwitch Hack

Сам написал / источник?

Ограничение в 1 победу, насколько я помню, на клиенте.

3

Re: [Fixed] Warcraft III IconSwitch Hack

xpeh wrote:

Сам написал / источник?

Ограничение в 1 победу, насколько я помню, на клиенте.

Источник, хз, скорее всего создатель МХ, потому что в этой дллке уже встроен мх, вся карта открыта.

Получил от игроков своего сервака. Фикс я уже у себя сделал, но пока не раздаю, узнал про этот хак дня два назад, а некоторые тут пользователи, не буду называть их ники, пользуются на моем серваке этим багом уже давно и молчат.

Добавлено: 15.01.2012 20:07

xpeh wrote:

Ограничение в 1 победу, насколько я помню, на клиенте.

Нет не в клиенте, в ПВПГНЕ идет проверка:

extern int conn_update_w3_playerinfo(t_connection * c)
if(acctlevel == 0) 

При одной победе, уровень уже будет равен "1"

4

Re: [Fixed] Warcraft III IconSwitch Hack

Ты про это? Я про то, что через SID_WARCRAFTGENERAL WID_SETICON можно поставить любую иконку вообще.

Добавлено: 17.01.2012 08:09

kucc wrote:

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

Ну а зачем им говорить? smile

5

Re: [Fixed] Warcraft III IconSwitch Hack

Ребят тему удалите а то реально не в кайф на серве  всем баны за это раздавать.

6

Re: [Fixed] Warcraft III IconSwitch Hack

Раз kucc не автор этого дела, то от удаления файла хакеры не исчезнут smile

Может он фиксом поделится?

7 (edited by Mania 19.01.2012 20:48)

Re: [Fixed] Warcraft III IconSwitch Hack

ахаха жесть... хотелось бы исходник дллки глянуть... есть у когото?*
to Zadrot за что баны? я тебя могу приколоть если хочешь, ложить тебе по кд сервак а в логах у тебя ни слова не будет написано... а банить прокси будешь=)

8

Re: [Fixed] Warcraft III IconSwitch Hack

Mania wrote:

ахаха жесть... хотелось бы исходник дллки глянуть... есть у когото?*
to Zadrot за что баны? я тебя могу приколоть если хочешь, ложить тебе по кд сервак а в логах у тебя ни слова не будет написано... а банить прокси будешь=)

Ложить сервы ? удивить меня хочешь, это тема устарела уже много лет назад, я вкурсе как это делается так что удивить меня не пытайся. Лучше скажи как исправить подобные баги они лишние в PVPGN

9 (edited by Mania 20.01.2012 17:51)

Re: [Fixed] Warcraft III IconSwitch Hack

Zadrot wrote:
Mania wrote:

ахаха жесть... хотелось бы исходник дллки глянуть... есть у когото?*
to Zadrot за что баны? я тебя могу приколоть если хочешь, ложить тебе по кд сервак а в логах у тебя ни слова не будет написано... а банить прокси будешь=)

Ложить сервы ? удивить меня хочешь, это тема устарела уже много лет назад, я вкурсе как это делается так что удивить меня не пытайся. Лучше скажи как исправить подобные баги они лишние в PVPGN

эта тема будет жива пока есть пвпгн сервера... поскольку дырки почти во всех хендлерах пвпгна есть как в 85 так и в 99 билдах=)
зЫ если как ты говоришь ты знаешь как ложить то исходя из обратного пофикси=)

10

Re: [Fixed] Warcraft III IconSwitch Hack

Mania wrote:

зЫ если как ты говоришь ты знаешь как ложить то исходя из обратного пофикси=)

Тру. В языках с сборкой мусора таких проблем можно было бы избежать в принципе, вынести парсинг в API и кидать исключение при выходе за границу пакета. Но в пвпгн память выделять боятся, вот и получается - если читать пакет кастом структуры на него, то надо везде проверять границы. Забыл один раз - получи падение без сообщения об ошибке. Я считаю, что так написанный сервер выпускать в паблик просто безответственно.

11

Re: [Fixed] Warcraft III IconSwitch Hack

xpeh wrote:
Mania wrote:

зЫ если как ты говоришь ты знаешь как ложить то исходя из обратного пофикси=)

Тру. В языках с сборкой мусора таких проблем можно было бы избежать в принципе, вынести парсинг в API и кидать исключение при выходе за границу пакета. Но в пвпгн память выделять боятся, вот и получается - если читать пакет кастом структуры на него, то надо везде проверять границы. Забыл один раз - получи падение без сообщения об ошибке. Я считаю, что так написанный сервер выпускать в паблик просто безответственно.

ты прав! ну а впринципе опенсорс же=)

12

Re: [Fixed] Warcraft III IconSwitch Hack

А что, в опенсорсе по определению ошибок нет? Или из доступности кода что-то вообще вытекает?

13 (edited by Mania 21.01.2012 01:13)

Re: [Fixed] Warcraft III IconSwitch Hack

я немного не то имел ввиду... чисто поидее в опенсорсе ошибок должно быть меньше, если есть достойное комьюнити тестеров и кодеров которые занимаютсО багтреком чем помогают девам то все круто... но тут же речь о пвпгне=) как правило опенсорс такого характера написан энтузиастами своего дела, любителями, самоучками бла бла итд, если говорить конкретно о пвпгне, то тот же pandae, pelish и dizzy занимались ним как хобби и не более и при этом они отлично поработали как по мне=) это сугобо мое личное мнение!

14

Re: [Fixed] Warcraft III IconSwitch Hack

Ну дак что кто нибудь сможет выложить исходники переделанные ? если не трудно?

15

Re: [Fixed] Warcraft III IconSwitch Hack

kucc wrote:

Нет не в клиенте, в ПВПГНЕ идет проверка:

extern int conn_update_w3_playerinfo(t_connection * c)
if(acctlevel == 0) 

При одной победе, уровень уже будет равен "1"

Сам автор не хочет поделится

16

Re: [Fixed] Warcraft III IconSwitch Hack

xpeh wrote:

Может он фиксом поделится?

Ну не вопрос, как обещал харпивару, только не копи паст и будет работать, а надо немного мозгами поработать и доделать легкое.
handle_anongame.cpp
Функция
static int _client_anongame_set_icon(t_connection * c, t_packet const * const packet)

if (test_user_icon(conn_get_account(c),user_icon,ctag) == 0)
    {
    std::strcpy(user_icon,"NULL");
    eventlog(eventlog_level_error,__FUNCTION__,"[%s] читер, установка icon на DEFAULT [%s]", conn_get_username(c),user_icon);
    account_set_user_icon(conn_get_account(c),conn_get_clienttag(c),user_icon);
    conn_set_state(c,conn_state_destroy);
    }
    else {
    account_set_user_icon(conn_get_account(c),conn_get_clienttag(c),user_icon);
    }

Дальше делаем функцию сами test_user_icon();

Примерный код:
extern int test_user_icon(t_account * account, const char * user_icon, t_clienttag ctag)
{
    if (rasa == 'H')
    {
        свитч (цифорки)
        {
        кейс 2:
            if (account_get_racewins(account,W3_RACE_HUMANS,ctag) > 24)
            {
            ретурн 1;
            тормозим
            }
            ретурн 0;
            тормозим;
        кейс 3: по аналогии кейс 2
        кейс 4; по аналогии кейс 2
        кейс 5; по аналогии кейс 2
        кейс 6; по аналогии кейс 2
        }
        ретурн 0;
    }

    if (rasa == 'O') по аналогии "H"
    if (rasa == 'U') по аналогии "H"
    if (rasa == 'N') по аналогии "H"
    if (rasa == 'R') по аналогии "H"
    if (rasa == 'D') по аналогии "H"
ретурн 0;
}

17

Re: [Fixed] Warcraft III IconSwitch Hack

kucc wrote:

Ну не вопрос, как обещал харпивару, только не копи паст и будет работать, а надо немного мозгами поработать и доделать легкое.

А копипаст ЧСВ выложить не позволило? smile

Тут все легкое, если знать, какой это пакет, как работают в этом говноси элементарные вещи и эмуляция ООП, а также внутреннее API pvpgn. Чем менять слова на русские, уж лучше бы вообще не выкладывал.

18

Re: [Fixed] Warcraft III IconSwitch Hack

xpeh wrote:
kucc wrote:

Ну не вопрос, как обещал харпивару, только не копи паст и будет работать, а надо немного мозгами поработать и доделать легкое.

А копипаст ЧСВ выложить не позволило? smile

Тут все легкое, нужно знать, какой это пакет, как работают в этом говноси элементарные вещи и эмуляция ООП, а также внутреннее API pvpgn. Чем менять слова на русские, уж лучше бы вообще не выкладывал.

Не хочется делать за немного не умных конкурентов, а те кто в пвпгн чуток хоть шарит, тут сделает уже проверки за 5 минут, притом пример есть.

19

Re: [Fixed] Warcraft III IconSwitch Hack

мда

20 (edited by kucc 27.04.2012 08:33)

Re: [Fixed] Warcraft III IconSwitch Hack

Mania wrote:

мда

Да ладно О_О, чего тут не понятного то? Копи паст, потом копи паст с чуток редактированием и готово, все, объяснил и выложил, просто чуток доделать функцию и готово, не нужно ничего придумывать, не нужно искать что и где, а просто размножить и исправить циферки? Что-ж вы не хотите чуток подумать, а только чтоб за вас все сделали?

Просто я знаю что мои "конкуренты" не допрут это факт, но.....

21

Re: [Fixed] Warcraft III IconSwitch Hack

kucc wrote:

Что-ж вы не хотите чуток подумать, а только чтоб за вас все сделали?

Где что искать тебе как раз тоже подсказали.

22

Re: [Fixed] Warcraft III IconSwitch Hack

kucc wrote:

Да ладно О_О, чего тут не понятного то? Копи паст, потом копи паст с чуток редактированием и готово, все, объяснил и выложил, просто чуток доделать функцию и готово, не нужно ничего придумывать, не нужно искать что и где, а просто размножить и исправить циферки? Что-ж вы не хотите чуток подумать, а только чтоб за вас все сделали?

Просто я знаю что мои "конкуренты" не допрут это факт, но.....

мне понятно все, дело в том что это настолько тупо... я имею ввиду то в каком виде ты выложил код, я хз каким надо быть тупым чтобы не понять у тебя конкуренты совсем крабы?

23

Re: [Fixed] Warcraft III IconSwitch Hack

Mania wrote:
kucc wrote:

Да ладно О_О, чего тут не понятного то? Копи паст, потом копи паст с чуток редактированием и готово, все, объяснил и выложил, просто чуток доделать функцию и готово, не нужно ничего придумывать, не нужно искать что и где, а просто размножить и исправить циферки? Что-ж вы не хотите чуток подумать, а только чтоб за вас все сделали?

Просто я знаю что мои "конкуренты" не допрут это факт, но.....

мне понятно все, дело в том что это настолько тупо... я имею ввиду то в каком виде ты выложил код, я хз каким надо быть тупым чтобы не понять у тебя конкуренты совсем крабы?

Эх знал бы ты, какие люди только не бывают. Ну главное все кому надо, все поняли. Если есть предложения по принципу этой работы, тоже выслушаем обдумаем.

24

Re: [Fixed] Warcraft III IconSwitch Hack

https://github.com/HarpyWar/pvpgn/commi … 7f0b5d445b

Do not ask for support in PM.

25

Re: [Fixed] Warcraft III IconSwitch Hack

Это для каков версии? Харпи, тебя на патченье пвпгавна потянуло?

26

Re: [Fixed] Warcraft III IconSwitch Hack

xpeh wrote:

Это для каков версии? Харпи, тебя на патченье пвпгавна потянуло?

1.99, он теперь на гитхабе хостится.
Не особо то и потянуло, но отдельные функции можно иногда запатчить smile. Я за низкий порог вхождения и доступный всем функционал.

Do not ask for support in PM.

27

Re: [Fixed] Warcraft III IconSwitch Hack

Ну запатчь тогда докучи спуф.

28

Re: [Fixed] Warcraft III IconSwitch Hack

kucc wrote:
xpeh wrote:

Может он фиксом поделится?

Ну не вопрос, как обещал харпивару, только не копи паст и будет работать, а надо немного мозгами поработать и доделать легкое.
handle_anongame.cpp
Функция
static int _client_anongame_set_icon(t_connection * c, t_packet const * const packet)

if (test_user_icon(conn_get_account(c),user_icon,ctag) == 0)
    {
    std::strcpy(user_icon,"NULL");
    eventlog(eventlog_level_error,__FUNCTION__,"[%s] читер, установка icon на DEFAULT [%s]", conn_get_username(c),user_icon);
    account_set_user_icon(conn_get_account(c),conn_get_clienttag(c),user_icon);
    conn_set_state(c,conn_state_destroy);
    }
    else {
    account_set_user_icon(conn_get_account(c),conn_get_clienttag(c),user_icon);
    }

Дальше делаем функцию сами test_user_icon();

Примерный код:
extern int test_user_icon(t_account * account, const char * user_icon, t_clienttag ctag)
{
    if (rasa == 'H')
    {
        свитч (цифорки)
        {
        кейс 2:
            if (account_get_racewins(account,W3_RACE_HUMANS,ctag) > 24)
            {
            ретурн 1;
            тормозим
            }
            ретурн 0;
            тормозим;
        кейс 3: по аналогии кейс 2
        кейс 4; по аналогии кейс 2
        кейс 5; по аналогии кейс 2
        кейс 6; по аналогии кейс 2
        }
        ретурн 0;
    }

    if (rasa == 'O') по аналогии "H"
    if (rasa == 'U') по аналогии "H"
    if (rasa == 'N') по аналогии "H"
    if (rasa == 'R') по аналогии "H"
    if (rasa == 'D') по аналогии "H"
ретурн 0;
}

Спасибо kucc твой пример мне пригодился.

29

Re: [Fixed] Warcraft III IconSwitch Hack

На днях заходил ко мне некий Zadrot и ложил сервер по кд.
При этом:
-Сервер вырубался;
-В логах нечего не было записано;
-Перед тем как сервер вырубался появлялась капюшонка у негодяя;

С помощью каких то пакетов он отправляет их в клиент (не знаю точно) у него появляется капюшонка и сервер вырубается.
Оказывается чтоб вырубился сервер нужно зайти в профиль, при этом пвпгн не распознает капюшонку и bnetd.exe тупо сворачивается ( родной баг пвпгн'a)
Было обнаружено что сервер сворачивается при иконке "CDRR" (капюшонка с вопросиком)
Я поставил себе её: /set xom91k record\w3xp\userselected_icon cdrr  и спустя 3 секунды меня выкинуло.


В исходнике src/bnetd/account_wrap.cpp есть информация, которая выберает картинку в профиле
Но в этом исходнике не полностью проверяется 1-й символ переданного кода иконки, только на то что он не меньше 1.
Когда туда передавался например код символа C(ключ CDRR), то получалось что в коде:
result = profile_code[..][tmp_icon[0]-1];
значение tmp_icon[0] было равно явно больше чем 6,
т.к. 'C'-48-1 > 5 это приводило к выходу за границы массива profile_code, у которого вторая размерность была всего 6.
то поэтому проверка в профиле должна быть такой -

. . .
if (tmp_icon[0]>=1 && tmp_icon[0] <= 6) {
. . .

после этого я набрал снова /set xom91k record\w3xp\userselected_icon cdrr, и зашел в профиль, меня не выкинуло и сервер не свернулся, я вроде обрадовался, но вопрос:
Получается негодяй может устанавливать себе просто так капюшонки? (но при этом сервер ложиться не будет)

30

Re: [Fixed] Warcraft III IconSwitch Hack

https://github.com/HarpyWar/pvpgn/commi … 7f0b5d445b

Do not ask for support in PM.

Posts: 30

Pages 1

You must login or register to post a reply

Who now at forum

Currently view post: 0 guests, 0 registered users

forums.pvpgn.pro → [RU] Research & Development → [Fixed] Warcraft III IconSwitch Hack