FIPS 140-2
FIPS — стандарт компьютерной безопасности правительства США, используемый для утверждения криптографических модулей. Первая публикация состоялась 25 мая 2001 года и была обновлена 3 декабря 2002 года[1][2][3].
Назначение
Национальный институт стандартов и технологий США разработал серию публикаций англ. FIPS 140, чтобы координировать требования и стандарты к криптографическим модулям, включающим как аппаратные, так и программные компоненты. Защита криптографического модуля в системе безопасности необходима для сохранения конфиденциальности и целостности информации, защищаемой модулем. Этот стандарт определяет требования безопасности, которым должен соответствовать криптографический модуль. Стандарт предусматривает повышение уровня безопасности для широкого круга потенциальных приложений и сред. Безопасностные требования распространяются на области, связанные с проектированием и реализацией криптографического модуля: спецификацию криптографического модуля, порты и интерфейсы, модель конечного состояния, физическую защиту, операционную среду, управление криптографическими ключами, электромагнитные помехи / электромагнитная совместимость, самотестирование, проектирование и предотвращение других видов атак[4].
Федеральные агентства и ведомства могут удостовериться, что используемый модуль сертифицирован по FIPS 140-1 или FIPS 140-2, в сертификате указывается точное название модуля, аппаратное обеспечение, программное обеспечение, прошивка и/или версии апплета. Криптографические модули предоставляются частными компаниями или сообществами с открытым исходным кодом для использования правительством США и регулируемыми отраслями (например, финансовыми и медицинскими учреждениями), собирающими и использующими конфиденциальную, но несекретную информацию. Коммерческий криптографический модуль также часто называют аппаратным модулем безопасности (англ. Hardware security module, HSM)[4]
Уровни безопасности
Федеральный стандарт по обработке информации 140-2 определяет четыре уровня безопасности.[5]. При этом стандарт не устанавливает, какой уровень безопасности необходим для конкретных приложений.
Уровень безопасности 1 обеспечивает минимальный уровень защиты. Для криптографического модуля предъявляются базовые требования (например, наличие хотя бы одного одобренного алгоритма или функции безопасности). В модулях этого уровня не требуется специальных механизмов физической защиты, выходящих за рамки базовых производственных требований. Пример — плата шифрования персонального компьютера (ПК)[5]
Уровень 2 усиливает физическую защиту, требуя наличия средств, указывающих на вмешательство (например, пломбы, замки на корпусе), чтобы получить физический доступ к криптографическим ключам открытого текста и критическим параметрам безопасности (англ. Critical Security Parameter, CSP) внутри модуля.[5]
В дополнение к защите второго уровня, уровень 3 предполагает предотвращение несанкционированного доступа к CSP внутри модуля. Механизмы защиты обеспечивают высокую вероятность обнаружения и реагирования на любые попытки физического вмешательства, в том числе посредством надёжных корпусов и схем удаления текстовых CSP при вскрытии корпуса криптографического модуля.[5]
Четвёртый уровень обеспечивает максимальную защиту. На этом уровне физические средства обеспечивают полный барьер для обнаружения и реагирования на все попытки проникновения. Любое вскрытие корпуса выявляется и сопровождается немедленным удалением всех текстовых CSP. Модули этого уровня подходят для работы в физически незащищённой среде. Также реализована защита от компрометации из-за превышения допустимых температур или напряжения питания. Модуль должен либо обладать встроенными функциями защиты окружающей среды от перепадов параметров, либо проходить испытания на устойчивость.[5]
Программа проверки криптографических модулей
17 июля 1995 года Национальный институт стандартов и технологий США инициировал программу проверки криптографических модулей (англ. Cryptographic Module Validation Program, CMVP), предназначенную для тестирования на соответствие стандартам FIPS. Требования безопасности для модулей по FIPS 140-2 были выпущены 25 мая 2001 года и сменили предыдущие FIPS 140-1. CMVP реализуется совместно с Канадским центром безопасности коммуникаций. Модули, подтверждённые по FIPS 140-2, принимаются для защиты конфиденциальной информации федеральными агентствами США и Канады.[6].
Сертификация
Криптографическому модулю присваивается оценка, которая указывает:
- минимальное количество независимых оценок по отдельным областям с уровнями,
- выполнение всех остальных требований.
В сертификате, выдаваемом поставщику, перечислены отдельные частные оценки и итоговая оценка. Национальный институт стандартов и технологий ведёт перечни проверки[7] для всех программ тестирования криптографических стандартов. Пункты проверки FIPS 140-1 и FIPS 140-2 ссылаются на утверждённые алгоритмические реализации, которые отображаются в отдельных перечнях проверенных алгоритмов. Испытания проводятся по специальному испытательному документу FIPS, где изложены обязанности лаборатории, ожидаемый анализ, тесты и сведения, которые поставщик предоставляет лаборатории для оценки.
Все испытания по сертификации проводят сторонние лаборатории, аккредитованные как лаборатории тестирования криптографических модулей национальной программой добровольной аккредитации лабораторий[8]. Поставщики могут выбрать любую из 22 аккредитованных компаний для тестирования.
Аккредитованные лаборатории занимаются аттестацией криптографических модулей[9]. Криптографические модули тестируются по требованиям FIPS 140-2, охватывающим 11 областей, связанных с проектированием и внедрением модуля. В большинстве из них модулю присваивается рейтинг (от 1 до 4), согласно выполненным условиям. В ряде областей, где уровневых различий нет, выставляется рейтинг соответствия.
Различия FIPS 140-1 и FIPS 140-2
Важное изменение — включение в спецификацию утверждённых криптографических алгоритмов и функций безопасности. В FIPS 140-1 их идентификация оформлялась отдельным самостоятельным разделом, однако с учётом центральной роли алгоритма в модуле его спецификация интегрирована в первый раздел FIPS 140-2[10].
Основное изменение связано с отделением передачи открытого текста: ранее с уровня 3 оно обеспечивалось физически отдельными портами, теперь по FIPS 140-2 допустимо и логическое разделение по доверенному каналу внутри существующих портов, что отражает развитие технологий (разделение по времени, мультиплексирование и пр.).[10]
Большинство изменений здесь — это структурные перестановки: из требований к трём вариантам исполнения модуля выделены общие требования и объединены в единый раздел. Добавлены новые положения для одночиповых и многочиповых модулей, допускающие использование корпусов для защиты.[10]
Данный раздел определяет требования Федеральной комиссии по связи к электромагнитной совместимости. В ходе обновления были учтены незначительные уточнения в требованиях и ссылках.[10].
Аналоги FIPS 140-2
Стандарт ИСО/МЭК 19790, разработанный на основе Федерального стандарта по обработке информации 140-2, применяется для криптографических модулей, включая обязательное использование в США. Многие организации и госучреждения признали его пригодным для использования. Для продуктов безопасности со встроенной криптографией требуется соответствие спецификации для защиты не секретных, но конфиденциальных данных, а прошедшие оценку программные модули получают сертификат. В России ГОСТ Р 54583—2011/ISO/IEC/TR 15443-3:2007 использует этот стандарт для обеспечения доверия к информационным технологиям[11].
Критика
Стивен Маркес, сооснователь, президент и бизнес-менеджер OpenSSL до 2017 года[12], отмечал, что сертификация по FIPS 140-2 может способствовать сокрытию уязвимостей. Повторная сертификация ПО после исправления дефектов может занимать до года, что вынуждает компании выпускать неподтверждённые продукты или вовсе отказаться от сертификационного процесса. Маркес приводил в пример уязвимость, обнаруженную и исправленную в FIPS-сертифицированной версии OpenSSL, при этом только по новой перепроверке модуль снова считался сертифицированным. Некоторые компании же, заменив вывеску, продолжали использовать устаревший и уязвимый код без потери сертификата. Он отмечал, что FIPS может непреднамеренно поощрять сокрытие происхождения ПО и препятствовать оперативному устранению дефектов[13].
Примечания
- ↑ FIPS PUB 140-2: Security Requirements for Cryptographic Modules (англ.). Национальный институт стандартов и технологий (25 августа 2007). Дата обращения: 4 декабря 2018. Архивировано 25 августа 2007 года.
- ↑ Federal Information Processing Standards (FIPS) Publications: FIPS 140--2, Security Requirements for Cryptographic Modules (англ.). National Institute of Standards and Technology (май 2001). Дата обращения: 4 декабря 2018. Архивировано 6 декабря 2018 года.
- ↑ Невдяев Л. М. Телекоммуникационные технологии. Англо-русский толковый словарь-справочник. — Москва : Международный центр научной и технической информации, 2002. — ISBN 5-93184-001-X
- ↑ 1 2 SECURITY REQUIREMENTS FOR CRYPTOGRAPHIC MODULES (англ.). National Institute of Standards and Technology (25 мая 2001). Дата обращения: 4 декабря 2018. Архивировано 20 декабря 2018 года.
- ↑ 1 2 3 4 5 FIPS PUB 140-2 (англ.). National Institute of Standards and Technology (3 декабря 2002). Дата обращения: 5 декабря 2018. Архивировано 16 ноября 2018 года.
- ↑ Cryptographic Module Validation Program (англ.). National Institute of Standards and Technology (11 октября 2016). Дата обращения: 4 декабря 2018. Архивировано 7 декабря 2018 года.
- ↑ Cryptographic Module Validation Lists (англ.). National Institute of Standards and Technology (13 мая 2013). Дата обращения: 4 декабря 2018. Архивировано 6 декабря 2018 года.
- ↑ Testing Laboratories (англ.). National Institute of Standards and Technology (1 апреля 2013). Дата обращения: 4 декабря 2018. Архивировано 6 декабря 2018 года.
- ↑ Cryptographic Module Validation Program (CMVP) (англ.). www.nist.gov. Дата обращения: 4 декабря 2018. Архивировано 6 декабря 2018 года.
- ↑ 1 2 3 4 Ray Snouffer, Annabelle Lee, Arch Oldehoeft. A Comparison of the Security Requirements for Cryptographic Modules in FIPS 140-1 and FIPS 140-2 (англ.) (июнь 2001). Дата обращения: 6 декабря 2018.
- ↑ ГОСТ Р 54583-2011/ISO/IEC/TR 15443-3:2007 Информационная технология (ИТ). Методы и средства обеспечения безопасности. Основы доверия к безопасности информационных технологий. Часть 3. Анализ методов доверия (1 декабря 2012). Дата обращения: 6 декабря 2018. Архивировано 6 декабря 2018 года.
- ↑ CV (résumé) of Steve Marquess, president and senior technical resource (англ.). Personnel. Veridical Systems, Inc. Дата обращения: 16 декабря 2018. Архивировано 11 апреля 2016 года.
- ↑ Steven Marquess. Secure or Compliant, Pick One (англ.). Speeds and Feeds (23 июля 2009). Дата обращения: 17 декабря 2018. Архивировано 27 декабря 2013 года.