- PVSM.RU - https://www.pvsm.ru -
Изображение:finnsland [2], CC BY-SA 2.0 [3]
В механизме управления памятью операционных систем Linux, OpenBSD, NetBSD, FreeBSD и Solaris обнаружена [4] серьезная уязвимость, позволяющая осуществлять повышение привилегий до уровня суперпользователя и выполнять произвольный код. Проблема безопасности получила название Stack Clash.
Проблему обнаружили исследователи информационной безопасности из компании Qualys. Уязвимость была впервые обнаружена [5] в 2005 году, тогда же появилось исправление. Однако в 2010 году исследователи выяснили, что выпущенные патчи не полностью блокируют [6] возможность эксплуатации. Разработчики Linux вновь выпустили патч, однако оказалось, что защиту можно обойти.
Суть уязвимости заключается в том, что при смежном размещении стека и кучи не исключены ситуации, когда содержимое переполненной кучи может оказаться в области стека, или стек, наоборот, может переписать область кучи, если куча растет в сторону увеличения, а стек — в сторону уменьшения. Для предотвращения подобных ситуаций в Linux и других операционных системах используется защитная техника stack guard-page.
В ходе исследования эксперты выявили множественные уязвимости в реализации «сторожевой страницы» (guard-page) и выделили три возможных типа атак:
Исследователи подготовили набор PoC-эксплоитов для различных операционных систем. Для использования описанной проблемы безопасности необходим локальный доступ к компьютеру, однако специалисты не исключают наличия возможности удаленной эксплуатации, например, посредством HTTP-запросов или JavaScript.
Как сказано в отчете исследователей, они заранее оповестили разработчиков уязвимых операционных систем о найденных проблемах. В настоящий момент разрабатываются патчи, закрывающие уязвимость. Компания Red Hat уже опубликовала [7] бюллетень безопасности — однако описанные в нем способы защиты могут негативно сказываться на производительности системы. Эту проблему разработчики обещают устранить позднее.
По словам [8] исследователей, они проверяли наличие проблемы в операционных системах FreeBSD, NetBSD, OpenBSD, Solaris, а также популярных Linux-дистрибутивов Red Hat, SuSE, Debian и Ubuntu. Пользователям рекомендуется проверить наличие обновлений для своего дистрибутива. На данный момент неясно, подвержена ли уязвимости мобильная ОС Android.
В качестве временной меры до выхода патча для конкретной ОС ее пользователи могут изменить настройки опций RLIMIT_STACK и RLIMIT_AS [9] для локальных учетных записей и удаленных сервисов, понизив значения по-умолчанию. Однако этот способ не позволит полностью обезопасить себя — выбор слишком низких значений не позволит работать многим доверенным приложениям, а выбор средней величины позволить осуществить ряд атак (например, Stack Clash атаку на Sudo).
Автор: ptsecurity
Источник [10]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/linux/258320
Ссылки в тексте:
[1] Image: https://habrahabr.ru/company/pt/blog/331300/
[2] finnsland: https://www.flickr.com/photos/finnsland/5343883908/
[3] CC BY-SA 2.0: https://creativecommons.org/licenses/by-sa/2.0/
[4] обнаружена: https://blog.qualys.com/securitylabs/2017/06/19/the-stack-clash
[5] обнаружена: http://cansecwest.com/core05/memory_vulns_delalleau.pdf
[6] не полностью блокируют: http://www.invisiblethingslab.com/resources/misc-2010/xorg-large-memory-attacks.pdf
[7] опубликовала: https://access.redhat.com/security/vulnerabilities/stackguard
[8] словам: https://arstechnica.com/security/2017/06/12-year-old-security-hole-in-unix-based-oses-isnt-plugged-after-all/
[9] RLIMIT_STACK и RLIMIT_AS: https://linux.die.net/man/2/setrlimit
[10] Источник: https://habrahabr.ru/post/331300/
Нажмите здесь для печати.