Перейти к содержимому
Аладдин Р.Д.
Библиотека

Управление закрытыми ключами: программные хранилища

БиблиотекаБиблиотека

Сентябрь, 2006

Программное хранилище — защита закрытых ключей программными средствами: эмуляция аппаратного электронного ключа с аналогичными функциями. Для использования ключа (например, формирования ЭЦП) он извлекается из хранилища и загружается в память компьютера. Для мобильности хранилище дублируется на всех компьютерах пользователя (рабочий, домашний, ноутбук, карманный) — это значительно увеличивает уязвимость.

Основные угрозы — две, и обе делают ПК потенциально небезопасной средой:

  • физический доступ. Компьютер чаще всего физически доступен и не защищён: посменная работа нескольких сотрудников за одним ПК, секретарь, оставивший посетителя наедине с компьютером, кража ноутбука. Захватить, скопировать или украсть программное хранилище может не только “случайный гость”, но и коллега — или нанятый компанией “электрик”, оказавшийся социоинженером с физическим доступом во все помещения. Блокировки компьютера недостаточно — жёсткий диск можно извлечь и прочитать напрямую; шифрование диска помогает, но “грубый” вариант часто остаётся возможным.
  • злонамеренное ПО (вирусы, черви, трояны): spyware может считать файл хранилища без ведома хозяина и отправить автору — такие программы незаметно “подсаживаются” при просмотре обычных web-страниц. Атака может быть массовой: вирус Caligula (конец 90-х) крал закрытые ключи PGP из программных хранилищ.

Контрмеры и их предел. Программные хранилища защищают двумя способами:

  • шифрование: содержимое зашифровано, ключ шифрования выводится из пароля пользователя (через хеш-функцию);
  • “путаница” (скремблинг): хранилище скрывается на диске — например, шифруется секретным ключом, который “прячется” в разных местах диска.

Эффект “путаницы” помогает против молодых злоумышленников, но опытный хакер его обойдёт; это лишь дополнительная мера (снизить риск, не исключить) — для DRM подходит, для PKI-решений уровня безопасности не обеспечивает. Шифрование с паролем зависит от качества пароля: получив зашифрованное хранилище, атакующий проводит словарную атаку; единственная защита — случайный пароль вроде g1UY$^M#&6430Ff``@Nk, который пользователи запомнить не могут, тем более несколько таких. Поэтому словарные атаки очень успешны.

Вывод. Программное хранилище зависит от безопасности среды (компьютера): при физическом доступе или заражении закрытый ключ скомпрометирован, причём сам факт атаки может остаться незамеченным — злоумышленник долго расшифровывает корреспонденцию и отправляет фальсификации от имени легального пользователя, и неотказуемость ЭЦП не достигается. Уровень безопасности программных хранилищ низкий — их использование в организациях, оперирующих конфиденциальной информацией, должно быть исключено.

Это краткая аннотация статьи, полную версию читайте в первоисточнике.


Читать полную версию

Первоисточник: CNews Analytics, сентябрь 2006

Эксперт: Алексей Сабанов, Аладдин