[Tool/Web/Other] SAMP-Addon
#21

Для особо желающих
Quote:
Originally Posted by Alexander_Petrov
View Post
Для линукс еще нет? Будет?
Добавлен серверный плагин под Linux
Reply
#22

Quote:
Originally Posted by BJIADOKC
View Post
Для особо желающих

Добавлен серверный плагин под Linux
Несколько вопросов:
- В нем есть уже возможность передачи файлов игроку со стороны сервера(Модели, текстуры)?
- Можно ли узнавать все нажатия клавиш и делать на них действия?
- Можно ли отслеживать чит программы и удалять/не пускать игрока на сервер пока не удалит их?
- Можно ли поставить проверку если у игрока не установлен Addon то писать что бы установить и не пускать на сервер?
- Есть ли в плагине какие то функции которые можно использовать?
Reply
#23

Quote:
Originally Posted by Kolstin
View Post
Несколько вопросов:
- В нем есть уже возможность передачи файлов игроку со стороны сервера(Модели, текстуры)?
- Можно ли узнавать все нажатия клавиш и делать на них действия?
- Можно ли отслеживать чит программы и удалять/не пускать игрока на сервер пока не удалит их?
- Можно ли поставить проверку если у игрока не установлен Addon то писать что бы установить и не пускать на сервер?
- Есть ли в плагине какие то функции которые можно использовать?
1. На данный момент нет, но в разработке. Серверная часть с удовольствием передает файлы, а вот клиент рандомно крашит игру.
2. На данный момент тоже нет, так как старый кейлоггер вызывал жуткий трафик между клиентом и сервером, поэтому переписывается на новый.
3. ВСЕ .asi плагине при подгрузке аддона удаляются из коневого каталога (что означает блок клео). Если вы хотите использовать свои плагины с аддоном, вы должны переместить их в папку SAMP/addon/plugins/ и сменить их расширение на .dll . Все текущие нон-чит плагины (аудиоплагин, фикс стриминга объектов, колормод и.т.п) прекрасно работают с аддоном. Клео вы через аддон подгрузить не сможете.
4. Да, аддон подключается к серверу РАНЬШЕ, чем игрок, поэтому проверить это не составит труда. Для справки, при подключении клиента вызывается коллбэк:
PHP Code:
public Addon_OnClientConnect(clientidclient_ip[], client_name[]) 
clientid = уникальный ID клиента, тоесть он НЕ РАВЕН playerid (может быть и равен, при некоторых обстоятельствах)
client_ip[] = IP клиента
client_name[] = Ник игрока, с которым подключается клиент.

Можно при коннекте игрока проверять, подключен ли клиент с таким IP/никнеймом, и выводить сообщение.
5. На данный момент, работает функция GetClientSerial(clientid), она возвращает серийный номер NTFS раздела жесткого диска (тобишь номер можно изменить только отформатировав диск), и функция GetClientScreenshot(clientid, remote_file[]), она отдает запрос клиенту сделать скриншот с именем файла file_name[], например:
PHP Code:
GetClientScreenshot(clientid"test.png"); 
Сделает скриншот и сохранит его в папке с GTA под именем test.png

PHP Code:
GetClientScreenshot(clientid"SAMP\\addon\\test.png"); 
Сделает скришнот и сохранит его в %папка_с_гта%\SAMP\addon\test.png

В дальнейшем, можно будет передать скришот, но об этом чуть попозже.

Думаю на все ваши вопросы я ответил.
Reply
#24

Quote:

ВСЕ .asi плагине при подгрузке аддона удаляются из коневого каталога (что означает блок клео). Если вы хотите использовать свои плагины с аддоном, вы должны переместить их в папку SAMP/addon/plugins/ и сменить их расширение на .dll . Все текущие нон-чит плагины (аудиоплагин, фикс стриминга объектов, колормод и.т.п) прекрасно работают с аддоном. Клео вы через аддон подгрузить не сможете.

все-же вы не ответили на вопрос, волнующий всех нас:

Что мешает злоумышленнику загрузить свой плагин из стороней папки? Что мешает блокировать некоторые функции вашего плагина. И прочее и прочее.

ЗЫ

Я надеюсь вы не думаете, что я пытаюсь вас троллить. Я в самом деле беспокоюсь о безопасности себя и сторонних пользователей.
Reply
#25

Кстати порекомендую, по возможности, дописывать или подменять значение возвращаемое функцией GetPlayerVersion когда клиент использует ваш аддон. Это бы упростило задачу разделения пользователей с аддоном и без него.
Reply
#26

Quote:
Originally Posted by Stepashka
View Post
Кстати порекомендую, по возможности, дописывать или подменять значение возвращаемое функцией GetPlayerVersion когда клиент использует ваш аддон. Это бы упростило задачу разделения пользователей с аддоном и без него.
Через обычный клиент его изменить без проблем можно, так что, коллбэк наверное все-таки безопаснее будет.

UPD: Хотя... про удаление коллбэка никто и не говорил, думаю, GetPlayerVersion не помешает. Можно будет юзать как первую проверку, чтобы сразу в сохраненной инфе не искать, подключался или нет.
Reply
#27

