---
title: "\"Защита от несанкционированного доступа к информации. Часть 1. Программное обеспечение средств защиты информации. Классификация по уровню контроля отсутствия недекларированных возможностей\""
number: "114"
issuer: "Государственная техническая комиссия при Президенте Российской Федерации"
status: действует
canonical: "https://bukva.ai/docs/prikaz-114-gostehkomissiya-rossii"
---

## "Защита от несанкционированного доступа к информации. Часть 1. Программное обеспечение средств защиты информации. Классификация по уровню контроля отсутствия недекларированных возможностей"

# "Защита от несанкционированного доступа к информации. Часть 1. Программное обеспечение средств защиты информации. Классификация по уровню контроля отсутствия недекларированных возможностей"

(введен Приказом Гостехкомиссии РФ от 04.06.1999 N 114)

(с изм. от 11.08.2020)

> [!WARNING]
> Документ не применяется с 15 августа 2020 года при выполнении работ по сертификации средств защиты информации в связи с изданием Приказа ФСТЭК России от 11.08.2020 N 96.


<div align="right">

<a id="p100001"></a>Введен в действие<br>
Приказом Председателя<br>
Гостехкомиссии России

</div>

<div align="center">

от 4 июня 1999 г. N 114

<a id="p100002"></a>**РУКОВОДЯЩИЙ ДОКУМЕНТ**

<a id="p100003"></a>**ЗАЩИТА ОТ НЕСАНКЦИОНИРОВАННОГО ДОСТУПА**<br>
**К ИНФОРМАЦИИ**

<a id="p100004"></a>**ЧАСТЬ 1. ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ СРЕДСТВ ЗАЩИТЫ ИНФОРМАЦИИ.**<br>
**КЛАССИФИКАЦИЯ ПО УРОВНЮ КОНТРОЛЯ ОТСУТСТВИЯ**<br>
НЕДЕКЛАРИРОВАННЫХ ВОЗМОЖНОСТЕЙ

</div>


<a id="p100005"></a>Настоящий Руководящий документ (РД) устанавливает классификацию программного обеспечения (ПО) (как отечественного, так и импортного производства) средств защиты информации (СЗИ), в том числе и встроенных в общесистемное и прикладное ПО, по уровню контроля отсутствия в нем недекларированных возможностей.
<a id="p100006"></a>Действие документа не распространяется на программное обеспечение средств криптографической защиты информации.
<a id="p100007"></a>Уровень контроля определяется выполнением заданного настоящим РД набора требований, предъявляемого:
- <a id="p100140"></a>к составу и содержанию документации, представляемой заявителем для проведения испытаний ПО СЗИ;
- <a id="p100141"></a>к содержанию испытаний.
<a id="p100008"></a>Руководящий документ разработан в дополнение РД "Средства вычислительной техники. Защита от несанкционированного доступа к информации. Показатели защищенности от несанкционированного доступа к информации", М., Военное издательство, 1992 г., РД "Автоматизированные системы. Защита от несанкционированного доступа к информации. Классификация автоматизированных систем и требования по защите информации", М., Военное издательство, 1992 г. и РД "Средства вычислительной техники. Межсетевые экраны. Защита от несанкционированного доступа к информации. Показатели защищенности от несанкционированного доступа к информации", М., 1997 г.
<a id="p100009"></a>Документ предназначен для специалистов испытательных лабораторий, заказчиков, разработчиков ПО СЗИ при его контроле в части отсутствия недекларированных возможностей.


### 1. <a id="p100010"></a>ОБЩИЕ ПОЛОЖЕНИЯ


<a id="p100011"></a>1.1. Классификация распространяется на ПО, предназначенное для защиты информации ограниченного доступа.
<a id="p100012"></a>1.2. Устанавливается четыре уровня контроля отсутствия недекларированных возможностей. Каждый уровень характеризуется определенной минимальной совокупностью требований.
<a id="p100013"></a>1.3. Для ПО, используемого при защите информации, отнесенной к государственной тайне, должен быть обеспечен уровень контроля не ниже третьего.
<a id="p100014"></a>1.4. Самый высокий уровень контроля - первый, достаточен для ПО, используемого при защите информации с грифом "ОВ".
- <a id="p100015"></a>Второй уровень контроля достаточен для ПО, используемого при защите информации с грифом "СС".
- <a id="p100016"></a>Третий уровень контроля достаточен для ПО, используемого при защите информации с грифом "С".
<a id="p100017"></a>1.5. Самый низкий уровень контроля - четвертый, достаточен для ПО, используемого при защите конфиденциальной информации.


