Правила форума Гаранты форума
Размещение рекламы AMX-X компилятор

Здравствуйте, гость Вход | Регистрация

Наши новости:

14-дек
24-апр
10-апр
11-апр

Admins Steam ID & Name Check

Статус пользователя Sky Cat
сообщение 4.11.2013, 19:09
Сообщение #1
Стаж: 13 лет
Город: Белгород

Сообщений: 1179
Благодарностей: 733
Полезность: 1056

[attachment=21583:Downloads.rar]Описание:
Вы думаете, что не можете проверить администраторский Никнейм или Steam_ID?
Этот простой плагин поможет вам проверить Steam_ID администраторов и (имя + пароль) для безопасности вашего сервера.

В чем проблема традиционного образа?
- Если вы используете только Steam ID для администраторов
Администратор может изменить имя
- Если вы используете имя + пароль для администраторов
Администраторские пароли могут быть взломаны другими серверами
или он/она может дать пароль ( или .cfg ) другу, которому вы не доверяете в качестве администратора

Как использовать?
Вы должны добавить ники и пароли администраторов
(Если они добавлены таким образом, то ненужно заново добавлять)
Затем добавить Steam ID администраторов в конфигурационный файл таким образом:
Просмотреть

Код:

STEAM_0:0:987654321 "Admin Name"
STEAM_0:0:123456789 "KM"
STEAM_0:0:123123123 "Mehdi"



(Если вы не добавите администратора, то он не будет проверяться, но по-прежнему будет администратором)

Квары:
Не требуются

Команды:
Не требуются

Автор: kmman
Русская локализация: Insamez

Отредактировал: insamez, - 4.11.2013, 19:29
Прикрепленные файлы:
Прикрепленный файл  Downloads.rar ( 1,18 килобайт ) Кол-во скачиваний: 64


я знаю, что я ничего не знаю
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   Цитировать сообщение
Safety1st
сообщение 4.11.2013, 19:14
Сообщение #2
Стаж: 14 лет
Город: Moscow

Сообщений: 7228
Благодарностей: 8071
Полезность: 196

У меня ощущение, как будто описание составил Google Translate ;)
Что-то с ним не так. А главное - не раскрыт смысл, что же там проверяется и какие плюсы это даёт.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя Sky Cat
сообщение 4.11.2013, 19:19
Сообщение #3
Стаж: 13 лет
Город: Белгород

Сообщений: 1179
Благодарностей: 733
Полезность: 1056

Цитата(Safety1st @ 4.11.2013, 21:14) *
У меня ощущение, как будто описание составил Google Translate ;)
Что-то с ним не так. А главное - не раскрыт смысл, что же там проверяется и какие плюсы это даёт.

Я не понял описание английского. Вообще. Вроде все так, но такое ощущение, что все слова там в одном и том же время. Попробую переформулировать. Транслэйт был использован с переводом глагола to increase, а так ручками.


я знаю, что я ничего не знаю
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя sambo
сообщение 4.11.2013, 19:22
Сообщение #4


Стаж: 14 лет

Сообщений: 847
Благодарностей: 200
Полезность: 477

Давно хотел что то подобное .
Теперь проверка по все параметрам будет .
Скрытый текст
sma в кирилице . Может сменить кодировку в шапке ? Пиходится сначало блокнотом перетаскивать в акепад , а то server_cmd("kick #%i ^"ɱ𐯫贩󣡱㯥 𐯱󰀭 ᥬ鮨򳱠󯱱믥 魿.^"", get_user_userid(id));
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Sky Cat
сообщение 4.11.2013, 19:24
Сообщение #5
Стаж: 13 лет
Город: Белгород

Сообщений: 1179
Благодарностей: 733
Полезность: 1056

Цитата(sambo @ 4.11.2013, 21:22) *
Давно хотел что то подобное .
Теперь проверка по все параметрам будет .
Скрытый текст
sma в кирилице . Может сменить кодировку в шапке ? Пиходится сначало блокнотом перетаскивать в акепад , а то server_cmd("kick #%i ^"ɱ𐯫贩󣡱㯥 𐯱󰀭 ᥬ鮨򳱠󯱱믥 魿.^"", get_user_userid(id));

Скиньте готовый. Я в блокноте переводил sma :/


я знаю, что я ничего не знаю
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя sambo
сообщение 4.11.2013, 19:28
Сообщение #6


Стаж: 14 лет

Сообщений: 847
Благодарностей: 200
Полезность: 477

Скрытый текст
Код:
/*
Site: pars-srtike.ir
By Ali KM (KMman)

Thanks to KoST
*/

#include <amxmodx>
#include <amxmisc>


#define MAX_USERS 100
#define CONFIG_FILE "admins_steamid.ini"


#define PLUGIN "Admins Steam ID & Name Check"
#define VERSION "1.1"
#define AUTHOR "Ali KM"

new file_name[128]
new names[33][32]
new steam_names[MAX_USERS][2][35]
new num_users=0

