Рекомендация Debian по безопасности
DSA-3628-1 perl -- обновление безопасности
- Дата сообщения:
- 25.07.2016
- Затронутые пакеты:
- perl
- Уязвим:
- Да
- Ссылки на базы данных по безопасности:
- В системе отслеживания ошибок Debian: Ошибка 829578.
В каталоге Mitre CVE: CVE-2016-1238, CVE-2016-6185. - Более подробная информация:
-
В реализации языка программирования Perl были обнаружены многочисленные уязвимости. Проект Common Vulnerabilities and Exposures определяет следующие проблемы:
- CVE-2016-1238
Джон Лайтси и Тодд Риналдо сообщили, что вероятностная загрузка опциональных модулей может приводить к тому, что многие программы ненамеренно загружают код из текущего рабочего каталога (который может быть изменён на другой каталог без ведома пользователя), что потенциально приводит к повышению привилегий и уже было продемонстрировано в Debian определённой комбинацией установленных пакетов.
Эта проблема связана с загрузкой Perl модулей из массива включённого каталога ("@INC"), в котором последним элементом является текущий каталог ("."). Это означает, что когда
perl
собирается загрузить модуль (во время первой компиляции или во время ленивой загрузки модуля во время исполнения), perl ищет этот модуль в текущем каталоге в самом конце, поскольку '.' является последним включённым каталогом в массиве включённых каталогов, среди которых производится поиск. Проблема касается требуемых библиотек, которые находятся в ".", но не установлены каким-либо другим способом.В данном обновлении несколько модулей, о которых известно, что они подвержены данной уязвимости, изменены так, чтобы они не загружали модули из текущего каталога.
Кроме того, данное обновление позволяет настраивать удаление "." из @INC в /etc/perl/sitecustomize.pl на период перехода. Рекомендуется включить эту настройку в том случае, если вы оценили возможную поломку конкретного узла. О проблемах в пакетах, предоставляемых в Debian, которые происходят из-за перехода к удалению '.' из @INC, следует сообщать сопровождающим Perl по адресу perl@packages.debian.org .
Планируется по возможности перейти по умолчанию на удаление '.' из @INC в следующих обновлениях perl в редакции выпуска, и в любом случае такой переход будет осуществлён в готовящемся стабильном выпуске Debian 9 (stretch).
- CVE-2016-6185
Было обнаружено, что XSLoader, базовый модуль Perl для динамической загрузки C-библиотек в Perl-код, может загружать разделяемую библиотеку из неверного места. XSLoader использует инфорацию caller() для определения места для загрузки файла .so. Эта информация может быть неверной, если XSLoader::load() вызывается в коде исполнения строки. Злоумышленник может использовать эту уязвимость для выполнения произвольного кода.
В стабильном выпуске (jessie) эти проблемы были исправлены в версии 5.20.2-3+deb8u6. Кроме того, данное обновление включает в себя следующие обновлённые пакеты для решения уязвимостей с загрузкой модулей, связанных с CVE-2016-1238, либо для решения ошибок сборки, возникающих при удалении '.' из @INC:
- cdbs 0.4.130+deb8u1
- debhelper 9.20150101+deb8u2
- devscripts 2.15.3+deb8u12
- exim4 4.84.2-2+deb8u12
- libintl-perl 1.23-1+deb8u12
- libmime-charset-perl 1.011.1-1+deb8u22
- libmime-encwords-perl 1.014.3-1+deb8u12
- libmodule-build-perl 0.421000-2+deb8u12
- libnet-dns-perl 0.81-2+deb8u12
- libsys-syslog-perl 0.33-1+deb8u12
- libunicode-linebreak-perl 0.0.20140601-2+deb8u22
Рекомендуется обновить пакеты perl.
- CVE-2016-1238