• Объявления

    • Garik66

      Пользователям форума   05.11.2017

      Прошу обратить внимание на эту тему (чтобы увидеть ссылку, войдите в объявление - нажмите на заголовок):   
partoftheworlD

Поиск размера пакета отправляемого/получаемого

10 сообщений в этой теме

Для чего может понадобится размер пакета, это зависит от фантазии читера, допустим сделать аимбот, чтобы наблюдатели при стрельбе не наблюдали ничего необычного. Т.е отключаем отправку пакетов на сервер, делаем выстрел и включаем в итоге сервер не получает пакеты на которых у нас дергается экран к примеру.

Легче искать это в играх, при отключении интернета в которых будет выводиться какое-нибудь сообщение от которого можно будет оттолкнуться при поиске функции.

 

Для начала зайдем на любой сервер и отключим интернет, смотрим какие сообщения игра нам выдаст.

uyronINfRBY.jpg

 

Заходим в IDA(olly, x64dbg) и ищем сообщение которое было в верхнем правом углу.

 

Y6DitAD1_as.jpg

 

Переходим на функцию которая использует этот текст.

 

iQoWz7SQomA.jpg

 

Смотрим по коду и ищем какой-нибудь вызов перед текстом который нашли.

 

zAHN0xgh2nk.jpg\

 

После того как перешли по вызову, надо будет поискать младшую половину 8-битного регистра.(сейчас используется ECX(cl), хотя раньше был EBX(bl))

 

MWwKvty3pUw.jpg

 

Находим откуда берется ECX, теперь подключаем CE к игре, Ставим бряк на инструкцию lea ecx,[ebp-1C] и добавляем адрес(ebp-1C) в таблицу.

 

RHdhYVtMi2s.jpg 

 

Теперь с этими данными можно делать что угодно.

 

 

//UPD 

Немного ошибся, это размер пакета мы находим, а не их количество. Это можно проверить посмотрев в Wireshark.

Все это происходит перед функцией которая создает "движение" в игре(движение противников, выстрелы, летящие гранаты и т.д.). 

Изменено пользователем partoftheworlD
5

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Тема интересная, не знал что так можно находить пакеты получения и отправки, но тут на примере непонятно хотя бы то как он подсоединился к игре, выбрал ехе файл или что?
Подробней бы, ведь в фантазии можно к примеру найти движение игрока и что бы тебя не видели.

0

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

@partoftheworlD Замечательная статья :)

В 21.09.2017 в 19:28, TheErel сказал:

но тут на примере непонятно

А что тут не понятного?

Открыл был engine.dll в IDA Pro... Найдена в дллке строка, просмотрено какие именно функции используют данную строку, как я понял в этом случае только одна функции использует эту строку. Ищем первый вызов(call) перед использованием данной строки(в данном случае перед помещением ее в стэк) Переходим по функции, далее смотрим где заполняется реест ECX(В данном случае в этой строчке lea ecx,[ebp-1C]), далее открываешь ЦЕ тлт любой дебагер, открываешь данную функцию и ставишь бряк на эту инструкцию, брякаешся и добавляешь в таблицу адрес из ebp-0x1C

 

0

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
29 минут назад, temtriss сказал:

Замечательная статья

Неожиданно, но спасибо.

 

29 минут назад, temtriss сказал:

реест ECX

регистр, реестр это другое

0

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
В 26.09.2017 в 21:24, temtriss сказал:

А что тут не понятного?


Можете пожалуйста сделать видео по данной теме?
Не думаю что оно выйдет длинным просто, по картинкам последовательность как во Вьетнаме ноги оторванных солдат, я смотрю но не вижу связи.
Ну к примеру я не понял как произошло подключение ида? 
Вы выбрали игру или длл? Если длл то как вы поняли что именно эту и в папке игры ?
Дальше по картинкам я вообще не понял как вы вышли на ecx  и прочее.
Пожалуйста запишите видео.
Мне интересна эта тема .
 

0

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
10 минут назад, TheErel сказал:

Почему именно engine.dll ?

По тому, что на скрине открыт именно engine.dll... Вопрост же был про пример)) Вот я по примеру все и выдал)

0

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
2 минуты назад, temtriss сказал:

По тому, что на скрине открыт именно engine.dll... Вопрост же был про пример)) Вот я по примеру все и выдал)

Чуть выше прочтите я дополнил вопрос.

0

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
12 минуты назад, TheErel сказал:

я дополнил вопрос.

Ида - интерактивный дизасемблер, она анализирует без подключения(Да функция и возможность дебага есть, но ИМХО не так удобно как например Олли или х64дбг)... Открывается dllка из папки игры... можно посмотреть в заголовке окна иды... найти строку... кликнуть по строке выбрать Xref или просто нажать на X... в окошке выбираем функцию(как я понял только одна функция использует эту строку).... далее ищем первый call  перед помещением(ну так на скрине) ее в стек(push offset что-то там....) заходим в функцию и ищем где заполняется ECX... нашел?! отлично дальеш подключаешся любым дебагером к игре(можно и ЦЕ) идеш по смещению в engine dll... ставишь бряк, на функцию, которая заполняет ECX получаешь адрес... профит!

 

P.s. Залейте мне куда-то engine.dll я вам нагляднее покажу))

Изменено пользователем temtriss
0

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
1 час назад, TheErel сказал:

Пожалуйста запишите видео.

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

0

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Запилил видосик на скорую руку))) По гайду так сказать.... видос доступен только по ссылке... вроде... Но это не точно :D

https://youtu.be/ZDbQ0dhA_H8

 

Изменено пользователем temtriss
Не запилился видосик в тэге)
1

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!


Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.


Войти сейчас