Повышение привилегий - Privilege escalation
Повышение привилегий это акт эксплуатации ошибка, конструктивный недостаток или надзор за конфигурацией в Операционная система или же программное приложение получить повышенный доступ к Ресурсы которые обычно защищены от приложения или Пользователь. В результате приложение с большим количеством привилегии чем предполагалось разработчик приложений или же Системный администратор может выполнять несанкционированный действия.
Фон
Большинство компьютерных систем предназначены для использования с несколькими учетными записями пользователей, каждая из которых имеет возможности, известные как привилегии. Общие привилегии включают просмотр и редактирование файлов или изменение системных файлов.
Повышение привилегий означает, что пользователь получает привилегии, на которые он не имеет права. Эти привилегии можно использовать для удаления файлов, просмотра личной информации или установки нежелательных программ, таких как вирусы. Обычно это происходит, когда в системе есть ошибка который позволяет обойти безопасность или, в качестве альтернативы, имеет ошибочные проектные предположения о том, как он будет использоваться. Повышение привилегий происходит в двух формах:
- Вертикальное повышение привилегий, также известный как повышение привилегий, где пользователь или приложение с более низкими привилегиями получает доступ к функциям или контенту, зарезервированным для пользователей или приложений с более высокими привилегиями (например, пользователи Интернет-банка могут получить доступ к функциям администрирования сайта или пароль для смартфона может быть обойден).
- Горизонтальное повышение привилегий, где обычный пользователь получает доступ к функциям или контенту, зарезервированным для других обычных пользователей (например, пользователь интернет-банка A получает доступ к счету в интернет-банке пользователя B)
Вертикальный
Этот тип привилегия эскалация происходит, когда пользователь или процесс могут получить более высокий уровень доступа, чем предполагал администратор или разработчик системы, возможно, путем выполнения уровень ядра операции.
Примеры
В некоторых случаях приложение с высокими привилегиями предполагает, что ему будет предоставлен только ввод, соответствующий его спецификации интерфейса, поэтому не проверяет этот ввод. Затем злоумышленник может воспользоваться этим предположением, чтобы запустить неавторизованный код с привилегиями приложения:
- Немного Службы Windows настроены для работы под учетной записью пользователя локальной системы. Уязвимость, такая как переполнение буфера может использоваться для выполнения произвольного кода с повышенными привилегиями до локальной системы. В качестве альтернативы системная служба, которая олицетворяет меньшего пользователя, может повысить привилегии этого пользователя, если ошибки не обрабатываются правильно во время олицетворения пользователя (например, если пользователь ввел злонамеренный обработчик ошибок )
- В некоторых устаревших версиях Майкрософт Виндоус операционная система, Все пользователи хранитель экрана работает под учетной записью Local System - любой учетной записью, которая может заменить текущую заставку двоичный в файловой системе или Реестр поэтому может повышать привилегии.
- В некоторых версиях Ядро Linux можно было написать программу, которая установила бы ее текущий каталог на
/etc/cron.d
просим дамп ядра выполняться в случае сбоя, а затем иметь сам убит другим процессом. Файл дампа ядра был бы помещен в текущий каталог программы, то есть/etc/cron.d
, иcron
обработал бы его как текстовый файл, инструктирующий его запускать программы по расписанию. Поскольку содержимое файла находится под контролем злоумышленника, злоумышленник сможет выполнить любую программу с корень привилегии. - Межзональный сценарий - это тип атаки с повышением привилегий, при которой веб-сайт подрывает модель безопасности веб-браузеров, позволяя запускать вредоносный код на клиентских компьютерах.
- Бывают также ситуации, когда приложение может использовать другие службы с высокими привилегиями и имеет неверные предположения о том, как клиент может управлять использованием этих служб. Приложение, которое может выполнять Командная строка или же ракушка команды могут иметь Впрыск оболочки уязвимость, если он использует недопустимый ввод как часть выполненной команды. Тогда злоумышленник сможет запускать системные команды, используя привилегии приложения.
- Инструменты Техаса калькуляторы (особенно ТИ-85 и ТИ-82 ) изначально были разработаны для использования только интерпретируемых программ, написанных на диалектах TI-BASIC; однако после того, как пользователи обнаружили ошибки, которые можно было использовать, чтобы позволить встроенным Z-80 код для запуска на оборудовании калькулятора, TI выпустила программные данные для поддержки сторонних разработок. (Это не коснулось РУКА -основан TI-Nspire, для которых используются джейлбрейки Ndless были обнаружены, но Texas Instruments все еще активно борется с ними.)
- Некоторые версии iPhone разрешить неавторизованному пользователю доступ к телефону, когда он заблокирован.[1]
Взлом
А побег из тюрьмы акт или инструмент, использованный для совершения акта прорыва chroot или же тюрьма в UNIX-подобный операционные системы[2] или в обход управление цифровыми правами (DRM). В первом случае это позволяет пользователю видеть файлы за пределами файловая система которые администратор намеревается сделать доступными для рассматриваемого приложения или пользователя. В контексте DRM это позволяет пользователю запускать произвольно определенный код на устройствах с DRM, а также преодолевать ограничения, подобные chroot. Термин возник с iPhone /iOS сообщество взломщиков, а также использовалось как термин для PlayStation портативный взлом; эти устройства неоднократно подвергались джейлбрейку, что позволяло запускать произвольный код, и иногда эти джейлбрейки были отключены обновлениями поставщика.
iOS системы, включая iPhone, iPad, и Ipod Touch были подвержены взлом iOS усилий с момента их выпуска и продолжаются с каждым обновлением прошивки.[3][4] Инструменты для взлома iOS включают возможность установки Cydia или Sileo, сторонние альтернативы Магазин приложений, как способ найти и установить системные настройки и двоичные файлы. Чтобы предотвратить взлом iOS, Apple сделала устройство загрузочное ПЗУ выполнять проверки для SHSH капли для запрета загрузки пользовательских ядер и предотвращения перехода на более раннюю версию прошивки с возможностью взлома. При «непривязанном» побеге из тюрьмы среда iBoot изменяется, чтобы выполнить эксплойт загрузочного ПЗУ и разрешить отправку исправленного загрузчика низкого уровня или взломать ядро для отправки взломанного ядра после проверки SHSH.
Аналогичный метод взлома существует для Платформа S60 смартфоны, где такие утилиты, как HelloOX, позволяют выполнение неподписанного кода и полный доступ к системным файлам.[5][6] или отредактированная прошивка (аналогичная взломанной прошивке M33, используемой для PlayStation портативный )[7] обойти ограничения на беззнаковый код. Nokia с тех пор выпустила обновления для пресечения несанкционированного взлома, аналогично Apple.
В случае с игровыми консолями для выполнения взлома часто используется домашние игры. В 2011, Sony, при поддержке юридической фирмы Килпатрик Стоктон, подал в суд на 21-летнего Джордж Хотц и сотрудники группы fail0verflow за взлом PlayStation 3 (видеть Sony Computer Entertainment America против Джорджа Хотца и Побег из тюрьмы PlayStation ).
Android
Телефоны Android могут быть официально рутированы либо через процесс, контролируемый производителями, либо с помощью эксплойта для получения root, либо путем прошивки пользовательского восстановления. Производители разрешают рутирование через процесс, который они контролируют, в то время как некоторые позволяют рутировать телефон, просто нажимая определенные комбинации клавиш во время загрузки или другими способами самоуправления. Использование метода производителя почти всегда приводит к аннулированию гарантии безвозвратно, даже если устройство отключено и перепрошено. Программные эксплойты обычно либо нацелены на процесс корневого уровня, который доступен пользователю, используя эксплойт, специфичный для ядра телефона, либо используя известный эксплойт Android, который был исправлен в более новых версиях; не обновляя телефон или намеренно понижая версию.
Стратегии смягчения последствий
Операционные системы и пользователи могут использовать следующие стратегии, чтобы снизить риск повышения привилегий:
- Предотвращение выполнения данных
- Рандомизация разметки адресного пространства (чтобы усложнить переполнение буфера для выполнения привилегированных инструкций по известным адресам в памяти)
- Запуск приложений с наименьшая привилегия (например, запустив Internet Explorer с администратором SID отключен в процессе жетон ), чтобы уменьшить возможность переполнения буфера подвиги злоупотреблять привилегиями повышенного пользователя.
- Требование наличия цифровой подписи для кода режима ядра.
- Патчинг
- Использование компиляторы переполнение буфера ловушки[8]
- Шифрование программного обеспечения и / или прошивка составные части.
- Использование операционной системы с обязательным контролем доступа (MAC), например SELinux[9]
Горизонтальный
Горизонтальное повышение привилегий происходит, когда приложение позволяет злоумышленнику получить доступ к Ресурсы которые обычно были бы защищены от приложения или Пользователь. В результате приложение выполняет действия с одним и тем же пользователем, но с другим контекстом безопасности, чем предполагалось разработчик приложений или же Системный администратор; по сути, это ограниченная форма повышения привилегий (в частности, несанкционированное предположение о возможности выдавать себя за других пользователей).
Примеры
Эта проблема часто возникает в веб-приложения. Рассмотрим следующий пример:
- Пользователь A имеет доступ к своему собственному банковскому счету в приложении интернет-банка.
- Пользователь Б имеет доступ к своему собственному банковскому счету в том же приложении интернет-банка.
- Уязвимость возникает, когда пользователь A может получить доступ к банковскому счету пользователя B путем выполнения какого-либо вредоносного действия.
Эта вредоносная деятельность может быть возможна из-за общих недостатков или уязвимостей веб-приложений.
Возможные уязвимости веб-приложений или ситуации, которые могут привести к этому состоянию, включают:
- Предсказуемый идентификатор сессии находится в пользователе HTTP cookie
- Фиксация сеанса
- Межсайтовый скриптинг
- Легко догадаться пароли
- Кража или угон сеансовые куки
- Регистрация нажатия клавиш
Смотрите также
- Защитное программирование
- Взлом бытовой электроники
- Незаконный номер
- Принцип наименьших привилегий
- Отзыв привилегии (вычисления)
- Разделение привилегий
- Получение root-прав (ОС Android)
- Молоток гребной
Рекомендации
- ^ Таймур Асад (27 октября 2010 г.). «Apple признает недостаток безопасности iOS 4.1. Исправит его в ноябре с выпуском iOS 4.2». RedmondPie.
- ^ Сайрус Пейкари; Антон Чувакин (2004). Воин безопасности: знай своего врага. "O'Reilly Media, Inc.". п.304. ISBN 978-0-596-55239-8.
- ^ Джеймс Кинтана Пирс (2007-09-27), Несогласие Apple с Orange и хакерами iPhone, payContent.org, заархивировано с оригинал в 2012-07-29, получено 2011-11-25
- ^ Отчеты: следующее обновление iPhone сломает сторонние приложения, разблокирует бюст ComputerWorld на v1.1.3
- ^ Phat ^ Trance (16 февраля 2010 г.). "Объявление: Форум закрыт на сохранение". dailymobile.se. Архивировано из оригинал 3 марта 2009 г.. Получено 30 августа, 2016.
Просто хотел сообщить вам, что форум не работает. Он вернется в онлайн через день или около того (я как бы испортил файлы конфигурации и мне нужно восстановить однодневную резервную копию, поэтому я подумал, почему бы не обновить всю серверную платформу)
- ^ HelloOX 1.03: один шаг для взлома Symbian S60 3-е изд. телефонов, и для Nokia 5800 XpressMusic тоже
- ^ Обход подписанных Symbian и установка неподписанных мидлетов SISX / J2ME на Nokia S60 v3 с полными системными разрешениями
- ^ «Microsoft сводит к минимуму угрозу переполнения буфера, создает надежные приложения». Microsoft. Сентябрь 2005 г.. Получено 2008-08-04.[мертвая ссылка ]
- ^ Смолли, Стивен. «Создание безопасной основы для мобильных устройств» (PDF). Получено 7 марта 2014.