| Обман SSL SSL
— это протокол, используемый в настоящее время в большинстве транзакций, связанных
с электронной коммерцией в Internet. В протоколе SSL реализован алгоритм шифрования
по открытому ключу, который может отпугивать неискушенных пользователей, однако
является важным понятием для того, кто занимается финансовыми операциями в современной
экономике. SSL является также спецификацией по обеспечению безопасности,
и в этом качестве этот протокол используется разработчиками программных продуктов.
Как уже упоминалось в предыдущих разделах, практическая реализация любой, даже
самой надежной концепции, может оказаться неудачной и свести к нулю уровень безопасности,
обеспечиваемый любой спецификацией. Именно такая реализация и будет рассмотрена
в следующем разделе. Но перед этим хотелось бы дать один небольшой совет:
следует применять наиболее надежные алгоритмы шифрования SSL, доступные для Web-броузеров,
т.е. со 128-разрядным ключом. Благодаря послаблению экспортных законов США теперь
128-разрядные версии программ Netscape и Internet Explorer доступны каждому. Исключение
составляют лишь страны, внесенные в список эмбарго. В IE выберите команду About
и посмотрите, как получить 128-разрядную версию.
Обход проверки сертификата SSL в Web-броузере
В этом разделе вы узнаете о том, как можно ввести в заблуждение
службу проверки подлинности сертификата SSL Web-узла, который был бы признан недействительным
при обычной перекрестной проверке подлинности сертификата на основе сопоставления
имени DNS и IP-адреса сервера на другом конце соединения. Такая проверка должна
проводиться в соответствии со спецификацией SSL. Однако группа из Словении ACROS
Security Team обнаружила изъян в Netscape Communicator до версии 4.73. После
того как сеанс связи SSL уже установлен, Communicator этих версий сравнивает в
сертификате SSL последующих сеансов только IP-адреса, но не имена DNS. Броузер
можно обмануть, открыв сначала сеанс связи SSL с каким-нибудь специально настроенным
сервером, маскирующимся под легальный. При этом все последующие соединения SSL
с легальными Web-серверами будут замыкаться на "жульническом" сервере,
а пользователь не получит об этом ни одного стандартного предупреждения.
Конечно же, авторы осознают, что подобное изложение похоже, скорее, на головоломку.
Более последовательное объяснение можно найти в первоначальном сообщении команды
ACROS, опубликованном в мае 2000 года в информационном бюллетене CERT (Computer
Emergency Response Team). Несмотря на то что IP-адреса, используемые в приведенном
примере, уже устарели, стоит попытаться понять суть этого изъяна. Для большинства
пользователей само собой разумеется, что как только маленькая пиктограмма в виде
замочка появилась в окне броузера, можно ни о чем не беспокоиться. Как продемонстрировала
группа ACROS, пока разработкой программного обеспечения занимаются простые смертные,
расслабляться нельзя ни в коем случае. Подобный изъян был обнаружен группой
ACROS и в броузере Internet Explorer. Но проблема Internet Explorer состоит в
том, что он проверяет только факт выдачи сертификата организацией, обладающей
соответствующими полномочиями, не утруждая себя проверкой имени сервера и сроком
годности сертификата. Это происходит лишь тогда, когда сеанс соединения SSL с
сервером SSL устанавливается через фрейм или изображение (это коварный способ
установления соединения SSL, которых пользователь может и не заметить). В Internet
Explorer не проводится и повторная проверка подлинности сертификата, если во время
того же сеанса работы программы устанавливается повторный сеанс связи SSL с одним
и тем же сервером. Контрмеры против
обхода проверки сертификатов SSL Как упоминалось
выше, обновление программы Communicator до версии 4.73 или выше позволит устранить
описанную проблему. Тем, кто занимается разработкой различных дополнений к предыдущим
версиям, компания Netscape предоставляет диспетчер PSM (Personal Security Manager).
Эта программа выполняет шифрование по открытому ключу (подобно тому, которое используется
в протоколе SSL) вместо Netscape Communicator 4.7 или других приложений.
Конечно, подлинность сертификата безопасности узла можно проверить только
одним способом. Для этого нужно самостоятельно просмотреть его в окне броузера.
И в Netscape, и в Internet Explorer это можно осуществить, 
Рис. 16.4. Проверка сертификата SSL в броузере Internet Explorer. Убедитесь
в том, что эта информация совпадает с той, которую вы ожидали увидеть
щелкнув на маленькой пиктограмме с изображением замочка, расположенной в нижней
части окна броузера. Эту же информацию можно получить, щелкнув на кнопке Security
панели инструментов Netscape. В Internet Explorer для просмотра анапогичной информации
следует сделать щелчок на пиктограмме с набольшим замочком или выбрать команду
File=>Properties во время посещения страницы, защищенной протоколом SSL. На
рис. 16.4 показан сертификат одного из популярных Web-узлов. В IE существует
два параметра, которые позволяют автоматически проверять, не отменен ли сертификат
SSL. К ним относятся Check For Server Certificate Revocation и Check For Publisher
Certificate Revocation. Для того чтобы получить доступ к этим правилам обеспечения
безопасности, выберите команду Tools>lnternet Options, перейдите во вкладку
Advanced и просмотрите группу параметров Security. |