C++ перехват пакетов - Страница 12 - Форум администраторов игровых серверов
Форум администраторов игровых серверов StormWall - Защита от DDos атак
Регистрация Мнения Справка Пользователи Календарь Все разделы прочитаны
Вернуться   Форум администраторов игровых серверов > Полезное / Common > Программирование / Programming

Программирование / Programming
Ищете помощи в написании программы, есть сложность в выполнении задания (в институте и т.д.), пожалуйста, спросите у нас в данном форуме и мы обязательно вам поможем.

Ответ
Опции темы
Непрочитано 27.08.2016, 00:00   #111
Аватар для Zubastic
ZG troll squad

Автор темы (Топик Стартер) Re: C++ перехват пакетов

Цитата:
Сообщение от flopix Посмотреть сообщение
Подниму еще тему.
Как вы нашли все таки это значение? Я сейчас изучаю клиент H5 под отладкой. Адресс "UNetworkHandler@@6BUObject" там везде вбит как константа, но как найти его без экспорта?
Тут 3 варианта:
1) Зашить константой как это сделал я. Это просто и не нужно правиться. Ищем под отладкой и просто зашиваем.
2) Искать смещение динамически
3) В хф хандлеры вынесены в экспорт, так что там все просто.
__________________
Zubastic вне форума Ответить с цитированием
Сказали спасибо:
Непрочитано 27.08.2016, 00:51   #112
Пользователь

По умолчанию Re: C++ перехват пакетов

Старт VMT для UNetworkHandler вроде нашел по алгоритму описанному Akumu, но никак не могу найти смещение в таблице метода AddNetworkQueue. В C4, Il, H5, InfOdys оно идет по индексу 32-34 но тут попадаю в совсем другие функции.
Запустил Helios под отладкой до логина, но все равно запутался без экспорта .
flopix вне форума Ответить с цитированием
Непрочитано 27.08.2016, 00:58   #113
Аватар для Zubastic
ZG troll squad

Автор темы (Топик Стартер) Re: C++ перехват пакетов

Цитата:
Сообщение от flopix Посмотреть сообщение
Старт VMT для UNetworkHandler вроде нашел по алгоритму описанному Akumu, но никак не могу найти смещение в таблице метода AddNetworkQueue. В C4, Il, H5, InfOdys оно идет по индексу 32-34 но тут попадаю в совсем другие функции.
Запустил Helios под отладкой до логина, но все равно запутался без экспорта .
Чем тебя константа не устраивает то? А так оно там есть - ищи лучше
__________________
Zubastic вне форума Ответить с цитированием
Сказали спасибо:
Непрочитано 27.08.2016, 19:39   #114
Аватар для Akumu
Пользователь

По умолчанию Re: C++ перехват пакетов

Цитата:
Сообщение от Zubastic Посмотреть сообщение
Чем тебя константа не устраивает то? А так оно там есть - ищи лучше
Ну например тем, что описанный мной метод работает на всех хрониках
Akumu вне форума Ответить с цитированием
Непрочитано 27.08.2016, 19:50   #115
Пользователь

По умолчанию Re: C++ перехват пакетов

Цитата:
Сообщение от Akumu Посмотреть сообщение
Ну например тем, что описанный мной метод работает на всех хрониках
Да, но так мы получаем только указатель на VMT объекта UNetworkHanler.
А функции в ней от хроник к хрониках идут в разном порядке.
flopix вне форума Ответить с цитированием
Непрочитано 27.08.2016, 19:56   #116
Аватар для Akumu
Пользователь

По умолчанию Re: C++ перехват пакетов

Цитата:
Сообщение от flopix Посмотреть сообщение
Да, но так мы получаем только указатель на VMT объекта UNetworkHanler.
А функции в ней от хроник к хрониках идут в разном порядке.
Вы получаете указатель на объект, а vft/vmt находится по смещению 0.
Akumu вне форума Ответить с цитированием
Непрочитано 27.08.2016, 20:40   #117
Пользователь

По умолчанию Re: C++ перехват пакетов

