Администраторы Sourceforge.net представили полный отчёт о взломе сервиса. Содержимое отчёта обобщает список действий, которые были предприняты для блокирования атаки и для обеспечения целостности пользовательских данных. Проведение целенаправленной атаки по взлому Sourceforge.net было обнаружено в среду, в четверг было выявлено, что злоумышленники получили доступ к нескольким серверам, которые сразу были отключены от сети, чтобы блокировать атаку на начальной стадии.
Решение о блокировании было принято для CVS-репозитория, web-интерфейса для просмотра кода (ViewVC), системы загрузки релизов и сервиса интерактивного shell в системе ProjectWeb. В связи с возникновением неподтверждённого опасения утечки пользовательской базы, дополнительно был произведен сброс всех паролей для всех аккаунтов sourceforge.net.
В настоящее время ещё не завершена работа по проверке целостности пользовательских данных и их сверке с резервной копией. Проверка целостности осуществляется как путём сравнения содержимого всех опубликованных релизов, так и на уровне сверки всех коммитов в системе управления исходными текстами. На завершение полного анализа и проверки потребуется ещё несколько дней. Восстановить работу заблокированных сервисов Sourceforge.net планируется только на следующей неделе, после завершения всех инициированных проверок. Сервисы будет восстанавливаться поэтапно, по мере завершения проверки связанных с ними данных. Для обеспечения работы сервисов будут использованы настроенные с нуля системы.
Рассматривая возможные мотивы совершения атаки, наиболее правдоподобным выглядит предположение о намерении поместить вредоносный код в архив с одним из релизов какого-то популярного проекта. Хотя сверка контрольных сумм с резервной копией ещё не завершена, факты подмены релизов пока не выявлены. Тем не менее пользователям рекомендуется повременить с загрузкой программ с Sourceforge.net, так как до завершения проверки нельзя точно утверждать об отсутствии в них троянских вставок. Работу сервиса по загрузке планируется восстановить в первую очередь.
Во время проведения атаки злоумышленники смогли получить root-доступ на одной из платформ, имеющей полномочия генерации SSH-ключей для организации подключения к определённому классу серверов извне. К счастью, сегментирование сетевой инфраструктуры Sourceforge.net ограничило действие сгенерированного ключа достаточно узким кругом машин и не дало распространить влияние на другие классы серверов. Сразу после фиксации факта проникновения поражённые серверы были отключены от сети для проведения детального аудита логов. Параллельно был начат процесс проверки возможной эксплуатации злоумышленниками других серверов и сервисов, а также смены всех внутренних SSH-ключей и паролей.
Анализ взломанных серверов выявил факт подмены SSH-демона на вариант, осуществляющий перехват и сохранение паролей. Попали ли перехваченные пароли в руки злоумышленников неизвестно, но самой модификации SSH-демона стало достаточно, чтобы инициировать процесс смены паролей для всех аккаунтов пользователей сервиса. Для предотвращения подобных инцидентов в будущем, принято решение усилить безопасность инфраструктуры Sourceforge.net и ввести в практику ряд регулярно проводимых профилактических мер.
Так как начальной точкой взлома стал сервис Project Web, позволяющий разработчикам получить доступ к интерактивному shell и выполнению своих скриптов, то решено полностью пересмотреть работу данного сервиса. Новый сервис будет поддерживать более жёсткую изоляцию между пользовательскими аккаунтами и уйдёт от текущей модели shared-хостинга. Текущий вариант сервиса разрабатывался около 10 лет назад с учётом специфики того времени, поэтому обойтись без его существенной переработки не удастся.
Похожая ситуация наблюдается и для CVS-сервиса, который является старейшим в SourceForge.net. Сам по себе CVS уже устарел и, испытывая проблемы с масштабируемостью, не вписывается в текущую инфраструктуру SourceForge.net. Работа сервиса будет восстановлена ближе к концу следующей недели, но уже решено объявить о скором прекращении поддержки CVS и подготовить набор средств для миграции на Subversion или Git.