### 2. <a id="p100018"></a>ТЕРМИНЫ И ОПРЕДЕЛЕНИЯ


<a id="p100019"></a>2.1. Недекларированные возможности - функциональные возможности ПО, не описанные или не соответствующие описанным в документации, при использовании которых возможно нарушение конфиденциальности, доступности или целостности обрабатываемой информации.
<a id="p100142"></a>Реализацией недекларированных возможностей, в частности, являются программные закладки.
<a id="p100143"></a>2.2. Программные закладки - преднамеренно внесенные В ПО функциональные объекты, которые при определенных условиях (входных данных) инициируют выполнение не описанных в документации функций ПО, приводящих к нарушению конфиденциальности, доступности или целостности обрабатываемой информации.
<a id="p100144"></a>2.3. Функциональный объект - элемент программы, осуществляющий выполнение действий по реализации законченного фрагмента алгоритма программы.
<a id="p100145"></a>В качестве функциональных объектов могут выступать процедуры, функции, ветви, операторы и т.п.
<a id="p100146"></a>2.4. Информационный объект - элемент программы, содержащий фрагмент информации, циркулирующей в программе. В зависимости от языка программирования в качестве информационных объектов могут выступать переменные, массивы, записи, таблицы, файлы, фрагменты оперативной памяти и т.п.
<a id="p100147"></a>2.5. Маршрут выполнения функциональных объектов - определенная алгоритмом последовательность выполняемых функциональных объектов.
<a id="p100020"></a>2.6. Фактический маршрут выполнения функциональных объектов - последовательность фактически выполняемых функциональных объектов при определенных условиях (входных данных).
<a id="p100148"></a>2.7. Критический маршрут выполнения функциональных объектов - такой маршрут, при выполнении которого существует возможность неконтролируемого нарушения установленных правил обработки информационных объектов.
<a id="p100149"></a>2.8. Статистический анализ исходных текстов программ - совокупность методов контроля (не)соответствия реализованных и декларированных в документации функциональных возможностей ПО, основанных на структурном анализе и декомпозиции исходных текстов программ.
<a id="p100150"></a>2.9. Динамический анализ исходных текстов программ - совокупность методов контроля (не)соответствия реализованных и декларированных в документации функциональных возможностей ПО, основанных на идентификации фактических маршрутов выполнения функциональных объектов с последующим сопоставлением маршрутам, построенным в процессе проведения статистического анализа.


### 3. <a id="p100021"></a>ТРЕБОВАНИЯ К УРОВНЮ КОНТРОЛЯ



#### <a id="p100151"></a>3.1 Перечень требований


<div align="right">

<a id="p100022"></a>Таблица 1

</div>