Цитата:
Сообщение от Akumu Посмотреть сообщение
Вы получаете указатель на объект, а vft/vmt находится по смещению 0.
суть та что все равно нужно шаманить с поиском нужной функции в разных хрониках по разному. Но согласен так уже проще.

Добавлено через 1 минуту
Цитата:
Сообщение от Akumu Посмотреть сообщение
Вы получаете указатель на объект, а vft/vmt находится по смещению 0.
О, значит я неправильно искал. Повторю.

Чем вы отлаживаете L2?

Я пользуюсь OllyDbg 1.10 +Phantom плагин. Но там конечно много что неудобно.

Последний раз редактировалось flopix; 27.08.2016 в 20:42. Причина: Добавлено сообщение
flopix вне форума Ответить с цитированием
Непрочитано 27.08.2016, 21:15   #118
Аватар для Akumu
Пользователь

По умолчанию Re: C++ перехват пакетов

Цитата:
Сообщение от flopix Посмотреть сообщение
суть та что все равно нужно шаманить с поиском нужной функции в разных хрониках по разному. Но согласен так уже проще.

Добавлено через 1 минуту

О, значит я неправильно искал. Повторю.

Чем вы отлаживаете L2?

Я пользуюсь OllyDbg 1.10 +Phantom плагин. Но там конечно много что неудобно.
Откройте в IDA конструктор любого объекта и сможете наблюдать как и что инициализируется.



Согласно конвенции thiscall указатель на объект у нас лежит в ecx, на выделенном участке кода можете наблюдать куда помещается указатель на vft.

Фантома для отладки большинства версий темиды вам хватит.
Akumu вне форума Ответить с цитированием
Сказали спасибо:
Непрочитано 28.08.2016, 01:19   #119
Пользователь

По умолчанию Re: C++ перехват пакетов

Цитата:
Сообщение от Akumu Посмотреть сообщение
pUGameEngine + 0x68
Хардкод смещения это такое, проще все искать в динамике. Понятно, конечно, что скорее всего смещения указателя на UNetworkHandler в экземпляре класса UGameEngine будет одинаковым, но корейцы нам этого не гарантируют(

Добавлено через 3 минуты
Цитата:
Сообщение от Akumu Посмотреть сообщение
Откройте в IDA конструктор любого объекта и сможете наблюдать как и что инициализируется.



Согласно конвенции thiscall указатель на объект у нас лежит в ecx, на выделенном участке кода можете наблюдать куда помещается указатель на vft.

Фантома для отладки большинства версий темиды вам хватит.
А аттачь к работающему клиенту пашет?)

Добавлено через 5 минут
Цитата:
Сообщение от flopix Посмотреть сообщение
Да, но так мы получаем только указатель на VMT объекта UNetworkHanler.
А функции в ней от хроник к хрониках идут в разном порядке.
Так ищи не через вмт, а в динамике. Индексы в вмт и правда постоянно будет плавать.

Последний раз редактировалось f1redark; 28.08.2016 в 01:24. Причина: Добавлено сообщение
f1redark вне форума Ответить с цитированием
Непрочитано 28.08.2016, 02:21   #120
Аватар для Zubastic
ZG troll squad

Автор темы (Топик Стартер) Re: C++ перехват пакетов

Цитата:
Сообщение от f1redark Посмотреть сообщение
Так ищи не через вмт, а в динамике. Индексы в вмт и правда постоянно будет плавать.
А не медленнее ли будет?
__________________
Zubastic вне форума Ответить с цитированием
Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 
Опции темы

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

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

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Перехват и подмена пакетов Smiler ArcheAge 27 13.01.2023 04:12
Шифровка пакетов SiriusED Blade & Soul 8 23.07.2015 00:21
Подмен пакетов katanasmil Программирование / Programming 4 16.06.2014 19:24
Отправка пакетов(C#) Tezarius ArcheAge 6 13.03.2014 01:28
Перехват пакетов конкретного приложения под win32 Redvain Курилка / Yak floor 0 28.05.2009 12:46


© 2007–2024 «Форум администраторов игровых серверов»
Защита сайта от DDoS атак — StormWall
Работает на Булке неизвестной версии с переводом от zCarot
Текущее время: 03:53. Часовой пояс GMT +3.

Вверх