|
|
  |
Uoext. Расширяя Возможности Клиента, We do what EA can't. |
|
|
StaticZ |
15.5.2011, 15:34
|

        
Разработчик проекта "Квинтэссенция"
Сообщений: 2.155
Регистрация: 15.6.2009 Группа: Пользователи Наличность: 0 Из: РФ, Москва
Пользователь №: 11.948

|
Цитата(Warstone @ 15.5.2011, 16:07)  1) Довольно затруднительно, так как плагины прибывают (ну будут прибывать) с сервера и за то, какие плагины грузить - отвечает сервер. Соответственно можно так-же строить защиту. А насчет ламера - ну если человек и диод - это не лечится зачастую. 2) Никто не навязывает раскрывать код плагинов. Для этого это и сделано. Пишите свою защиту или покупайте у сторонних разработчиков. Воля ваша.
Ты не правильно понял о чем я писал: 1) Насчет ламеров - дело не в том лечиться не лечиться, а то что потенциально косые плагины могут навредить серверу, особо актуально сферам - там с этим дела острее обстоят (тотже спид хак). Но ето мелочи я говорил о другом - да дапустим у нас свой плагин, своя дллка с закрытым кодом, но из длл надо вызывать методы, если мы пересобирем проект мы можем спокойно убрать этот плагин или создать иллюзию его присутсвия и наоборот можно подключить те плагины которые не желательны политике сервера... Да тут можно многое придумать, чтобы это както проверять, но имея открытый исходный код этих проверок обойти и обмануть его всегда можно... 2) Там было ключевое слово Если делаются стандартные методы защиты, тоесть даная фича является уже реализованной в транке офф версии..
--------------------
RP сервер UO: Quintessence, а также ПО: EssenceUCS, EssenceUDK, CentrEd+, Fiddler+ и др.Game isn't a dream, it is the reality, reality which is coming while we dream...
|
|
|
|
Warstone |
15.5.2011, 15:42
|

        
Группа: Модераторы Наличность: 0
Пользователь №: 10.905
Возраст: 25

|
Задам еще один вопрос... Чего, на ваш взгляд, не хватает на данный момент? Нет, я на него могу ответить и сам... Как-то: - Документация (планирую ей заняться после того как доделаю последние маилстоуны. Там выпущу собранную версию ядра за версией 0.1.0) - Рефакторинг ибо там сейчас быдлокода... До жопы. - Дропнуть поддержку Delphi 7 и остановиться или на XE или на fpc чистом. Пока не знаю что лучше... Надо fpc поизучать. Дроп 7-ки позволит пользоваться дополнительными фишками, которые на 7-ке не пашут. Но вдруг еще кто-то чего-то захочет добавить. Цитата(StaticZ @ 15.5.2011, 16:34)  Ты не правильно понял о чем я писал: 1) Насчет ламеров - дело не в том лечиться не лечиться, а то что потенциально косые плагины могут навредить серверу, особо актуально сферам - там с этим дела острее обстоят (тотже спид хак). Но ето мелочи я говорил о другом - да дапустим у нас свой плагин, своя дллка с закрытым кодом, но из длл надо вызывать методы, если мы пересобирем проект мы можем спокойно убрать этот плагин или создать иллюзию его присутсвия и наоборот можно подключить те плагины которые не желательны политике сервера... Да тут можно многое придумать, чтобы это както проверять, но имея открытый исходный код этих проверок обойти и обмануть его всегда можно... 2) Там было ключевое слово Если делаются стандартные методы защиты, тоесть даная фича является уже реализованной в транке офф версии..
1) А ВотИНет. Насчет ламеров - если ламеры держатели шарда, то пусть он быстрее сдохнет. Всем лучше будет. А насчет изменения основного ядра - нет, это можно, только вот... Плагины умеют посылать пакеты (через Ядро) в сторону сервера. И сервер, если плагин не ответил или ведет себя странно - в праве нах послать клиента с фразой "У вас бинарники не те". А вот код определения неверности будет в плагине... Откомпиленый... Кто мешает в тот-же dll пихать одноразовый ключ защиты... Что-то типа "Клиент подключается, ему дают dll, которая сформирована только что, она отрабатывает и посылает зашифрованные результаты на сервер, сервер отрубает клиента". Этого достаточно для определения валидности Ядра. 2) Стандартных методов защиты нету. И не будет, скорее всего. Хотите защищаться - плагином перепахивайте весь входящий и исходящий протокол.
--------------------
Do. Or do not. There is no Try! © Master Joda, Dagobah, Star Wars: Episode V.
|
|
|
|
StaticZ |
15.5.2011, 16:20
|

        
Разработчик проекта "Квинтэссенция"
Сообщений: 2.155
Регистрация: 15.6.2009 Группа: Пользователи Наличность: 0 Из: РФ, Москва
Пользователь №: 11.948

