Рейтинг темы:
  • 0 Голос(ов) - 0 в среднем
  • 1
  • 2
  • 3
  • 4
  • 5
C++ перехват пакетов
flopix Написал:Подниму еще тему.
Как вы нашли все таки это значение? Я сейчас изучаю клиент H5 под отладкой. Адресс "UNetworkHandler@@6BUObject" там везде вбит как константа, но как найти его без экспорта?
Тут 3 варианта:
1) Зашить константой как это сделал я. Это просто и не нужно правиться. Ищем под отладкой и просто зашиваем.
2) Искать смещение динамически
3) В хф хандлеры вынесены в экспорт, так что там все просто.
[Изображение: 4e38c909fcd08c5fcdf363b54a62.png]
Ответ
Старт VMT для UNetworkHandler вроде нашел по алгоритму описанному Akumu, но никак не могу найти смещение в таблице метода AddNetworkQueue. В C4, Il, H5, InfOdys оно идет по индексу 32-34 но тут попадаю в совсем другие функции.
Запустил Helios под отладкой до логина, но все равно запутался без экспорта Sad.
Ответ
flopix Написал:Старт VMT для UNetworkHandler вроде нашел по алгоритму описанному Akumu, но никак не могу найти смещение в таблице метода AddNetworkQueue. В C4, Il, H5, InfOdys оно идет по индексу 32-34 но тут попадаю в совсем другие функции.
Запустил Helios под отладкой до логина, но все равно запутался без экспорта Sad.
Чем тебя константа не устраивает то? А так оно там есть - ищи лучше Smile
[Изображение: 4e38c909fcd08c5fcdf363b54a62.png]
Ответ
Zubastic Написал:Чем тебя константа не устраивает то? А так оно там есть - ищи лучше Smile

Ну например тем, что описанный мной метод работает на всех хрониках Smile
Ответ
Akumu Написал:Ну например тем, что описанный мной метод работает на всех хрониках Smile

Да, но так мы получаем только указатель на VMT объекта UNetworkHanler.
А функции в ней от хроник к хрониках идут в разном порядке.
Ответ
flopix Написал:Да, но так мы получаем только указатель на VMT объекта UNetworkHanler.
А функции в ней от хроник к хрониках идут в разном порядке.

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

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

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

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

Я пользуюсь OllyDbg 1.10 +Phantom плагин. Но там конечно много что неудобно.
Ответ
flopix Написал:суть та что все равно нужно шаманить с поиском нужной функции в разных хрониках по разному. Но согласен так уже проще.

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

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

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

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

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

[Изображение: e21f496877.jpg]

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

Фантома для отладки большинства версий темиды вам хватит.
Ответ
Akumu Написал:pUGameEngine + 0x68

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

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

[Изображение: e21f496877.jpg]

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

Фантома для отладки большинства версий темиды вам хватит.

А аттачь к работающему клиенту пашет?)

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

Так ищи не через вмт, а в динамике. Индексы в вмт и правда постоянно будет плавать.
Ответ
f1redark Написал:Так ищи не через вмт, а в динамике. Индексы в вмт и правда постоянно будет плавать.
А не медленнее ли будет?
[Изображение: 4e38c909fcd08c5fcdf363b54a62.png]
Ответ


Возможно похожие темы ...
Тема Автор Ответы Просмотры Последний пост
  Свой сниффер и редактор пакетов SiriusED 0 462 03-22-2024, 03:28 AM
Последний пост: SiriusED
  Реконструкция пакетов из WSARecv\WSASend ANZO 3 2,492 04-17-2016, 08:34 PM
Последний пост: Necroz-Team
  Подмен пакетов katanasmil 4 3,090 06-16-2014, 07:24 PM
Последний пост: PROGRAMMATOR
  Опкоды пакетов при хуке Mifesto 3 2,435 07-09-2013, 04:18 PM
Последний пост: Mifesto

Перейти к форуму:


Пользователи, просматривающие эту тему: 7 Гость(ей)