Инфраструктуры открытых ключей - [5]
Уровень приложений
Уровень приложений, вероятно, наиболее сложен для защиты и обеспечения доверия, так как частота использования программных утилит здесь намного выше, чем на любом другом уровне, и, следовательно, потенциально выше риск безопасности. Компрометация уровня приложений чаще всего связана с нехваткой ресурсов памяти и невозможностью управлять данными пользователей, а также с избыточностью функций приложений. Ограниченность ресурсов памяти приводит к переполнению буфера или непреднамеренному принятию фальсифицированных данных, что обычно происходит в результате неадекватной фильтрации пользовательских данных при вводе или попытке получить доступ к большему объему памяти, чем имеется фактически. Для защиты уровня приложений используются:
* программные средства (например, сканирование или блокирование вирусов);
* программное обеспечение превентивного действия (обнаружение уязвимостей или тестирование);
* просмотр кодов приложений вручную с целью выявления возможных проблем безопасности.
Уровень приложений является наиболее сложным для защиты еще и потому, что наиболее доступен. Например, любой, кто может получить доступ к web-сайту компании, занимающейся электронной торговлей, немедленно получает доступ к приложению ( Active X ), которое позволяет выполнить транзакцию [105]. Получить доступ на физическом или системном уровне труднее. Важно понимать, что компрометация одного уровня ведет к компрометации другого. Часто системный уровень атакуется, а затем используется для доступа к данным приложения. Например, злоумышленник может атаковать ОС и использовать бреши в ней для атаки на размещаемые в уровне приложений данные клиентов с целью получения информации о номерах кредитных карт.
Цель и сервисы инфраструктуры безопасности
Главная цель инфраструктуры безопасности состоит в обеспечении безопасной работы приложений. Если проводить аналогию с функционированием инфраструктуры электросетей, то можно сказать, что электросеть обеспечивает правильную работу таких "приложений", как электроприборы. Более того, универсальность инфраструктуры электросетей такова, что она способна поддерживать "приложения", которые были неизвестны в то время, когда она проектировалась (к ним относится практически вся современная бытовая техника, компьютеры и многое другое). Под приложением в контексте инфраструктуры безопасности понимается любой модуль, использующий инфраструктуру в целях безопасности, такой как web-браузер, клиентское приложение электронной почты, устройство, поддерживающее протокол IPsec, и т.п.
Инфраструктура безопасности дает возможность приложениям защищать их собственные данные или ресурсы и придавать безопасность их взаимодействию с другими данными или ресурсами. Доступ к инфраструктуре должен быть простым и быстрым - подобно включению электроприбора в розетку. Инфраструктура безопасности должна обладать знакомым и удобным интерфейсом, пригодностью и предсказуемостью сервисов. Кроме того, устройствам, использующим инфраструктуру, нет необходимости знать, каким образом достигается результат. Так, например, для работы любого электроприбора не имеет значения, каким образом происходит передача электроэнергии, а важно лишь то, что при его включении в электрическую розетку предсказуемый "сервис" обеспечивает прибор электроэнергией, необходимой для его правильной работы. То есть инфраструктура безопасности должна иметь хорошо известные точки входа, которые могут доставить сервис безопасности нуждающемуся в нем устройству. Причем для устройства неважно, как это делается, но существенно, что это делается удобно и корректно.
Рассмотрим наиболее важные аспекты сервисов, предоставляемых инфраструктурой безопасности.
Защищенная регистрация
Концепция регистрации пользователя для доступа к приложению широко известна. Обычно этот процесс заключается в том, что пользователь вводит информацию, которая его идентифицирует (имя или ID пользователя) и аутентифицирует (пароль или другая секретная информация). Процесс регистрации предполагает, что никто, кроме законного пользователя, не знает аутентифицирующую его информацию, и обеспечивает защищенный доступ пользователя к определенному приложению.
Проблемы безопасности, возникающие при регистрации, также хорошо известны. Если приложение, требующее регистрации, удалено от пользователя (находится, например, на другом компьютере), то пароли, передаваемые по незащищенной сети, становятся объектом перехвата. Даже зашифрованные пароли не защищены от атак воспроизведения (replay attacks), когда они могут быть скопированы и использованы позднее для имитации аутентичности. Более того, общеизвестно, что пользователи редко выбирают "хорошие" пароли (достаточной длины и непредсказуемости), как правило, не запоминают их без записывания и не меняют своевременно, когда этого требует локальная политика безопасности.
Инфраструктура безопасности может решить некоторые из этих проблем. Поддержка безопасности подразумевает, что событие регистрации для инфраструктуры происходит локально (на устройстве, посредством которого пользователь физически осуществляет взаимодействие) и что корректный результат