Статьи в блоге Праймсофт

Главная / Блог / Статьи / Безопасность / Защита ПО средств фиксации нарушений ПДД

Защита ПО средств фиксации нарушений ПДД

В предыдущей статье описывались основные требования, предъявляемые к современным средствам фиксации нарушений ПДД. Среди них: мощные вычислительные платформы, защищенное и надежное ПО, обеспечивающее требуемый уровень безопасности данных и зашиты от несанкционированного доступа. В данной статье описаны базовые рекомендации "Всероссийского научно-исследовательского института метрологической службы" (ФГУП "ВНИИМС") РОССТАНДАРТА, проводимые для проверки защиты ПО и определения ее уровня при испытаниях средств изменений.

Базовым документом, описывающим требования, является "РЕКОМЕНДАЦИЯ. ПРОВЕРКА ЗАЩИТЫ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ И ОПРЕДЕЛЕНИЕ ЕЕ УРОВНЯ ПРИ ИСПЫТАНИЯХ СРЕДСТВ ИЗМЕРЕНИЙ В ЦЕЛЯХ УТВЕРЖДЕНИЯ ТИПА. МИ 3286-2010". Документ содержит указания по составлению раздела программы и проведению испытаний средств измерений (СИ) в целях утверждения типа, относящихся к проверке уровня защиты ПО. Проведение таких испытаний обусловлено необходимостью реализации п. 2 ст. 9 Закона РФ N 102 "Об обеспечении единства измерений" в части, относящейся к обеспечению ограничения доступа к ПО в целях предотвращения несанкционированных настройки и вмешательства, приводящим к искажению результатов измерений.

Уровень защиты ПО представляет собой одну из его важнейших комплексных характеристик, определяющих степень доверия к показаниям соответствующего СИ и обеспечивающих достоверность измерительной информации. Уровень защиты определяется не только прямыми аппаратными и программными средствами, непосредственно обеспечивающими защищенность программного обеспечения, но также зависит от других характеристик и свойств ПО, таких как наличие идентификационных признаков, наличие или отсутствие защищенных интерфейсов пользователя и связи, степень влияния ПО на метрологические характеристики СИ и др.

Документом сформированы три класса защищенности метрологически значимой части ПО СИ - таблица 1.

Уровень
защиты
Описание
А Не требуется специальных средств защиты метрологически значимой части ПО СИ и измеренных данных от преднамеренных изменений
В Метрологически значимая часть ПО СИ и измеренные данные недостаточно защищены с помощью специальных средств защиты от преднамеренных изменений
С Метрологически значимая часть ПО СИ и измеренные данные достаточно защищены с помощью специальных средств защиты от преднамеренных изменений

ПО СИ класса "В" запрещено применять и необходимо вернуть на доработку. Все ПО СИ должно соответствовать классу защищенности "С".

Метрологически значимое ПО СИ

Перед проведением проверок ПО необходимо выполнить разделение всего ПО средства измерения (СИ) на метрологически значимую и незначимую части ПО СИ. Проверкам подвергается только метрологически значимая часть, которая непосредственно оказывает влияние на результаты измерений.

К метрологически значимой части ПО СИ относятся программы и программные модули, выполняющие функции сбора, передачи, обработки, хранения и представления измерительной информации, а также параметры, характеризующие тип СИ и внесенные в ПО. При этом уточняется, что все встроенное в СИ ПО считается метрологически значимым.

После утверждения типа СИ метрологически значимая часть ПО не должна изменяться. Метрологически незначимая часть ПО проверке не подлежит и может изменяться разработчиком произвольно. Если разделение ПО СИ не проведено, то все ПО рассматривается как метрологически значимое.

Разделение ПО на метрологически значимые и не значимые части рекомендуется проводить разработчикам автоматизированных СИ. Оно может быть проведено как на "низком", так и на "высоком" уровнях.

"Низкий" уровень разделения выполняется независимо от операционной системы внутри кода ПО (на уровне языка программирования). Такой уровень разделения ПО может быть реализован как в СИ со встроенным ПО, так и в СИ на основе персонального компьютера.

"Высокий" уровень разделения означает, что оно реализуется в виде независимых объектов операционной системы (например, части ПО содержатся в отдельных файлах операционной системы). "Высокий" уровень разделения возможен только в СИ на основе универсального компьютера.

К метрологически значимой части ПО относятся:

  • программы и программные модули, принимающие участие в обработке (расчетах) результатов измерений или влияющие на них;
  • программы и программные модули, осуществляющие представление измерительной информации, ее хранение и передачу, идентификацию и обновление (загрузку) ПО, защиту ПО и данных;
  • параметры ПО СИ, участвующие в вычислениях и влияющие на результат измерений;
  • компоненты защищенного интерфейса для обмена данными между метрологически значимыми и не значимыми частями ПО СИ.

Документация, сопровождающая ПО СИ

Первым требование является наличие документации, сопровождающей ПО СИ. Документация должна соответствовать требованиями ГОСТ Р 8.654 и стандартов Единой системы программной документации (ЕСПД).

