Нововведение Apple, которое позволяет прямо из мобильного браузера вызывать другие приложения, содержит неприятную уязвимость, из-за которой злоумышленник может творить на iPhone пользователя все, что угодно.
Apple некоторое время назад предложила специальный протокол URL Schemes, предназначенный для того, чтобы вставлять в веб-страницы, ориентированные на просмотр в мобильном Safari, ссылки специального рода. Эти ссылки позволяют открыть какое-либо приложение и заставить его выполнить какое-либо действие. Авторы могут сами создавать различные обработчики ссылок для своих приложений. Это достаточно удобно и существенно обогащает веб-страницы для мобильного Safari.
Как сообщает Sans.org, эти ссылки потенциально небезопасны. Во-первых, Safari позволяет загружать содержимое ссылок в iframe, иными словами, в обычном Вебе это самый простой способ показать содержимое одной веб-страницы внутри другой. В случае же когда количество типов обрабатываемых источников велико, при помощи iframe можно заставить веб-страницу при загрузке открывать другие программы и выполнять в них действия.
Неприятность для пользователя не только в том, что могут быть открыты программы, но и в том, как именно обрабатываются эти «расширенные» вызовы. iPhone не спрашивает у пользователя, хочет ли он его выполнить, а просто выполняет во всех случаях, кроме тех, когда страница пытается спровоцировать телефонный звонок. Если же она, например, хочет осуществить вызов Skype, ей никто препятствовать не станет. Пользователь начнет загружать веб-страницу, в этот момент откроется Skype и начнет звонить по какому-то номеру. Так как iOS теперь в некотором смысле многозадачна, загрузка веб-страницы при этом продолжится, и если там будут другие элементы, открывающие программы, последствия нетрудно вообразить.
Со стороны разработчиков приложений можно сделать крайне немногое: приложение не в состоянии понять, кто его вызвал - пользователь по своей воле или веб-страница. Значит, чтобы уберечься, им придется заставлять людей подтверждать каждое свое действие, что является катастрофой с точки зрения удобства. Единственный способ избежать неприятных последствий - это отказаться от поддержки своего приложения в URL Schemes и ждать действий со стороны Apple. Apple же может пойти двумя путями: запретить загрузку URL Schemes в iframe или позволить приложениям запрашивать согласие пользователя на запуск из Safari. Третий путь - оставить все как есть - сбрасывать со счетов нельзя, но на развитии новинки от Apple он скажется весьма плачевно.
Источник:
"Руформатор"
|