Защита от подмены на определённые SteamID, и взлом админки |
Здравствуйте, гость Вход | Регистрация
Наши новости:
|
|
|
Защита от подмены на определённые SteamID, и взлом админки |
Safety1st
|
19.12.2013, 18:37
Сообщение
|
|
|
Не надо тупо плодить одни и те же темы. Ответ между тем не изменится.
Для защиты от подмены на определённые SteamID достаточно включить хэширование ID эмуляторов (параметр SteamIdHashSalt). Эмуляторы в dproto - это все типы клиентов, кроме cid_Steam, cid_NoSteam47 и cid_NoSteam48. Инфа по параметру SteamIdHashSalt в dproto.cfg Q: Зачем эта опция нужна? A: Эта опция позволяет защитить от подмены на определённые SteamID. Реализуется защита изменением алгоритма превращения данных от игрока в ID, в этом процессе участвует произвольное 'число', заданное в строке SteamIdHashSalt. Работает только для эмуляторов. Превращение – необратимое: из полученного ID нельзя восстановить исходный, чтобы вбить его в айдичейнджер для подмены. Т.о. 'украсть' чужой ID становится возможным, только заманив игрока на свой сервер с сюрпризом, что достаточно сложно организовать. 'Своё' значение SteamIdHashSalt нужно держать в секрете. Q: gffthtyngsybhjkutryu и gffthtyngsybhjkutryu1 будет разное превращение ID или одно и то же? A: Разное. Поэтому эта настройка должна быть одинаковой на всех серверах владельца. Q: Нужен ли пробел после 'SteamIdHashSalt =' ? A: Без разницы. Пробелы на концах значения автоматически отбрасываются. В строке можно указать любые символы, минимум - 16, максимум - не ограничен, но будут использованы только первые 255. Подробнее. Q: Если сейчас я поставлю 'соль' в dproto, то у всех моих игроков изменится SteamID? A: Он поменяется только у игроков с эмуляторами: 'слетит' стата и т.д. После настройки параметра SteamIdHashSalt для вступления изменений в силу сервер необходимо выключить и включить; просто смены карты не достаточно. Дополнительно по защите админок Железный вариант - админку выдавать только Steam-игрокам по реальному SteamID. При включенном в dproto хэшировании ID эмуляторов становится допустимым и админку пираткам по ID выдавать, и префиксы не менять. НО: заполучить ID пиратки значительно проще, чем данные, чтобы использовать ID Steam-клиента (последние и действительны ограниченное время, и играть под чужим реальным ID можно не более 2-х минут). Потому по меньшей мере защищайте админки по пиратским ID паролем, раз выдаёте. Использование native Steam обеспечивает стороннюю верификацию клиентов - посредством VALVe, а ID эмуляторов и пароли извне не проверяются. Также железный вариант - админка по IP, у кого он постоянный, что бывает нечасто. Скрытие SteamID игроков Многие свято верят, что проблему подмены можно обойти, скрывая ID игроков в ответе команды status. Это не так, существует достаточно мест и способов вытащить ID. В современных разработках кулхацкеров для получения ID игроков существуют специальные команды. 'Соль' в dproto (хэширование ID эмуляторов) своим существованием делает получаемые таким образом ID'ники бесполезными цифрами. Инфа для тех, кто юзает авторизацию ник+пароль и доволен Бан-системы обычно банят по SteamID при его наличии у игрока. Это значит, что ололошка с айдичейнджером с произвольным ником может подвести любого игрока (и админа) под бан: из-за совпадения ID бан 'перекинется'. Если вы используете dproto 0.9.390 и выше с включенным хэшированием ID эмуляторов - эта проблема вам не грозит. Второе неудобство такой 'защиты' - распространяется только на админов (постояльцы 'за бортом'), которые вынуждены всегда играть под одним и тем же ником. Хотя на большинстве серверов владельцам это, наоборот, удобно, я больше забочусь о серверах 'из альтруистических соображений' (админы бесплатные) и уверен, что узнаваемость - большое неудобство для админов: игроки пристают + сложнее вычислять читеров, знающих, что на сервере админ и пытающихся шифроваться. Остальное содержимое шапки (внимание! всё тут неактуально, оставлено на всякий случай) Пока подделать реальный SteamID возможно, но это организовать не так-то просто да и на сервере игрок сможет находиться 1-2 минуты. Использовать в дополнение к админке по реальному SteamID пароль в setinfo - неудобно и малополезно: при указанной выше организации и без пароля всё достаточно надёжно, а пароль угнать ещё проще, чем инфу для подделывания SteamID админа. Имеет смысл только авторизация вводом пароля в MOTD-окне или командой в консоли. Попросите Steam-админов пока не гулять по чужим серверам, особенно если кто-то им настойчиво предлагает зайти - и в принципе можно об угоне их ID не беспокоиться. Когда придёт время, недоработка Steam будет легко закрыта VALVe. Смена префиксов: Вот у dproto 0.9.187: Код IPGen_Prefix1 = X Native_Prefix1 = X SC2XX9_Prefix1 = X RevEmu_Prefix1 = X OldRevEmu_Prefix1 = X SteamEmu_Prefix1 = X AVSMP_Prefix1 = X Setti_Prefix1 = X SXEI_Prefix1 = X Вот у dproto 'второго поколения' 0.9.3xx: Код IPGen_Prefix1 = X Native_Prefix1 = X SC2XX9_Prefix1 = X RevEmu_Prefix1 = X RevEmu2013_Prefix1 = X OldRevEmu_Prefix1 = X SteamEmu_Prefix1 = X AVSMP_Prefix1 = X Setti_Prefix1 = X SXEI_Prefix1 = X Если список банов/статистика начинаются с чистого листа или настройка нового сервера, то для стимовцев стоит оставить привычный 0, а всем эмуляторам назначить префиксы, не равные 0. Смена префикса у стимовцев разбанит до 10% таких игроков (максимум). Если беспокоиться о сохранении банов и статистики, то разумнее вначале 'скриптом' обойти все нужные места и изменить первый префикс STEAM_X:Y:<> в ID у стимовцев, а затем в dproto назначить им этот уникальный X. gameME не учитывает первый префикс, с ней проблем нет. Допинфа для тех, кто юзает авторизацию ник+пароль, но не использует хэширование ID эмуляторов Нужно банить как минимум IP - дефолтная AMXX-команда amx_addban, чуть лучше - заодно навешивать различные метки (SuperBan, FreshBans с DopBan2 и т.п.), лишь бы бан-система при этом SteamID не банила. Допинфа для пользователей плагина AMXX Gag от xPaw и Exolent. Аналогичная проблема с Advanced Bans от Exolent. Credits to xSav. Советую также ознакомиться с темой 'Обход бана подменой SteamID'.
Отредактировал: Safety1st, - 30.4.2015, 22:16
|
Поблагодарили 29 раз
|
|
Affl
|
19.12.2013, 21:25
Сообщение
|
![]() |
Добавлять к стим айди ещё и пароли - тоже неплохо на мой взгляд
![]() WAR3FT Пивка для Рывка 202 lvl
|
Поблагодарили 1 раз
|
|
3JIou CKuH
|
19.12.2013, 23:36
Сообщение
|
|
|
Мало того что
Цитата Ну и дурак! Да ещё и пакостный софт выложил! Мало ли кто скачает! После начнётся хаос... А всё из-за того, что Цитата Ну и дурак!
|
|
|
|
myself777
|
20.12.2013, 14:26
Сообщение
|
|
|
|
|
|
|
kritik
|
20.12.2013, 15:30
Сообщение
|
|
|
Круто. Пусть ноустим играет с нормальным стимид с нулями, а у лицензионщиков будет поддельный.
|
|
|
|
mazdan
|
20.12.2013, 15:34
Сообщение
|
![]() ![]() |
kritik, откуда критерий нормальности? сами выдумали?
![]() Не пишите мне в ЛС. Пишите на почту. В ЛС я пропускаю сообщения.
|
|
|
|
[WPMG]PRoSToTeM@
|
21.12.2013, 4:57
Сообщение
|
|
|
Safety1st, лучше стиму так и оставить префикс 0, а каждому эмулятору выставить свой уникальный префикс.
|
|
|
|
Fred Perry
|
21.12.2013, 14:16
Сообщение
|
![]() ![]() |
RedL1ne,
Немножко бы описания еще :) ![]() You become responsible, forever, for what you have tamed
|
|
|
|
![]() ![]() |