ГОСТ Р 8.883-2015. Национальный стандарт Российской Федерации. Государственная система обеспечения единства измерений. Программное обеспечение средств измерений. Алгоритмы обработки, хранения, защиты и передачи измерительной информации. Методы испытаний
6.6. Проверка защиты программного обеспечения и определение ее уровня
6.6.1 Проверку защиты ПО СИ и его алгоритмов проводят с целью установления наличия средств защиты метрологически значимой части ПО и измеренных данных и определения уровня защиты ПО от непреднамеренных и преднамеренных изменений. Под проверкой защиты ПО понимается:
- проверка защиты метрологически значимой части ПО и измеренных данных от случайных или непреднамеренных изменений;
- проверка защиты метрологически значимой части ПО и измеренных данных от преднамеренных изменений.
6.6.2 Проверка защиты метрологически значимой части программного обеспечения и измеренных данных от случайных или непреднамеренных изменений
6.6.2.1 Возможными причинами случайных или непреднамеренных изменений метрологически значимой части ПО и измеренных данных могут быть:
- непредсказуемые физические воздействия;
- эффекты, обусловленные действиями пользователя.
6.6.2.2 На основе анализа документации определяют наличие (отсутствие) средств защиты метрологически значимой части ПО и измеренных данных от изменения или удаления в случае возникновения непредсказуемых физических воздействий (например, наличие энергонезависимой памяти для хранения измеренных данных).
6.6.2.3 С помощью функциональных проверок, имитирующих непредсказуемые физические воздействия, убеждаются в действии средств защиты метрологически значимой части ПО и измеренных данных от изменения или удаления в случае возникновения непредсказуемых физических воздействий.
6.6.2.4 На основе анализа документации и проведения функциональных проверок убеждаются в том, что интерфейс пользователя ПО содержит в себе средства предупреждения пользователя, если его действия могут повлечь изменение или удаление метрологически значимой части ПО и/или измеренных данных.
6.6.2.5 На основе анализа документации и проведения функциональных проверок, имитирующих различного рода ошибки или иные изменения случайного или непреднамеренного характера, проверяют их обнаружение и фиксацию в журнале(ах) событий.
6.6.3 Проверка защиты метрологически значимой части программного обеспечения и измеренных данных от преднамеренных изменений
6.6.3.1 Метрологически значимая часть ПО в необходимых случаях должна содержать специальные средства защиты, исключающие возможность несанкционированной модификации, загрузки (в том числе загрузки фальсифицированного ПО и данных), считывания из памяти СИ, удаления или иных преднамеренных изменений метрологически значимой части ПО и измеренных данных. К специальным средствам защиты метрологически значимой части ПО и измеренных данных от преднамеренных изменений могут быть, в частности, отнесены:
- средства проверки целостности ПО (например, несанкционированная модификация метрологически значимой части ПО может быть проверена расчетом контрольной суммы для метрологически значимой части ПО и сравнением ее с действительным значением);
- средства обнаружения и фиксации событий;
- средства управления доступом;
- иные средства защиты.
6.6.3.2 На основе анализа документации и проведения тестирования (функциональных проверок) убеждаются в том, что действие средства проверки целостности ПО распространяется на метрологически значимую часть ПО и данные. Для этой цели вносят изменения в метрологически значимую часть ПО и измеренные данные и проверяют реакцию средства проверки целостности ПО на внесенные изменения.
6.6.3.3 На основе анализа документации проверяется соответствие алгоритма проверки целостности ПО достаточному уровню защиты метрологически значимой части ПО и измеренных данных от преднамеренных изменений.
6.6.3.4 Если для проверки целостности ПО применяют расчет контрольной суммы, то на основе документации проверяется, что алгоритм, используемый для расчета контрольной суммы, и количество символов контрольной суммы соответствуют достаточному уровню защиты метрологически значимого ПО и измеренных данных от преднамеренных изменений.
6.6.3.5 На основе анализа документации определяется набор событий, который подлежит обнаружению и фиксации в соответствующем журнале событий. Убеждаются в том, что в набор событий, подлежащий обнаружению и фиксации, включены события, связанные с обновлением (загрузкой) метрологически значимой части ПО, изменением или удалением измеренных данных в памяти СИ, изменением параметров ПО, участвующих в вычислениях и влияющих на результат измерений.
6.6.3.6 Проведением тестирования (функциональных проверок), имитирующих наступление событий, подлежащих обнаружению и фиксации в журнале событий ПО, проверяют соответствующую реакцию средства обнаружения и фиксации событий.
6.6.3.7 Проверяют, что данные журнала событий невозможно исказить либо несанкционированно удалить без нарушения защиты иных средств защиты метрологически значимой части ПО и измеренных данных от преднамеренных изменений.
6.6.3.8 На основе анализа документации определяются полномочия пользователей, имеющих различные права доступа к функциям метрологически значимой части ПО и измеренным данным.
6.6.3.9 С помощью функциональных проверок убеждаются в соответствии полномочий пользователей, имеющих различные права доступа к функциям метрологически значимой части ПО и измеренным данным, полномочиям, описанным в документации на ПО.
6.6.3.10 Проверяют корректность реализации управления доступом пользователя к функциям метрологически значимой части ПО и измеренным данным. Для этого проверяется реакция средства управления доступом на неоднократный ввод неправильных идентификационных данных пользователя. Формат идентификационных данных пользователя, используемых для доступа к функциям метрологически значимой части ПО и измеренным данным, должен соответствовать достаточному уровню защиты метрологически значимой части ПО и измеренных данных от преднамеренных изменений.
6.6.3.11 Для СИ, в которых отсутствуют интерфейсы связи, несанкционированная модификация, удаление или иные преднамеренные изменения метрологически значимой части ПО и измеренных данных возможны посредством замены запоминающего устройства (устройств) другим, содержащим фальсифицированную метрологически значимую часть ПО и измеренные данные. Проверяют, что конструкцией СИ, непосредственно запоминающим устройством (устройствами) или иным способом обеспечивается защита запоминающего устройства (устройств) от несанкционированной замены.
6.6.4 В тех случаях, когда проводят испытания сложных измерительных систем или систем, используемых при коммерческих расчетах, или когда к этим системам предъявляют исключительные требования по безопасности и надежности их функционирования, защита метрологически значимой части ПО и измеренных данных от преднамеренных, случайных или непреднамеренных изменений дополнительно проверяется при помощи анализа исходного кода ПО.
6.6.5 Определение уровня защиты программного обеспечения средств измерений от непреднамеренных и преднамеренных изменений
6.6.5.1 Определение уровня защиты ПО от непреднамеренных и преднамеренных изменений проводят на основании результатов исследований ПО, выполненных в соответствии с 6.2, 6.3, 6.4 и 6.6.
6.6.5.2 При определении уровня защиты ПО от непреднамеренных и преднамеренных изменений учитывают необходимость применения и достаточность примененных специальных средств защиты метрологически значимой части ПО и измеренных данных от преднамеренных изменений (см. таблицу 1).
Таблица 1
Уровни защиты ПО СИ от непреднамеренных
и преднамеренных изменений
Уровень защиты | Описание |
Низкий | Не используют никакие специальные средства защиты от преднамеренных изменений |
Средний | Метрологически значимая часть ПО и измеренные данные защищены от преднамеренных изменений с помощью простых программных средств |
Высокий | Метрологически значимая часть ПО СИ и измеренные данные достаточно защищены с помощью специальных средств защиты от преднамеренных изменений |
6.6.5.3 Уровню "низкий" защиты ПО соответствует такой уровень защиты метрологически значимой части ПО и измеренных данных, при котором не требуется специальных средств защиты, исключающих возможность несанкционированной модификации, обновления (загрузки), удаления и иных преднамеренных изменений метрологически значимой части ПО и измеренных данных.
6.6.5.4 Уровню "средний" защиты ПО соответствует такой уровень защиты метрологически значимой части ПО СИ и измеренных данных, при котором ПО защищено от преднамеренных изменений с помощью простых программных средств (например, текстовых редакторов). Примерами защиты могут служить: пароли, авторизация пользователя и т.п.
6.6.5.5 Уровню "высокий" защиты ПО соответствует такой уровень защиты метрологически значимой части ПО и измеренных данных, при котором примененные специальные средства защиты в достаточной мере исключают возможность несанкционированной модификации, обновления (загрузки), удаления и иных преднамеренных изменений метрологически значимой части ПО и измеренных данных (например, криптографические методы защиты, электронное и механическое опечатывание и т.д.).
6.6.5.6 Для каждого уровня защиты ПО от непреднамеренных и преднамеренных изменений должна быть в достаточной степени обеспечена защита метрологически значимой части ПО и измеренных данных от случайных или непреднамеренных изменений.
6.6.5.7 Сведения о защите метрологически значимой части ПО и измеренных данных от случайных или непреднамеренных изменений, о защите метрологически значимой части ПО и измеренных данных от преднамеренных изменений, об уровне защиты ПО от непреднамеренных и преднамеренных изменений вносят в протокол испытаний.