Тема: Сниффер
Показать сообщение отдельно
Старый 14.06.2010, 17:10   #57
Konctantin
RuDB Dev
 
Аватар для Konctantin
 
Регистрация: 01.02.2010
Адрес: localhost
Сообщений: 592
Сказал(а) спасибо: 323
Поблагодарили 283 раз(а) в 122 сообщениях
Записей в дневнике: 2
Konctantin Это имя известно всемKonctantin Это имя известно всемKonctantin Это имя известно всемKonctantin Это имя известно всемKonctantin Это имя известно всемKonctantin Это имя известно всем
По умолчанию

Давайте вернемся к нашим баранам и продолжим тему

ЗЫ. Естественно америку я не открою, но просто опишу суть.

В даном случае использован проксификатор, с правилами следуещего содержания:

Если приложение wow.exe соединяется с конечной точкой 213.248.127.130:1119,
тогда перенаправить его на 127.0.0.1:9998 (Login - сервер)
иначе если приложение wow.exe соеденяется (адресс не указан, тобиш 0.0.0.0:0),
тогда перенаправляем его на 127.0.0.1:9999 (World - сервер)

Значит, нам надо создать прокси, который бы создал 2 соединения, это соединение с клиентом и соединение с сервером:
* Соединение с клиентом, прокси выступает в качестве сервера и общается с клиентом
* Соединение с сервером, прокси выступает в качестве клиента и общается с сервером (Login - сервером)

но это все у нас пока процесс общения сервером авторизации. (213.248.127.130:1119)

Мы просто выступаем посредником и пересылаем пакеты при этом слушая их.

Но, клиент же должен подключится к World - серверу.
По этому, когда приходит пакет AUTH_REALM в котором приходит IPAdress:port сервера к которому надо подключится,
запоминаем этот IPAdress:port.

Создаем опять 2 подключения, аналогичные первым, только с адресом который мы прочитали и запомнили.

И далее выполняем обмен сообщениями между World - сервером и клиентом.

Для дальнейшей обработки пакетом их можно декриптовать и складывать, или делать с ними что захотим.

Далее, по скольку ввели новую систему распределения нагрузки World - сервер может прислать пакет, который указывает,
что нужно переподключится на новый World - сервер, и присылает данные:
1) SMSG_REDIRECT_CLIENT он присылает адрес нового сервера
2) SMSG_AUTH_CHALLENGE приходят новые сиды

Не знаю, может я что-то упустил, если так, то поправьте пожалуйста.
__________________
Konctantin вне форума   Ответить с цитированием