Разделяй и властвуй
АрхивИз журнала "Компьютерра"Безопасность веб-браузеров давно стала главной причиной головной боли для их разработчиков. Пока они устраняют известные проблемы, взломщики уже эксплуатируют свежие находки. Впрочем, свет в конце тоннеля есть.
Безопасность веб-браузеров давно стала главной причиной головной боли для их разработчиков. В каждом современном приложении подобного рода есть уязвимости, которые могут быть использованы для несанкционированного доступа к данным пользователя. К десяткам дыр в самих браузерах добавляются сотни опасных ошибок в бесчисленных плагинах. Пока девелоперы устраняют известные проблемы, взломщики уже эксплуатируют свежие находки - и так без конца. Впрочем, свет в конце тоннеля забрезжил: группа американских исследователей из Иллинойского университета (University of Illinois at Urbana-Champaign) готовит к выпуску экспериментальный веб-браузер, построенный с нуля с прицелом на информационную безопасность и нареченный Opus Palladianum (OP; название одной из техник художественной мозаики - и реверанс в сторону первого браузера Mosaic).
Идея, положенная в основу браузера, многим покажется крамольной. По мнению создателей, Opus Palladianum, задуманный как приложение для работы со статичными документами, сегодня сам превратился в платформу, на которой исполняются разнотипные приложения (почтовые клиенты, текстовые редакторы и т. п.). Как следствие, в результате одной успешной атаки злоумышленника под угрозой оказываются сразу все данные пользователя. Решить проблему можно лишь перекроив порочную архитектуру, что и намерены сделать авторы OP.
Принципы, на которых выстроен Opus Palladianum, очевидно позаимствованы из микроядерной архитектуры операционных систем. OP представляет собой несколько сравнительно простых, обособленных компонентов, взаимодействующих при посредничестве микроядра. Функциональность составных частей и все сообщения, которыми они обмениваются между собой, четко сформулированы. Всего в OP предусмотрено пять компонентов, каждый из которых отвечает за свой участок: работу с сетью, хранение данных, общение с пользователем, взаимодействие с операционной системой и, наконец, обработку веб-контента. Каждый компонент исполняется в виде отдельного процесса, изолированного от других приложений и ОС с помощью специальных средств операционной системы (в настоящее время OP работает в Linux и использует security-инструментарий SELinux). Однако веб-компонент сложнее прочих: каждый раз, когда пользователь открывает новую страничку, браузерное ядро запускает новую, независимую от соседних копию веб-компонента, ограничивая таким образом последствия возможного проникновения. Эта же особенность уменьшает вред от потенциально дырявого плагина, который может стать целью злоумышленника. В целом модульная архитектура с обособленными частями способна гарантировать, что в худшем случае пользователь рискует лишь информацией, с которой он работал в скомпрометированном окне. Ни браузер, ни тем более операционная система взломщику и вирусам недоступны.
Помимо архитектурных особенностей, Opus Palladianum содержит несколько долгожданных инноваций, призванных помочь пользователю контролировать происходящее во время веб-серфинга. Так, специальный алгоритм следит за тем, чтобы в адресной строке браузера всегда отображался действительный адрес текущей странички, что серьезно осложнит задачу фишерам. А на случай успешного взлома OP ведет запись всех операций, так что впоследствии нетрудно установить, посещение какого именно сайта привело к нарушению защиты.
Прототип Opus Palladianum уже готов. В качестве основы для веб-движка в нем используется свободный KHTML. Предварительные тесты показали, что по скорости OP сопоставим с браузером Firefox. Научному сообществу и, вероятно, публике, новинку предъявят на майской конференции IEEE по вопросам ИТ-безопасности. Впоследствии создатели уникального браузера планируют опубликовать исходные тексты своего детища под свободной лицензией и с помощью общественности перенести OP с KHTML на более совершенный движок WebKit (основа браузера Safari).