|
Дока нужна это главное, тока лучше не пиши учебник а пиши описание функций и параметров аля как мсдн и несколько примерчиков, чтобы можно было быстро понять с чего начать и как писать... (ну всем известные хелоу ворд первым делом) - много слов тоже вредно да и писать долго... А вот чистое fpc не советовал бы, лучше на лазурас ориентируйся... какое никакое а IDE да впринципе самое популярное кроме дельфи (а если смотреть на кросплатформеность и бесплатность то популярнее и дельфи). Да впринципе лазурас и есть IDE для fpc.
--------------------
RP сервер UO: Quintessence, а также ПО: EssenceUCS, EssenceUDK, CentrEd+, Fiddler+ и др.Game isn't a dream, it is the reality, reality which is coming while we dream...
|
|
|
|
Destruction |
15.5.2011, 16:40
|

         
Группа: Администраторы Наличность: 1
Пользователь №: 1.833

|
Цитата(Warstone @ 15.5.2011, 16:07)  1) Гм... Не просек, ну ладно. 2) Так храните - никто не запрещает. Не запускайте. Или запускайте, но не для этого шарда. Всегда можно задетектить воздействие на клиент. особенно если код детекта выполняется в АП самого клиента. 3) Поток ты притормозить не можешь. Не путай с процессом. Более того... Это опять-же можно контролировать с сервера периодически опрашивая поток-сканер через протокол. 4) Тут не спорю.
2. Не правда. Что мне мешает пропатчить клиент из дллки после чего её выгрузить? - Соответственно сделать это ДО того как uoext будет загружен в клиент не есть проблема. Тогда тебе придется проверять как минимум send и recv на наличие хука.. Только вот об этом речи до моего поста не было? Да, от этого опять-таки можно защититься.. Но как я уже писал - противостояние вечно, в любой защите найдется изъян. 3. Ты не прав. Могу притормозить поток, более того - могу научить это делать любого дурака.. Открываем вкладку Threads в свойствах процесса в Process Explorer, находим нужный тред (у него скорее всего будет фиксированное смещение ;-) ) и жмем кнопку suspend.. Profit ! То, что можно контролировать - факт. Но ответь себе на вопрос: стал бы ты это делать, если бы тебе в лоб не предъявили о том что есть такой косяк? - Большинство людей ответят "нет", себе во всяком случае, IMHO.
--------------------
Telegram: @tatikom
|
|
|
|
Warstone |
15.5.2011, 19:16
|

        
Группа: Модераторы Наличность: 0
Пользователь №: 10.905
Возраст: 25

|
Цитата(Destruction @ 15.5.2011, 17:40)  2. Не правда. Что мне мешает пропатчить клиент из дллки после чего её выгрузить? - Соответственно сделать это ДО того как uoext будет загружен в клиент не есть проблема. Тогда тебе придется проверять как минимум send и recv на наличие хука.. Только вот об этом речи до моего поста не было? Да, от этого опять-таки можно защититься.. Но как я уже писал - противостояние вечно, в любой защите найдется изъян. 3. Ты не прав. Могу притормозить поток, более того - могу научить это делать любого <вырезано анти-матом>а.. Открываем вкладку Threads в свойствах процесса в Process Explorer, находим нужный тред (у него скорее всего будет фиксированное смещение ;-) ) и жмем кнопку suspend.. Profit ! То, что можно контролировать - факт. Но ответь себе на вопрос: стал бы ты это делать, если бы тебе в лоб не предъявили о том что есть такой косяк? - Большинство людей ответят "нет", себе во всяком случае, IMHO.
2 Немного не так... Текущая реализация запускает бинарник в суспендед режиме и запускает свой тред. Перехват вашим методом пока не возможен. 3 Не будет. Так как тред пускается в динамике.
--------------------
Do. Or do not. There is no Try! © Master Joda, Dagobah, Star Wars: Episode V.
|
|
|
|
StaticZ |
1.7.2011, 19:41
|

        
Разработчик проекта "Квинтэссенция"
Сообщений: 2.155
Регистрация: 15.6.2009 Группа: Пользователи Наличность: 0 Из: РФ, Москва
Пользователь №: 11.948

