Мессенджер, которому доверили нацбезопасность, оказался дырой, через которую утекли служебные чаты.
На фоне стремительного роста интереса к защищённой коммуникации на высших уровнях власти, неожиданной мишенью стал корпоративный клон Signal под названием TM SGNL, разработанный компанией TeleMessage — а теперь и принадлежащей Smarsh. Приложение использовалось как минимум одним представителем администрации Дональда Трампа — советником по нацбезопасности Майком Уолтцем. На одном из снимков он попал в кадр с открытым мессенджером, переписываясь прямо во время заседания кабинета.
TM SGNL позиционировался как безопасная альтернатива Signal для организаций, при этом обещая поддержку сквозного шифрования. Но в отличие от оригинального Signal, TM SGNL был устроен иначе: все сообщения проходили через серверы TeleMessage, где копии переписки сохранялись в архив — полностью подрывая саму идею конфиденциальности.
Через два дня после публикации фотографии с Уолтцем, хакер сообщил журналистам, что получил доступ к внутренней инфраструктуре TeleMessage всего за 15–20 минут. В компании комментарии давать отказались, но атака оказалась настолько простой, что дальнейшее сокрытие деталей перестало иметь смысл после временного отключения всех сервисов TeleMessage.
Взлом начался с анализа административной панели на домене secure.telemessage.com
. По словам хакера, сразу бросилось в глаза, что пароли хешируются с помощью устаревшего алгоритма MD5 прямо на клиентской стороне. Такая реализация сводит защиту на нет — хеш становится равнозначным паролю, если перехватить его при передаче. Это уже выглядело как тревожный сигнал о плохой культуре безопасности. Дополнительно на сайте использовалась технология JSP — Java Server Pages, устаревший подход к разработке веб-приложений, популярный в начале 2000-х.
Дальнейший путь хакера прошёл через популярный инструмент feroxbuster — сканер для обнаружения доступных URL на веб-серверах. С его помощью был проведён анализ двух доменов: secure.telemessage.com
и archive.telemessage.com
. Именно на втором из них была найдена открытая ссылка /heapdump
.
При переходе по этому адресу сервер возвращал Java Heap Dump — снимок состояния оперативной памяти приложения объёмом около 150 мегабайт. Из прошлых атак хакер знал, что такие дампы часто содержат содержимое HTTP-запросов, включая логины и пароли, особенно если пользователи в этот момент авторизуются.
Так и произошло. Поиск по слову «password» в полученном дампе показал учётные данные случайных пользователей. Одна из комбинаций логина и пароля позволила войти в систему под учётной записью сотрудника Таможенно-пограничной службы США (CBP). Позднее CBP официально подтвердила, что использовала TeleMessage для коммуникации.
Но на этом находки не закончились. В дампе были обнаружены и другие чувствительные данные: текстовые логи переписки, ключи шифрования и учётные записи пользователей. По словам хакера, он даже получил доступ к внутренней переписке сотрудников криптобиржи Coinbase. Представители Coinbase сообщили изданию 404 Media, что не нашли признаков утечки клиентских данных, так как не использовали TeleMessage для передачи seed-фраз, паролей или критичной информации. Однако факт присутствия логов чатов внутри дампа остаётся тревожным.
Разобрав исходный код приложения TM SGNL, исследователи обнаружили, что оно не обеспечивает обещанного сквозного шифрования. Сообщения пересылаются в незашифрованном виде на архивный сервер archive.telemessage.com
, прежде чем попадут в корпоративное хранилище заказчика. А этот сервер, как выяснилось, был построен на фреймворке Spring Boot и использовал компонент Actuator для мониторинга и отладки. В числе таких функций — эндпоинт /heapdump
, который и оказался доступным без аутентификации.
В официальной документации Spring Boot указывается, что с версии 1.5 (выпущенной в 2017 году) все потенциально опасные эндпоинты, включая /heapdump
, отключаются по умолчанию. Открыты остаются только безопасные /health
и /info
. Однако разработчики TeleMessage либо использовали устаревшую версию Spring Boot, либо вручную включили доступ к дампу — возможно, перенесли настройки с тестовой среды в боевую.
Эксперты по облачной безопасности, такие как компания Wiz, уже называли открытый /heapdump
самым распространённым упущением при развёртывании приложений на Spring Boot. То же мнение высказывал и инженер из Walmart Global Tech ещё в 2020 году, подчёркивая, что любые подобные эндпоинты «никогда не должны быть открыты в продакшене».
Таким образом, хакеру хватило всего нескольких сканов и одной открытой ссылки, чтобы получить контроль над учётными записями пользователей TeleMessage, включая представителей государственных органов. Учитывая, что TM SGNL активно использовался внутри правительственных структур, а TeleMessage — израильская компания, имеющая полный доступ к хранимым данным, этот случай показывает, насколько опасным может быть ложное чувство безопасности, созданное «клонами» защищённых решений.