<table>
<colgroup><col width="6%"><col width="73%"><col width="5%"><col width="5%"><col width="5%"><col width="5%"></colgroup>
<tr><td><a id="p100023"></a>N</td><td>Наименование требования</td><td colspan="4">Уровень контроля</td></tr>
<tr><td></td><td></td><td><a id="p100024"></a>4</td><td>3</td><td>2</td><td>1</td></tr>
<tr><td></td><td><a id="p100025"></a>Требования к документации</td><td></td><td></td><td></td><td></td></tr>
<tr><td><a id="p100026"></a>1.</td><td>Контроль состава и содержания документации</td><td></td><td></td><td></td><td></td></tr>
<tr><td><a id="p100027"></a>1.1.</td><td>Спецификация (ГОСТ 19.202-78)</td><td>+</td><td>=</td><td>=</td><td>=</td></tr>
<tr><td><a id="p100028"></a>1.2.</td><td>Описание программы (ГОСТ 19.402-78)</td><td>+</td><td>=</td><td>=</td><td>=</td></tr>
<tr><td><a id="p100029"></a>1.3.</td><td>Описание применения (ГОСТ 19.502-78)</td><td>+</td><td>=</td><td>=</td><td>=</td></tr>
<tr><td><a id="p100030"></a>1.4.</td><td>Пояснительная записка (ГОСТ 19.404-79)</td><td>-</td><td>+</td><td>=</td><td>=</td></tr>
<tr><td><a id="p100031"></a>1.5.</td><td>Тексты программ, входящих в состав ПО (ГОСТ 19.401-78)</td><td>+</td><td>=</td><td>=</td><td>=</td></tr>
<tr><td></td><td><a id="p100032"></a>Требования к содержанию испытаний</td><td></td><td></td><td></td><td></td></tr>
<tr><td><a id="p100033"></a>2.</td><td>Контроль исходного состояния ПО</td><td>+</td><td>=</td><td>=</td><td>=</td></tr>
<tr><td><a id="p100034"></a>3.</td><td>Статический анализ исходных текстов программ</td><td></td><td></td><td></td><td></td></tr>
<tr><td><a id="p100035"></a>3.1.</td><td>Контроль полноты и отсутствия избыточности исходных текстов</td><td>+</td><td>+</td><td>+</td><td>=</td></tr>
<tr><td><a id="p100036"></a>3.2.</td><td>Контроль соответствия исходных текстов ПО его объектному (загрузочному) коду</td><td>+</td><td>=</td><td>=</td><td>+</td></tr>
<tr><td><a id="p100037"></a>3.3.</td><td>Контроль связей функциональных объектов по управлению</td><td>-</td><td>+</td><td>=</td><td>=</td></tr>
<tr><td><a id="p100038"></a>3.4.</td><td>Контроль связей функциональных объектов по информации</td><td>-</td><td>+</td><td>=</td><td>=</td></tr>
<tr><td><a id="p100039"></a>3.5.</td><td>Контроль информационных объектов</td><td>-</td><td>+</td><td>=</td><td>=</td></tr>
<tr><td><a id="p100040"></a>3.6.</td><td>Контроль наличия заданных конструкций в исходных текстах</td><td>-</td><td>-</td><td>+</td><td>+</td></tr>
<tr><td><a id="p100041"></a>3.7.</td><td>Формирование перечня маршрутов выполнения функциональных объектов</td><td>-</td><td>+</td><td>+</td><td>=</td></tr>
<tr><td><a id="p100042"></a>3.8.</td><td>Анализ критических маршрутов выполнения функциональных объектов</td><td>-</td><td>-</td><td>+</td><td>=</td></tr>
<tr><td><a id="p100043"></a>3.9.</td><td>Анализ алгоритма работы функциональных объектов на основе блок-схем, диаграмм и т.п., построенных по исходным текстам контролируемого ПО</td><td>-</td><td>-</td><td>+</td><td>=</td></tr>
<tr><td><a id="p100044"></a>4.</td><td>Динамический анализ исходных текстов программ</td><td></td><td></td><td></td><td></td></tr>
<tr><td><a id="p100045"></a>4.1.</td><td>Контроль выполнения функциональных объектов</td><td>-</td><td>+</td><td>+</td><td>=</td></tr>
<tr><td><a id="p100046"></a>4.2.</td><td>Сопоставление фактических маршрутов выполнения функциональных объектов и маршрутов, построенных в процессе проведения статического анализа</td><td>-</td><td>+</td><td>+</td><td>=</td></tr>
<tr><td><a id="p100047"></a>5.</td><td>Отчетность</td><td>+</td><td>+</td><td>+</td><td>+</td></tr>
</table>


<a id="p100048"></a>Обозначения:
<a id="p100049"></a>"-" - нет требований к данному уровню;
<a id="p100050"></a>"+" - новые или дополнительные требования;
<a id="p100051"></a>"=" - требования совпадают с требованиями предыдущего уровня.

#### <a id="p100052"></a>3.2 Требования к четвертому уровню контроля


##### <a id="p100053"></a>3.2.1 Контроль состава и содержания документации

<a id="p100054"></a>В состав документации, представляемой заявителем, должны входить:
<a id="p100055"></a>Спецификация (ГОСТ 19.202-78), содержащая сведения о составе ПО и документации на него;
<a id="p100056"></a>Описание программы (ГОСТ 19.402-78), содержащее основные сведения о составе (с указанием контрольных сумм файлов, входящих в состав ПО), логической структуре и среде функционирования ПО, а также описание методов, приемов и правил эксплуатации средств технологического оснащения при создании ПО;
<a id="p100057"></a>Описание применения (ГОСТ 19.502-78), содержащее сведения о назначении ПО, области применения, применяемых методах, классе решаемых задач, ограничениях при применении, минимальной конфигурации технических средств, среде функционирования и порядке работы.
<a id="p100058"></a>Исходные тексты программ (ГОСТ 19.401-78), входящих в состав ПО.
<a id="p100059"></a>Для ПО импортного производства состав документации может отличаться от требуемого, однако содержание должно соответствовать требованиям указанных ГОСТ.

##### <a id="p100060"></a>3.2.2 Контроль исходного состояния ПО

<a id="p100061"></a>Контроль заключается в фиксации исходного состояния ПО и сравнении полученных результатов с приведенными в документации.
<a id="p100062"></a>Результатами контроля исходного состояния ПО должны быть рассчитанные уникальные значения контрольных сумм загрузочных модулей и исходных текстов программ, входящих в состав ПО.
<a id="p100063"></a>Контрольные суммы должны рассчитываться для каждого файла, входящего в состав ПО.