|
Цитата(Warstone @ 1.7.2011, 20:24)  Кто тут рвался на халяву покодить для UOExt на C#... Надо написать серверную часть для обновлялки UOExt
намек понял, походу это обо мне (IMG: style_emoticons/default/biggrin.gif) Давай поконкретнее только что именно обновлять? и как (если важно)?? Цитата(Warstone @ 1.7.2011, 20:24)  Кто тут рвался на халяву покодить для UOExt на C#... Надо написать серверную часть для обновлялки UOExt
намек понял, походу это обо мне (IMG: style_emoticons/default/biggrin.gif) Давай поконкретнее только что именно обновлять? и как (если важно)??
--------------------
RP сервер UO: Quintessence, а также ПО: EssenceUCS, EssenceUDK, CentrEd+, Fiddler+ и др.Game isn't a dream, it is the reality, reality which is coming while we dream...
|
|
|
|
Warstone |
1.7.2011, 23:00
|

        
Группа: Модераторы Наличность: 0
Пользователь №: 10.905
Возраст: 25

|
Вообще, ближайшие малистоуны: - Доделать скачивание плагинов (в планах и самой dll, а-ля обновление) с сервера - Серверный код поддержки этого на C# (который может быть как в составе RunUO, так и отдельным приложением. Я помню про Сферойдов и Полотеров) - Переделать механизм плагинов (Добавится возможность в одной dll держать несколько плагинов, что поможет в компиляции одной dll из кучи разных плагинов) - Сделать возможность заражать собой бинари (Поддержка Razor).
После этого будет релиз версии 0.1.0 alpha 1 )))
В конце пути забрезжил первый огонек первой публичной сборки )) На текущий момент у меня на компьютере лежат исходники от 394 сборки UOExt.dll, к 0.1.0 будет, наверно, 500-я сборка.
--------------------
Do. Or do not. There is no Try! © Master Joda, Dagobah, Star Wars: Episode V.
|
|
|
|
Warstone |
3.7.2011, 0:02
|

        
Группа: Модераторы Наличность: 0
Пользователь №: 10.905
Возраст: 25

|
Порадуем... Наверно больше себя...
В готовящемся Коммите: - Скачивание плагинов с сервера. Часть UOExt. - Скачивание плагинов с сервера. Часть RunUO с возможностью запускать отдельно от RunUO (Поддержка Sphere server и POL). - Переработана система плагинов. Теперь в одной dll можно держать несколько плагинов.
Подробнее о каждом пункте: Скачивание плагинов: На момент коммита будет сделано топорно и так и перекочует в первую публичную альфу. В следующих версиях будет модифицироваться и, возможно, вырастет в нормальный обновлятор клиента.
Переработанная система плагинов: Старые плагины поддерживаться не будут (но их и нету, кроме как одного тестового и одного внутреннего). Избавился от Необходимости создавать для каждого плагина свой объект, теперь это меньше жрет памяти и должно быстрее работать. Короче - везде плюшки.
Статикз... Если ты не будешь тормозить, то завтра уже сегодня можно будет делать коммит.
После этого мне написать систему заражения ехе (Поддержка Razor) и будет первая публичная альфа.
Да, похоже на RunUO.com об этой поделки еще не знают )))
Сообщение отредактировал Warstone - 3.7.2011, 0:07
--------------------
Do. Or do not. There is no Try! © Master Joda, Dagobah, Star Wars: Episode V.
|
|
|
|
|
  |
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0
|
|