L2Manger Source c# (Не реализована авторизация) - Форум администраторов игровых серверов
Форум администраторов игровых серверов StormWall - Защита от DDos атак
Регистрация Мнения Справка Пользователи Календарь Все разделы прочитаны
Вернуться   Форум администраторов игровых серверов > Полезное / Common > Программирование / Programming

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

Ответ
Опции темы
Непрочитано 07.07.2015, 03:58   #1
Аватар для Foru
Пользователь

Автор темы (Топик Стартер) L2Manger Source c# (Не реализована авторизация)

Привет, делал менеджер аккаунтов для Lineage 2, но в итоге забил на это дело.
Выкладываю исходники.
Что реализовано:

1) Поиск клиента и определение хроник клиента.
Поиск клиента осуществляется по названию папок, найденные совпадения проверяются на наличии файлов (определенных файлов), после проверки (что это действительно клиент) вызывается процедура проверки хроник, на наличие эксклюзивных файлов хроник (Каждой хроники), а так же по размеру файлов. Вся конфигурация поиска и определение хроник клиента, лежит в ConfingFind.ini.

Структура ConfingFind.ini файла.
[FINDTemplateFolder] - В этой секции прописываются имена папок которые будем искать.
[FolderFile] - Тут находятся имена файлов для проверки (действительно ли это клиент?)
[SECTIONFIND] - Тут список секций в которых хранится списки уникальных файлов для соответствующих хроник.

2) Реализована загрузка аккаунтов для каждого клиента.
Структура ConfingAccaunt.ini файла.
[Тут путь к клиенту]
Логин:Пароль|Комментарий

* Не реализован запуск клиента с автоматическим логином.
* Не реализовано шифрование ConfingAccaunt.ini файла.
* Нету оптимизации кода.
* Класс FileINI отличный велосипед для работы с .ini файлами.


В архиве не доделанный мангер и сорец программы для чека клиентов, на их различие по файлам.


Привет gorodetskiy!)
Вложения
Тип файла: zip L2Manger.zip (131.2 Кб, 32 просмотров)
__________________
Foru вне форума Ответить с цитированием
Сказали спасибо:
Непрочитано 07.07.2015, 09:23   #2
Пользователь

По умолчанию Re: L2Manger Source c# (Не реализована авторизация)

Что мешает доделать? Деньги?

Т.е. потенциально ты бы мог сделать программу, которая бы запустила клиент с автоматическим вводом логин и пароля?
__________________
deathmad вне форума Ответить с цитированием
Непрочитано 07.07.2015, 18:08   #3
Аватар для Foru
Пользователь

Автор темы (Топик Стартер) Re: L2Manger Source c# (Не реализована авторизация)

Цитата:
Сообщение от deathmad Посмотреть сообщение
Что мешает доделать? Деньги?

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


Автологин можно реализовать в 4 способа.
1) Захват формы и WindowSend, такой способ по мне не красив и вообще не уместен.
2) Редактировать файл l2.ini и запускать l2 с командами - такая быдло поделка не всегда будет работает.
3) Перехват пакетов и уже через них авторизовываться, тут тоже есть свои сложности, например разное шифрование для каждого сервера, но и защита клиента не всегда даст перехватить пакеты.
4) Способ самый оптимальный: Путём dll injecta дергать функции клиента для авторизации, но тут сложность реализации, сколько я не искал методы такого инжекта, реализацию не нашёл.

Цитата с одного из форумов.

Цитата:
Сообщение от Yegor Посмотреть сообщение
Вызвать апи функцию клиента

Код:
int (__fastcall *UNetworkHandler_RequestAuthLogin)(UNetworkHandler*, int, wchar_t const * login, wchar_t const * password,int param) = 0;
....
(FARPROC&) UNetworkHandler_RequestAuthLogin = GetProcAddress(hEngine, "?RequestAuthLogin@UNetworkHandler@@UAEHPB_W0H@Z");
....
(*UNetworkHandler_RequestAuthLogin)(UNH, 0/*что угодно*/, login, password, 0);
Только вот надо изначально получить UNH, это указатель на объект UNetworkHandler в памяти. Как это сделать не перехватив не одного пакета я хз.
На этом я и забил разработку, время дорого для ковыряния клиента.
__________________
Foru вне форума Ответить с цитированием
Непрочитано 10.10.2020, 13:43   #4
Пользователь

По умолчанию Re: L2Manger Source c# (Не реализована авторизация)

Апну некропост, вдруг кому то понадобится, пришлось разобраться с автологином для клиента IL
Цитата:
Только вот надо изначально получить UNH, это указатель на объект UNetworkHandler в памяти. Как это сделать не перехватив не одного пакета я хз.
Получить UNH оказалось просто.
Нужно перехватить конструктор, для IL: "?InternalConstructor@UNetworkHandler@@SAXPAX@ Z"
Конструктор вызывается уже при старте игрового клиента.
flopix вне форума Ответить с цитированием
Ответ


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

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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Donate Shop [Lucera] labrador116 Lineage II 23 12.03.2014 15:08
ошибка овероподобной сборки ShadowPK Lineage II 9 02.03.2013 22:02
Сервер спамит ошибками. AccessDenied Работа со скриптами 8 29.03.2011 03:01
ошибка при установки базы Devilop Lineage II 18 27.08.2010 20:43
Ошибка GameServer`a xMETTx Серверная часть 29 30.01.2010 12:59


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

Вверх