Минимальный набор документов, сопровождающих ПО СИ, рекомендуется представлять в следующем составе:

  • техническое задание по ГОСТ 19.201;
  • спецификация по ГОСТ 19.202;
  • описание применения по ГОСТ 19.502;
  • схемы алгоритмов, программ, данных и систем по ГОСТ 19.701;
  • руководство пользователя.

Разработка и анализ документации выполняется с целью определения возможных причин случайных или непреднамеренных изменений метрологически значимой части ПО СИ и измеренных данных. В документации также должны быть определены средства защиты метрологически значимой части ПО СИ и измеренных данных от изменения или удаления в случае возникновения непредсказуемых физических воздействий (например, наличие энергонезависимой памяти для хранения измеренных данных).

Идентификационные признаки ПО

Идентификационные данные (признаки) являются неотъемлемой и важной частью средств защиты ПО. К идентификационным данным (признакам) относятся:

  • наименование ПО СИ;
  • номер версии метрологически значимой части ПО СИ;
  • контрольная сумма метрологически значимой части ПО СИ;
  • алгоритм вычисления контрольной суммы.

Идентификационные данные (признаки) определяются только для метрологически значимой части ПО.

Проверка идентификационных данных для представителей уполномоченных органов должен быть обеспечен доступ к исполняемому коду ПО, поскольку без такого доступа не могут быть установлены идентификационные данные (признаки) ПО. Доступ к исполняемому коду может быть организован с помощью стандартных интерфейсов связи (RS 232, USB и т.п.) или с помощью иных описанных в документации интерфейсов связи в комплекте с необходимым набором аппаратно-программных средств.

ПО СИ, прошедшее проверку, и его идентификационные данные вносят в единый банк данных ПО СИ.

Проведение функциональных проверок, имитирующих непредсказуемые физические воздействия.

Необходимо разработать набор функциональных тестов, подтверждающих действие средств защиты метрологически значимой части ПО СИ и измеренных данных от изменения или удаления в случае возникновения непредсказуемых физических воздействий. Данные тесты должны проводить с участием заинтересованных сторон и оформляться актом проведенных экспериментов.

Механизмы защиты

К основным средствам защиты метрологически значимой части ПО СИ относятся:

  • средства защиты от непредсказуемых физических воздействий;
  • средства защиты от эффектов, обусловленных действиями пользователя.

Интерфейс пользователя ПО СИ должен содержать в себе средства предупреждения пользователя, если его действия могут повлечь изменение или удаление метрологически значимой части ПО СИ и/или измеренных данных.

Метрологически значимая часть ПО СИ должно содержать и фиксировать в журнале(ах) событий все факты различного рода ошибок или иных изменений случайного или непреднамеренного характера. Набор событий, который подлежит обнаружению и фиксации в соответствующем журнале событий, должен включат события, связанные с обновлением (загрузкой) метрологически значимой части ПО СИ, изменением или удалением измеренных данных в памяти СИ, изменением параметров ПО СИ, участвующих в вычислениях и влияющих на результат измерений. При этом механизмы защиты должны обеспечивать невозможность исказить либо несанкционированно удалить события без нарушения защиты иных средств защиты.

Метрологически значимая часть ПО СИ должна содержать специальные средства защиты, исключающие возможность несанкционированной модификации, загрузки (в том числе загрузки фальсифицированного ПО и данных), считывания из памяти СИ, удаления или иных преднамеренных изменений метрологически значимой части ПО СИ и измеренных данных.

К специальным средствам защиты метрологически значимой части ПО СИ и измеренных данных от преднамеренных изменений также относят:

  • средства проверки целостности ПО;
  • средства обнаружения и фиксации событий;
  • средства управления доступом;
  • иные средства защиты.

Действие средства проверки целостности ПО должно распространяться на метрологически значимую часть ПО СИ и данные. Алгоритм проверки целостности ПО должен соответствовать достаточному уровню защиты метрологически значимой части ПО СИ и измеренных данных от преднамеренных изменений.

ПО СИ должно обеспечивать разграничение полномочий пользователей, имеющих различные права доступа к функциям метрологически значимой части ПО СИ и измеренным данным. Полномочия должны быть описаны в документации на ПО СИ.

ПО СИ должно обеспечивать недопустимость влияния на метрологически значимую часть ПО и данные через интерфейс пользователя и через интерфейсы связи.

Для СИ, в которых отсутствуют интерфейсы связи, несанкционированная модификация, удаление или иные преднамеренные изменения метрологически значимой части ПО СИ и измеренных данных возможны посредством замены запоминающего устройства(в) другим, содержащим фальсифицированную метрологически значимую часть ПО СИ и измеренные данные. Как результат, необходимо обеспечить конструкцией СИ защиту запоминающего устройства(в) от несанкционированной замены.

Данные требования являются минимально необходимыми для реализации при разработке ПО СИ. Выполнение требований позволяет обеспечить требуемый уровень надежности и безопасности ПО СИ, а также выполнить требования государственных регулирующих органов.