##### <a id="p100064"></a>3.2.3 Статический анализ исходных текстов программ

<a id="p100065"></a>Статический анализ исходных текстов программ должен включать следующие технологические операции:
<a id="p100066"></a>контроль полноты и отсутствия избыточности исходных текстов ПО на уровне файлов;
<a id="p100067"></a>контроль соответствия исходных текстов ПО его объектному (загрузочному) коду.

##### <a id="p100068"></a>3.2.4 Отчетность

<a id="p100069"></a>По окончании испытаний оформляется отчет (протокол), содержащий результаты:
<a id="p100070"></a>контроля исходного состояния ПО;
<a id="p100071"></a>контроля полноты и отсутствия избыточности исходных текстов контролируемого ПО на уровне файлов;
<a id="p100072"></a>контроля соответствия исходных текстов ПО его объектному (загрузочному) коду.

#### <a id="p100073"></a>3.3 Требования к третьему уровню контроля


##### <a id="p100074"></a>3.3.1 Контроль состава и содержания документации

<a id="p100075"></a>Требования полностью включают в себя аналогичные требования к четвертому уровню контроля.
<a id="p100076"></a>Кроме того, должна быть представлена "Пояснительная записка" (ГОСТ 19.404-79), содержащая основные сведения о назначении компонентов, входящих в состав ПО, параметрах обрабатываемых наборов данных (подсхемах баз данных), формируемых кодах возврата, описание используемых переменных, алгоритмов функционирования и т.п.

##### <a id="p100077"></a>3.3.2 Контроль исходного состояния ПО

<a id="p100078"></a>Требования полностью включают в себя аналогичные требования к четвертому уровню контроля.

##### <a id="p100079"></a>3.3.3 Статический анализ исходных текстов программ

<a id="p100080"></a>Кроме аналогичных требований, предъявляемых к четвертому уровню контроля, дополнительно предъявляются следующие требования:
<a id="p100081"></a>контроль полноты и отсутствия избыточности исходных текстов ПО на уровне функциональных объектов (процедур);
<a id="p100082"></a>контроль связей функциональных объектов (модулей, процедур, функций) по управлению;
<a id="p100083"></a>контроль связей функциональных объектов (модулей, процедур, функций) по информации;
<a id="p100084"></a>контроль информационных объектов различных типов (например, локальных переменных, глобальных переменных, внешних переменных и т.п.);
<a id="p100085"></a>формирование перечня маршрутов выполнения функциональных объектов (процедур, функций).

##### <a id="p100086"></a>3.3.4 Динамический анализ исходных текстов программ

<a id="p100087"></a>Динамический анализ исходных текстов программ должен включать следующие технологические операции:
<a id="p100088"></a>контроль выполнения функциональных объектов (процедур, функций);
<a id="p100089"></a>сопоставление фактических маршрутов выполнения функциональных объектов (процедур, функций) и маршрутов, построенных в процессе проведения статического анализа.

##### <a id="p100090"></a>3.3.5 Отчетность

<a id="p100091"></a>Кроме аналогичных требований, предъявляемых к четвертому уровню контроля, дополнительно отчет (протокол) должен содержать результаты:
<a id="p100092"></a>контроля полноты и отсутствия избыточности исходных текстов контролируемого ПО на уровне функциональных объектов (процедур);
<a id="p100093"></a>контроля связей функциональных объектов (модулей, процедур, функций) по управлению;
<a id="p100094"></a>контроля связей функциональных объектов (модулей, процедур, функций) по информации;
<a id="p100095"></a>контроля информационных объектов различных типов (например, локальных переменных, глобальных переменных, внешних переменных и т.п.);
<a id="p100096"></a>формирования перечня маршрутов выполнения функциональных объектов (процедур, функций);
<a id="p100097"></a>контроля выполнения функциональных объектов (процедур, функций);
<a id="p100098"></a>сопоставления фактических маршрутов выполнения функциональных объектов (процедур, функций) и маршрутов, построенных в процессе проведения статического анализа.

#### <a id="p100099"></a>3.4 Требования ко второму уровню контроля


##### <a id="p100100"></a>3.4.1 Контроль состава и содержания документации

<a id="p100101"></a>Требования полностью включают в себя аналогичные требования к третьему уровню контроля.

##### <a id="p100102"></a>3.4.2 Контроль исходного состояния ПО

