rGuard

DarkEmpire

誰もいない
Местный
Стальной Визионер
Неукротимое пламя
За заслуги перед форумом
За веру и верность форуму
Сообщения
609
Розыгрыши
0
Репутация
302
Реакции
431
Баллы
1 553
сможет кто сделать работу с доменом у ргварда клиент части?
 
Код:
int __stdcall new_connect(SOCKET s, const struct sockaddr *name, int namelen)
{
struct sockaddr_in *name_in = (struct sockaddr_in*) name;
if (name_in->sin_port == htons(2106))
{
name_in->sin_port = htons(2106);
name_in->sin_addr.S_un.S_addr = inet_addr("Тут домен,например l2-hunter.ru");
}

if (name_in->sin_port == htons(7777))
{
name_in->sin_port = htons(7777);
name_in->sin_addr.S_un.S_addr = inet_addr("Тут домен,например l2-hunter.ru");
}
return true_connect(s, name, namelen);
}
Код:
if (IcmpSendEcho(hIcmpFile, inet_addr("127.0.0.1"), 0, 0, 0, &Reply, sizeof(ICMP_ECHO_REPLY), 500) != 0)
lastPing = Reply.RoundTripTime;
IcmpCloseHandle(hIcmpFile);
}
В ини указывал 127.0.0.1,все работало
 
Код:
int __stdcall new_connect(SOCKET s, const struct sockaddr *name, int namelen)
{
struct sockaddr_in *name_in = (struct sockaddr_in*) name;
if (name_in->sin_port == htons(2106))
{
name_in->sin_port = htons(2106);
name_in->sin_addr.S_un.S_addr = inet_addr("Тут домен,например l2-hunter.ru");
}

if (name_in->sin_port == htons(7777))
{
name_in->sin_port = htons(7777);
name_in->sin_addr.S_un.S_addr = inet_addr("Тут домен,например l2-hunter.ru");
}
return true_connect(s, name, namelen);
}
Код:
if (IcmpSendEcho(hIcmpFile, inet_addr("127.0.0.1"), 0, 0, 0, &Reply, sizeof(ICMP_ECHO_REPLY), 500) != 0)
lastPing = Reply.RoundTripTime;
IcmpCloseHandle(hIcmpFile);
}
В ини указывал 127.0.0.1,все работало
Скрытое содержимое для пользователя(ей):
 
***Скрытый текст не может быть процитирован.***
не конектит

Код:
int __stdcall new_connect(SOCKET s, const struct sockaddr *name, int namelen)
{
    struct sockaddr_in *name_in = (struct sockaddr_in*) name;
    if (name_in->sin_port == htons(2106))
    {
        name_in->sin_port = htons(2107);
        name_in->sin_addr.S_un.S_addr = inet_addr("filter.lostdream.super-guard.ru");
    }

    if (name_in->sin_port == htons(7777))
    {
        name_in->sin_port = htons(7778);
        name_in->sin_addr.S_un.S_addr = inet_addr("filter.lostdream.super-guard.ru");
    }
    return true_connect(s, name, namelen);
}

void decodeKey(unsigned char *buf)
{
    unsigned char bfkey[16] =  {66, 63, 13, 26, -6, 111, 43, 63, 28, 45, 31, 21, 1, 16, -5, 82}; //STATIC KEY
    unsigned char tmp[24];
    Blowfish_CTX ctx;

    memcpy(tmp, buf, 16);

    Blowfish_Init(&ctx, bfkey, 16);
    Blowfish_Decrypt(&ctx, tmp, 16);

    memcpy(buf, tmp, 16);
}

int __fastcall new_AddNetworkQueue(unsigned int This, unsigned int EDX, TNetworkPacket *NetworkPacket)
{
    if ((*(unsigned int*) (KiUserExceptDispADR + 10) + KiUserExceptDispADR < hNtDllStart) || (*(unsigned int*) (KiUserExceptDispADR + 10) + KiUserExceptDispADR > hNtDllEnd))
        ErrorExit("Bot Program Detected #0!");

    unsigned int retAddr = *((unsigned int*) &NetworkPacket - 1);

    if ((retAddr < hEngineStart) || (retAddr > hEngineEnd))
        ErrorExit("Bot Program Detected #1!");

    if (NetworkPacket->subid == 0xFFFF)
    {
        switch (NetworkPacket->id)
        {
            case 0x2E:
                decodeKey(NetworkPacket->data + 1);
                break;
            case 0xB0:
                memset(&SpecialStrings[NetworkPacket->data[0]].FontDrawInfo, 0, sizeof(TFontDrawInfo));
                SpecialStrings[NetworkPacket->data[0]].isDraw = (NetworkPacket->data[1] == 1) ? true : false;
                SpecialStrings[NetworkPacket->data[0]].FontDrawInfo.font = (char) NetworkPacket->data[2];
                SpecialStrings[NetworkPacket->data[0]].x = *(int*) (NetworkPacket->data + 3);
                SpecialStrings[NetworkPacket->data[0]].y = *(int*) (NetworkPacket->data + 7);
                SpecialStrings[NetworkPacket->data[0]].FontDrawInfo.color = *(unsigned int*) (NetworkPacket->data + 11);
                wcscpy_s(SpecialStrings[NetworkPacket->data[0]].text, (wchar_t*) (NetworkPacket->data + 15));
                if (NetworkPacket->data[0] == 14)
                {
                    HANDLE hIcmpFile = IcmpCreateFile();
                    ICMP_ECHO_REPLY Reply;
                    if (hIcmpFile != 0)
                    {
                        if (IcmpSendEcho(hIcmpFile, inet_addr("127.0.0.1"), 0, 0, 0, &Reply, sizeof(ICMP_ECHO_REPLY), 500) != 0)
                            lastPing = Reply.RoundTripTime;
                        IcmpCloseHandle(hIcmpFile);
                    }
                    wsprintf(SpecialStrings[NetworkPacket->data[0]].text, L"%ls%d", (wchar_t*) (NetworkPacket->data + 15), lastPing);
                }
                break;
        }
    }

    return true_AddNetworkQueue(This, EDX, NetworkPacket);
}
Пробуй поставить стандартные порты
Код:
unsigned char bfkey[16] =  {66, 63, 13, 26, -6, 111, 43, 63, 28, 45, 31, 21, 1, 16, -5, 82}; //STATIC KEY
Вот на это тоже обрати внимание
 
