avatar_LeGrand

Как использовать WPE Pro для защиты GameServer в MU Online и не только?

Автор LeGrand, 2010 Июнь 26, 20:57

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

Ключевые слова [SEO] mu onlinewpe proзащита сервера

LeGrand

Subj
Текст для тех кто не все запомнил с видео
Спойлер
Всем привет.
Мой первый гайд будет посвящен тому, как уронить сервер средствами WPE Pro

Нам потребуется:
Мозг ;)
WPE Pro
Программка EncDec.exe
Дырявый сервер без защиты от WPE Pro

Итак, я убрал всю защиту со своего сервера и готов поставить задницу своего тест-сервера Insomina MU.

Тыкаем на первого попавшегося моба(Обязательно NPC)
Перед самим тыком включаем WPE и ловим пакет.

Нашли

C3 0D A1 E1 02 D9 22 E3 31 DF B8 57 6E

Вы его найдете по трем первым байтам, они всегда C3 0D A1, реже по двум первым C3 0D

Берем весь пакет и вставляем его в программку EncDec.exe
ххм :DD

Пакет станет вида C1 05 30 12 69

Меняем его на C1 05 30 FF FF

Вставляем в программку и жмем Encode

получили пакет вида:
C3 0D 6C F9 21 93 19 9D 92 00 D0 29 10
Вписываем его в WPE PRO

Бабам, сервер упал... )))
[свернуть]

Crazzy-

#1
:D
Не паникуем =) Видео обрабатывается
Спойлер
[свернуть]
Спойлер
[свернуть]
Спойлер
[свернуть]
Спойлер
[свернуть]
Спойлер
[свернуть]
Спойлер
[свернуть]
Спойлер
[свернуть]

ketanof

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

LeGrand

Причем тут сигейт и подмена пакета???
Гайд равносилен гайду о дюпе с WPE.

Если он такой жидкий, почему об этом никто не знал?? ааа???

Magnifer

www.SelectMu.com тут робит даже с бластером. как делать?
ишем порты с прогой LanScan от 40000 до 70000.  смотрим найденный последний порт. копируем его в Vault Blaster и отправляем. теперь у всех дц и сервер завис)ждем админа

S.Yura

Это из-за переполнения или что?

LeGrand

#6
Там функция NPCTallk(aIndex,aRecv[4]+aRecv[3]*256)
В функцию передаются индексы игрока и NPC

По умолчанию, не стоит проверка на < 9000, и пытается инициализировать GS на Index 65536.
Сервер инициализирует указатель на память "imul,eax,eax,2228"(где eax 65536) и вылетает за пределы адресного пространства сервера.
При инициализации gObj, сервер не вылетает, вылетает лишь когда к нему обращаются.
у меня вылетает на gObj->Class

;)

Alykar

#7
тобишь если я в протоколе пропишу case 0x30: //Click npc protocol
if ((aRecv[4] + aRecv[3] * 256)  <= 9000 )
NPCTalkEx(aIndex,(aRecv[4] + aRecv[3] * 256));
else {aRecv[4] = 0x00 ; aRecv[3] = 0x00 ; }
то ГС не упадёт от такого ?

S.Yura

Если я правильно понял, то не должен, но не упадет ли он потом от

aRecv[4] = 0x00 ; aRecv[3] = 0x00 ;

на какой-то строчке от нулей? Кто его там знает что ему будет от этих нулей?

LeGrand

bool NPCTalkEx(int aIndex, int NpcId)
{
if(aIndex > 9000 || NpcId > 9000 || NpcId < 0 || aIndex < 0)
return false;
..................
}
Вот так не упадет.

Killbrum

Несовсем... если делать проверки то уже нормально а не как всегда...

if (aIndex < 0 || aIndex > OBJMAX-1 )
{
return FALSE;
}

if ( gObj[aIndex].Type != OBJ_USER )
{
return FALSE;
}

if ( gObj[aIndex].Connected != PLAYER_PLAYING )
{
return FALSE;
}

if ( gObj[aIndex].CloseCount > 0 )
{
return FALSE;
}

if ( DealerNumber < 0 || DealerNumber > OBJMAX-1)
return;

if ( lpObj->MapNumber != gObj[DealerNumber].MapNumber )
return;

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

Crazzy-

Цитата: Alykar от 2010 Июнь 27, 15:57  тобишь если я в протоколе пропишу case 0x30: //Click npc protocol
if ((aRecv[4] + aRecv[3] * 256)  <= 9000 )
NPCTalkEx(aIndex,(aRecv[4] + aRecv[3] * 256));
else {aRecv[4] = 0x00 ; aRecv[3] = 0x00 ; }
то ГС не упадёт от такого ?

Да не.. проверки ставишь до инициализации структуры тоесть в функции NPCTalkEx
там будет чтото типо OBJECTSTRUCT *gObj = блаблбла ... вот до етой херни и ставиш проверки..

LeGrand

Незачем пихать х**ву тучу проверок в эту малозначащую функцию!

Если пихать вот ЭТО в каждую функцию, можно оторвать себе руки за чрезмерное поедание квантов процессорного времени(Ага? Я тоже умею из себя умника строить *_*)

Я привел универсальную проверку, которая оградит Администраторов серверов му, или же тех кто юзает нашу сборку от ВСЕХ проблем связанных с этой функцией.
И не надо тут строить из себя умника, я прекрасно знаю какие и ГДЕ проверки нужно ставить. ГС итак перегружен ими...

ketanof

Цитата: LeGrand от 2010 Июнь 26, 21:47  Причем тут сигейт и подмена пакета???
Гайд равносилен гайду о дюпе с WPE.

Если он такой жидкий, почему об этом никто не знал?? ааа???

а с чем работает WPE с jpg картинками ?  (chuckle)

AndOrXor


LeGrand

А еще маразматичнее не понять, откуда же берется C1 и преобразуется в C3 ...

WildChild

блин видео вообще ничего разглядеть не могу

Diman007

а можно ссылку на EncDec.exe =))

[P4F]v1ru5


CheGuevara


Похожие темы (5)