Подробности про второй взлом Matrix. Скомпрометированы GPG-ключи проекта

[:ru]

Опубликованы новые подробности про взлом инфраструктуры децентрализованной платформы обмена сообщениями Matrix, о котором сообщалось утром. Проблемным звеном, через которое проникли атакующие была система непрерывной интеграции Jenkins, которая была взломана ещё 13 марта. Затем на сервере c Jenkins был перехвачен перенаправленный SSH-агентом вход одного из администраторов и 4 апреля атакующие получили доступ к другим серверам инфраструктуры.

При второй атаке сайт matrix.org был перенаправлен на другой сервер (matrixnotorg.github.io) через изменение параметров DNS, используя перехваченный при первой атаке ключ к API системы доставки контента Сloudflare. При пересборке содержимого серверов после первого взлома администраторы Matrix обновили только новые персональные ключи и упустили обновление ключа к Сloudflare.

В ходе второй атаки серверы Matrix остались нетронутыми, изменения ограничились только заменой адресов в DNS. В случае если пользователь уже сменил пароль после первой атаки, второй раз его менять не нужно. Но если пароль до сих пор не изменён, его нужно обновить как можно скорее, так как утечка базы с хэшами паролей подтверждена. В настоящий момент планируется инициировать процесс принудительного сброса пароля при следующем входе.

Кроме утечки паролей также подтверждено попадание в руки атаковавших GPG-ключей, используемых для формирования цифровых подписей пакетов в Debian-репозитории Synapse и релизов Riot/Web. Ключи были защищены паролем. В настоящий момент ключи уже отозваны. Ключи были перехвачены 4 апреля, с тех пор обновлений Synapse не выпускалось, но был релиз клиента Riot/Web 1.0.7 (предварительная проверка показала, что он не был скомпрометирован).

Атакующий разместил на GitHub серию отчётов с подробностями атаки и советами по увеличению защиты, но они были удалены. Тем не менее, в архиве отчёты сохранились.
Например, взломщик сообщил, что разработчикам Matrix следовало использовать двухфакторную аутентификацию или хотя бы не использовать перенаправление SSH-агентом («ForwardAgent yes»), тогда проникновение в инфраструктуру было бы блокировано. Эскалацию атаки также можно было остановить предоставляя разработчикам только необходимые привилегии, а не полный root-доступ на всех серверах.

Дополнительно раскритикована практика хранения ключей для создания цифровых подписей на рабочих серверах, для подобных целей следовало бы выделить отдельный изолированный хост. Ещё атакующий сообщил, что если бы разработчики Matrix регулярно проводили аудит логов и анализировали аномалии, они бы заметили следы взлома на раннем этапе (взлом CI оставался незамеченным целый месяц). Ещё одной проблемой было хранение всех файлов конфигурации в Git, что позволяло оценить настройки других хостов при взломе одного из них. Доступ по SSH к серверам инфраструктуры не был ограничен защищённой внутренней сетью, что позволяло подключиться к ним с любого внешнего адреса.

Источникopennet.ru

[:en]

Опубликованы новые подробности про взлом инфраструктуры децентрализованной платформы обмена сообщениями Matrix, о котором сообщалось утром. Проблемным звеном, через которое проникли атакующие была система непрерывной интеграции Jenkins, которая была взломана ещё 13 марта. Затем на сервере c Jenkins был перехвачен перенаправленный SSH-агентом вход одного из администраторов и 4 апреля атакующие получили доступ к другим серверам инфраструктуры.

При второй атаке сайт matrix.org был перенаправлен на другой сервер (matrixnotorg.github.io) через изменение параметров DNS, используя перехваченный при первой атаке ключ к API системы доставки контента Сloudflare. При пересборке содержимого серверов после первого взлома администраторы Matrix обновили только новые персональные ключи и упустили обновление ключа к Сloudflare.

В ходе второй атаки серверы Matrix остались нетронутыми, изменения ограничились только заменой адресов в DNS. В случае если пользователь уже сменил пароль после первой атаки, второй раз его менять не нужно. Но если пароль до сих пор не изменён, его нужно обновить как можно скорее, так как утечка базы с хэшами паролей подтверждена. В настоящий момент планируется инициировать процесс принудительного сброса пароля при следующем входе.

Кроме утечки паролей также подтверждено попадание в руки атаковавших GPG-ключей, используемых для формирования цифровых подписей пакетов в Debian-репозитории Synapse и релизов Riot/Web. Ключи были защищены паролем. В настоящий момент ключи уже отозваны. Ключи были перехвачены 4 апреля, с тех пор обновлений Synapse не выпускалось, но был релиз клиента Riot/Web 1.0.7 (предварительная проверка показала, что он не был скомпрометирован).

Атакующий разместил на GitHub серию отчётов с подробностями атаки и советами по увеличению защиты, но они были удалены. Тем не менее, в архиве отчёты сохранились.
Например, взломщик сообщил, что разработчикам Matrix следовало использовать двухфакторную аутентификацию или хотя бы не использовать перенаправление SSH-агентом («ForwardAgent yes»), тогда проникновение в инфраструктуру было бы блокировано. Эскалацию атаки также можно было остановить предоставляя разработчикам только необходимые привилегии, а не полный root-доступ на всех серверах.

Дополнительно раскритикована практика хранения ключей для создания цифровых подписей на рабочих серверах, для подобных целей следовало бы выделить отдельный изолированный хост. Ещё атакующий сообщил, что если бы разработчики Matrix регулярно проводили аудит логов и анализировали аномалии, они бы заметили следы взлома на раннем этапе (взлом CI оставался незамеченным целый месяц). Ещё одной проблемой было хранение всех файлов конфигурации в Git, что позволяло оценить настройки других хостов при взломе одного из них. Доступ по SSH к серверам инфраструктуры не был ограничен защищённой внутренней сетью, что позволяло подключиться к ним с любого внешнего адреса.

Источник: opennet.ru

[:]