19.3. Дополнительные детали
341
носительно невелика. Следует также отметить, что каждый из центров серти-
фикации, добавляемых в систему, представляет собой еще один потенциаль-
ный объект атаки, а следовательно, снижает безопасность системы в целом.
Один из
способов устранить недостатки больших многоуровневых сер-
тификатов, который, к сожалению, еще не встречался нам на практике, —
это свернуть иерархию сертификатов. Проиллюстрируем его на примере,
рассмотренном выше. Получив двухуровневый сертификат, банк может ото-
слать его главному ЦС. Последний проверяет двухуровневый сертификат
и высылает банку одноуровневый сертификат, заверенный ключом главно-
го ЦС. Если структура сертификатов будет сворачиваться подобным обра-
зом, стоимость добавления в иерархию дополнительных уровней станет очень
небольшой. Однако добавление уровней иерархии — не всегда удачное реше-
ние. Многоуровневые иерархические структуры редко оказываются эффек-
тивными.
Следует быть крайне осторожным, выстраивая цепочки сертификатов на-
подобие описанной выше. Они усложняют систему, а сложность — это всегда
плохо. Вот лишь один пример из недалекого прошлого. Защищенные Web-
узлы в Internet используют систему PKI, чтобы обозреватели пользователей
могли идентифицировать эти узлы. На практике эта система оказалась не
очень защищенной. Если бы все дело было только в пользователях, которые
не утруждают себя проверкой имени посещаемого Web-узла! К сожалению,
около года назад критическая ошибка была обнаружена и в библиотеке, кото-
рая удостоверяет правильность сертификатов всех операционных систем Mi-
crosoft. Каждый элемент цепочки сертификатов содержит флажок, который
показывает, является ли сертифицируемый ключ ключом центра сертифи-
кации. Ключам центров сертификации разрешено сертифицировать другие
ключи. Ключи остальных субъектов этого делать не могут. Это очень важ-
ное различие. К сожалению, упомянутая библиотека не проверяла данный
флажок. Как следствие, злоумышленник мог приобрести сертификат, ска-
жем, для домена
nastyattacker.com
и воспользоваться им, чтобы самому
заверить подделанный ключ узла
amazon.com
. Обозреватель Microsoft Inter-
net Explorer использовал ту самую библиотеку, в которой была обнаружена
ошибка. Он мог принять сертификат фальшивого ключа Amazon, выданный
узлом
nastyattacker.com
, и отобразить поддельный Web-узел под видом на-
стоящего узла Amazon. Подумать только: глобальную систему безопасности,
на разработку которой было затрачено столько средств и усилий, удалось
обмануть с помощью малюсенькой ошибки в одной-единственной библиоте-
ке! Как только о наличии ошибки стало известно широкой общественности,
Microsoft выпустила исправление библиотеки (специалистам компании пона-
добилось несколько попыток, чтобы устранить эту проблему). Тем не менее
это хороший пример того, как одна маленькая ошибка может разрушить без-