<a id="p100103"></a>Требования полностью включают в себя аналогичные требования к третьему уровню контроля.

##### <a id="p100104"></a>3.4.3 Статический анализ исходных текстов программ

<a id="p100105"></a>Кроме аналогичных требований, предъявляемых к третьему уровню контроля, дополнительно предъявляются следующие требования:
<a id="p100106"></a>контроль полноты и отсутствия избыточности исходных текстов контролируемого программного обеспечения на уровне функциональных объектов (функций);
<a id="p100107"></a>синтаксический контроль наличия заданных конструкций в исходных текстах ПО из списка (базы) потенциально опасных программных конструкций;
<a id="p100108"></a>формирование перечня маршрутов выполнения функциональных объектов (ветвей);
<a id="p100109"></a>анализ критических маршрутов выполнения функциональных объектов (процедур, функций) для заданных экспертом списков информационных объектов;
<a id="p100110"></a>построение по исходным текстам контролируемого ПО блок-схем, диаграмм и т.п. и последующий сравнительный анализ алгоритма работы функциональных объектов (процедур, функций) и алгоритма работы, приведенного в "Пояснительной записке".

##### <a id="p100111"></a>3.4.4 Динамический анализ исходных текстов программ

<a id="p100112"></a>Кроме аналогичных требований, предъявляемых к третьему уровню контроля, дополнительно предъявляются следующие требования:
<a id="p100113"></a>контроль выполнения функциональных объектов (ветвей);
<a id="p100114"></a>сопоставление фактических маршрутов выполнения функциональных объектов (ветвей) и маршрутов, построенных в процессе проведения статического анализа.

##### <a id="p100115"></a>3.4.5 Отчетность

<a id="p100116"></a>Кроме аналогичных требований, предъявляемых к третьему уровню контроля, дополнительно отчет (протокол) должен содержать результаты:
<a id="p100117"></a>контроля полноты и отсутствия избыточности исходных текстов контролируемого программного обеспечения на уровне функциональных объектов (функций);
<a id="p100118"></a>синтаксического контроля наличия заданных конструкций в исходных текстах ПО из списка (базы) потенциально опасных конструкций;
<a id="p100119"></a>формирования перечня маршрутов выполнения функциональных объектов (ветвей);
<a id="p100120"></a>анализа критических маршрутов выполнения функциональных объектов (процедур, функций) для заданных экспертом списков информационных объектов;
<a id="p100121"></a>построения по исходным текстам контролируемого ПО блок-схем, диаграмм и т.п. и последующего сравнительного анализа алгоритма работы функциональных объектов (процедур, функций) и алгоритма работы, приведенного в "Пояснительной записке";
<a id="p100122"></a>контроля выполнения функциональных объектов (ветвей);
<a id="p100123"></a>сопоставления фактических маршрутов выполнения функциональных объектов (ветвей) и маршрутов, построенных в процессе проведения статического анализа.

#### <a id="p100124"></a>3.5 Требования к первому уровню контроля


##### <a id="p100125"></a>3.5.1 Контроль состава и содержания документации

<a id="p100126"></a>Требования полностью включают в себя аналогичные требования ко второму уровню контроля.

##### <a id="p100127"></a>3.5.2 Контроль исходного состояния ПО

<a id="p100128"></a>Требования полностью включают в себя аналогичные требования ко второму уровню контроля.

##### <a id="p100129"></a>3.5.3 Статический анализ исходных текстов программ

<a id="p100130"></a>Кроме аналогичных требований, предъявляемых ко второму уровню контроля, дополнительно предъявляются следующие требования:
<a id="p100131"></a>контроль соответствия исходных текстов ПО его объектному (загрузочному) коду с использованием сертифицированных компиляторов;
<a id="p100132"></a>семантический контроль наличия заданных конструкций в исходных текстах ПО из списка (базы) потенциально опасных конструкций.

##### <a id="p100133"></a>3.5.4 Динамический анализ исходных текстов программ

<a id="p100134"></a>Требования полностью включают в себя аналогичные требования ко второму уровню контроля.

##### <a id="p100135"></a>3.5.5 Отчетность

<a id="p100136"></a>Кроме аналогичных требований, предъявляемых ко второму уровню контроля, дополнительно отчет (протокол) должен содержать результаты:
<a id="p100137"></a>контроля соответствия исходных текстов ПО его объектному (загрузочному) коду с использованием сертифицированных компиляторов;
<a id="p100138"></a>семантического контроля наличия заданных конструкций в исходных текстах ПО из списка (базы) потенциально опасных конструкций.



<a id="p100139"></a>

---