Пробуй поставить стандартные порты
Код:
unsigned char bfkey[16] =  {66, 63, 13, 26, -6, 111, 43, 63, 28, 45, 31, 21, 1, 16, -5, 82}; //STATIC KEY
Вот на это тоже обрати внимание
порты не причем... а вот с бфкей даже не знаю что делать)
 
Вообщем если исходник на руках, то посмотри в файле по такому пути \java\rGuard\Protection.java в нем посмотри код
Код:
public static byte[] getKey(byte[] key)
    {
        byte[] bfkey = {110, 36, 2, 15, -5, 17, 24, 23, 18, 45, 1, 21, 122, 16, -5, 12};
        try
        {
            BlowfishEngine bf = new BlowfishEngine();
            bf.init(true, bfkey);
            bf.processBlock(key, 0, _key, 0);
            bf.processBlock(key, 8, _key, 8);
        }
        catch(IOException e)
        {
            _log.info("Bad key!!!");
        }
        return _key;
    }
И сравни что в main.cpp, должны быть одинаковы
 
дарк бфкей ищи у алекса на форуме) там разбиралась ета темка
 
Это не защита и не как не rGuard
 
Окей пруф, что это rGuard, и то что это хотя бы "защита"
Ну во первых человек сам писал что
сможет кто сделать работу с доменом у ргварда клиент части?
Во вторых сам сталкивался с этой проблемой, и решил ее так как я написал постами выше

В третьих если покататься в самом исходнике защитой и с клиент файлами, то выйдет далеко не плохая защита
 
сможет кто сделать работу с доменом у ргварда клиент части?
в однои из тем я уже писал
Вот:
char *getIp()
{
hostent * record = gethostbyname("yourdamain.com");
if(record == NULL)
{
ErrorExit("Unable to resolve host");
}
in_addr * address = (in_addr * )record->h_addr;
return inet_ntoa(* address);
}

int __stdcall new_connect(SOCKET s, const struct sockaddr *name, int namelen)
{
struct sockaddr_in *name_in = (struct sockaddr_in*) name;
if (name_in->sin_port == htons(2106))
{
//name_in->sin_port = htons(2106);
name_in->sin_addr.S_un.S_addr = inet_addr(getIp());
}
if (name_in->sin_port == htons(7777))
{
//name_in->sin_port = htons(7777);
name_in->sin_addr.S_un.S_addr = inet_addr(getIp());
}
return true_connect(s, name, namelen);
}
а так я сам доработал этот гвард. поддержка тока у алекса. в зборке на других не пробовал
 
Ну во первых человек сам писал что

Во вторых сам сталкивался с этой проблемой, и решил ее так как я написал постами выше

В третьих если покататься в самом исходнике защитой и с клиент файлами, то выйдет далеко не плохая защита
Окей, выкинуть весь этот хлам и не более.
Регресс (rGuard(ничего не было изменено кроме импортов и названия)->ftGuard(написали серверную часть)->Даймеон с coderx который продал защиту FT. А теперь покажи мне где эта защита rGuard? Правильно ни где. Идем дальше кроме как выводить надписи она не умеет и отрубать гг/включать его. О какой защите можно тут говорить? Правильно не какой.
 
Окей, выкинуть весь этот хлам и не более.
Регресс (rGuard(ничего не было изменено кроме импортов и названия)->ftGuard(написали серверную часть)->Даймеон с coderx который продал защиту FT. А теперь покажи мне где эта защита rGuard? Правильно ни где. Идем дальше кроме как выводить надписи она не умеет и отрубать гг/включать его. О какой защите можно тут говорить? Правильно не какой.
бан по hwid есть и норм :Run:


а по теме, все делал как описывали выше, коннект к домену так и не проходит, как бы я не хотел
мб потому что порты кастомные, по идее не должно
 
Какой нафиг бан по hwid. О защите пакетов думать надо, а не о том как банить читеров. Когда вы его забаните вручную, будет уже поздно. И зачем пытаться придумать велосипед.
Только старый добрый lameguard , либо несколько десятков тыс руб и к Килрою за персональной.
 
какие наивные. нет и не будет защиты которая на стороне клиента прикроет кривую обработку пакетов.
 
И да раз такая кривая пакетка, то перепишите в чем проблема?
 
Назад
Сверху Снизу