Вернуться   CoderX :: Forums > Основные форумы > Программинг
Войти через OpenID

Программинг Форум для тем связанных с программированием

Чат (Новых сообщений с момента вашего последнего визита нет)
Загрузка...
Задавайте ваши вопросы на форуме. Чат предназначен для небольших разговоров.
 
Ответ
 
Опции темы Опции просмотра
Старый 12.03.2008, 14:50   #1
Новичок
 
Регистрация: 11.03.2008
Сообщений: 2
Сказал Спасибо: 0
Имеет 0 спасибок в 0 сообщенях
KpuKyH
Печаль Верификация ГГ для ГС (l2guard)

Привет всем. Щас ковыряю сервак линейки с защитой l2guard.
Весь пакетный уровень расковырял (ингейм щас делаю), кроме одного:

ГС периодически (раз в 2 мин гдето) посылает клиенту пакет вида
Код:
13 00 F9  X0 X0 X0 X0  A0 A0 A0 A0   Y0 Y0 Y0 Y0  B0 B0 B0 B0
на который клиент отвечает похожим пакетом
Код:
13 00 CA  X1 X1 X1 X1  A1 A1 A1 A1   Y1 Y1 Y1 Y1  B1 B1 B1 B1
вот варианты общения (только дата без длины и ID пакетов,названия собственные) :
Код:
(RequestGGValidation) Data: 85 18 1C AC BC F5 D5 DD A6 F6 C7 A2 26 4B 27 CA
 (AnswerGGValidation) Data: 4F DA A4 49 4F AF 0A 4F 85 14 80 7E 34 C1 98 C2
(RequestGGValidation) Data: 1B 97 86 A0 4D C3 5F FA 79 63 A7 7B F5 8E 9E CC
 (AnswerGGValidation) Data: 4E 22 11 A3 BE 67 62 52 AC D6 6F 8F 0F 39 7B EE
(RequestGGValidation) Data: 11 C9 E8 50 3C 55 5A 1B 21 16 E7 4F 79 61 5D E9
 (AnswerGGValidation) Data: DB 60 65 82 4A 59 98 EE 39 0D 23 D5 F4 34 99 92
(RequestGGValidation) Data: 8F 44 46 2E 3C 54 34 A6 80 D7 72 D4 39 23 CB FD
 (AnswerGGValidation) Data: E3 60 7A 1E FD C5 BC FA A7 8A 07 04 12 49 21 B8
(RequestGGValidation) Data: EB 3A 8C C3 E7 C4 1A 3D 5B B9 05 F3 61 03 06 79
 (AnswerGGValidation) Data: 55 6A 05 35 3E 89 73 13 71 E0 A6 A1 59 00 9B 08
(RequestGGValidation) Data: 58 09 88 59 F9 80 7D 73 E6 20 3F 9E 18 60 5D 3F
 (AnswerGGValidation) Data: 10 49 50 E4 50 85 22 9D 65 E9 8A 5B 99 4C EE 59
(RequestGGValidation) Data: 54 E6 22 9D 2D 29 CC 11 0A 7C B5 61 7B 5F 40 51
 (AnswerGGValidation) Data: 65 AD AB 99 5B 18 06 CC 2F EA 62 D3 B7 79 66 E8
(RequestGGValidation) Data: BA 8A C5 2B 25 2E F6 EC A9 30 F4 0A F4 1C 1C 73
 (AnswerGGValidation) Data: 14 DD 4D C9 9D 12 97 EE B8 6F 50 10 DE E9 C4 7D
(RequestGGValidation) Data: 46 85 65 F6 87 22 5F 84 2F 78 C8 42 06 C3 B7 16
 (AnswerGGValidation) Data: 30 07 20 4F CB 06 5B 5B 55 04 54 9D 78 78 23 68
(RequestGGValidation) Data: 0D 7B 94 F7 8A 68 EF 1A 2A CB E1 34 39 99 1D 7C
 (AnswerGGValidation) Data: C6 12 43 B6 8B 04 34 22 52 EC 85 A3 D9 E7 30 30
