Сейчас на форуме: vsv1, r0lka, -Sanchez-, testrev1337, johnniewalker (+3 невидимых) |
eXeL@B —› Крэки, обсуждения —› Кириллица vs. UDP |
Посл.ответ | Сообщение |
|
Создано: 12 февраля 2010 23:30 · Поправил: Yuri4850 · Личное сообщение · #1 Есть консольная утилита pbucon.exe, входящая в комплект многих программ для удаленного администрирования игровых серверов (в частности, COD4). Она позволяет получать/отсылать сообщения внутриигрового чата, не заходя в игру. Есть проблема с кириллицей. Отсылает корректно, получает байт FAh (250) для любого символа кириллицы. Отсюда можно скачать pbucon.exe (68 КБ). CoD RconTool 11.3.1 - пример программы, в которой используется pbucon. Написал dll для перехвата функции recvfrom из wsock32.dll, через которую pbucon получает данные. В результате убедился, что pbucon не портит кириллицу. Он получает ее уже "мертвой", т.е. на данном этапе кириллица восстановлению уже не подлежит. Однако анализ пакетов UDP при помощи iptools.exe v1.98.0.8 показывает, что из сети приходят одинаковые пакеты для одинаковых сообщений и разные - для разных, в т.ч. и для разных сообщений одинаковой длины. Т.е. если я напишу непосредственно в игре "абвг" и "абвд", то придут разные пакеты, если же напишу еще раз "абвг", то придет точно такой же пакет, как и первый. Т.е. где-то между моей сетевой картой и wsock32.dll происходит "порча" кириллицы. Как выяснить, где именно? По результатам дизассемблирования recvfrom из wsock32.dll по сути является переходником к WSARecvFrom из ws2_32.dll. Но ее анализ для меня пока слишком сложен. Я не программист... P.S. Archer, для перехвата recvfrom я подгружаю в АП pbucon.exe самостоятельно написанную dll с помощью самостоятельно написанного инжектора, причем все это на чистом VB6. Просьба не закрывать как это. |
|
Создано: 15 февраля 2010 09:52 · Личное сообщение · #2 Yuri4850 пишет: Т.е. если я напишу непосредственно в игре "абвг" и "абвд", то придут разные пакеты, если же напишу еще раз "абвг", то придет точно такой же пакет, как и первый. 1) Такие темы ты можешь создавать только в вопросах новичков. 2) Одинаковые, разные пакеты - это все слова. Где образцы? 3) Естественно, если pbucon не расчитан на кирилицу, то все запрещенные буквы он будет переводить в один и тот же код. Он и делает ее мертвой. Но скорее всего при передаче. 4) Т.ч. работы много, а результата ноль. wsock32.dll ws2_32.dll - это TCP/IP стек Ему глубоко "фиолетово", что там внутри пакетов. |
|
Создано: 15 февраля 2010 11:58 · Личное сообщение · #3 1. К делу не относится. 2. См. вложение - UDP-пакеты для 3 разных слов (пакеты без заголовков). 3. Я отсылаю с помощью pbucon кириллицу без искажений. 4. Вот я и пытаюсь найти, кому все-таки не фиолетово. f45c_15.02.2010_CRACKLAB.rU.tgz - UDP.zip |
|
Создано: 15 февраля 2010 12:15 · Личное сообщение · #4 Code:
IDA почти всегда выручит. Не разбирался, но думаю оно. |
|
Создано: 15 февраля 2010 12:37 · Личное сообщение · #5 |
|
Создано: 15 февраля 2010 16:59 · Личное сообщение · #6 OSA, спасибо огромное. Если бы я догадался поискать это гадкое 0xFAh, сэкономил бы дня 3 времени. Правда, пришлось нопить еще. И еще решить проблему - 1 байт FA нужен был (что-то вроде метки, указывающей на начало сообщения), сейчас же он теряется. Пришлось написать dll, через которую ловлю WriteFile и исправляю ее буфер. Проблема решена, тему можно закрывать/удалять. |
|
Создано: 15 февраля 2010 18:06 · Личное сообщение · #7 |
eXeL@B —› Крэки, обсуждения —› Кириллица vs. UDP |
Эта тема закрыта. Ответы больше не принимаются. |