Один из администраторов инфраструктуры kernel.org опубликовал в списке рассылки разработчиков ядра Linux уведомление, в котором рассказал о статусе восстановления серверов после взлома и работе, проделанной для увеличения безопасности. Kernel.org недоступен уже почти месяц. Столь длительный срок связан с тем, что разработчики были заняты детальным аудитом и полной переработкой архитектуры аутентификации и организации доступа во всех публично доступных сервисах kernel.org.

Возобновить работу сайта в первозданном виде, переустановив операционную систему и восстановив данные из резервной копии, можно было за несколько часов, но такой шаг не устраивал, так как инцидент показал принципиальные недоработки в организации доступа, которые рано или поздно могли привести к повторному взлому. В частности, наличие shell-аккаунтов у 448 разработчиков потенциально делало каждого из них мишенью для атакующих. В случае перехвата SSH-ключей у одного из этих разработчиков под удар попадала вся инфраструктура. Как показала практика, при наличии неограниченного доступа к shell получение root-привилегий - дело времени.

По сообщению администраторов, работа kernel.org будет частично восстановлена в ближайшие дни. В первую очередь в строй будут введены сервисы, связанные с обеспечением работы с Git-репозиториями. Наиболее важные Git-деревья будут доступны уже в начале недели, остальные Git-деревья планируется ввести в строй в начале октября. На восстановление работы всех остальных сервисов потребуется дополнительное время. После возрождения kernel.org будет существенно изменен метод доступа к Git: у разработчиков больше не будет доступа к системной оболочке (shell), а все Git-репозитории kernel.org будут функционировать в системе под одним системным пользователем. Работа с Git-репозиториями будет организована поверх HTTP, но для доступа к репозиторию по прежнему будут использоваться SSH-ключи. Нынешние SSH-ключи отменены, а новые будут сгенерированы и отправлены разработчикам в ближайшее время.

Для разделения прав доступа разработчиков к различным частям Git-репозитория будет задействовано расширение Gitolite, поддерживающее отдельную базу виртуальных пользователей, не имеющих системных аккаунтов. Дополнительно, Gitolite позволит реализовать более гибкие полномочия: возможность доступа только для чтения или разрешение записи в привязке к отдельным веткам, директориям, файлам или даже тегам; а также отдельные права на слияние, создание и удаление веток и тегов. Автор Gitolite считает свой проект абсолютно безопасным и готов выплатить денежное вознаграждение тому, кто сможет найти в нём уязвимость. Недостатком новой платформы являются невозможность запуска скриптов разработчиков на сервере, например, перестанут работать интегрируемые с Git индивидуальные обработчики, написанные на shell. Подобные обработчики потребуется переписать с учетом особенностей Gitolite.

Источник: http://www.opennet.ru/opennews/art.shtml?num=31845