ЧаВО по безопасности в Debian
Нижеприведённые вопросы нам задают слишком часто, поэтому мы приводим здесь ответы на них.
- Подпись вашей рекомендации определяется как некорректная!
- Каким образом ведётся работа над безопасностью Debian?
- Почему вы возитесь со старыми версиями пакетов?
- Какова политика появления на security.debian.org исправленных пакетов?
- Что означает
(local (remote))
(«локальная (удалённая)»)? - Номер версии установленного у меня пакета показывает, что пакет всё ещё содержит уязвимость!
- Я получил рекомендацию по безопасности, но сборка для одной процессорной архитектуры, как кажется, отсутствует.
- Каким образом ведётся работа над безопасностью нестабильного выпуска?
- Каким образом ведётся работа над безопасностью тестируемого выпуска?
- Каким образом ведётся работа над безопасностью секций contrib и non-free?
- В рекомендации сказано, что нестабильная версия исправлена в версии 1.2.3-1, но в нестабильном выпуске находится версия 1.2.5-1, в чём дело?
- Почему нет официальных зеркал security.debian.org?
- Я вижу DSA 100 и DSA 102, но где DSA 101?
- Как я могу связаться с командой безопасности?
- Мне кажется, что я нашёл проблему, связанную с безопасностью. Что мне делать?
- Что я должен делать, если проблема, связанная с безопасностью, обнаружилась в одном из моих пакетов?
- Я пытаюсь загрузить пакет, указанный в одной из рекомендаций по безопасности, но происходит ошибка
файл не найден
. - Я исправил ошибку. Могу ли я загрузить пакет непосредственно на security.debian.org?
- Я исправил ошибку. Могу ли я загрузить пакет в каталог proposed-updates?
- Я абсолютно уверен, что мой пакет работает правильно, как я могу загрузить его?
- Как я могу помочь в обеспечении безопасности?
- Каков статус каталога proposed-updates?
- Кто входит в команду безопасности?
- Как долго будут предоставляться обновления, связанные с безопасностью?
- Как проверить целостность пакетов?
- Что делать, если после установки обновления какой-либо пакет перестал работать?
Вопрос: Подпись вашей рекомендации определяется как некорректная!
A: Скорее всего, проблема с вашей стороны. Список рассылки debian-security-announce защищён фильтром, пропускающим только сообщения с правильной подписью членов команды безопасности.
Наиболее вероятно, что программы обработки почты на каком-то этапе несколько изменяют сообщение, из-за чего не проходит проверка подписи. Проверьте, что ваше программное обеспечение не производит кодирования или декодирования MIME или преобразования символов табуляции в пробелы или наоборот.
Известными возможными виновниками проблем являются fetchmail (с включенным параметром mimedecode), formail (начиная с procmail версии 3.14) и evolution.
Вопрос: Каким образом ведётся работа над безопасностью Debian?
A: После того, как команда безопасности получает уведомление о проблеме, один или несколько её членов команды анализируют его, и проверяют, затронут ли стабильный выпуск Debian (т.е., уязвим он или нет). Если наша система уязвима, мы стараемся исправить ошибку. Также мы связываемся с сопровождающим пакета, если он ещё не вышел на связь сам. Наконец, обновление тестируется и подготавливаются новые пакеты, которые затем компилируются на всех архитектурах стабильного выпуска и загружаются на сервер. После того, как всё это проделано, публикуется рекомендация.
Вопрос: Почему вы возитесь со старыми версиями пакетов?
Самое главное, что необходимо помнить при создании нового пакета, в котором исправлена проблема, связанная с безопасностью, это то, что нужно вносить так мало изменений, насколько это возможно. Наши пользователи и разработчики рассчитывают на неизменное поведение одного выпуска системы, поэтому любые сделанные нами изменения, возможно, обвалят чью-то систему. Особенно это относится к библиотекам: удостоверьтесь, что вы не меняете ни программный интерфейс приложений (Application Program Interface, API), ни двоичный интерфейс приложений (Application Binary Interface, ABI), как бы малы ни были эти изменения.
Это означает, что переход к новой версии пакета — не лучшее решение. Вместо этого нужно перенести на старую версию необходимые изменения. В основном, если команда безопасности Debian не в состоянии справиться с проблемой, разработчики исходного кода, обычно, готовы помочь.
В некоторых случаях внедрить исправления в старую версию невозможно, например, когда нужно изменить или переписать очень большие куски кода. В этом случае переход к новой версии может оказаться вынужденным, но это нужно заранее согласовать с командой безопасности.
Вопрос: Какова политика появления на security.debian.org исправленных пакетов?
A: При обнаружении проблемы с безопасностью стабильного выпуска новый пакет на security.debian.org гарантированно появится. В любом другом случае — нет. Размер проблемы особого значения не имеет. Обычно, команда безопасности готовит пакеты вместе с сопровождающим. Если кто-то (кому мы доверяем) отследил проблему, скомпилировал все необходимые пакеты и предоставил их команде безопасности, даже тривиальные решения проблем, связанных с безопасностью, появятся на security.debian.org. См. ниже.
Обновления, связанные с безопасностью, служат одной цели: предоставить исправления уязвимого места в безопасности системы. Эти обновления не являются возможностью втихомолку внести дополнительные изменения в стабильный выпуск, не проходя обычную процедуру создания редакций выпусков.
Вопрос: Что означает (local (remote))
(«локальная (удалённая)»)?
A: Некоторые предупреждения безопасности содержат уязвимости, которые не
могут быть классифицированы по классической схеме локальной и удалённой
возможности использования. Некоторые уязвимости не могут быть использованы
удалённо, то есть они не направлены на службу, открывшую сетевой порт. Если они могут
быть использованы специальными файлами, которые могут быть предоставлены
через сеть, хотя уязвимый сервис не соединён с сетью постоянно, в таком случае
мы пишем local (remote)
.
Подобные уязвимости представляют собой что-то среднее между локальной и удалённой уязвимостями, и часто содержат архивы, которые могут быть предоставлены по сети, то есть как почтовое вложение или со страницы загрузки.
Вопрос: Номер версии установленного у меня пакета показывает, что пакет всё ещё содержит уязвимость!
A: Вместо того, чтобы предлагать обновить пакет до нового выпуска, мы переносим исправления, связанные с безопасностью, в версию, включенную в стабильный выпуск. Мы делаем это, чтобы убедиться в том, что выпуск меняется так мало, насколько это возможно, чтобы система в результате обновления не изменила своё поведение и не обрушилась. Вы можете проверить, установлена ли у вас безопасная версия пакета, прочитав журнал изменений в нём или сравнив точный номер его версии с версией, указанной в рекомендации Debian по безопасности.
A: Обычно команда безопасности выпускает рекомендацию со сборками обновлённых пакетов для всех архитектур, поддерживаемых Debian. Тем не менее, некоторые архитектуры более медленны, чем другие, и может так получиться, что сборки для большинства архитектур будут готовы, но для некоторых архитектур они будут отсутствовать. Эти архитектуры представляют собой небольшую часть от общего количества наших пользователей. В зависимости от срочности проблемы мы можем решить выпустить рекомендацию немедленно. Отсутствующие сборки будут установлены сразу же как только они будут доступны, но об их установке в архив не будет сообщено. Конечно, мы никогда не выпустим рекомендацию, если сборки для i386 или amd64 не будут готовы.
Вопрос: Каким образом ведётся работа над безопасностью нестабильного выпуска?
A: Если коротко, то никак. Нестабильный дистрибутив быстро изменяется, и у команды безопасности нет ресурсов, необходимых для его нормальной поддержки. Если вы хотите иметь безопасный (и стабильный) сервер, мы настоятельно рекомендуем использовать стабильный выпуск.
Вопрос: Каким образом ведётся работа над безопасностью тестируемого выпуска?
A: Если вы хотите иметь безопасный (и стабильный) сервер, мы настоятельно
рекомендуем использовать стабильный выпуск. Тем не менее, для тестируемого
выпуска имеется поддержка безопасности: команда безопасности
тестируемого выпуска Debian работает над проблемами тестируемого выпуска. Это даёт уверенность в том,
что исправленные пакеты войдут в тестируемый выпуск обычным путём через миграцию из нестабильного выпуска
(с уменьшенным временем нахождения в карантине), либо, если это занимает слишком много времени,
будут доступны через обычную инфраструктуру http://security.debian.org.
Если вы хотите их использовать, удостоверьтесь, что следующая строка
присутствует в /etc/apt/sources.list:
deb http://security.debian.org <codename>/updates main
и запустите apt-get update && apt-get upgrade.
Имейте ввиду, что это не гарантирует вам исправления всех известных проблем безопасности в тестируемом выпуске! Некоторые обновлённые пакеты могут ожидать перемещения в тестируемый выпуск. Подробнее об инфраструктуре безопасности для тестируемого выпуска вы можете найти на http://secure-testing-master.debian.net/.
Вопрос: Каким образом ведётся работа над безопасностью секций contrib и non-free?
A: Если коротко, никак не ведётся. Contrib и non-free не являются официальными частями дистрибутива Debian, не входят в выпуски, и потому не поддерживаются командой безопасности. Некоторые несвободные пакеты распространяются без исходного кода, или их лицензия не позволяет распространение изменённых версий. В этих случаях исправление в них проблем безопасности вообще невозможно. Если решить проблему всё же возможно, и если сопровождающий пакета либо кто-то ещё предоставил корректную новую версию пакета, команда безопасности, в общем случае, возьмёт её в обработку и выпустит рекомендацию.
A: Мы пытаемся указать ту версию из нестабильного выпуска, в которой проблема исправлена. Иногда бывает так, что сопровождающий загрузил тем временем ещё более новую версию. Сравните версию в нестабильном выпуске и версию, которую указали мы. Если она такая же или выше, вы не должны быть подвержены этой уязвимости.
Вопрос: Почему нет официальных зеркал security.debian.org?
A: На самом деле, они есть. Это несколько официальных зеркал, организованных через псевдонимы DNS. Целью security.debian.org является предоставление обновлений, связанных с безопасностью, так быстро и легко, насколько это возможно.
Использование неофициальных зеркал усложнило бы процесс, что обычно не нужно, и может вызвать затруднения, если зеркала не будут содержать актуальные пакеты.
Вопрос: Я вижу DSA 100 и DSA 102, но где DSA 101?
A: Некоторые поставщики (в основном GNU/Linux, но также и BSD производных) в некоторых случаях координируют между собой предложения по безопасности и соглашаются на определённую задержку, так чтобы все поставщики могли выпустить рекомендации одновременно. Так сделано, чтобы не дискриминировать поставщиков, которым нужно больше времени (напр., когда пакеты должны пройти длительные тесты контроля качества или поставщик поддерживает несколько архитектур или двоичных выпусков). Наша команда безопасности также подготавливает предложения заранее. Время от времени получается так, что нужно выпустить новое предложение по безопасности, а другое ещё не опубликовано. Таким образом один или несколько номеров могут быть пропущены.
Вопрос: Как я могу связаться с командой безопасности?
A: Информацию, касающуюся безопасности, можно отправлять по адресу security@debian.org или team@security.debian.org. Письма на оба адреса читают все члены команды безопасности Debian.
Если вы являетесь сопровождающим пакета и хотите связаться с нами по поводу проблемы в вашем пакете, отправьте заявку в наш трекер запросов. Если вы хотите использовать шифрование PGP, лучше использовать обычную почту.
Если нужно, сообщение можно зашифровать ключом для контактов с командой безопасности Debian (идентификатор ключа 0x90F8EEC5). Ключи PGP/GPG членов команды безопасности можно найти на сервере ключей keyring.debian.org.
Вопрос: Мне кажется, что я нашёл проблему, связанную с безопасностью. Что мне делать?
A: Если вы обнаружили проблему, связанную с безопасностью, в вашем пакете или в чьём-либо ещё, пожалуйста, непременно свяжитесь с командой безопасности. Если команда безопасности Debian подтвердит наличие уязвимости, и вероятно, что проблемой затронуты и другие поставщики, команда безопасности, скорее всего, свяжется с ними. Если о наличии уязвимости ещё неизвестно широкой публике, они попытаются скоординировать действия с другими поставщиками, так что все основные дистрибутивы будут синхронизированы.
Если уязвимость уже публично известна, обязательно отправьте отчёт об ошибке
в Debian BTS, и присвойте ему тег security
.
Если вы сопровождающий Debian, см. ниже.
A: Если вы обнаружили программу, связанную с безопасностью, в вашем пакете или в чьём-либо ещё, пожалуйста, непременно свяжитесь с командой безопасности, желательно отправив заявку через трекер запросов, но вы также можете связаться с командой безопасности по электронной почте по адресу team@security.debian.org. Они отслеживают ещё не исправленные проблемы в безопасности, могут помочь сопровождающим в их исправлении, отвечают за отправку предложений по безопасности и сопровождают security.debian.org.
Справочник разработчика содержит подробные инструкции.
В частности, очень важно то, что вы не должны загружать пакеты в какой-то другой выпуск, помимо нестабильного, без предварительного согласования с командой безопасности. В противном случае вы послужите причиной путаницы и лишней работы.
A: Если появился более новый пакет, заменивший старый на
security.debian.org, весьма вероятно, что старый через некоторое
время будет удалён. Поэтому вы получите сообщение файл не найден
.
Мы не хотим распространять пакеты, о наличии ошибок, связанных с
безопасностью, в которых мы знаем, дольше, чем это абсолютно
необходимо.
Пожалуйста, используйте пакеты, указанные в последних рекомендация
по безопасности, распространяемых через список рассылки debian-security-announce. Лучше всего перед обновлением пакета
просто запустить apt-get update.
Вопрос: Я исправил ошибку. Могу ли я загрузить пакет непосредственно на security.debian.org?
A: Нет. Архив на security.debian.org сопровождается командой безопасности, которая должна одобрить загрузку любого пакета. Вместо этого следует отправлять заплаты или исправленные пакеты с исходным кодом команде безопасности через трекер запросов или по адресу team@security.debian.org. Команда безопасности проанализирует их и в конце концов загрузит на сервер, внеся изменения или без них.
Если вы не загружаете обновления, связанные с безопасностью, постоянно или не уверены на 100%, что ваш пакет не содержит ошибок, пожалуйста, используйте этот способ и не загружайте его в каталог поступлений. Команда безопасности мало что может сделать с пакетами, содержащими ошибки, особенно, если они используют неправильный номер версии. На данный момент пакеты нельзя отвергнуть, а если это будет возможно, это запутает работу buildd. Поэтому отправляйте свои исправления по почте, и помогите работе команды безопасности, не создавая лишних препятствий.
Справочник разработчика содержит полные инструкции.
Вопрос: Я исправил ошибку. Могу ли я загрузить пакет в каталог proposed-updates?
A: Технически, да. Тем не менее, вам не следует этого делать,
поскольку это плохо пересекается с работой команды безопасности.
Пакеты с security.debian.org будут скопированы в proposed-updates
автоматически. Если пакет с тем же или более высоким номером
версии в архиве уже есть, обновление от команды безопасности
будет отвергнуто системой поддержки архива. Таким образом,
стабильный выпуск останется без обновления, связанного с
безопасностью, для этого пакета, если только неправильные
пакеты
в каталоге proposed-updates не будут отвергнуты. Пожалуйста,
свяжитесь вместо этого с командой безопасности, сообщите все
подробности об обнаруженной уязвимости, и вложите в письмо
файлы исходного кода (diff.gz и dsc).
Справочник разработчика содержит полные инструкции.
Вопрос: Я абсолютно уверен, что мой пакет работает правильно, как я могу загрузить его?
A: Если вы полностью уверены, что ваш пакет не нарушит работу каких-либо
программ, что номер версии правилен (т.е. выше, чем номер версии в
стабильном выпуске, но ниже, чем в тестируемом/нестабильном),
что вы не изменили поведение пакета, несмотря на соответствующую
проблему безопасности, что вы скомпилировали пакет для правильного
выпуска (oldstable-security или
stable-security), что в случае, если пакета ещё нет на
security.debian.org, пакет содержит первоначальный исходный код, что
вы можете подтвердить, что изменения по сравнению с последней версией
касаются только соответствующей проблемы безопасности (проверьте это
с помощью interdiff -z и обоих файлов .diff.gz),
что вы прочитали изменения кода по меньшей мере трижды и что
debdiff не показывает никаких изменений, вы можете загрузить
файлы в каталог последних поступлений
ftp://security-master.debian.org/pub/SecurityUploadQueue непосредственно на
security.debian.org. Пожалуйста, пришлите также уведомление об этом
с изложением всех подробностей и ссылками по адресу
team@security.debian.org.
Вопрос: Как я могу помочь в обеспечении безопасности?
A: Пожалуйста, проверяйте каждую проблему перед тем, как сообщить о ней по адресу security@debian.org. Если вы можете предоставить заплату, это ускорит процесс. Не надо просто пересылать письма из системы отслеживания ошибок Debian, мы и так получаем их, но обязательно сообщайте нам дополнительную информацию о проблемах, освещённых там.
Неплохим способом начать работу над проблемами безопасности будет помощь на трекере безопасности Debian (инструкции).
Вопрос: Каков статус каталога proposed-updates?
A: Этот каталог содержит пакеты, которые предлагается включить в следующую редакцию стабильного дистрибутива Debian. Всегда, когда сопровождающий загружает пакет для стабильного дистрибутива, он попадает в каталог proposed-updates. Поскольку стабильный выпуск предполагается стабильным, автоматического обновления не производится. Команда безопасности загружает исправленные пакеты, указанные в её предложениях, в стабильный выпуск, однако сначала они помещаются в proposed-updates. Раз в несколько месяцев управляющий стабильного выпуска проверяет список пакетов в proposed-updates и решает, должен ли пакет быть включён в стабильный выпуск. Так формируется новая редакция стабильного выпуска (например, 2.2r3 или 2.2r4). Пакеты, которые не подходят для включения в стабильный выпуск, вероятно, будут отвергнуты и удалены из каталога proposed-updates.
Имейте в виду, что пакеты, загруженные в каталог proposed-updates/ сопровождающими (а не командой безопасности), командой безопасности не поддерживаются.
Вопрос: Кто входит в команду безопасности?
A: Команда безопасности Debian состоит из нескольких ответственных лиц проекта. Команда безопасности сама подбирает новых членов.
Вопрос: Как долго будут предоставляться обновления, связанные с безопасностью?
A: Команда безопасности поддерживает (или, по крайней мере, пытается) стабильный дистрибутив в течение одного года после выхода следующего выпуска, за исключением случаев, когда в течение этого года выходит ещё один стабильный выпуск. Поддерживать одновременно три выпуска невозможно — даже параллельная поддержка двух выпусков достаточно сложна.
Вопрос: Как проверить целостность пакетов?
A: Этот процесс включает в себя проверку подписи файла Release по открытому ключу, который использовался для данного архива. Файл Release содержит контрольные суммы файлов Packages и Sources, которые, в свою очередь, содержат контрольные суммы для пакетов с исходным кодом и двоичных пакетов. Подробные инструкции по проверке целостности пакетов вы можете найти в документе Руководство по защите Debian.
Вопрос: Что делать, если после установки обновления какой-либо пакет перестал работать?
A: Во-первых, следует определить, почему пакет не работает и как это связано с обновлением. После этого свяжитесь с командой безопасности, если это серьёзная проблема, или с управляющими стабильного выпуска, если она не слишком серьезна. Мы говорим о ситуации, когда пакет перестал работать после обновления другого пакета. Если вы не можете определить, что именно работает неправильно, но у вас есть предположения, как можно исправить ситуацию, также свяжитесь с командой безопасности. При необходимости вас перенаправят к управляющему стабильным выпуском.