(RequestGGValidation) Data: 2A DC EC 11 53 E6 0C 1B 5B 38 86 43 DA E3 62 A0
 (AnswerGGValidation) Data: 45 E7 3D C6 AC 82 C7 73 74 E3 D3 F2 F4 C5 6E 7D
(RequestGGValidation) Data: B9 F2 5E 7F 04 A2 AB 21 4B D0 39 8A 72 8B B3 AB
 (AnswerGGValidation) Data: 19 0A 8F 09 72 61 92 89 79 EB 8E 74 4D 79 FF 0A
Если кто с этим разбирался, или разбирается - свяжитесь со мной, плз (ICQ 490770575)

Мои наблюдения:
1. Для одних и тех же X0 X0 X0 X0 и Y0 Y0 Y0 Y0 в запросе, X1 X1 X1 X1 и Y1 Y1 Y1 Y1 остаются неизменными для заданного случая.

2. A1 A1 A1 A1 и B1 B1 B1 B1 всегда разные (возможно мусор, а может и нет)

3. Есть такие варианты X0 X0 X0 X0 и Y0 Y0 Y0 Y0 при которых дата в пакете ответа - константа.
Вот некоторые:
Код:
46 34 E0 9F      3C 2B 50 D8
70 6A 11 E0      1E 96 17 70
69 B0 34 56      0B A6 99 86
30 90 19 18      C8 A8 5C 12
E8 BE E8 51      68 31 E1 FF
7A AA 88 EA      26 A7 74 17
7B 4F 3A BF      A1 85 72 A9
ED C0 32 02      B9 B7 0A AF
CC B2 B7 EC      04 5C 8A 3D
EE B2 13 88      E4 98 26 1B

00 00 00 00      XX XX XX XX
Код:
Data: 23 92 90 4D 18 30 B5 7C 96 61 41 47 05 07 96 FB
Это значение не зависит от того что у нас в X1 X1 X1 X1 и Y1 Y1 Y1 Y1.
Обращаю внимание, что при X0 X0 X0 X0=00 00 00 00, совершенно не важно чему равны остальные байты пакета, значение пакета ответа не изменяется.

4. При невалидных значениях X0 X0 X0 X0 и Y0 Y0 Y0 Y0, ответ клиента выглядит примерно так
Код:
53 00 01 00 E4 CD 76 E7 23 8D B3 6B 3F DA 89 F5
53 00 01 00 26 D1 B1 AF A0 29 29 9D 0C 5E 59 09
53 00 01 00 E2 43 CE 54 F4 44 E9 F5 22 C4 3F D0
т.е. X1 X1 X1 X1=53 00 01 00, остальное рандом.

5. Сопоставил недавно с пакетом Init (ЛС). В конце опять те же 16 байт запроса, ответ на который клиент передает в пакете RequestGGAuth.
Здесь используются тока соответствия при которых получается константа
Код:
23 92 90 4D 18 30 B5 7C 96 61 41 47 05 07 96 FB
на все остальные значения ответ 53 00 01 00 ...............

6. Что то близкое клиент передает в запросе с логином и паролем после 128 байт(криптованных РСА), но там пока не знаю от чего зависит(не смотрел пока).

Возможно это все тупо соответствия, возможно (с большой натяжкой) вариант РСА.... :unknown:
Вобщем очень нужна помощь. Так что пишите. Всю необходимую информацию предоставлю (логи, исследования т.п.)
KpuKyH вне форума   Ответить с цитированием
Старый 17.03.2008, 06:06   #2
Новичок
 
Регистрация: 20.02.2008
Сообщений: 19
Сказал Спасибо: 0
Имеет 4 спасибок в 4 сообщенях
DeuX
По умолчанию

РСА вряд ли... слишком медленный алгоритм, чтобы делать валидацию тысячи подключенных клиентов и высчитывать корректный код
DeuX вне форума   Ответить с цитированием
Ответ

  CoderX :: Forums > Основные форумы > Программинг



Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 01:03.

vBulletin style designed by MSC Team.
Powered by vBulletin® Version 3.6.11
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Locations of visitors to this page
Rambler's Top100

Вы хотите чувствовать себя в безопасности? чоп Белган обеспечит её!