Исследователи из университета Аризоны опубликовали отчет (http://www.cs.arizona.edu/people/justin/packagemanagersecuri...) по проблемами безопасности, возникающих при работе менеджеров пакетов в Linux. Основной акцент сделан на том, что утилиты, такие как
yum
и
apt
с готовностью инсталлируют пакеты, проверяя только их версию. При этом известные уязвимости этих сборок в расчет не принимаются. Получается, что менеджеру пакетов можно передать абсолютно любое ПО, лишь бы его версия была выше предыдущей.
Менеджеры пакетов часто запускаются с администраторскими привилегиями, для того что бы модификация кода программ и системы происходила в автоматическом режиме без участия пользователя и ввода необходимых паролей. В результате, процесс получает неограниченные полномочия, и обеспечение его безопасной работы является жизненно важной задачей.
<i>"Мы изучили десять популярных менеджеров пакетов, включая APT, YUM, YaST и др., для операционных систем, ос...URL: http://www.cs.arizona.edu/people/justin/packagemanagersecuri...
Новость: http://www.opennet.me/opennews/art.shtml?num=16952
а типа в генте всё гуд. компилятсия рулед.
Всё ровно так же - подменяется сервер обновлений, ебилд популярного приложения "правится" на исходник с пропатченным приложением, и опля - у Вас на борту чужой.
А тем временем в ports на freebsd есть portaudit...
>Всё ровно так же - подменяется сервер обновлений, ебилд популярного приложения "правится"
>на исходник с пропатченным приложением, и опля - у Вас на
>борту чужой.
>А тем временем в ports на freebsd есть portaudit...Может я и параноик, но и я об этом задумывался, на мой взгляд если гентушники откроют https зеркало для скачивания portage-latest.tar.bz2 - т.е. дерева портажей, то все проблемы безопасности будут закрыты, так как сорсы каждого пакета проверяются по как минимум MD5 а в основном еще и по SHA контрольным суммам. Так что для тех кто действительно параноик смогут качать дерево портажей не по emerge --sync а целиком и ничего не боятся.
плюсадиню
>плюсадинюЕсли.
PS: гентушники более уязвимы ещё и для configure-троянов навроде сендмыльного...
PPS: в альте издревле подписываются и пакеты, и метаданные.
>PS: гентушники более уязвимы ещё и для configure-троянов навроде сендмыльного...Для 100% защиты все-равно надо еще сорц глазами до компиляции читать еще, а вот на это гентушники имхо не разопрутся.А потому что им там подсунули они узнают 1 фиг как и все остальные - запустив это :)
Господа, с такой паранойей лучше вообще в сеть не выходить
Ну насчет левых репозиториев и подмен - GPG сигнатуры никто не отменял, RPM например умеет.
>Ну насчет левых репозиториев и подмен - GPG сигнатуры никто не отменял,
>RPM например умеет.Подмена сервера обновлений. Сделал апдейт базы менеджера пакетов "не с того сервера" и псё...
>>Ну насчет левых репозиториев и подмен - GPG сигнатуры никто не отменял,
>>RPM например умеет.
>
>Подмена сервера обновлений. Сделал апдейт базы менеджера пакетов "не с того сервера"
>и псё...Не, если стоит проверка signatures, то пакет нах пошлет. Если все полностью менять, но надо из keyring удалить старый сертификат и добавить новый. RPM manager явно требует этого сделать (т.е при autoupdate это не прокатит). Ну а если админ лопоухий ведется на такой развод и меняет сертификат без проверки правильный ли это репозиторий - это уже IMHO не лечится.
Вообще, тему стоит разделить на 2:
1. Установка/Upgrade приложений с известными дырами
2. Установка подделаных пакетов.По 1-му - в BSD есть portaudit, и он не даст поставить пакет, если в нем есть известные дырки. Но при этом - наглядный пример Asterisk, не знаю как сейчас, но несколько лет назад решето было еще то, его даже в BSD портах метили как постоянно vulnerable :) Но, как по мне так лучше поставить свежую версию с 5 известными дырами, чем держать старую (update из-за того что app vulnerable не проходит) с 25-ю. Логика ясна? Тут многое зависит от port/package maintainer, насколько он оперативно делает пакеты.
По 2-му - IMHO существующего signature check достаточно
короче, коммерческие линуксы рулят
у них там всё по https и всё с паролями и т.п. ...
Не скажу за перечисленные RPM-based дистрибутивы, но насколько я понял товарищи не вникали в apt-based совсем.man 8 apt-secure
В копиях официальных зеркал Debian содержится файлик Release с MD5 всех файлов Packages, подписанный официальным ключём дебиановского архива.
Соответственно каждый пакет в свою очередь подписан ключом его разработчика.
Кто добавлял некошерные репозитории (неподписанные или подписанные ключом не входящим в debian-archive-keyring) - вполне вспомнят ругань насчёт неподписанных репозиториев, про "untrasted source" и "you are really want to continue"
Некое академическое бла-бла-бла, а не исследование. Вот если бы результатом этого исследования были конкретные рекомендации конкретным дистрибутивам, а ещё лучше - патчи на yum, yast, apt - то тогда можно было бы прислушаться.
А так - нету ни ВЕРСИЙ протестированного ПО (как дистрибутивов, так и пакетных менеджеров), ни use cases.
Пропустить как информационный шум.
Согласен по всем пунктам. По "бла-бла-бла, а не исследование" вдвойне!По RPM based, я написал выше. Те же яйца тока в профиль.
Диагностика - половина лечения. Народ осознал наличие проблемы и говорит, что надо решать. Так же предлагают некоторые меры. Тем, кто занимается разработкой систем управления пакетами будет не очень дальновидно - пропустить как информационный шум". А пользовательское дело - мычачее: ешь, что дают.
>В копиях официальных зеркал Debian содержится файлик Release с MD5 всех файлов
>Packages, подписанный официальным ключём дебиановского архива.MD5 подделать можно.
>>В копиях официальных зеркал Debian содержится файлик Release с MD5 всех файлов
>>Packages, подписанный официальным ключём дебиановского архива.
>
>MD5 подделать можно.подробнее пожалуйста -- и скажите сразу сколько нужно времени чтобы подделать лишь 1 пакет
гугл поможет тебе осознать, что md5 можно подделать в короткие сроки
>>MD5 подделать можно.
>
>подробнее пожалуйста -- и скажите сразу сколько нужно времени чтобы подделать лишь
>1 пакетнесколько миллисекунд. Подробности Вы найдёте в гугле без труда.
вы оба я смотрю особенно хорошо изучили google? -- тогда может скажите КАК это делать если он ПОДПИСАН
> MD5 подделать можно.В Debian в файлах Release и Packages используется так же хеши, вычисленные по алгоритмам SHA1 и SHA256 :-)
Решение простое - ставить из портов, обновленных portsnap.
При этом абсолютно все равно, откуда вы скачали исходники или базу - все проверяется ключами и сигнатурами.
Я из котовый пакаджей ничего и никогда не ставлю. Мне не лень перекомпилировать.
>Решение простое - ставить из портов, обновленных portsnap.
>При этом абсолютно все равно, откуда вы скачали исходники или базу -
>все проверяется ключами и сигнатурами.
>Я из котовый пакаджей ничего и никогда не ставлю. Мне не лень
>перекомпилировать.А как насчет обновления world через cvsup? там ничего не проверяется..
Похоже, на сей раз ФриБСД сделала Линуксы. Ну хоть по защищенности :)
не на сей, а во веки веков 8)
> во веки вековПусть почит с миром.
> Похоже, на сей раз ФриБСД сделала Линуксы. Ну хоть по защищенности :)ИМХО лучше скачивать потенциально дырявые обновления, чем не скачивать никаких.
>Похоже, на сей раз ФриБСД сделала Линуксы. Ну хоть по защищенности :)
>Защита репозитария - это конечно хорошо, но есть и другой аспект.
В FreeBSD есть portaudit.
Он позволяет проверить наличие уязвимостей в уже установленных пакетах,
и не просто проверить, а получить URL с более подробным описанием проблемы.
Аналогичной утилиты в Linux я не знаю.
Там можно просто обновить пакеты.
Цель обновления пакета может быть разная:
0) вышло security обновление
1) просто вышла новая версия
2) были исправлены какие-то ошибкиПо идее пункт 0 должен волновать админа больше всего в плане защиты
Глупенький, о информативности пакетов никто не говорит. Говорят о их подмене.
Авторы прогнали, все rpm подписаны и тот же yum вылетает на чужих пакетах, пока ключ не импортируешь с сайта автора. Естественно, ключи к основной системе идут вместе с ней. И на сколько я знаю с deb-ами тоже самое.Защита от подмены была изначальнa, как только речь зашла о репозитариях и их зеркалировании.
А вот с freebsd действительно есть проблема, tgz не подписываются, подменить порты (и это случалось!!!, я помню про 4.х) не проблема, md5 также можно перегенерировать в порте - я так и делал иной раз для замены orig.
192.168.222.11
PS опечалил меня OpenNews - такую туфту пропустил.
>А вот с freebsd действительно есть проблема, tgz не подписываются, подменить порты
>(и это случалось!!!, я помню про 4.х) не проблема, md5 также
>можно перегенерировать в порте - я так и делал иной
>раз для замены orig.Подменить самому, будучи рутом, и когда подменит кто-то другой - две большие разницы. Для параноиков на то и компиляция, а подменить порты при обновлении не даст, например, portsnap - его автор Security Officer FreeBSD и к вопросу зеркал подошел соответственно.
> Цель обновления пакета может быть разная:Вообще-то если обновление вышло, значит следует его ставить. А в такой ситуации просто не возникает необходимости в упомянутой программе (достаточно того, что сообщает система управления пакетами, какие пакеты нужно обновить). Но видимо админы FreeBSD не ищут лёгких путей? Или просто не могут себе позволить ставить все обновления - вдруг что-то перестанет работать и т.п.?
> Он позволяет проверить наличие уязвимостей в уже установленных пакетах,
> и не просто проверить, а получить URL с более подробным описанием проблемы.
> Аналогичной утилиты в Linux я не знаю.glsa-check (для gentoo)
>Похоже, на сей раз ФриБСД сделала Линуксы. Ну хоть по защищенности :)См. выше критику статьи и аналогичных криков гентушников (однако, тоже линукс).
И опять же -- зуб за апдейты к ряду линуксов дают, а для фри такое бывает?
>Похоже, на сей раз ФриБСД сделала Линуксы. Ну хоть по защищенности :)В смысле?
По большому счёту надуманная проблема, хотя потенциально опасна в IPv4, если кто-то научится ломать DNS, но только пока не выпустят пацч.
>По большому счёту надуманная проблема, хотя потенциально опасна в IPv4, если кто-то
>научится ломать DNS, но только пока не выпустят пацч.Вы невнимательно прочли даже то по существу, что было в статье.
Там было про злонамеренное публичное "зеркало" -- при этом без разницы v4/v6. И DNS спуфить необязательно.
> Там было про злонамеренное публичное "зеркало" -- при этом без разницы v4/v6. И DNS спуфить необязательно.Авторы статьи облажались - эта проблема была решена еще когда стали делать первые зеркала - более 10 лет назад. И если сейчас на любом зеркале подменишь rpm - то yum просто вылетит, т.к. подпись не совпадет с его ключом.
> Авторы статьи облажались - эта проблема была решена еще когда стали делать первые зеркала - более 10 лет назад.Если я правильно понял, то некоторая теоретическая опасность есть. Даже если в дистрибутиве сделано всё правильно (т.е. контролируется не только подлинность отдельных файлов, но и целостность всего репозитория), то всё равно возможен вариант со старой копией всего репозитория - то есть обновления будут выходить, но не будут попадать на зеркало, и его пользователи не будут получать обновления (а владельцы зеркала будет знать адреса компьютеров, на которых не устанавливаются обновления). Хотя если админ следит за системой, то отсутствие обновлений достаточно быстро должно его насторожить.
И этот случай предусмотрен. Например, в yum указывается не репозитарий, а список их:
mirrorlist=http://packman.links2linux.de/mirrorlists/suse
он естественно ротируется. Так что вероятность подсунуть старые пакеты с ошибкой сходит к нулю.В общем авторы явно опоздали лет на десять, и сейчас это просто гон. В лучших традициях МС - главное посеять неуверенность.
такой бред )) ключи сравниваются. в RPM не поставишь пока сам не нажмёшь то есть потвердиш ключ.
В общем понял - Линукс такойже дырявый как и Винда, тка что нечего время тратить на изучение. Там одно - тут другое...
Так и не трать. И на новости про Linux тоже.
по-моему ты вообще ничего не понял
Помоему вообще мало кто что понял)))))
Насколько я понял из статьи, суть уязвимости в том что можно в репозиторий положить например версию пакета 0.1 с кучей уязвимостей (пакет взять из старого официального репозитария, т.е. он будет правильно подписан). Но файлы метаданных заменить на файлы из свежего пакета. В результате менеджер пакетов будет думать, что это новая версия и она правильно подписана.Это будет работать в случае, если данные и метаданные подписаны отдельно (или метаданные вообще не подписаны). Кто-нибудь может подтвердить или опровергнуть эту уязвимость? И какие системы пакетов на сегодня уязвимы для этого?
>И какие системы пакетов на сегодня уязвимы для этого?SUSE открестились от этого: http://lists.opensuse.org/opensuse-security-announce/2008-07...
И как я вижу в centos/rhel так же все ок.
>>И какие системы пакетов на сегодня уязвимы для этого?
>
>SUSE открестились от этого: http://lists.opensuse.org/opensuse-security-announce/2008-07...
>
>И как я вижу в centos/rhel так же все ок.