The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Уязвимость в пакетном менеджере pacman, позволяющая выполнить код в ходе MITM-атаки

13.03.2019 09:14

В пакетном менеджере pacman, применяемом в дистрибутиве Arch Linux, выявлена уязвимость (CVE-2019-9686), позволяющая добиться выполнения кода с правами root в момент установки пакета, в случае контроля атакующим зеркала репозитория или транзитного трафика жертвы (например, при подключении пользователя через сетевой шлюз, VPN или беспроводную точку доступа, подконтрольные атакующему). Проблема устранена в обновлении pacman 5.1.3-1.

Уязвимость напоминает недавно выявленную проблему в пакетном менеджере APT и также связана с возможностью подмены определённых полей в HTTP-ответах. В Arch Linux, как и большинстве других дистрибутивов, обращение к репозиториям может осуществляться по HTTP без шифрования трафика, но с применением верификации целостности и источника пакета по цифровой подписи. При установке пакета при помощи команды "pacman -U" с указанием URL, атакующий может подменить имя файла, передаваемое через HTTP-заголовок "Content-Disposition".

Пакетный менеджер pacman использует передаваемое в заголовке "Content-Disposition" значение для переименования полученного файла без должной проверки его корректности и без вырезания символов "../" из файлового пути. Переименование выполняется на стадии до проверки данных по цифровой подписи. Атакующий может поменять имя файла на строку вида "../../usr/share/libalpm/hooks/evil.hook" и добиться размещения своего файла в любой части файловой системы. Подобная манипуляция приведёт к выводу ошибки из-за невозможности найти файл в каталоге с кэшем пакетов, но скопированный файл останется в системе.

  1. Главная ссылка к новости (https://security.archlinux.org...)
  2. OpenNews: Выпуск пакетного менеджера Pacman 5.0
  3. OpenNews: Уязвимость в пакетном менеджере APT, позволяющая обойти проверку пакетов
  4. OpenNews: Выявлены следы взлома PHP-репозитория PEAR и модификации пакетного менеджера
  5. OpenNews: Уязвимость в пакетном менеджере APK, позволяющая удалённо выполнить код в Alpine Linux
  6. OpenNews: Уязвимость в пакетном менеджере APT, позволяющая подменить загружаемый пакет
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/50311-pacman
Ключевые слова: pacman, archlinux
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (25) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Fracta1L (ok), 11:04, 13/03/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Если у меня https-зеркало - можно спать спокойно?
     
     
  • 2.3, Аноним (3), 11:05, 13/03/2019 [^] [^^] [^^^] [ответить]  
  • +/
    >в случае контроля атакующим за за зеркалом репозитория
     

  • 1.2, Аноним (3), 11:05, 13/03/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • +19 +/
    Затмевает apt даже по удобству использования уязвимостей. Вот что значит хороший пакетный менеджер.
     
     
  • 2.9, Аноним (9), 12:50, 13/03/2019 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Пока не затмевает. Pacman даже не проверяет динамическую линковку, в результате чего иногда может прилететь апдейт пакета с зависимостью от более новой версии библиотеки, а сама библиотека -- нет. Или наоборот. У меня так один раз сам pacman обновился, а libidn -- нет, потому что зеркало криво засинкалось. В результате пришлось ручками старый пакет с pacman'ом распаковывать и менять бинарник.
     
     
  • 3.31, Anonimus (??), 18:31, 13/03/2019 [^] [^^] [^^^] [ответить]  
  • +/
    Это не проблема pacman - проблема в майнтейнере который собирал пакет и не корректно указал зависимости. зависимости он проверяет корректно и их можно указать гибко.
     
     
  • 4.33, Аноним (33), 19:00, 13/03/2019 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Выполнять обезянью работу по определению ABI, на который завязан пакет, должен не человек (тем более, что тут легко ошибиться: обновил зависимость, у которой сменился ABI, а в PKGBUILD отразить этом забыл — и привет).
    Посмотри как это сделано в RPM, там хелперы rpmbuild-а сами проходят по всем бинарям и выдирают оттуда информацию об ABI. Потому что человек долбанется руками прописывать и, само главное, актуализировать портянку такого вида https://pastebin.com/9e4TTZud (это ABI-зависимости thunderbird-а).
     
     
  • 5.34, Аноним (33), 19:03, 13/03/2019 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Особенно рекомендую обратить внимание на отслеживание версий символов в тех либах, где такое версионирование есть (nss, glibc). Руками такое делать нереально.
     
     
  • 6.45, граммарнаци (?), 06:43, 14/03/2019 [^] [^^] [^^^] [ответить]  
  • +/
    В таком случае это проблема не менеджера пакетов, а тулкита для сборки пакетов
     
  • 5.36, Anonimus (??), 19:23, 13/03/2019 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Смотри, есть дистрибутив для которого делаются пакеты, есть майнтейнер который собирает и тестирует эти пакеты, есть тестирование снепшотов дистрибутивов, когда тестируется набор пакетов в дистрибутиве перед релизом (несколько стадий) и только потом релиз. Сами зависимости в большинстве случаев редко меняются и если поменялись, то тестирование - это быстро показывает.
    Но с другой стороны чем проще инструмент - тем сложнее прострелить ногу. Что делать если инструмент некорректно выпарсил - этот список? Искать проблему в стороннем инструменте сложнее чем после себя.
     

  • 1.4, grayich (ok), 11:14, 13/03/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > позволяющая добиться выполнения кода с правами root в момент установки пакета, в случае контроля атакующим за за зеркалом репозитория или транзитным трафиком жертвы (например, при подключении пользователя через сетевой шлюз, VPN или беспроводную точку доступа, подконтрольные атакующему).

    после прочтения осталось ощущение, что ещё нужно полнолуние, без него не сработает.

     
     
  • 2.5, Аноним (5), 11:31, 13/03/2019 [^] [^^] [^^^] [ответить]  
  • +5 +/
    Ваш скепсис не в тему. Эта атака действительно проста и банальна, в случае, если вы имеет доступ к магистральной инфраструктуре. Тут ведь не всё разом должно срабоать, а что-нибудь одно.

    > момент установки пакета

    Что тут сложного? Мониторинг трафика пользователя 24/7.

    > в случае контроля атакующим за за зеркалом репозитория __или__!!!
    > контроля атакующим за транзитным трафиком жертвы
    > например, при подключении пользователя через сетевой шлюз __или__!!!
    > VPN
    > !!!__или__!!! беспроводную точку доступа, подконтрольные атакующему

    Целых три(четыре) вектора атаки. Большая часть владельцев впнов-контор склеит лапки, когда к ним обратятся спецслужбы. Сетевой шлюз? Любой пров может помочь сделать всё как надо (на пост-совке, в ЕС, в США, в Китае все провы зависимы от государства). Беспроводная точка доступа? Если проприетарная прошивка - производители фирмвейр дадут бэкдор. Короче если будет необходимость то юзера Арк Линукса легко возьмут за пятую точку.

     
     
  • 3.6, grayich (ok), 11:51, 13/03/2019 [^] [^^] [^^^] [ответить]  
  • +/
    имхо - для обычных юзверей нет смысла, а тому кому есть смысл.. тот ССЗБ если не имеет специальных процедур, проверок и т.п. по безопасности, да и арч в этом случае вряд ли будет.
     
  • 3.12, Аноним (12), 13:24, 13/03/2019 [^] [^^] [^^^] [ответить]  
  • –4 +/
    справедливости ради данная атака не существует сама по себе, чтобы она сработала необходимо чтобы сеть или один из узлов доставки обновления был бы уже скомпрометирован
    проще говоря мамкины хакеры будут изначально в пролете
     
     
  • 4.13, анонн (?), 13:56, 13/03/2019 [^] [^^] [^^^] [ответить]  
  • +7 +/
    > pacman
    > арч
    > проще говоря мамкины хакеры будут изначально в пролете

    да и «ворон ворону глаз не выклюеет»


     
     
  • 5.37, Аноним (12), 19:27, 13/03/2019 [^] [^^] [^^^] [ответить]  
  • –2 +/
    часть нити восстановлена Aнонимом

    // админ имей совесть, я тут обиженного лечу
    ...

    > Нет, это ты только что сам себе придумал.

    как скажешь, пациент всегда прав

    > То есть, как и предполагалось, "за арчик обидно, а возразить-то и нечего". Понятно.

    опять ты за свое ? кому и в чем мне нужно возразить ? да и главное зачем ? ты же все го лишь подорвался на словах о "мамкиных хакерах", хотя оно и не относилось конкретно к тебе, но ты решил нам тут доказать что "мамкины хакеры" это арчеводы и начал их тут гнобить, попутно записав меня в их ряды

    > Бегать по смежным форумам и рассказывать всем подряд о крутизне арча с его ого-го каким большим АУРом ("у нас в арче самый большой набор софта, завидуйте все! во!" (с) by archeod vulgaris) - прерогатива арчеводов...

    ого, как оно у тебя все запущенно, то есть весь твой булшит можно сказать детская травма полученная на одном из форумов посвященных арчу, сочувствую

     
     
  • 6.39, анонн (?), 19:42, 13/03/2019 [^] [^^] [^^^] [ответить]  
  • +3 +/
    > опять ты за свое ? кому и в чем мне нужно возразить

    Не знаю. Придумай сам, сам же оспорь придуманное. У тебя это очень неплохо получается ))
    > ? да и главное зачем ? ты же все го лишь
    > подорвался на словах о "мамкиных хакерах", хотя оно и не относилось
    > конкретно к тебе, но ты решил нам тут доказать что "мамкины
    > хакеры" это арчеводы и начал их тут гнобить, попутно записав меня в их ряды

    Да не, я лишь чутка поднабросил, приравняв мамкиных какиров и арчеводов.
    А подгорело, да еще нехило, почему-то у тебя. Интересно почему?
    > попутно записав меня в их ряды

    Самое интересное, что записался ты туда сам, ринувшись на защиту арчика.

    >> Бегать по смежным форумам и рассказывать всем подряд о крутизне арча с его ого-го каким большим АУРом ("у нас в арче самый большой набор софта, завидуйте все! во!" (с) by archeod vulgaris) - прерогатива арчеводов...
    > ого, как оно у тебя все запущенно, то есть весь твой булшит можно сказать детская травма полученная на одном из форумов посвященных арчу, сочувствую

    Т.е. как обычно - когда по теме сказать нечего, арчевод скатывается в ad-hominem. Почти сочувствую.


     
     
  • 7.42, Аноним (12), 20:14, 13/03/2019 [^] [^^] [^^^] [ответить]  
  • –2 +/
    > Не знаю. Придумай сам, сам же оспорь придуманное. У тебя это очень неплохо получается ))

    о, пошли отмазки, пока не очень, но старайся

    > Да не, я лишь чутка поднабросил, приравняв мамкиных какиров и арчеводов.

    молодец, и ? ты хотел кого-то этим унизить ?

    > А подгорело, да еще нехило, почему-то у тебя. Интересно почему?

    странно, я ж вроде никого и нигде не защищал, а только обратил внимания на твою скрытую арчефилию

    > Самое интересное, что записался ты туда сам, ринувшись на защиту арчика.

    линукс упаси, я лишь указал на то что уязвимость сама по себе не имеет значения если не скомпрометирован узел и ли сеть доставки что для "мамкиных хакеров"(тока не напрягайся опять) вряд ли будет по зубам, а ты тут решил подбросить, набросить, накатить и поведать нам между строк что у тебя травма из за того что арчеводы хвастаются своим большим АУРом

    > Т.е. как обычно - когда по теме сказать нечего, арчевод скатывается в ad-hominem. Почти сочувствую.

    кто бы говорил ) ты Ленина с бревном случайно не видел ?

     

  • 1.10, Аноним (10), 12:59, 13/03/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Вот под арм нет арча вроде как, весьма чувствительный минус
     
     
  • 2.11, Аноним (12), 13:12, 13/03/2019 [^] [^^] [^^^] [ответить]  
  • +4 +/
    archlinuxarm.org
     
     
  • 3.15, Аноним (10), 14:12, 13/03/2019 [^] [^^] [^^^] [ответить]  
  • +/
    О, таки есть порт, тогда топово, спасибо
     

  • 1.22, Аноним (22), 17:20, 13/03/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Ждём аналоги в pkg, да в emerge. Поискать чтоль.
     
     
  • 2.38, анонн (?), 19:35, 13/03/2019 [^] [^^] [^^^] [ответить]  
  • +/
    > Ждём аналоги в pkg, да в emerge. Поискать чтоль.

    дарю:



    pkg add [-IAfMq] <protocol>://<path>/<pkg-name> ...
    Currently supported protocols are FTP, HTTP and HTTPS.



     

  • 1.41, Аноним (41), 20:11, 13/03/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    >Пакетный менеджер pacman использует передаваемое в заголовке "Content-Disposition" значение для переименования полученного файла без должной проверки его корректности и без вырезания символов "../" из файлового пути.

    Это должно быть заботой HTTP-клиента

     
     
  • 2.44, X4asd (ok), 22:06, 13/03/2019 [^] [^^] [^^^] [ответить]  
  • +/
    в нём и ошибка
     

  • 1.46, AnonPlus (?), 20:53, 26/03/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    А вот я помню, что прямо тут на опеннете кто-то кричал, что люди, переводящие репозитории на HTTPS, делают вредное и ненужное дело, там же пакеты проверяются по цифровой подписи, а HTTPS создаёт накладные расходы.

    Где же теперь эти крикуны?

     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру