▲ Наверх
Популярные новости
Время на сайте
Текущее время на сайте

Текущая дата на сайте
Последние комментарии
На сайте...
Всего на сайте: 6
Гостей: 5
Пользователи: 
- отсутствуют
Роботы: 
Голосование

Ваш любимый шутер от Valve?

Half-Life (все части)
CS 1.6
CS:S v.34
CS:S v2230303
CS:GO

 
 
Архив новостей
Облако тегов
Форум bir3yk.net » Сообщения пользователя

Сообщения пользователя: kuninyao

Тема: buffer overflow после 100 игрока | 2 марта 2026 14:31
Сообщение #3
bir3yk,

Привет, мы покопались в бинаре и нашли причину краша.

Краш происходит в CSteamGameServer015::SetServerName, там собирается строка числа игроков для hostname (100/254) через цепочку __strcat_chk в буфер на стеке размером всего 10 байт. при 100+ игроках строка перестаёт влезать и glibc кидает SIGABRT с сообщением *** buffer overflow detected ***. при этом флаг
AddCountPlayerInServerName у меня в rev.ini стоит false, но подсчёт игроков все равно идет (строка формируется), из-за этого краш из-за переполнения этой строки.

Проверил это патчем бинарника и успешно запустилось на 254 игроках.


Было бы здорово если бы Вы в исходниках увеличили размер этого буфера либо вынесли проверку флага в начало функции, чтобы не собирать строку впустую, когда в rev.ini флаг
AddCountPlayerInServerName = false.
Тема: buffer overflow после 100 игрока | 26 февраля 2026 16:11
Сообщение #2
Забыл уточнить, используется последняя версия от 08/23/2025 на Linux. 64 бит, на последнем движке 2025 года.
Тема: buffer overflow после 100 игрока | 26 февраля 2026 16:10
Сообщение #1
Добрый день!

У нас на сервере 254 слота и после 100 игрока происходит краш из-за Rev Emu, скорее всего он был спроектирован на 100 игроков.

bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;
bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;
bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;
bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;
bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;
bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;
bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;
bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;
bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;
bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;
bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;
bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot;bot; *** buffer overflow detected ***: terminated Aborted Add \\"-debug\\" to the ./srcds_run_64 command line to generate a debug.log to help with solving this problem


При этом если отключить Rev Emu, то сервер спокойно работает при 254 ботах.


 buffer overflow после 100 игрока

  Сейчас: 29 апреля 2026 03:57