Quote:
Originally Posted by Stepashka
View Post
Кстати порекомендую, по возможности, дописывать или подменять значение возвращаемое функцией GetPlayerVersion когда клиент использует ваш аддон. Это бы упростило задачу разделения пользователей с аддоном и без него.
Quote:
Originally Posted by Правлиа форума
3.1 Запрещена публикация программ и плагинов, которые изменяют или берут данные из памяти сервера/клиента SA:MP.
Также запрещено публиковать измененные программы клиента/сервера SA:MP.
Противоречие ужасающее
Reply
#28

Quote:
Originally Posted by jhonyxakep
View Post
все-же вы не ответили на вопрос, волнующий всех нас:

Что мешает злоумышленнику загрузить свой плагин из стороней папки? Что мешает блокировать некоторые функции вашего плагина. И прочее и прочее.

ЗЫ

Я надеюсь вы не думаете, что я пытаюсь вас троллить. Я в самом деле беспокоюсь о безопасности себя и сторонних пользователей.
1. При загрузке .dll из папки plugins они будут проверяться на наличие "плохих" экспортируемых/внутренних функций, тобишь клео заблочить можно (да тот же самый хешчек)
2. Будет добавлена очистка папки cleo, дабы паблик сборки клео точно не завелись.
3. От "блокировки" некоторых функций сервер особо не опечалится, а при попытке вызвать невалидный запрос серверу отправит в глубокий кикдаун
Reply
#29

Quote:
Originally Posted by BJIADOKC
View Post
Противоречие ужасающее
Ну добавь в плагин функцию типа IsPlayerUsedAdvancedClient(playerid);.
Reply
#30

Вся проблема в том, что неопытные сразу же ослабят настоящую серверную защиту, опираясь на защиту вот этого ненадёжного средства. Дело в том, что из принципов работы, тут сразу же раскрывается несколько вариантов обхода (я далеко не спец в этих вещах). Если это всё выйдет на массовый уровень, то естественно на взлом будет спрос, и когда пойдут в дело специалисты, то вам и 20 человек в команде будет мало.

Kalcor всё это прекрасно понимает, поэтому мы и не видим никаких подобных защит и фишек в SAMP.
Reply
#31

Quote:
Originally Posted by AirKite
Посмотреть сообщение
Вся проблема в том, что неопытные сразу же ослабят настоящую серверную защиту, опираясь на защиту вот этого ненадёжного средства. Дело в том, что из принципов работы, тут сразу же раскрывается несколько вариантов обхода (я далеко не спец в этих вещах). Если это всё выйдет на массовый уровень, то естественно на взлом будет спрос, и когда пойдут в дело специалисты, то вам и 20 человек в команде будет мало.

Kalcor всё это прекрасно понимает, поэтому мы и не видим никаких подобных защит и фишек в SAMP.
Вообще, я решил написать этот аддон, так как аналогов в опенсурсе не увидел
Кстати, добавлена возможность передачи файлов (КЛИЕНТ <=> СЕРВЕР), новые бинарники на гитхабе вместе с исходником
Reply
#32

Quote:

1. При загрузке .dll из папки plugins они будут проверяться на наличие "плохих" экспортируемых/внутренних функций, тобишь клео заблочить можно (да тот же самый хешчек)
2. Будет добавлена очистка папки cleo, дабы паблик сборки клео точно не завелись.
3. От "блокировки" некоторых функций сервер особо не опечалится, а при попытке вызвать невалидный запрос серверу отправит в глубокий кикдаун

1. ставим хук на чтение вашим "античитом" файлов, и делаем вид, что никаких клео файлов нет
2. ставим хук на удаление, никаких проблем.
3. ?
4. ПРОФИТ
Reply
#33

Так-то, по хорошему, нужно сделать блокировку процесса gta_sa.exe и подгружать всё через api плагина. Но опять-таки, на любой драйвер найдётся свой драйвер, и как сказали выше, фиксить придётся очень часто.
Reply
#34

Quote:
Originally Posted by BJIADOKC
Посмотреть сообщение
Вообще, я решил написать этот аддон, так как аналогов в опенсурсе не увидел
Кстати, добавлена возможность передачи файлов (КЛИЕНТ <=> СЕРВЕР), новые бинарники на гитхабе вместе с исходником
То есть я уже смогу скинуть пользователю custom.img заменить тот что у него есть на этот и у него будут текстуры видны?
Reply
#35

При попытке установить плагин (.dll) на сервер (WINDOWS) выскакивает такая ошибка когда когда в логах доходит до плагина. Скриншет прикрепил к этому посту.
Когда установил ADDON на клиент при входе на любой серв такую же ошибку выбивает.

PS: У меня Windows XP, я так понимаю что на xp не поддерживается данная функция. Можно ли это как то исправить?
Reply
#36

GetTickCount64 смотрите Requirements.
Reply
#37

Думаешь он не сможет содержать более 20 человек? Пусть потом сам же продаёт способы взломать свою защиту и на всё денег хватит. И развитие и бабки, а конкуренты просто не будут учиться.
Reply
#38

Лол... у вас ещё и поддержки Windows XP нет я так понимаю?
Reply
#39

8 апреля 2014 года поддержка Windows XP прекратится даже у Microsoft.
Reply
#40

Quote:
Originally Posted by The_Creator
Посмотреть сообщение
8 апреля 2014 года поддержка Windows XP прекратится даже у Microsoft.
30% все ровно будут на ней сидеть, ибо многие вёдра не тянут даже саму ОС будь то 7 или 8.
Reply


Forum Jump:


Users browsing this thread: 3 Guest(s)