Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Липаев В.В. Программная инженерия

.pdf
Скачиваний:
724
Добавлен:
02.05.2014
Размер:
10.14 Mб
Скачать

Лекция 11. Характеристики качества программных средств

операционные платформы. Информация о процессах, происходящих во внешней среде, может иметь большие объем и трудоемкость первичного накопления и актуализации, что определяет необходимость ее тщательно­ го хранения и регламентированного изменения. Так как перенос БД часто обусловлен необходимостью увеличения ресурсов ЭВМ, доступных для решения новых перспективных задач, их проект становится естественным расширением функций ИБД относительно исходной версии проекта. Для оценки качества и определения требований к мобильности ИБД, так же как для ПС, следует решать задачу сравнения достигаемого эффекта и затрат для методов переноса или повторной разработки компонентов и наполнения базы данных в конкретных условиях с учетом всех перечис­ ленных факторов и затрат.

11.5. Характеристики защиты и безопасности функционирования программных средств

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

ных класса:

— системы, в которых накапливаются, обрабатываются и хранятся большие объемы информации из внешней среды с активным участием пользователей, для которой должна обеспечиваться конфиденциальность,

330

11.5. Характеристики защиты и безопасности функционирования программных средств

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

ности;

— системы и объекты автоматизации, в аппаратуру которых встрое­ ны комплексы программ управления и обработки информации в реаль­ ном времени, основные задачи которых состоят в обеспечении достовер­ ной реализации эффективного и устойчивого управления объектами внеш­ ней среды при относительно малом (негативном) участии пользователей в их решении и высоких требованиях к характеристикам функциональной

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

В ряде случаев эти два понятия и их характеристики близки и

связаны с нарушением выполнения требований спецификаций к функцио­ нальной пригодности объекта или системы, однако они имеют существен­ ные особенности, которые целесообразно уточнить.

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

331

Лекция 11. Характеристики качества программных средств

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

техническими отказами внешней аппаратуры и искажениями ис­ ходной информации от объектов внешней среды и от пользователей сис­ тем и обработанной информации;

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

дефектами и ошибками в комплексах программ обработки инфор­ мации и в данных;

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

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

332

11.5. Характеристики защиты и безопасности функционирования программных средств

отказовые ситуации таких систем обычно исчисляется секундами или до­ лями секунды, и процессы восстановления работоспособности должны проводиться за это время в достаточной степени автоматизированно (бор­ товые системы в авиации, на транспорте, в некоторых средствах вооруже­ ния, системы управления атомными электростанциями). Эти системы ис­ пользуют относительно небольшие информационные ресурсы, сложные логические комплексы программ управления и практически недоступны для предумышленных негативных внешних воздействий.

Системы второго класса применяются для управления процессами и обработки деловой информации из внешней среды, в которых активно участвуют специалисты-операторы (банковские, административные, штаб­ ные военные системы). Допустимое время реакции на опасные отказы в этих системах может составлять десятки секунд и минуты, и операции по восстановлению работоспособности частично могут быть доверены спе­ циалистам-администраторам по обеспечению функциональной безопасно­ сти. В этих системах возможны предумышленные негативные внешние воздействия, однако они ниже не рассматриваются.

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

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

333

Лекция 11. Характеристики качества программных средств

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

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

литики комплексного обеспечения безопасности систем и программных продуктов (см. рис. 11.1). Требования к характеристикам программных средств, обеспечивающим безопасность, обычно представляются в соста­ ве общей спецификации требований к характеристикам системы.

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

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

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

иобеспечения безопасности должна быть меньше, чем размеры наиболее вероятного или возможного (в среднем), неприемлемого потребителями системы риска-ущерба, от любых потенциальных угроз;

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

сучетом их опасности для потребителя;

комплекс программ защиты должен иметь целевые, индивидуаль­ ные компоненты, предназначенные для обеспечения безопасности функ-

334

11.5. Характеристики защиты и безопасности функционирования программных средств

ционирования каждого отдельно взятого объекта и функциональной зада­ чи ПС с учетом их уязвимости и степени влияния на безопасность систе­ мы в целом;

система программ защиты не должна приводить к ощутимым труд­ ностям, помехам и снижению эффективности применения и решения ос­ новных, функциональных задач пользователями в целом.

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

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

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

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

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

перечень подлежащих решению задач защиты, перекрывающих все потенциально возможные угрозы, и оценки характеристик решения отдельных задач, необходимых для обеспечения равнопрочной безопасно­ сти системы с заданной эффективностью;

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

ресурсы, необходимые и доступные для разработки и размещения программной системы обеспечения безопасности (финансово-экономичес-

335

Лекция 11. Характеристики качества программных средств

кие, ограниченная квалификация специалистов и вычислительные ресур­ сы ЭВМ);

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

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

В основу формирования требований по безопасности должно быть положено определение перечня и характеристик потенциальных угроз бе­ зопасности и установление возможных источников их возникновения (см. рис. 11.1).

Внешними дестабилизирующими факторами, создающими угрозы безопасности функционирования программных продуктов и системы, яв­ ляются:

предумышленные, негативные воздействия лиц с целью искаже­ ния, уничтожения или хищения программ, данных и документов информа­ ционной системы;

ошибки и несанкционированные воздействия оперативного, адми­ нистративного и обслуживающего персонала в процессе эксплуатации си­ стемы;

искажения в каналах телекоммуникации информации, поступаю­ щей от внешних источников и передаваемой потребителям, а также недо­ пустимые значения и изменения характеристик потоков информации от объектов внешней среды;

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

вирусы, распространяемые по каналам телекоммуникации;

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

Внутренними источниками угроз безопасности функционирова­ ния сложных систем и ПС являются (см. лекцию 10):

системные ошибки при постановке целей и задач проектирования системы, формулировке требований к функциям и характеристикам средств защиты решения задач, определении условий и параметров внешней сре­ ды, в которой предстоит применять программный продукт;

336

11.5.Характеристики защиты и безопасности функционирования программных средств

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

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

атакже в исходной и результирующей документации на компоненты ПС;

недостаточная эффективность используемых методов и средств оперативной защиты программ и данных и обеспечения безопасности фун­ кционирования системы в условиях случайных и предумышленных нега­ тивных воздействий от внешней среды.

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

Величина и рациональное распределение ресурсов ЭВМ на отдель­ ные виды защиты оказывает значительное влияние на достигаемую комп­ лексную безопасность системы. Наиболее общим видом ресурсов, кото­ рый приходится учитывать при проектировании, являются допустимые

финансово-экономические затраты или сметная стоимость разра­ ботки и функционирования системы обеспечения безопасности и средств программной защиты. Для размещения средств защиты в объект­ ной ЭВМ при проектировании должна быть предусмотрена программная и информационная избыточность в виде ресурсов внешней и внутренней памяти ЭВМ. Кроме того, для функционирования средств защиты необходи­ ма временная избыточность — дополнительная производительность ЭВМ.

При проектировании целесообразно разделять вычислительные ре­ сурсы, необходимые для непосредственного решения основных, функцио­ нальных задач системы, и ресурсы, требующиеся для защиты и обеспече-

337

Лекция 11. Характеристики качества программных средств

ния корректного, безопасного функционирования программного продукта. Соотношение между этими видами ресурсов в реальных крупномасштаб­ ных системах зависит от сложности и состава решаемых функциональных задач, степени их критичности и требований к характеристикам безопас­ ности всей системы. В различных классах систем ресурсы на обеспечение безопасности могут составлять от 5—20% до 100—300% от ресурсов, используемых на решение основных, функциональных задач, т.е. в особых случаях (критические военные системы) могут превышать последние в 2—4 раза. В административных и организационных системах средства обеспечения безопасности обычно используют 10—20% всех видов тру­ довых, аппаратных и вычислительных ресурсов.

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

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

Проектирование системы защиты тесно связано с определением по­ нятия и функций администратора безопасности системы. Администра­ тор безопасности — субъект доступа, ответственный за защиту охраняе­ мых ресурсов и эффективное использование имеющихся функций защиты системы пользователями. Без постоянного присутствия администратора при применении крупных систем меры защиты могут быть неэффектив­ ными, так как злоумышленник получает возможность в течение неограни­ ченного времени осуществлять попытки несанкционированного доступа. Поэтому в системы обеспечения безопасности вводятся:

административные функции и интерфейсы, доступные админист­ ратору по безопасности;

принципы и средства для последовательного, эффективного ис­ пользования и адаптации функций компонентов системы безопасности;

средства конфигурирования функций системы и комплекса обес­ печения безопасности;

338

11.5.Характеристики защиты и безопасности функционирования программных средств

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

В системах с большим количеством объектов, требующих разных уровней защиты, может быть несколько администраторов, объединенных

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

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

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

Проекты комплексов защиты зависят от конкретных характеристик и назначения объектов, подлежащих защите, а также от применяемых нор­ мативных документов и их требований. Проектирование средств обеспе­ чения безопасности функционирования ПС — творческий процесс, зави­ сящий от множества факторов, что определяет ограниченную стандар­ тизацию совокупностиряда методов и задач. Наиболее широко и детально методологические и системные задачи проектирования комплексной за­ щиты систем изложены в трех частях стандарта ISO 15408:1-3:1999 — Методы и средства обеспечения безопасности. Критерии оценки безопас-

339