public plugin_init(){
register_plugin(PLUGIN,VERSION,AUTHOR)


new config_dir[80]
get_configsdir(config_dir,79)
format(file_name,127,"%s/%s",config_dir,CONFIG_FILE)

new text[256],name[33],steamid[33],txtLen,line_num=0

if (file_exists(file_name)){
line_num=read_file(file_name,line_num,text,255,txtLen)
while(line_num){
parse(text,steamid,32,name,32)
if (line_num<=MAX_USERS){
if (strlen(steamid) && strlen(name)){

format(steam_names[line_num-1][0],34,"%s",steamid)
format(steam_names[line_num-1][1],34,"%s",name)
num_users=line_num
}
line_num=read_file(file_name,line_num,text,255,txtLen)
}else line_num=0
}
}
else if(!file_exists(file_name))
{
write_file ( file_name , "STEAM_0:0:123456789 ^"Admin Name^"" )
write_file ( file_name , "STEAM_0:0:987654321 ^"KMman^"" )
}
}
public client_putinserver(id){
check_admin (id)
}

public client_infochanged(id){
check_admin (id)
}

public check_admin (id){
if ( get_user_flags(id)&ADMIN_USER ) return PLUGIN_CONTINUE
new steamid[35]
get_user_authid(id,steamid,34)
if (!strlen(steamid)) return PLUGIN_CONTINUE
names[id]=""
new username[34]
for (new i=0;i<num_users;i++){

get_user_info(id,"name",username,31)
if (!equali(steam_names[i][0],steamid) && equali(steam_names[i][1],username) ){
server_cmd("kick #%i ^"Ваш Steam_ID отличается от администраторского.^"", get_user_userid(id));

}
else if (equali(steam_names[i][0],steamid) && !equali(steam_names[i][1],username) ){
server_cmd("kick #%i ^"Используйте свое постоянное администраторское имя.^"", get_user_userid(id));

}

}
return PLUGIN_CONTINUE

}
public client_disconnect(id){
names[id]=""
}


Прикрепленный файл  Admins_SteamID___Name_check.sma ( 2,16 килобайт ) Кол-во скачиваний: 20
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Sky Cat
сообщение 4.11.2013, 19:30
Сообщение #7
Стаж: 13 лет
Город: Белгород

Сообщений: 1179
Благодарностей: 733
Полезность: 1056

Цитата(sambo @ 4.11.2013, 21:28) *
Скрытый текст
Код:
/*
Site: pars-srtike.ir
By Ali KM (KMman)

Thanks to KoST
*/

#include <amxmodx>
#include <amxmisc>


#define MAX_USERS 100
#define CONFIG_FILE "admins_steamid.ini"


#define PLUGIN "Admins Steam ID & Name Check"
#define VERSION "1.1"
#define AUTHOR "Ali KM"

new file_name[128]
new names[33][32]
new steam_names[MAX_USERS][2][35]
new num_users=0

public plugin_init(){
register_plugin(PLUGIN,VERSION,AUTHOR)


new config_dir[80]
get_configsdir(config_dir,79)
format(file_name,127,"%s/%s",config_dir,CONFIG_FILE)

new text[256],name[33],steamid[33],txtLen,line_num=0

if (file_exists(file_name)){
line_num=read_file(file_name,line_num,text,255,txtLen)
while(line_num){
parse(text,steamid,32,name,32)
if (line_num<=MAX_USERS){
if (strlen(steamid) && strlen(name)){

format(steam_names[line_num-1][0],34,"%s",steamid)
format(steam_names[line_num-1][1],34,"%s",name)
num_users=line_num
}
line_num=read_file(file_name,line_num,text,255,txtLen)
}else line_num=0
}
}
else if(!file_exists(file_name))
{
write_file ( file_name , "STEAM_0:0:123456789 ^"Admin Name^"" )
write_file ( file_name , "STEAM_0:0:987654321 ^"KMman^"" )
}
}
public client_putinserver(id){
check_admin (id)
}

public client_infochanged(id){
check_admin (id)
}

public check_admin (id){
if ( get_user_flags(id)&ADMIN_USER ) return PLUGIN_CONTINUE
new steamid[35]
get_user_authid(id,steamid,34)
if (!strlen(steamid)) return PLUGIN_CONTINUE
names[id]=""
new username[34]
for (new i=0;i<num_users;i++){

get_user_info(id,"name",username,31)
if (!equali(steam_names[i][0],steamid) && equali(steam_names[i][1],username) ){
server_cmd("kick #%i ^"Ваш Steam_ID отличается от администраторского.^"", get_user_userid(id));

}
else if (equali(steam_names[i][0],steamid) && !equali(steam_names[i][1],username) ){
server_cmd("kick #%i ^"Используйте свое постоянное администраторское имя.^"", get_user_userid(id));

}

}
return PLUGIN_CONTINUE

}
public client_disconnect(id){
names[id]=""
}


Прикрепленный файл  Admins_SteamID___Name_check.sma ( 2,16 килобайт ) Кол-во скачиваний: 20


Перезалил


