stringtranslate.com

Запутанная проблема депутата

В информационной безопасности сбитый с толку заместитель — это компьютерная программа , которую обманывает другая программа (с меньшими привилегиями или меньшими правами), заставляя ее злоупотреблять своими полномочиями в системе. Это особый тип повышения привилегий . [1] Проблема сбитого с толку заместителя часто приводится в качестве примера того, почему важна безопасность на основе возможностей .

Системы полномочий защищают от проблемы запутанного заместителя, тогда как системы, основанные на списках контроля доступа, этого не делают. [2]

Пример

В оригинальном примере сбитого с толку депутата [3] была программа -компилятор, предоставленная на коммерческом сервисе разделения времени . Пользователи могли запустить компилятор и опционально указать имя файла, куда он будет записывать отладочный вывод, и компилятор мог бы записывать в этот файл, если бы у пользователя было разрешение на запись туда.

Компилятор также собирал статистику об использовании языковых возможностей. Эта статистика хранилась в файле с именем "(SYSX)STAT" в каталоге "SYSX". Чтобы сделать это возможным, программе компилятора было предоставлено разрешение на запись в файлы в SYSX.

Но в SYSX были и другие файлы: в частности, информация о выставлении счетов системы хранилась в файле "(SYSX)BILL". Пользователь запустил компилятор и назвал "(SYSX)BILL" в качестве желаемого отладочного выходного файла. [ необходима цитата ]

Это привело к проблеме с запутанным заместителем. Компилятор сделал запрос к операционной системе на открытие (SYSX)BILL. Несмотря на то, что у пользователя не было доступа к этому файлу, компилятор имел его, поэтому открытие прошло успешно. Компилятор записал вывод компиляции в файл (здесь "(SYSX)BILL") как обычно, перезаписав его, и информация о выставлении счетов была уничтожена.

Смущенный депутат

В этом примере программа-компилятор является заместителем, поскольку она действует по запросу пользователя. Программа рассматривается как «запутанная», поскольку ее обманом заставили перезаписать системный файл выставления счетов.

Всякий раз, когда программа пытается получить доступ к файлу, операционной системе необходимо знать две вещи: какой файл запрашивает программа, и есть ли у программы разрешение на доступ к файлу. В этом примере файл обозначен своим именем, «(SYSX)BILL». Программа получает имя файла от пользователя, но не знает, есть ли у пользователя разрешение на запись файла. Когда программа открывает файл, система использует разрешение программы, а не пользователя. Когда имя файла передавалось от пользователя программе, разрешение не передавалось вместе с ним; разрешение было увеличено системой молча и автоматически.

Для атаки не обязательно, чтобы файл биллинга был обозначен именем, представленным в виде строки. Существенными моментами являются следующие:

Другие примеры

Типичный сбитый с толку заместитель Барни Файф

Подделка межсайтовых запросов (CSRF) — это пример атаки confused substitute substitute, которая использует веб-браузер для выполнения чувствительных действий против веб-приложения. Распространенная форма этой атаки происходит, когда веб-приложение использует cookie для аутентификации всех запросов, передаваемых браузером. Используя JavaScript , злоумышленник может заставить браузер передавать аутентифицированные HTTP- запросы.

Компьютерный червь Samy использовал межсайтовый скриптинг (XSS), чтобы превратить аутентифицированную сессию браузера MySpace в запутавшегося заместителя. Используя XSS, червь заставил браузер опубликовать исполняемую копию червя в виде сообщения MySpace, которое затем просматривалось и выполнялось друзьями зараженного пользователя.

Clickjacking — это атака, в которой пользователь действует как сбитый с толку заместитель. В этой атаке пользователь думает, что он безвредно просматривает веб-сайт (веб-сайт, контролируемый злоумышленником), но на самом деле его обманывают, заставляя выполнять чувствительные действия на другом веб-сайте. [4]

Атака FTP Bounce может позволить злоумышленнику подключиться косвенно к TCP- портам, к которым у его компьютера нет доступа, используя удаленный FTP- сервер в качестве запутанного заместителя.

Другой пример относится к программному обеспечению персонального брандмауэра . Оно может ограничивать доступ в Интернет для определенных приложений. Некоторые приложения обходят это, запуская браузер с инструкциями для доступа к определенному URL-адресу. Браузер имеет право открывать сетевое соединение, даже если приложение этого не делает. Программное обеспечение брандмауэра может попытаться решить эту проблему, предлагая пользователю в случаях, когда одна программа запускает другую, которая затем обращается к сети. Однако у пользователя часто нет достаточной информации, чтобы определить, является ли такой доступ законным — ложные срабатывания являются обычным явлением, и существует значительный риск того, что даже опытные пользователи привыкнут нажимать «ОК» в ответ на эти запросы. [5]

Не каждая программа, которая злоупотребляет полномочиями, является запутанным заместителем. Иногда злоупотребление полномочиями является просто результатом ошибки программы. Проблема запутанного заместителя возникает, когда обозначение объекта передается из одной программы в другую, и связанное с ним разрешение изменяется непреднамеренно, без явных действий любой из сторон. Это коварно, потому что ни одна из сторон не сделала ничего явного для изменения полномочий.

Решения

В некоторых системах можно попросить операционную систему открыть файл, используя разрешения другого клиента. Это решение имеет некоторые недостатки:

Самый простой способ решить проблему запутанного заместителя — это связать вместе обозначение объекта и разрешение на доступ к этому объекту. Это именно то, что такое возможность . [ необходима цитата ]

Используя безопасность возможностей в примере компилятора, клиент передаст серверу возможность для выходного файла, например, дескриптор файла , а не имя файла. Поскольку у него нет возможности для файла выставления счетов, он не может назначить этот файл для вывода. В примере подделки межсайтового запроса URL, предоставленный "межсайтовым" сайтом, будет включать свои собственные полномочия, независимые от полномочий клиента веб-браузера.

Смотрите также

Ссылки

  1. ^ У, Цзяньлян; Цуй, Тинтин; Бань, Тао; Го, Шаньцин; Цуй, Личжэнь (10.09.2015). «PaddyFrog: систематическое обнаружение уязвимости confused substitute в приложениях Android: PaddyFrog: систематическое обнаружение уязвимости confused substitute в приложениях Android». Security and Communication Networks . 8 (13): 2338–2349. doi :10.1002/sec.1179.
  2. ^ "ACL-списки не работают". sourceforge.net .
  3. ^ "Запутавшийся депутат (или почему способности могли быть изобретены)". Архивировано из оригинала 2003-12-05 . Получено 2003-12-31 .
  4. ^ "clickjacking: Смущенный помощник снова в седле!". sourceforge.net .
  5. ^ Альфред Шписсенс: Модели безопасного сотрудничества, докторская диссертация. http://www.evoluware.eu/fsp_thesis.pdf Раздел 8.1.5

Внешние ссылки