Рейтинг темы:
  • 0 Голос(ов) - 0 в среднем
  • 1
  • 2
  • 3
  • 4
  • 5
инжект dll с защитой в клиент
#1
Добрых суток уважаемые, я у вас новенький.

Вообщем появилась задумка написать свою универсальную защиту под разные хроники. Суть защиты в сокет сервере и передачи трафика по ключам ssh

идея есть,а из языков знаю только C# и чуть чуть java(благо они похожи, ООП) и документации навалом.

С серверной частью проблем нет, а вот клиент...
Вот тут то и назревает у меня 1 серьезный для меня вопрос.

Вот есть к примеру LameGuard и другие мение известные защиты.
посмотрел я исходники клиентской части, там всего лишь dll. и не чего интересного.

А вот как пишется эта dll. куда ее инжектить, как узнать классы в игре... И вообще вот эти основы мне не понятны. Что то может почитать?

и обязательно ли писать эту dll на C(++) можно ли написать на С#

И как узнать какие классы мне нужны.

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

Пока я себе все представляю так...

Добавлено через 45 секунд
Совсем забыл добавить, начать я решил с interlude
Ответ
#2
Отладчик(под кернелем) + смекалка + небольшие знаниявагон знаний асм'а...да куча всего нужно, для вменяемого крекинга клиента ладвы(если не идти как баран, в слепую, по "мануалам" и "примерам" с КодерХ).
Да и для бейса, понадобится неплохой скилз в протекторах и их анпакинге, в разгребании туч сдампленной инфы и прочего, реверс-инженерного оумна.
---
Приветствую. Чуть не тот портал. CoderX поможет, как примерами так и документацией. Удачи Wink
Ответ
#3
Для написания клиентской части защиты вовсе не обязательно особо ковыряться в во внутренней структуре клиента.

Для своей собственной шифрации игрового трафика достаточно уже сформированные клиентские пакеты зашифровать своим методом.
Клиенты любой игры используют для работы с сетью WinAPI функции для работы с сокетами, изучайте сплайсинг и все у вас получиться.
Ответ
#4
MHard;367157 Написал:Для написания клиентской части защиты вовсе не обязательно особо ковыряться в во внутренней структуре клиента.
KilRoy;367155 Написал:если не идти как баран, в слепую

По факту, 1н хендлер несет в себе все что нужно. Как и функции сенд\рецейва, так и крипт\декрипт пакетов. Но отписать это в таком виде(Нужно с инита, вытащить с регистра ecx указатель на объект), тоже самое что стрелять с базуки по воробьям...глупая затея, тем более без базовых знаний.
Ответ
#5
coderX то что нужно, большое спасибо, завтра потихоньку начну изучать.
Ответ
#6
Именно из за того что я чайник в реверсинге/ASM, такая идея с моей стороны сфейлилась. Смог сделать только "общесистемную" защиту, так сказать. А не конкретную.

Что по сути является мало эффективным в некоторых аспектах)


DLL c хуками и прочими модификациями пишется на С, of course. Инжектить либу при каждом запуске было бы костылём , лучше сделать так чтоб клиент сам ее подгружал.




З.ы никогда не пытайся инжектить managed код в нативный процесс, lol

З.ы вместо инжекта DLL лучше инжектить саму защиту как целый PE образ что бы она работала из под самого процесса L2.exe


З.ы Учитывай тот факт, что некоторые боты могут просто захучить функции CreateRemoteThread/RtlCreateUserThread(NTDLL версия) и твоя защита ничего не заинжектит в клиент , так что читай начало моего сообщения.

Для того что бы этого не случилось можно хучить KiFastSystemCall, но в таком случае остается вариант с Kernel Mode ботом который захучит SSDT таблицу.


Короче жопаболь еще та и факторов куча
Ответ
#7
Добавлю еще свои 5ть копеек.

Если делать крипт через хук сокетов, то конкретно в защите будет мало толку, так как большинство читов/ботов/хаков работают через хукинг функций клиента, т.е. сам пакет они ловят, либо добавляют именно в самом клиенте, соответственно, крипт который будет сделан на хуках сокетов будет на уровень ниже по абстрактной модели.

Цитата:А вот как пишется эта dll. куда ее инжектить, как узнать классы в игре... И вообще вот эти основы мне не понятны. Что то может почитать?
Берете дизассемблер, вскрываете engine.dll и смотрите. Классы, структуры и функции.

m0nster.art - clear client patches, linkz to utils & code.
Гадаю по капче.
Ответ
#8
Pointer*Rage Написал:Добавлю еще свои 5ть копеек.

Если делать крипт через хук сокетов, то конкретно в защите будет мало толку, так как большинство читов/ботов/хаков работают через хукинг функций клиента, т.е. сам пакет они ловят, либо добавляют именно в самом клиенте, соответственно, крипт который будет сделан на хуках сокетов будет на уровень ниже по абстрактной модели.


Берете дизассемблер, вскрываете engine.dll и смотрите. Классы, структуры и функции.


В таком случае можно сделать так, что бы сам клиент исчез и боты не могли в нем ничего хукать.


Ну т.е Ring 0 - Source of Inspiration


Есть в моих идеях что то) :redlol:



З.ы
Ответ


Возможно похожие темы ...
Тема Автор Ответы Просмотры Последний пост
  Клиент Prelude Windows 10 Onizuka 3 2,452 10-04-2022, 09:47 AM
Последний пост: ashangar
  Свежий клиент на более ранних хрониках NightRaven 1 1,447 10-02-2022, 09:24 PM
Последний пост: Kampina
  Помогите запустить клиент на Win 10 cjhrxSS 0 1,184 12-28-2020, 11:56 PM
Последний пост: cjhrxSS
  Клиент эпилога на win10 x64 SoniPro 5 3,500 12-09-2018, 02:32 PM
Последний пост: BaldIriskin
  Клиент -> меню ccc 4 2,113 05-29-2018, 02:11 PM
Последний пост: Emperor
  Китайский клиент L2 Modiffed (там еще чары прыгать могут) Alay 31 8,895 08-18-2017, 11:14 AM
Последний пост: fr1ska
  Корейский клиент/патч 110 протокол Visor 1 1,595 07-30-2017, 06:34 PM
Последний пост: Visor
  C4 клиент flopix 5 2,107 03-13-2017, 01:36 AM
Последний пост: defenderk1
  Клиент С4, настройка на сервер kotelok 1 1,591 01-31-2017, 09:41 AM
Последний пост: kotelok
  Клиент Lineage 2 C5 NO GG s4nders 8 2,973 12-13-2016, 07:12 AM
Последний пост: s4nders

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


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