я знаю, что я ничего не знаю
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя S0m3Th1nG_AwFul!
сообщение 4.11.2013, 20:05
Сообщение #8
Стаж: 15 лет

Сообщений: 454
Благодарностей: 323
Полезность: 961

Предназначение плагина действительно вызывает вопросы.

По описанию получается, что это какое-то комбинирование стандартной связки имя+пароль и стандартной проверки STEAM_ID из AMXX (без использования плюшек dproto).
На выходе получаем, что пароль, как сказано в самом описании, может быть передан кому попало самим админом или попросту украден во время посещения неблагонадёжного сервера, а STEAM_ID, как уже неоднократно разжёвывалось, подделан, если не предпринимать дополнительных мер...
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Legenda
сообщение 4.11.2013, 20:18
Сообщение #9


Иконка группы

Стаж: 16 лет

Сообщений: 3619
Благодарностей: 1706
Полезность: 1010

Меценат Меценат

не понял смысла плагина
раз пять прочитал
судя по исходнику - плагин предназначен для того, что бы админы под указанными steamID всегда играли на сервере под своими никами, иначе будет кик.
И что бы ни кто другой не мог зайти под данным ником, кроме указанного steamID, иначе будет кик
при чем тут безопасность сервера - вообще не в курил

1) прописывать админки по steamID для лицензий только
ни кто на них не сменить стимид при "правильных" настройках dproto
2) прописывать админки по нику + пароль
либо steamID + пароль
можно перепилить плагин и пароль каждый раз придется вводить заново
3) закрыть команду status и прописывать админки по steamID
злоумышленики не смогут узнать steamID админов соответственно не узнают на что надо менять steamID
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя sambo
сообщение 4.11.2013, 20:20
Сообщение #10


Стаж: 14 лет

Сообщений: 847
Благодарностей: 200
Полезность: 477

Ну он как бы не совсем относится к админкам , одминки живут сами по себе .
Плагин просто кикает игроков у которых не совпадает стимайди и имя .
Пример

Игрок не обязательно должен быть админом . Походу тут просто привязка стима и имени.
Прописываем админку по стиму.
Происываем в фале admins_steamid.ini его стим и имя(лол например) .
Что происходит:
Заходит админ со своего стима но под другим ником - его кикнуло .
Заходит игрок под именем лол его тоже кинет.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя S0m3Th1nG_AwFul!
сообщение 4.11.2013, 20:28
Сообщение #11
Стаж: 15 лет

Сообщений: 454
Благодарностей: 323
Полезность: 961

Цитата
Заходит админ со своего стима но под другим ником - его кикнуло .
Заходит игрок под именем лол его тоже кинет.

Вопрос, повторюсь, какой толк с такой "проверки"?
Спокойно ставим себе админское имя и подделываем STEAM_ID — всё, проверка пройдена, никакого кика не происходит.
Первая и главная проблема этого плагина состоит в том, что он никак не проверяет подлинность STEAM_ID (не используется команда dp_clientinfo ID_игрока и последующая проверка значения квара dp_r_id_provider ID_игрока).
Защита, в лучшем случае, "от самых маленьких".
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя sambo
сообщение 4.11.2013, 20:39
Сообщение #12


Стаж: 14 лет

Сообщений: 847
Благодарностей: 200
Полезность: 477

Цитата(S0m3Th1nG_AwFul! @ 4.11.2013, 20:28) *
Вопрос, повторюсь, какой толк с такой "проверки"?
Спокойно ставим себе админское имя и подделываем STEAM_ID — всё, проверка пройдена, никакого кика не происходит.
Первая и главная проблема этого плагина состоит в том, что он никак не проверяет подлинность STEAM_ID (не используется команда dp_clientinfo ID_игрока и последующая проверка значения квара dp_r_id_provider ID_игрока).
Защита, в лучшем случае, "от самых маленьких".


Админка стоит по стиму с паролем , прописанная стандарными методами амхх.
Этот плагин например конторолирует что бы админ не использовал других ников .
Например для того что бы игроки видели кто именно из админов перед ними , знали на кого жалобу строчить =)
У меня около 50-60 записей в файле , в игре вычислять кто есть кто нет желания.
Например Я использую адвансед банс и мне он пригодится , не будет бардака с никами при бане .

Пример, несколько дней прошло

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


Отредактировал: sambo, - 4.11.2013, 20:49
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя S0m3Th1nG_AwFul!
сообщение 4.11.2013, 20:49
Сообщение #13
Стаж: 15 лет

Сообщений: 454
Благодарностей: 323
Полезность: 961

Цитата(sambo @ 4.11.2013, 22:39) *
Этот плагин например конторолирует что бы админ не использовал других ников .

Это единственное, для чего он пригоден, но сам по себе этот плагин не обеспечит никакой безопасности, о которой упоминалось в первом сообщении.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Safety1st
сообщение 4.11.2013, 20:54
Сообщение #14
Стаж: 14 лет
Город: Moscow

Сообщений: 7228
Благодарностей: 8071
Полезность: 196

sambo, мы тут обсуждаем целевое использование плагина ;)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
  Ответить в данную темуНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: