Напоминание

ОЦЕНКА ЭФФЕКТИВНОСТИ ФУНКЦИОНИРОВАНИЯ ПРОГРАММНОЙ ЧАСТИ ПРОТОТИПА ПРОГРАММНО-АППАРАТНОГО КОМПЛЕКСА КОНТРОЛЯ ДОСТУПА USB-УСТРОЙСТВ В КОМПЬЮТЕРНОЙ СЕТИ


Авторы: Лысанов Иван Юрьевич, Кочергина Татьяна Игоревна
Должность: сотрудники
Учебное заведение: Академия ФСО России
Населённый пункт: город Орёл, Орловская область
Наименование материала: научная статья
Тема: ОЦЕНКА ЭФФЕКТИВНОСТИ ФУНКЦИОНИРОВАНИЯ ПРОГРАММНОЙ ЧАСТИ ПРОТОТИПА ПРОГРАММНО-АППАРАТНОГО КОМПЛЕКСА КОНТРОЛЯ ДОСТУПА USB-УСТРОЙСТВ В КОМПЬЮТЕРНОЙ СЕТИ
Раздел: высшее образование





Назад




ОЦЕНКА ЭФФЕКТИВНОСТИ ФУНКЦИОНИРОВАНИЯ

ПРОГРАММНОЙ ЧАСТИ ПРОТОТИПА ПРОГРАММНО-

АППАРАТНОГО КОМПЛЕКСА КОНТРОЛЯ ДОСТУПА USB-

УСТРОЙСТВ В КОМПЬЮТЕРНОЙ СЕТИ

Лысанов Иван Юрьевич

Сотрудник Академии ФСО России

Кочергина Татьяна Игоревна

Сотрудник Академии ФСО России

Важной задачей при создании автоматизированных систем, стоящих на

вооружении Спецсвязи ФСО России, является организация системы защиты

информации от несанкционированного доступа в процессе её хранения и

обработки. Данная система защиты информации может представлять собой

комплекс

программных

средств,

осуществляющий

контроль

и

предотвращение несанкционированного доступа USB-носителей в систему

обработки информации.

Цель разработки системы контроля USB-носителей, определяется

проблемой реализации, как безопасности ПЭВМ, так и локальных сетей

посредством внешних киберугроз и внутренних атак. Внутренние угрозы

вызваны тем, что служащие определенной структуры имеют доступ к

служебной, в том числе и конфиденциальной информации, со своих

персональных компьютеров по локальной сети.

В связи с тем, что контроль за средствами хранения информации

приобретает всё большую актуальность, можно сказать, что одним из

способов обеспечения защиты СВТ может служить аппаратный комплекс

контроля USB-носителей на основе платы Arduino.

Программное

обеспечение

(ПО)

является

конечным

продуктом

алгоритмизации

и

программирования

конкретной

задачи

по

защите

информации. Ошибки в ПО могут иметь серьезные последствия, поэтому

создание высококачественного ПО является весьма актуальной задачей.

В соответствии с ГОСТ 15467-79 качество ПО определяется как

совокупность свойств, обуславливающих его пригодность к преобразованию

исходных данных в искомый результат в соответствии со своим назначением.

Для оценки качества используются функциональные и эксплуатационные

комплексные показатели,

характеризующие

работоспособность

ПО,

показатели универсальности, стоимости, срока ввода и срока службы.

Функциональные показатели качества ПО включают: показатели назначения,

точность

вычисления,

надежность,

устойчивость

к

искажающим

воздействиям, рациональность, время ответа, обобщенный функциональный

показатель.

Эксплуатационные:

документированность,

простоту

обслуживания,

приспособленность

к

анализу

результатов,

1

модифицируемость ПО [1].

Качество ПО характеризуется эффективностью, которая в свою очередь

зависит от исходных данных, параметров вычислительной среды, внутренней

структуры

ПО

и

квалификации

обслуживающего

персонала.

Оценка

эффективности может проводиться как путем теоретических расчетов, так и с

помощью экспериментальных исследований. Теоретическое оценивание

эффективности требует упрощений, допущений и соглашений, которые на

практике могут и не существовать, в тоже время экспериментальная оценка

носит более эффективный характер.

Данная работа посвящена теоретическому оцениванию эффективности

ПО. Экспериментальные исследования программно-аппаратного комплекса

(ПАК) проводились на протяжении года в практических подразделениях, при

этом боев выявлено, о чем свидетельствуют акт внедрения и рецензия.

Для получения явных оценок эффективности производится методика

оценки эффективности по частным показателям эффективности. Методика

заключается в выполнении следующих работ [2]:

1.

определение операционных свойств;

2.

формирование оперативно-технических требований;

3.

построение параметрической модели;

4.

выдвижение

совокупности

частных

параметров

оценки

эффективности;

5.

расчет значений частных параметров оценки эффективности.

Для

выполнения

первого

пункта

важно

взаимодействовать

с

заказчиком и вместе с ним определить необходимые операционные свойства.

ПО должно соответствовать предъявляемым требованиям по технической

устойчивости,

которая

определяется

надежностью,

точностью

и

производительностью.

Если

сформулировать

краткое

объяснение

надежности, то можно сказать, что это комплексный показатель качества,

характеризующий свойство ПО проявлять в процессе эксплуатации ошибки,

внесенные и не устраненные в процессе разработки. В ходе эксплуатации

ошибки обнаруживаются и устраняются. Если при исправлении новые

ошибки не вносятся, то в ходе дальнейшей эксплуатации надежность ПО не

уменьшается. Таким образом, надежность характеризует способность к

безотказному функционированию на протяжении заданного интервала

времени, а значит, наиболее важным в данной работе будет являться расчет

надежности.

Расчет надежности ПО осуществляется с использованием моделей

надежности, которые являются математическими моделями, созданными для

оценки зависимости надежности ПО от определенных параметров. Значения

параметров предполагаются известными, либо могут быть измерены в ходе

наблюдений

или

экспериментального

исследования

процесса

функционирования ПО.

На ранних стадиях проектирования используют описание алгоритмов

по входам и выходам (описание «черного ящика») или структуру алгоритма

2

как совокупность структурных элементов и описание каждого структурного

элемента

по

входам

и

выходам

(описание

«белого ящика»).

Когда

разработаны тексты программ, можно использовать параметры программ:

словарь

языка

программирования,

количество

операций,

операндов,

используемых подпрограмм, локальных меток и другие.

Поэтому модели надежности и методы оценки показателей надежности

ПО разделяются на две основных группы:

1.

Модели и методы проектной оценки надежности, основанные на

исходных

данных,

которые

можно

получить

до

начала

отладки

и

эксплуатации программ:

эмпирическая модель надежности ПО по алгоритму программы;

эмпирическая модель надежности ПО по листингу программы.

2.

Модели

и

методы

статистической

оценки

надежности,

основанные на результатах отладки и опытной или нормальной эксплуатации

ПО:

а) статические модели надежности ПО:

по области ошибок (модель Миллса);

по области данных (модель Нельсона);

б) динамические модели надежности ПО:

дискретные (модель Шумана);

непрерывные (модели Джелинского-Моранды и Муса).

Статические модели принципиально отличаются от динамических

прежде всего тем, что в них не учитывается время появления ошибок в

процессе тестирования и не используется никаких предположений о

поведении

функции

риска

λ(t).

Эти

модели

строятся

на

твердом

статистическом фундаменте.

Выбор модели надежности ПО носит субъективный характер и

является результатом творческого подхода разработчика в исследованиях

надежности ПО. Тем не менее, выбор модели надежности для разработанного

программного продукта может быть обоснован, исходя из следующих

рассуждений.

Так как программный продукт уже разработан, то модель надежности

для него необходимо выбирать для этапа отладки.

Модель Шумана содержит ряд существенных допущений, которые не

могут быть в полной мере соблюдены для разработанного программного

продукта:

общее число команд в программе на машинном языке постоянно;

в начале испытаний число ошибок равно некоторой постоянной

величине и по мере исправления ошибок становится меньше, при этом новые

ошибки не вносятся;

интенсивность

отказов

программы

пропорциональна

числу

остаточных ошибок;

программа содержит только один оператор цикла, в котором есть

операторы ввода информации, операторы присваивания и операторы

3

условной передачи управления вперед;

отсутствуют вложенные циклы, но может быть k параллельных

путей, если имеется k-1 оператор условной передачи управления.

Модели Джелинского-Моранды и Муса относятся к динамическим

моделям и предполагают учет времени появления ошибок, а также

предположений о поведении функции риска λ(t) в процессе тестирования ПО,

что повлияет на достоверность расчета надежности программного продукта.

Модель Нельсона учитывает вероятность выбора определенного

тестового набора для очередного выполнения программы и предполагает, что

область

данных,

необходимых

для

выполнения

тестирования

ПО,

разделяется на K взаимоисключающих подобластей.

Модель

Миллса

при

расчете

надежности

ПО

предполагает

необходимость

перед

началом

тестирования

искусственно

вносить

в

программу

(«засорять»)

некоторое

количество

известных

ошибок.

Специалист, проводящий тестирование, не знает ни количества, ни характера

внесенных ошибок до момента оценки показателей надежности по данной

модели. Тестируя программу в течение некоторого времени, собирается

статистика об ошибках, и появляется возможность сформировать модель, с

прогнозируемым числом первоначально имевшихся в программе ошибок,

чтобы использовать ее для установления доверительного уровня прогноза.

Особую актуальность данному методу придает принцип кучкования

ошибок, согласно которому нахождение в некотором модуле ошибки

увеличивает вероятность того, что в этом модуле есть и другие ошибки.

Точного ответа на вопрос о количестве ошибок в программе очень часто дать

невозможно, а вот построить некоторую оценку можно.

Также, к плюсам данного метода можно отнести то, что в процессе

тестирования участвует не один лишь разработчик, а некоторое количество

лиц, которые также могут вносить искусственные ошибки.

Исходя из приведенных выше рассуждений, для расчета надежности

данного программного продукта выбираем модель Миллса.

Предполагается, что все ошибки (как естественные, так и искусственно

внесенные) имеют равную вероятность быть найденными в процессе

тестирования.

В момент оценки надежности все ошибки делятся на собственные и

искусственные. Первоначальное число ошибок в программе можно оценить

по выражению (1).

N

=

S × n

V

(1)

где N

– первоначальное число ошибок, S − количество искусственно

внесенных ошибок, n − число найденных собственных ошибок, V − число

обнаруженных к моменту оценки искусственных ошибок.

В программе имеется некоторое количество собственных ошибок, и

внесем в нее еще S ошибок. В процессе тестирования были обнаружены все S

4

внесенных ошибок и n собственных ошибок.

Таблица 1 – Результаты тестирования программы

Параметр

Значение

S

20

n

1

V

20

Таким образом, исходя из значений таблицы 1, получим

N

=

20 ×1

20

=

1

(2)

Вторая часть модели связана с проверкой гипотезы от N. Тогда по

формуле Миллса первоначально в программе было N = n ошибок.

Вероятность можно рассчитать по следующему соотношению:

P

=

(

1 , если n

>

K ;

1

S

+

K

+

1

, если n ≤ K .

)

Следовательно, исходя из значений таблицы 1 получим:

P

=

20

20

+

1

+

1

=

0,909.

Таким образом, величина P является мерой доверия к модели и

показывает вероятность того, насколько правильно найдено значение N.

Другими словами, вероятность, с которой можно высказать предположение,

что первоначально в программе было N ошибок, имеет значение 0,909 или

90,9%. Например, пусть мы считаем, что естественных ошибок в программе

