Добрый день.
В с появлением различных сервисов, предоставляющих услуги хостингов игровых серверов, появилось много желающих сделать свой сервер, при этом, в ряде случаев, вопросы безопасности остаются проигнорированными.
Пару месяцев назад, просматривая список серверов в поисках «где бы поиграть», я обнаружил сервер, в названии которого содержатся угрозы к тем, кто будет использовать читы.
Первоначальный план созрел очень быстро: генерируем SteamID администратора, развлекаемся с читами на сервере, имея иммунитет.
Генерировать SteamID я научился, пока писал VoiceCodecFix — модуль, который даёт возможность общаться с игроками, не обновившими Counter Strike. О нём и о загрузке asi-модулей, я, скорее всего, расскажу в другой раз.
Зайдя на сервер с администраторской учёткой и обнаружив, что у меня есть доступ к amx_rcon я уже было подумал, что получил доступ к учётке главного администратора, однако, всё прояснилось несколько позже.
Небольшое отступление по поводу прав доступа в Counter Strike
Есть права, которые предоставляются модулем AmxModX, они выставляются флагами (a-u), флаг z — обычный игрок.
Какой флаг за что отвечает, можно посмотреть здесь.
Администратор с флагом amx_kick, amx_ban, и т. д. и т. п., не может как-либо воздействовать на игрока, у которого стоит флаг иммунитета.
Также, есть доступ, предоставляемый RCON-паролем (Remote Console, насколько я понимаю). Думаю, здесь будет уместна аналогия с ssh-ключом. В общем, давать его всем подряд — не самая хорошая мысль.
Это, фактически, прямой доступ к к консоли сервера.
Читать полностью »