Как взломали бота Отложка в MAX: разбор уязвимости SendMessage

В мессенджере MAX, который позиционировался как защищенная альтернатива Telegram, обнаружена критическая уязвимость, позволяющая удаленно выполнять код на сервере через встроенного бота «Отложка». Исследователи выявили, что проблема кроется в отсутствии валидации данных при обработке команд, что делает возможным перехват управления ботом и доступ к отложенным сообщениям пользователей. Уязвимость уже закрыта в версии 2.4.1, однако инцидент ставит под сомнение репутацию платформы как «непробиваемой».
Детали уязвимости: переполнение буфера через команду /setdelay
Корень проблемы — небезопасный парсинг входящих сообщений в обработчике команды /setdelay. Бот ожидает числовое значение (например, /setdelay 1000), но не проверяет тип данных. Передача специально сформированной строки вместо числа вызывает переполнение буфера, что позволяет злоумышленнику выполнить произвольный код на сервере. Исследователи опубликовали демонстрационный эксплойт на Python, который отправляет вредоносный payload через API бота, перезаписывая адрес возврата на shellcode.
Механизм атаки
- Цель: Обработчик команды
/setdelayбез проверки типа данных. - Метод: Передача строки длиной более 256 байт с внедренным shellcode.
- Результат: Получение контроля над сервером и доступ к базе отложенных сообщений.
Сравнение безопасности: «Отложка» уступает стандартным решениям
Анализ показал, что бот «Отложка» уступает по уровню защиты официальным ботам Telegram и VK. В отличие от конкурентов, в MAX отсутствовала строгая валидация входных данных, песочница для изоляции процессов, а аудит безопасности проводился лишь раз в год.
Ключевые недостатки бота «Отложка»
- Отсутствие проверки типов данных в командах.
- Нет изолированной среды (песочницы) для выполнения кода.
- Редкие аудиты безопасности (раз в год против ежеквартальных у Telegram).
Последствия для пользователей и разработчиков
Злоумышленники, эксплуатировавшие уязвимость, могли получить полный доступ к отложенным сообщениям пользователей, включая личные данные и конфиденциальную переписку. Разработчикам платформы необходимо немедленно внедрить строгую проверку входных данных, использовать безопасные функции работы с памятью и пересмотреть периодичность аудитов. Пользователям рекомендуется обновить приложение до версии 2.4.1, где уязвимость устранена.
Вывод: Инцидент демонстрирует, что даже системы с репутацией «неломаемых» подвержены базовым ошибкам безопасности. Отсутствие санитизации строк и ложное чувство защищенности привели к компрометации инструмента, который считался самым надежным в своем классе.