нет (N = 0). Внесем в программу 4 искусственные ошибки (S = 4). Будем

тестировать программу, пока не обнаружим все искусственные ошибки.

Пусть при этом мы не обнаружим ни одной естественной ошибки. В этом

случае мера доверия нашему предположению будет равна 80%. Для того

чтобы довести ее до 90% количество искусственных ошибок придется

поднять до 9. Следующие 5% уверенности в отсутствии естественных

ошибок обойдутся в 10 дополнительных искусственных ошибок. Значение M

придется довести до 19.

Если мы предположим, что в программе не более 3-х естественных

ошибок

(N=3),

внесем

в

нее

6

искусственных

(S=6),

найдем

все

искусственные и одну, две или три (но не больше) естественных, то мера

доверия к модели будет 60%.

По полученным результатам можно сделать вывод о достаточно

высокой вероятности безотказной работы разработанного ПО. Сравнивая

полученный результат, с показателем вероятности безотказной работы

5

предъявляемым заказчиком

𝑃

(

𝑡

)

≥ 0,9,

можно

сделать

вывод,

что

разработанное ПО полностью удовлетворяет основным предъявленным

показателям надежности, а значит, является пригодным, оптимальным для

дальнейшего использования.

Проведенная оценка эффективности программной части приходи к

выводу, что оценивать аппаратную часть нет необходимости, так как

работает

она

безотказно

на

протяжении

длительного

времени,

что

подтверждается использованием его в практическом подразделении, о чем

свидетельствуют акт внедрения и рецензия. Исходя, из долговременной

работы ПАК рассмотрим его выявленные достоинства и недостатки.

Достоинствами ПАК являются:

гарантированность

предотвращения

использования

нелегитимных USB-носителей;

невозможность предоставления доступа в режиме чтения к USB-

носителю через различные программы (например, R.saver);

отсутствие

необходимости

изменения

схемы

функционирования ПЭВМ;

удобство использования за счет минимальных размеров

RFID-метки;

меньшая стоимость по сравнению с аналогами (например, АМДЗ

«Соболь»);

возможность аутентификации USB-устройства с помощью

RFID-метки;

предупреждение

администратора

сети

о

факте

несанкционированного доступа;

сокращение времени реакции на инциденты информационной

безопасности.

Недостатком,

в

свою

очередь,

является

целесообразность

использования данного ПАК в небольших организациях. Но он не является

существенным, так как программное обеспечение можно использовать на

большом количестве компьютеров.

Синтез ПАК контроля доступа USB-устройств в КС привел к тому, что

создаваемое средство будет обеспечивать безопасность от различных видов

угроз и внутренних нарушителей, а также будет выполнять защиту со

стороны как программной, так и аппаратной части.

Глобальное распространение интерфейсов на основе USB-технологии

привело, с одной точки зрения, к стремительному росту уязвимостей

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

невозможности отказа от данной технологии в пределах функционирования

различных организаций. Полностью заблокировать USB или вывести порты

из строя порою является сложной задачей: не только потому, что в границах

функционирования технологических процессов требуется использование

компактных и мобильных накопителей, но и потому, что через USB-

интерфейс происходит подключение подавляющего множества современных

6

периферийных устройств, необходимых в повседневном функциональном

обороте.

СПИСОК ЛИТЕРАТУРЫ

1.

ГОСТ Р 52069.0–2013.

Защита информации. Система стандартов.

Основные положения [Текст]. – М.: Изд-во стандартов, 2014. – 15 с.

2.

ГОСТ Р 50922-2006.

Защита информации. Основные термины и

определения [Текст]. – М.: Изд-во стандартов, 2006. – 18 с.

3.

Гостехкомиссия РФ. Сборник руководящих документов по защите

информации от несанкционированного доступа. ГТК [Текст]. – М.: Изд-во

стандартов, 1997. – 128 с.

7



В раздел образования



Поделиться в социальной сети Одноклассники