Безопасность браузера — это применение интернет-безопасности к веб-браузерам с целью защиты сетевых данных и компьютерных систем от нарушений конфиденциальности или вредоносного ПО . Эксплойты безопасности браузеров часто используют JavaScript , иногда с межсайтовым скриптингом (XSS) [1] со вторичной полезной нагрузкой, использующей Adobe Flash . [2] Эксплойты безопасности также могут использовать уязвимости (дыры в безопасности), которые обычно используются во всех браузерах (включая Google Chrome , [3] Microsoft Internet Explorer , [4] Mozilla Firefox , [5] Opera , [6] и Safari. [7] ).
Веб-браузеры могут быть взломаны одним или несколькими из следующих способов:
Браузер может не знать о каких-либо нарушениях, указанных выше, и может показывать пользователю, что установлено безопасное соединение.
Всякий раз, когда браузер взаимодействует с веб-сайтом, веб-сайт в рамках этого взаимодействия собирает некоторую информацию о браузере (по крайней мере, для обработки форматирования доставляемой страницы). [10] Если вредоносный код был вставлен в содержимое веб-сайта или, в худшем случае, если этот веб-сайт был специально разработан для размещения вредоносного кода, то уязвимости, характерные для конкретного браузера, могут позволить этому вредоносному коду запускать процессы внутри приложение браузера непреднамеренным образом (и помните, что одним из фрагментов информации, которую веб-сайт собирает в результате взаимодействия с браузером, является личность браузера, что позволяет использовать определенные уязвимости). [11] Как только злоумышленник сможет запускать процессы на компьютере посетителя, использование известных уязвимостей безопасности может позволить злоумышленнику получить привилегированный доступ (если браузер еще не запущен с привилегированным доступом) к «зараженной» системе, чтобы для выполнения еще большего разнообразия вредоносных процессов и действий на компьютере или даже во всей сети жертвы. [12]
Нарушения безопасности веб-браузера обычно совершаются с целью обхода средств защиты для отображения всплывающей рекламы [13] сбора личной информации (PII) для интернет-маркетинга или кражи личных данных , отслеживания веб-сайтов или веб-аналитики о пользователе против его воли с использованием инструментов. такие как веб-ошибки , кликджекинг , лайкджекинг (где целью является кнопка «Нравится» Facebook ) , [14] [15] [16] [17] файлы cookie HTTP , файлы cookie зомби или файлы cookie Flash (локальные общие объекты или LSO); [2] установка рекламного ПО , вирусов , шпионских программ , таких как троянские кони (для получения доступа к персональным компьютерам пользователей путем взлома ) или других вредоносных программ , включая кражу онлайн-банкинга с использованием атак «человек в браузере» .
Углубленное изучение уязвимостей в веб-браузере Chromium показывает, что неверная проверка ввода (CWE-20) и неправильный контроль доступа (CWE-284) являются наиболее распространенными основными причинами уязвимостей безопасности. [18] Кроме того, среди уязвимостей, рассмотренных на момент проведения данного исследования, 106 уязвимостей возникли в Chromium из-за повторного использования или импорта уязвимых версий сторонних библиотек.
Уязвимости в самом программном обеспечении веб-браузера можно свести к минимуму, регулярно обновляя программное обеспечение браузера, [19], но этого будет недостаточно, если базовая операционная система скомпрометирована, например, руткитом. [20] Некоторые подкомпоненты браузеров, такие как сценарии, надстройки и файлы cookie [21] [22] [23], особенно уязвимы (« проблема запутанного депутата ») и их также необходимо решать.
Следуя принципу глубокоэшелонированной защиты , полностью исправленного и правильно настроенного браузера может быть недостаточно для предотвращения возникновения проблем безопасности, связанных с браузером. Например, руткит может перехватывать нажатия клавиш, когда кто-то заходит на банковский веб-сайт, или осуществлять атаку «человек посередине», изменяя сетевой трафик, входящий и исходящий от веб-браузера. Перехват DNS или подмена DNS могут использоваться для возврата ложных срабатываний для неправильно введенных имен веб-сайтов или для искажения результатов поиска в популярных поисковых системах. Вредоносное ПО, такое как RSPlug, просто изменяет конфигурацию системы, чтобы указать на мошеннические DNS-серверы.
Браузеры могут использовать более безопасные методы сетевого взаимодействия , чтобы предотвратить некоторые из этих атак:
Защита периметра, обычно с помощью брандмауэров и использования фильтрующих прокси-серверов , которые блокируют вредоносные веб-сайты и выполняют антивирусное сканирование любых загрузок файлов, обычно реализуется в качестве передовой практики в крупных организациях для блокировки вредоносного сетевого трафика до того, как он достигнет браузера.
Тема безопасности браузеров разрослась до такой степени, что породила создание целых организаций, таких как The Browser Exploitation Framework Project [24], создающих платформы для сбора инструментов для взлома безопасности браузеров, якобы для проверки браузеров и сетевых систем на наличие уязвимостей. .
Хотя плагины и расширения браузера сами по себе не являются частью браузера, они расширяют поверхность атаки , раскрывая уязвимости в Adobe Flash Player , Adobe (Acrobat) Reader , плагине Java и ActiveX , которые обычно используются. Исследователи [25] тщательно изучили архитектуру безопасности различных веб-браузеров, в частности тех, которые полагаются на конструкцию plug-and-play. Это исследование выявило 16 распространенных типов уязвимостей и 19 потенциальных способов их устранения. Вредоносное ПО также может быть реализовано как расширение браузера, например, вспомогательный объект браузера в случае Internet Explorer. [26] В различных других эксплойтах веб-сайты выглядели аутентичными и включали мошеннические всплывающие окна «обновить Adobe Flash», созданные в качестве визуальных подсказок для загрузки вредоносных программ вместо них. [27] Некоторые браузеры, такие как Google Chrome и Mozilla Firefox, могут блокировать или предупреждать пользователей о небезопасных плагинах.
Исследование, проведенное в августе 2009 года Сетью исследований социальных наук, показало, что 50% веб-сайтов, использующих Flash, также используют файлы cookie Flash, однако политики конфиденциальности редко раскрывают их, а пользовательские средства контроля предпочтений конфиденциальности отсутствовали. [28] Функции удаления кеша и истории большинства браузеров не влияют на запись локальных общих объектов Flash Player в собственный кеш, а сообщество пользователей гораздо меньше осведомлено о существовании и функциях файлов cookie Flash, чем файлов cookie HTTP. [29] Таким образом, пользователи, удалив файлы cookie HTTP и очистив файлы истории браузера и кеши, могут полагать, что они удалили все данные отслеживания со своих компьютеров, хотя на самом деле история посещений Flash остается. Помимо удаления вручную, надстройка BetterPrivacy для Firefox может удалять Flash-cookie. [2] Adblock Plus можно использовать для фильтрации конкретных угроз [13], а Flashblock можно использовать для предоставления возможности перед разрешением контента на сайтах, которым в противном случае доверяют. [30]
Чарли Миллер рекомендовал «не устанавливать Flash» [31] на конференции по компьютерной безопасности CanSecWest. Несколько других экспертов по безопасности также рекомендуют либо не устанавливать Adobe Flash Player, либо заблокировать его. [32]
Содержимое веб-страницы является произвольным и контролируется лицом, владеющим доменом, имя которого отображается в адресной строке. Если используется HTTPS , то используется шифрование, чтобы защитить злоумышленников, имеющих доступ к сети, от изменения содержимого страницы в пути. Когда на веб-странице отображается поле пароля, пользователь должен посмотреть на адресную строку, чтобы определить, является ли доменное имя в адресной строке правильным местом для отправки пароля. [33] Например, в системе единого входа Google (используемой, например, на youtube.com) пользователь всегда должен проверять, что в адресной строке написано «https://accounts.google.com», прежде чем вводить свой пароль.
Нескомпрометированный браузер гарантирует корректность адресной строки. Эта гарантия является одной из причин, почему браузеры обычно отображают предупреждение при входе в полноэкранный режим поверх того места, где обычно находится адресная строка, чтобы полноэкранный веб-сайт не мог создать поддельный пользовательский интерфейс браузера с поддельной адресной строкой. [34]
LiveCD , на которых работает операционная система из источника, недоступного для записи, обычно поставляются с веб-браузерами как часть образа по умолчанию. Если исходный образ LiveCD не содержит вредоносных программ, все используемое программное обеспечение, включая веб-браузер, будет загружаться без вредоносных программ при каждой загрузке образа LiveCD.
Просмотр Интернета с использованием учетной записи пользователя с наименьшими привилегиями (т. е. без прав администратора) ограничивает возможность взлома безопасности в веб-браузере от компрометации всей операционной системы. [35]
Internet Explorer 4 и более поздние версии позволяют различными способами вносить в черный список [36] [37] [38] и разрешенный список [39] [40] элементы управления ActiveX , надстройки и расширения браузера.
В Internet Explorer 7 добавлен «защищенный режим» — технология, которая повышает безопасность браузера за счет применения функции «песочницы» безопасности Windows Vista , называемой «Обязательный контроль целостности» . [41] Google Chrome предоставляет «песочницу» , позволяющую ограничить доступ к веб-страницам операционной системы. [42]
Сайты с подозрением на вредоносное ПО, о которых было сообщено в Google [43] и подтверждено Google, в некоторых браузерах помечаются как содержащие вредоносное ПО. [44]
Существуют сторонние расширения и плагины, позволяющие усилить защиту даже новейших браузеров [45] , а некоторые — для старых браузеров и операционных систем. Программное обеспечение на основе белого списка , такое как NoScript, может блокировать JavaScript и Adobe Flash, которые используются для большинства атак на конфиденциальность, позволяя пользователям выбирать только те сайты, которые, по их мнению, безопасны. AdBlock Plus также использует подписку на правила фильтрации рекламы в белом списке , хотя как само программное обеспечение, так и Разработчики списков фильтрации вызвали споры из-за того, что по умолчанию некоторым сайтам разрешено проходить через предустановленные фильтры. [46] US -CERT рекомендует блокировать Flash с помощью NoScript . [47]
Современные веб-браузеры подвергаются обширному фаззингу для выявления уязвимостей. Код Chromium Google Chrome постоянно анализируется командой безопасности Chrome с помощью 15 000 ядер . [48] Для Microsoft Edge и Internet Explorer во время разработки продукта Microsoft провела нечеткое тестирование с использованием 670 машино-лет, создав более 400 миллиардов манипуляций с DOM из 1 миллиарда HTML-файлов. [49] [48]