Федеральный стандарт обработки информации, публикация 140-2 ( FIPS PUB 140-2 ), [1] [2] — это стандарт компьютерной безопасности правительства США , используемый для утверждения криптографических модулей . Название — Требования безопасности для криптографических модулей . Первоначальная публикация была 25 мая 2001 года, а последнее обновление — 3 декабря 2002 года.
Его преемник, FIPS 140-3 , был одобрен 22 марта 2019 года и вступил в силу 22 сентября 2019 года. [3] Тестирование FIPS 140-3 началось 22 сентября 2020 года, а первые сертификаты проверки FIPS 140-3 были выданы в декабре 2022 года. [4] Тестирование FIPS 140-2 было доступно до 21 сентября 2021 года (позже для уже находящихся в процессе приложений оно было изменено на 1 апреля 2022 года [5] ), что создало перекрывающийся переходный период продолжительностью более одного года. Отчеты об испытаниях FIPS 140-2, которые остаются в очереди CMVP, по-прежнему будут получать проверки после этой даты, но все проверки FIPS 140-2 будут перемещены в исторический список 21 сентября 2026 года независимо от их фактической даты окончательной проверки. [6]
Национальный институт стандартов и технологий (NIST) выпустил серию публикаций FIPS 140 для координации требований и стандартов для криптографических модулей, которые включают как аппаратные, так и программные компоненты. Защита криптографического модуля в системе безопасности необходима для сохранения конфиденциальности и целостности информации, защищенной модулем. Этот стандарт определяет требования безопасности, которым будет удовлетворять криптографический модуль. Стандарт предусматривает четыре возрастающих качественных уровня безопасности, предназначенных для охвата широкого спектра потенциальных приложений и сред. Требования безопасности охватывают области, связанные с безопасным проектированием и реализацией криптографического модуля. Эти области включают спецификацию криптографического модуля; порты и интерфейсы криптографического модуля; роли, службы и аутентификацию; модель конечного состояния; физическую безопасность; операционную среду; управление криптографическими ключами; электромагнитные помехи/электромагнитную совместимость (EMI/EMC); самотестирование; обеспечение проектирования; и смягчение других атак. [7]
Федеральные агентства и департаменты могут подтвердить, что используемый модуль охвачен существующим сертификатом FIPS 140-1 или FIPS 140-2, который указывает точное название модуля, аппаратное обеспечение, программное обеспечение, встроенное программное обеспечение и/или номера версий апплета. Криптографические модули производятся частным сектором или сообществами с открытым исходным кодом для использования правительством США и другими регулируемыми отраслями (такими как финансовые и медицинские учреждения), которые собирают, хранят, передают, делятся и распространяют конфиденциальную, но несекретную (SBU) информацию. Коммерческий криптографический модуль также обычно называют аппаратным модулем безопасности (HSM).
FIPS 140-2 определяет четыре уровня безопасности, просто называемые «Уровень 1» — «Уровень 4». Он не уточняет подробно, какой уровень безопасности требуется для конкретного приложения.
Уровень безопасности 1 обеспечивает самый низкий уровень безопасности. Для криптографического модуля указаны основные требования безопасности (например, должен использоваться по крайней мере один одобренный алгоритм или одобренная функция безопасности). В криптографическом модуле уровня безопасности 1 не требуется никаких специальных физических механизмов безопасности, помимо основных требований к компонентам производственного класса. Примером криптографического модуля уровня безопасности 1 является плата шифрования персонального компьютера (ПК).
Уровень безопасности 2 улучшает физические механизмы безопасности криптографического модуля уровня безопасности 1, требуя функций, которые показывают наличие доказательств несанкционированного доступа, включая покрытия или пломбы, предупреждающие о несанкционированном доступе, которые необходимо сломать для получения физического доступа к открытым криптографическим ключам и критическим параметрам безопасности (CSP) внутри модуля, или замки с защитой от взлома на крышках или дверцах для защиты от несанкционированного физического доступа.
В дополнение к физическим механизмам безопасности с защитой от несанкционированного доступа, требуемым на уровне безопасности 2, уровень безопасности 3 пытается предотвратить получение злоумышленником доступа к CSP, хранящимся в криптографическом модуле. Физические механизмы безопасности, требуемые на уровне безопасности 3, предназначены для обеспечения высокой вероятности обнаружения и реагирования на попытки физического доступа, использования или модификации криптографического модуля. Физические механизмы безопасности могут включать использование прочных корпусов и схем обнаружения/реагирования несанкционированного доступа, которые обнуляют все открытые текстовые CSP при открытии съемных крышек/дверей криптографического модуля.
Уровень безопасности 4 обеспечивает наивысший уровень безопасности. На этом уровне безопасности физические механизмы безопасности обеспечивают полную оболочку защиты вокруг криптографического модуля с целью обнаружения и реагирования на все несанкционированные попытки физического доступа. Проникновение в корпус криптографического модуля с любого направления имеет очень высокую вероятность обнаружения, что приводит к немедленному удалению всех открытых текстовых CSP.
Криптографические модули уровня безопасности 4 полезны для работы в физически незащищенных средах. Уровень безопасности 4 также защищает криптографический модуль от нарушения безопасности из-за условий окружающей среды или колебаний за пределами нормального рабочего диапазона модуля по напряжению и температуре. Намеренные отклонения за пределы нормального рабочего диапазона могут быть использованы злоумышленником для нарушения защиты криптографического модуля. Криптографический модуль должен либо включать специальные функции защиты от окружающей среды, предназначенные для обнаружения колебаний и удаления CSP, либо проходить строгие испытания на отказы в условиях окружающей среды, чтобы обеспечить разумную гарантию того, что модуль не будет затронут колебаниями за пределами нормального рабочего диапазона таким образом, что это может поставить под угрозу безопасность модуля.
Для уровней 2 и выше также указана операционная платформа, на которой применима валидация. Поставщики не всегда поддерживают свои базовые валидации.
FIPS 140-2 устанавливает Программу проверки криптографических модулей (CMVP) как совместный проект NIST и Управления по безопасности связи (CSE) для правительства Канады.
Программы безопасности, контролируемые NIST и CSE, сосредоточены на работе с правительством и промышленностью для создания более безопасных систем и сетей путем разработки, управления и продвижения инструментов, методов, услуг оценки безопасности и поддержки программ для тестирования, оценки и валидации; и охватывают такие области, как: разработка и поддержка показателей безопасности, критериев оценки безопасности и методологий оценки, тестов и методов тестирования; критерии безопасности для лабораторной аккредитации, ориентированные на безопасность; руководство по использованию оцененных и протестированных продуктов; исследования для рассмотрения методов обеспечения безопасности и общесистемных методов безопасности и оценки; мероприятия по проверке протоколов безопасности; и соответствующая координация с мероприятиями по оценке добровольных отраслевых органов по стандартизации и других режимов оценки.
Стандарт FIPS 140-2 представляет собой программу утверждения безопасности информационных технологий для криптографических модулей, производимых поставщиками частного сектора, которые стремятся сертифицировать свою продукцию для использования в государственных ведомствах и регулируемых отраслях (таких как финансовые и медицинские учреждения), которые собирают, хранят, передают, обмениваются и распространяют конфиденциальную, но несекретную (SBU) информацию.
Для предотвращения и обнаружения несанкционированного доступа к модулям используются защитные этикетки FIPS 140-2.
Все тесты в рамках CMVP проводятся сторонними лабораториями, аккредитованными в качестве лабораторий по тестированию криптографических модулей [8] Национальной программой добровольной аккредитации лабораторий (NVLAP). [9] Поставщики, заинтересованные в проверочном тестировании, могут выбрать любую из двадцати одной аккредитованной лаборатории.
Лаборатории по тестированию криптографических модулей, аккредитованные NVLAP, выполняют проверочное тестирование криптографических модулей. [10] [11] Криптографические модули тестируются на соответствие требованиям, изложенным в FIPS PUB 140–2, Требования безопасности для криптографических модулей. Требования безопасности охватывают 11 областей, связанных с проектированием и реализацией криптографического модуля. В большинстве областей криптографический модуль получает рейтинг уровня безопасности (1–4, от самого низкого к самому высокому), в зависимости от того, какие требования выполняются. Для других областей, которые не предусматривают различные уровни безопасности, криптографический модуль получает рейтинг, который отражает выполнение всех требований для этой области.
Для криптографического модуля выставляется общая оценка, которая указывает:
В сертификате проверки поставщика указаны индивидуальные рейтинги, а также общий рейтинг.
NIST поддерживает списки проверки [12] для всех своих программ тестирования криптографических стандартов (прошлых и настоящих). Все эти списки обновляются по мере получения новых модулей/реализаций сертификатов проверки от NIST и CSE. Элементы в списках проверки FIPS 140-1 и FIPS 140-2 ссылаются на проверенные реализации алгоритмов, которые появляются в списках проверки алгоритмов.
Помимо использования действующего криптографического модуля, решения по шифрованию должны использовать наборы шифров с утвержденными алгоритмами или функциями безопасности, установленными Приложением A к стандарту FIPS 140-2, чтобы считаться соответствующими стандарту FIPS 140-2.
FIPS PUB 140-2 Приложения:
Стивен Маркес опубликовал критику, что проверка FIPS 140-2 может привести к стимулам скрывать уязвимости и другие дефекты. CMVP может десертифицировать программное обеспечение, в котором обнаружены уязвимости, но повторная сертификация программного обеспечения, если обнаружены дефекты, может занять год, поэтому компании могут остаться без сертифицированного продукта для поставки. В качестве примера Стивен Маркес упоминает уязвимость, которая была обнаружена, опубликована и исправлена в сертифицированной FIPS производной OpenSSL с открытым исходным кодом, причем публикация означает, что производная OpenSSL была десертифицирована. Эта десертификация нанесла ущерб компаниям, полагающимся на сертификацию FIPS производной OpenSSL. Напротив, компании, которые переименовали и сертифицировали копию производной OpenSSL с открытым исходным кодом, не были десертифицированы, хотя они были в основном идентичны, и не исправили уязвимость. Поэтому Стивен Маркес утверждает, что процесс FIPS непреднамеренно способствует сокрытию происхождения программного обеспечения, чтобы отделить его от дефектов, обнаруженных в оригинале, при этом потенциально оставляя сертифицированную копию уязвимой. [13]
В последние годы CMVP предприняла шаги, чтобы избежать ситуации, описанной Маркусом, переместив проверки в Исторический список на основе алгоритмов и функций, содержащихся в модуле, а не на основе происхождения. [14]