Тема: Сниффер
Показать сообщение отдельно
Старый 03.06.2010, 14:56   #47
abdula123
Пользователь
 
Регистрация: 22.03.2010
Сообщений: 41
Сказал(а) спасибо: 7
Поблагодарили 25 раз(а) в 15 сообщениях
abdula123 На верном пути
По умолчанию

Цитата:
Сообщение от Konctantin Посмотреть сообщение
вот это уже очень интересно, получается:
декриптовать -> внести свою лепту -> обратно зашифровать и пускай идет дальше.


Но очень смущает то, что нужно работать с WinAPI, тобиш мне как человеку незнающему толком С++ будет тяжело приаттачить необходимые либы и заставить их работать на себя, но это все решается с помощью гугда и танца с бубном.
никуда не нужно зарываться.

1. идем на http://www.proxycap.com/download.html , скачиваем и устанавливаем этот "proxifier". (ну или любой другой по вкусу, они все практически одинаковые). ВСЁ!!! про LSP и связанные с ним заморочки можно забыть - эта программа занимается ими сама.

2. добавляем socks4 прокси с адресом 127.0.0.1:наш_порт.
добавляем правила "wow.exe перекидывать на этот прокси, остальное не трогать".

3. идем на http://ftp.icm.edu.pl/packages/socks...OCKS4.protocol , читаем описание протокола. проще не придумать.
реализуем сервер этого счастья хоть на C#, хоть на чём угодно другом.

4. добавляем логику типа такой:

Код:
принять соединение
соединиться с запрашиваемым адресом
ответить ок
принять первые 4 байта данных от клиента
если 3-4 байты равны "\xed\x01"(SMSG_AUTH_SESSION) или "\x12\x05" (SMSG_AUTH_SECOND_SESSION):
    значит в этом соединении идут интересующие нас данные и его нада обрабатывать 
иначе:
    просто и тупо прокидывать данные между клиентом и сервером (battle.net / запрос новостей и т.п.)
5. думаем на тему "а как обрабатывать параллельно 2 и более соединения". select или треды - в помощь.

6. прикидываем (ida в помощь) когда и где в памяти wow.exe образуются интересующие нас ключи и читаем их оттуда.


Цитата:
Сообщение от Konctantin Посмотреть сообщение
Неясным осталось только то,

Не нашел внятного описания всему этому делу, и вообще-то хотелось узнать реализуемо ли это средствами С# (без написания отдельных длл-ок)?
у меня весь прокси полностью написан на питоне, так что на C# тоже можно.


Цитата:
Сообщение от Konctantin Посмотреть сообщение
Что-то чем дальше тем сложнее все становится.
это только в начале, потом легче пойдет.
abdula123 вне форума   Ответить с цитированием
Пользователь сказал cпасибо:
Konctantin (03.06.2010)