×
17.01.2020
220.017.f6da

Результат интеллектуальной деятельности: СПОСОБ АНАЛИЗА ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ НА ОТСУТСТВИЕ НЕДЕКЛАРИРОВАННЫХ ФУНКЦИОНАЛЬНЫХ ВОЗМОЖНОСТЕЙ

Вид РИД

Изобретение

Аннотация: Изобретение относится к области информационной безопасности. Техническим результатом является повышение достоверности результатов контроля отсутствия недекларированных функциональных возможностей в ПО за счет обеспечения выявления программных закладок типа «логическая бомба». В способе анализа программного обеспечения на отсутствие недекларированных функциональных возможностей предварительно выделяют для анализа исследуемого ПО отдельную рабочую станцию, отключают у данной рабочей станции возможность синхронизации системного времени с астрономическим временем, имитируют на данной рабочей станции службу времени, на которую замыкают канал синхронизации времени среды функционирования исследуемого ПО, после чего осуществляют моделирование процесса функционирования исследуемого ПО. На основе анализа информации, перехваченной и сохраненной в процессе моделирования, выявляют подозрительные функциональные объекты, включая программные закладки типа «логическая бомба». 1 ил.

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

Толкование терминов, используемых в заявке:

недекларированные (функциональные) возможности - функциональные возможности ПО, не описанные или не соответствующие описанным в документации, при использовании которых возможно нарушение конфиденциальности, доступности или целостности обрабатываемой информации (Руководящий документ «Защита от несанкционированного доступа к информации. Часть 1. Программное обеспечение средств защиты информации. Классификация по уровню контроля отсутствия недекларированных возможностей», утв. Гостехкомиссией России 04.06.1999, далее - РД НДВ);

программные закладки - преднамеренно внесенные в ПО функциональные объекты, которые при определенных условиях (входных данных) инициируют выполнение не описанных в документации функций ПО, приводящих к нарушению конфиденциальности, доступности или целостности обрабатываемой информации (РД НДВ);

логическая бомба (англ. logic bomb) - функциональный объект, который запускается при определенных временных или информационных условиях для осуществления вредоносных действий (Танненбаум Э., Бос X. Современные операционные системы. 4-е изд. - СПб.: - Питер, 2015);

функциональный объект - элемент программы, осуществляющий выполнение действий по реализации законченного фрагмента алгоритма программы. В качестве функциональных объектов могут выступать процедуры, функции, ветви, операторы и т.п. (РД НДВ);

CWE - общий перечень дефектов безопасности. Предназначен для разработчиков и специалистов по обеспечению безопасности ПО. Он представляет собой официальный реестр или словарь общих дефектов безопасности, которые могут проявиться в архитектуре, проектировании, коде или реализации ПО, и могут быть использованы злоумышленниками для получения несанкционированного доступа к системе. Данный перечень был разработан в качестве универсального формального языка для описания дефектов безопасности ПО, а также в качестве стандарта для измерения эффективности инструментов, выявляющих такие дефекты, и для распознавания, устранения и предотвращения эти дефектов (Common Weakness Enumeration: офиц. сайт.URL: https://cwe.mitre.org/about/faq.htm);

фактический маршрут выполнения скомпилированных файлов (функциональных объектов) - последовательность фактически выполняемых функциональны объектов при определенных условиях (входных данных) (РД НДВ);

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

Уровень техники

а) описание аналогов

Известен аналог - система контроля отсутствия недекларированных возможностей в программном обеспечении (Пат. 2434265 Российская Федерация, МПК G06F 11/00. Система контроля отсутствия недекларированных возможностей в программном обеспечении [Текст] / Минаков В.А., Мирошников В.В., Бурушкин А.А.; заявитель и правообладатель Федеральное государственное учреждение «Государственный научно-исследовательский испытательный институт проблем технической защиты информации Федеральной службы по техническому и экспортному контролю». - №2010129013/08; заявл. 13.07.2010; опубл. 20.11.2011. Бюл. №32), которая заключается в том, что сохраняют исходные тексты исследуемого ПО, устанавливают контрольные точки в файлы, а также процедуры и функции исходных текстов исследуемого ПО, компилируют файлы исходных текстов исследуемого ПО, запускают на выполнение скомпилированные файлы исследуемого ПО, обрабатывают запросы из скомпилированных файлов и к ним со стороны других исполняемых файлов, перехватывают и сохраняют информацию о найденных потоках управления исследуемого ПО, перехватывают и сохраняют информацию о пройденных контрольных точках скомпилированных файлов исходных текстов исследуемого ПО, перехватывают и сохраняют информацию о фактических маршрутах выполнения скомпилированных файлов исходных текстов исследуемого ПО, дополнительно осуществляют поиск потенциально опасных программных конструкций в файлах исходных текстов исследуемого ПО на основе предварительно сформированного перечня потенциально опасных программных конструкций, осуществляют корректировку результатов перехвата информации о найденных потоках управления исследуемого ПО, пройденных контрольных точках скомпилированных файлов исходных текстов исследуемого ПО, фактических маршрутах выполнения скомпилированных файлов исходных текстов исследуемого ПО, поиска потенциально опасных программных конструкций в файлах исходных текстов исследуемого ПО с помощью интерактивного взаимодействия с экспертами, после чего выдают итоговые результаты [4].

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

Известен аналог - система анализа программного обеспечения на отсутствие недекларированных возможностей (Пат. 2622622 Российская Федерация, МПК G06F 21/00, G06F 21/50, G06F 11/30, G06F 12/16. Система анализа программного обеспечения на отсутствие недекларированных возможностей [Текст] / Горюнов М.Н., Мельников П.В., Закалкин П.В., Воробьев С.А., Анисимов Д.В., Петров К.Е.; заявитель и правообладатель Федеральное государственное казенное военное образовательное учреждение высшего образования «Академия федеральной службы охраны Российской Федерации» (Академия ФСО России). - №2016110533; заявл. 22.03.2016; опубл. 16.06.2017. Бюл. №17), которая заключается в том, что сохраняют файлы исходных текстов исследуемого ПО, фиксируют исходное состояние файлов исходных текстов исследуемого ПО, осуществляют проверку избыточности исходных текстов исследуемого ПО, проводят анализ и систематизацию контекстной информации, устанавливают контрольные точки в файлы, процедуры и функции исходных текстов исследуемого ПО, компилируют файлы исходных текстов исследуемого ПО, запускают на выполнение скомпилированные файлы исследуемого ПО, обрабатывают запросы из скомпилированных файлов и к ним со стороны других исполняемых файлов, перехватывают и сохраняют информацию о найденных потоках управления исследуемого ПО, перехватывают и сохраняют информацию о пройденных контрольных точках скомпилированных файлов исходных текстов исследуемого ПО, перехватывают и сохраняют информацию о фактических маршрутах выполнения скомпилированных файлов исходных текстов исследуемого ПО, помимо этого осуществляют поиск потенциально опасных программных конструкций в файлах исходных текстов исследуемого ПО на основе предварительно сформированного перечня потенциально опасных программных конструкций и их тестирование, осуществляют корректировку результатов перехвата информации о найденных потоках управления исследуемого ПО, пройденных контрольных точках скомпилированных файлов исходных текстов исследуемого ПО, фактических маршрутах выполнения скомпилированных файлов исходных текстов исследуемого ПО, поиска и тестирования потенциально опасных программных конструкций в файлах исходных текстов исследуемого ПО с помощью интерактивного взаимодействия с экспертами, после чего выдают итоговые результаты [5].

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

Наиболее близким по технической сущности к предлагаемому способу является система анализа программного обеспечения на отсутствие потенциально опасных функциональных объектов (Пат. 2675210 Российская Федерация, МПК G06F 21/00. Система анализа программного обеспечения на отсутствие потенциально опасных функциональных объектов [Текст] / Горюнов М.Н., Мельников П.В., Закалкин П.В., Воробьев С.А., Анисимов Д.В., Петров К.Е.; заявитель и правообладатель Федеральное государственное казенное военное образовательное учреждение высшего образования «Академия федеральной службы охраны Российской Федерации» (Академия ФСО России). - №2018103834; заявл. 31.01.2018; опубл. 17.12.2018. Бюл. №35), заключающаяся в том, что сохраняют файлы исходных текстов исследуемого ПО, фиксируют исходное состояние файлов исходных текстов исследуемого ПО, осуществляют проверку избыточности исходных текстов исследуемого ПО, проводят анализ и систематизацию контекстной информации, выявляют массивы бинарных данных и сравнивают их с массивами бинарных данных, поступающими из репозитория массивов бинарных данных, устанавливают контрольные точки в файлы исходных текстов, а также процедуры и функции исходных текстов исследуемого ПО, компилируют файлы исходных текстов исследуемого ПО, запускают на выполнение скомпилированные файлы исследуемого ПО, обрабатывают запросы к ним со стороны других исполняемых файлов, перехватывают и сохраняют информацию о найденных потоках управления исследуемого ПО, перехватывают и сохраняют информацию о пройденных контрольных точках скомпилированных файлов исходных текстов исследуемого ПО, перехватывают и сохраняют информацию о фактических маршрутах выполнения скомпилированных файлов исходных текстов исследуемого ПО, помимо этого осуществляют поиск потенциально опасных программных конструкций в файлах исходных текстов исследуемого ПО на основе предварительно сформированного перечня потенциально опасных программных конструкций и их тестирование, осуществляют экспертную корректировку результатов перехвата информации о пройденных контрольных точках скомпилированных файлов исходных текстов исследуемого ПО, о фактических маршрутах выполнения скомпилированных файлов исходных текстов исследуемого ПО, поиска и тестирования потенциально опасных программных конструкций в файлах исходных текстов исследуемого ПО, осуществляют экспертную оценку влияния функциональных объектов исследуемого ПО на программные и программно-технические средства защиты информации, после чего выдают итоговые результаты [6].

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

Раскрытие сущности изобретения

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

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

б) совокупность существенных признаков

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

Реализованный в прототипе подход к выявлению недекларированных функциональных возможностей в исходных текстах ПО заключается в анализе и систематизации контекстной информации, сигнатурном анализе исходных текстов исследуемого ПО (поиск CWE-уязвимостей) на основе базы CWE-уязвимостей, анализе информации, перехваченной и сохраненной в процессе выполнения скомпилированных файлов исследуемого ПО, а также при помощи выявления функционала, нацеленного на нарушение работы механизмов защиты среды функционирования на основе репозитория массивов бинарных данных. При этом из виду упускается то, что программные закладки типа «логическая бомба» могут не эксплуатировать уязвимости среды функционирования и не быть нацеленными на нарушение работы механизмов защиты среды функционирования, вследствие чего могут отсутствовать в базе CWE-уязвимостей и в репозитории массивов бинарных данных. Кроме того, программные закладки типа «логическая бомба» срабатывают при выполнении некоторого условия, в частности, при наступлении определенной злоумышленником даты. Подобное условие может не выполниться в процессе выполнения скомпилированных файлов исследуемого ПО на этапе контроля отсутствия недекларированных функциональных возможностей, вследствие чего подобная программная закладка не будет выявлена. Также контекстная информация, содержащаяся в исходных текстах исследуемого ПО, может не содержать сведений об имеющихся программных закладках типа «логическая бомба».

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

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

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

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

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

Доказательства соответствия заявленного изобретения условиям патентоспособности «новизна» и «изобретательский уровень».

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

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

Краткое описание чертежей

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

Осуществление изобретения

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

Перед непосредственно моделированием процесса функционирования ПО сохраняют на рабочей станции файлы исходных текстов исследуемого ПО, фиксируют исходное состояние файлов исходных текстов исследуемого ПО, осуществляют проверку избыточности исходных текстов исследуемого ПО, проводят анализ и систематизацию контекстной информации в исходных текстах исследуемого ПО, выявляя возможные описания недекларированных функциональных возможностей и соответствующие им функциональные объекты ФОКНТ, выявляют массивы бинарных данных в исходных текстах исследуемого ПО, сравнивают их с массивами бинарных данных, поступающими из репозитория массивов бинарных данных, и выявляют бинарные вставки ФОБВ, осуществляют поиск потенциально опасных программных конструкций ФОПОК в файлах исходных текстов исследуемого ПО на основе предварительно сформированного перечня потенциально опасных программных конструкций и их тестирование, устанавливают контрольные точки в файлы исходных текстов, а также процедуры и функции исходных текстов исследуемого ПО и компилируют файлы исходных текстов исследуемого ПО.

Затем осуществляют непосредственно моделирование процесса функционирования исследуемого ПО в течение планируемого срока его эксплуатации.

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

Сдвиг точки времени среды функционирования осуществляется по следующему правилу.

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

Ti=Ti-1+С=ТОС+i*С,

где Ti - точка времени среды функционирования на текущей итерации, Ti=[TOC.. Тмакс], i - порядковый номер текущей итерации, i=[0..N), С -интервал времени, равный одним суткам, Т0ОС.

На каждой итерации цикла обрабатывают запросы из скомпилированных файлов и к ним со стороны других исполняемых файлов, перехватывают и сохраняют информацию о найденных потоках управления MПУi о пройденных контрольных точках МКТi о фактических маршрутах выполнения скомпилированных файлов исследуемого ПО MTPi.

Найденные потоки управления МПУ представляют собой множество векторов функциональных объектов [ФО1..ФОk], k=[1..K], K - количество функциональных объектов в исследуемом ПО, которые расположены в порядке передачи управления от одного функционального объекта к другому.

Пройденные контрольные точки Мкт представляют собой множество векторов [КТ1..КТр], р=[1..Р], Р - количество контрольных точек, установленных в исходных текстах исследуемого ПО.

Фактические маршруты выполнения скомпилированных файлов исследуемого ПО МТР представляют собой множество векторов [ФО1..ФОk], k=[1..K], K - количество функциональных объектов в исследуемом ПО, функциональные объекты в которых расположены в порядке их выполнения. При этом вектора функциональных объектов, представляющие фактические маршруты выполнения, могут не совпадать с векторами функциональных объектов, представляющими потоки управления.

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

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

FПУ(MПУi,MПУi-1)=ФOПУi - функция выявления подозрительных функциональных объектов на основе анализа потоков управления, перехваченных и сохраненных на i-й итерации, ФОПУi - множество подозрительных функциональных объектов, выявленных на основе анализа потоков управления, перехваченных и сохраненных на i-й итерации;

FКT(MКТi,MКТi-1)=ФOКТi - функция выявления подозрительных функциональных объектов на основе анализа пройденных контрольных точек, перехваченных и сохраненных на i-й итерации, ФОКТi - множество подозрительных функциональных объектов, выявленных на основе анализа пройденных контрольных точек, перехваченных и сохраненных на i-й итерации;

FTP(MTPi,MTPi-1)=ФOTPi - функция выявления подозрительных функциональных объектов на основе анализа фактических маршрутов выполнения скомпилированных файлов, перехваченных и сохраненных на i-й итерации, ФОТРi - множество подозрительных функциональных объектов, выявленных на основе анализа фактических маршрутов выполнения скомпилированных файлов, перехваченных и сохраненных на i-й итерации.

При этом i=[1..N].

Функция выявления подозрительных функциональных объектов на основе анализа потоков управления FПУ(MПУi,MПУi-1) работает следующим образом. Каждому вектору множества МПУi-1 ставится в соответствие равный ему вектор множества MПУi. Между векторами множества МПУi, для которых не был найден равный вектор множества MПУi-1, выявляются отличия в виде набора соответствующих функциональных объектов ФОПУ, которые далее рассматриваются как подозрительные, т.е. потенциально реализующие недекларированные функциональные возможности, и сохраняются для последующего экспертного анализа.

Функция выявления подозрительных функциональных объектов на основе анализа пройденных контрольных точек FКТКТiКТi-1) работает следующим образом. Каждому вектору множества MКTi-1 ставится в соответствие равный ему вектор МКТi. Между векторами множества MКTi, для которых не был найден равный вектор множества МКТ-i, выявляются отличия в виде набора соответствующих контрольных точек, после чего определяются функциональные объекты ФОКТ, в которых были установлены выявленные контрольные точки, которые далее рассматриваются как подозрительные, т.е. потенциально реализующие недекларированные функциональные возможности, и сохраняются для последующего экспертного анализа.

Функция выявления подозрительных функциональных объектов на основе анализа фактических маршрутов выполнения скомпилированных файлов FTP(MTPi,MTPi-1) работает следующим образом. Каждому вектору множества MTPi-1 ставится в соответствие равный ему вектор множества МТРi. Между векторами множества MTPi, для которых не был найден равный вектор множества MTPi-1, выявляются отличия в виде набора соответствующих функциональных объектов ФОТР, которые далее рассматриваются как подозрительные, т.е. потенциально реализующие недекларированные функциональные возможности, и сохраняются для последующего экспертного анализа.

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

Imm=32*m, m=[1..N/32] - контрольные итерации, соответствующие месячному периоду работы исследуемого ПО, m - натуральное число;

Ikk=93*k, k=[1..N/93] - контрольные итерации, соответствующие квартальному периоду работы исследуемого ПО, k - натуральное число;

Igg=366*g, g=[1..N/366] - контрольные итерации, соответствующие годовому периоду работы исследуемого ПО, g - натуральное число.

Группируют выявленные подозрительные функциональные объекты в соответствии с установленными контрольными итерациями:

j=[Imm-1..Imm] - множества подозрительных функциональных объектов, выявленных в течение месячного периода работы исследуемого ПО;

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

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

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

включающую выявленные и сгруппированные подозрительные функциональные объекты, а также результаты поиска потенциально опасных конструкций ФОПОК, анализа и систематизации контекстной информации ФОКНТ, выявления бинарных вставок ФОБВ и подвергают ее экспертному анализу с целью установления того, что выявленные подозрительные функциональные объекты действительно реализуют недекларированные функциональные возможности, в том числе типа «логическая бомба». Затем среди функциональных объектов ФОБВ производится выявление функциональных объектов, взаимодействующих со средствами защиты информации, производится их анализ на предмет наличия функционала, деструктивного по отношению к средствам защиты информации, после чего принимается окончательное решение о наличии недекларированных функциональных возможностей в исследуемом ПО, в том числе типа «логическая бомба».

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

Способ анализа программного обеспечения на отсутствие недекларированных функциональных возможностей, заключающийся в том, что сохраняют файлы исходных текстов исследуемого ПО, фиксируют исходное состояние файлов исходных текстов исследуемого ПО, осуществляют проверку избыточности исходных текстов исследуемого ПО, проводят анализ и систематизацию контекстной информации, выявляют массивы бинарных данных и сравнивают их с массивами бинарных данных, поступающими из репозитория массивов бинарных данных, устанавливают контрольные точки в файлы исходных текстов, а также процедуры и функции исходных текстов исследуемого ПО, компилируют файлы исходных текстов исследуемого ПО, запускают на выполнение скомпилированные файлы исследуемого ПО, обрабатывают запросы к ним со стороны других исполняемых файлов, перехватывают и сохраняют информацию о найденных потоках управления исследуемого ПО, перехватывают и сохраняют информацию о пройденных контрольных точках скомпилированных файлов исходных текстов исследуемого ПО, перехватывают и сохраняют информацию о фактических маршрутах выполнения скомпилированных файлов исходных текстов исследуемого ПО, помимо этого осуществляют поиск потенциально опасных программных конструкций в файлах исходных текстов исследуемого ПО на основе предварительно сформированного перечня потенциально опасных программных конструкций и их тестирование, осуществляют экспертную корректировку результатов перехвата информации о пройденных контрольных точках скомпилированных файлов исходных текстов исследуемого ПО, о фактических маршрутах выполнения скомпилированных файлов исходных текстов исследуемого ПО, поиска и тестирования потенциально опасных программных конструкций в файлах исходных текстов исследуемого ПО, осуществляют экспертную оценку влияния функциональных объектов исследуемого ПО на программные и программно-технические средства защиты информации, после чего выдают итоговые результаты, отличающийся тем, что предварительно выделяют для анализа исследуемого ПО отдельную рабочую станцию, отключают у данной рабочей станции возможность синхронизации системного времени с астрономическим временем, имитируют на данной рабочей станции службу времени, на которую замыкают канал синхронизации времени среды функционирования исследуемого ПО, а также осуществляют моделирование процесса функционирования исследуемого ПО в течение планируемого срока его эксплуатации путем запуска скомпилированных файлов исследуемого ПО и циклического выполнения всех декларированных в документации к исследуемому ПО функциональных возможностей, при этом на каждой итерации цикла: обрабатывают запросы из скомпилированных файлов и к ним со стороны других исполняемых файлов, перехватывают и сохраняют информацию о найденных потоках управления, о пройденных контрольных точках, о фактических маршрутах выполнения скомпилированных файлов исследуемого ПО, при помощи сымитированной службы времени осуществляют сдвиг точки времени среды функционирования ПО по установленному правилу и переходят к следующей итерации цикла, после завершения цикла, т.е. завершения моделирования планируемого срока эксплуатации исследуемого ПО, осуществляют анализ информации, перехваченной и сохраненной в процессе выполнения цикла, и выявление подозрительных функциональных объектов, включая функциональные объекты, реализующие недекларированные функциональные возможности типа «логическая бомба».
СПОСОБ АНАЛИЗА ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ НА ОТСУТСТВИЕ НЕДЕКЛАРИРОВАННЫХ ФУНКЦИОНАЛЬНЫХ ВОЗМОЖНОСТЕЙ
СПОСОБ АНАЛИЗА ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ НА ОТСУТСТВИЕ НЕДЕКЛАРИРОВАННЫХ ФУНКЦИОНАЛЬНЫХ ВОЗМОЖНОСТЕЙ
Источник поступления информации: Роспатент

Показаны записи 1-10 из 32.
25.08.2017
№217.015.ce25

Способ защищенной передачи шифрованной информации по каналам связи

Изобретение относится к криптографической защите информации. Технический результат - обеспечение устойчивости защищаемой информации к различным видам воздействия. Способ защищенной передачи шифрованной информации по каналам связи обеспечивает криптографическую защиту и помехоустойчивое...
Тип: Изобретение
Номер охранного документа: 0002620730
Дата охранного документа: 29.05.2017
25.08.2017
№217.015.ce5b

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

Изобретение относится к технике формирования сложных шумоподобных сигналов. Технический результат заключается в расширении функциональных возможностей за счет формирования различных словарей нелинейных рекуррентных последовательностей для различных кодовых словарей и их программную смену в...
Тип: Изобретение
Номер охранного документа: 0002620725
Дата охранного документа: 29.05.2017
26.08.2017
№217.015.da8f

Система защищенного электронного документооборота

Изобретение относится к области защиты информации в автоматизированных системах, а именно к защите информации в системах электронного документооборота, и может найти применение при организации защищенного юридически значимого информационного обмена документированной информацией. Технический...
Тип: Изобретение
Номер охранного документа: 0002623899
Дата охранного документа: 29.06.2017
26.08.2017
№217.015.e2f1

Способ сравнительной оценки структур сети связи

Изобретение относится к области информационной безопасности сетей связи. Технический результат заключается в повышении безопасности передачи данных. В способ в качестве параметров сети связи задают минимальное допустимое значение комплексного показателя безопасности для линий связи, общее...
Тип: Изобретение
Номер охранного документа: 0002626099
Дата охранного документа: 21.07.2017
26.08.2017
№217.015.e393

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

Изобретение относится к области вычислительной техники и может быть использовано в технике связи. Технический результат заключается в сокращении аппаратных затрат на построение программно-аппаратным способом большего ансамбля имитостойких сложных сигналов вида дискретно-частотных сигналов...
Тип: Изобретение
Номер охранного документа: 0002626331
Дата охранного документа: 26.07.2017
29.12.2017
№217.015.f2ac

Способ многоуровневого контроля целостности электронных документов

Изобретение относится к области защиты информации в системах электронного документооборота. Технический результат заключается в обеспечении многоуровневого контроля целостности электронных документов. В заявленном способе от файла электронного документа вычисляют три контрольных значения...
Тип: Изобретение
Номер охранного документа: 0002637482
Дата охранного документа: 04.12.2017
29.12.2017
№217.015.f60b

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

Изобретение относится к контролю целостности данных, обрабатываемых в автоматизированных системах. Технический результат – обеспечение необходимого уровня защиты записей данных в файле на основе задания соответствующих параметров метода «однократной записи»: степени вложенности в блок данных,...
Тип: Изобретение
Номер охранного документа: 0002637486
Дата охранного документа: 04.12.2017
19.01.2018
№218.016.066c

Устройство выявления скрытых каналов на основе идентификации ошибок в тестируемых узлах автоматизированных систем

Изобретение относится к области информационной безопасности. Технический результат заключается в выявлении скрытых каналов на основе идентификации ошибок, искусственно вызванных в работе закладочных устройств либо возникающих в результате несанкционированных воздействий закладочных устройств, в...
Тип: Изобретение
Номер охранного документа: 0002631141
Дата охранного документа: 19.09.2017
20.01.2018
№218.016.11ef

Устройство имитостойкого кодирования и декодирования информации избыточными систематическими кодами

Изобретение относится к области электросвязи. Технический результат - обеспечение возможности защиты передаваемой по каналам связи двоичной информации от преднамеренных помех. Поставленная цель достигается тем, что информация, подлежащая передаче, поступает в канал кодирования. Процесс...
Тип: Изобретение
Номер охранного документа: 0002634201
Дата охранного документа: 24.10.2017
04.04.2018
№218.016.321a

Способ маскирования структуры сети связи

Изобретение относится к технологиям сетевой связи. Технический результат заключается в повышении безопасности передачи данных. В способе предварительно задают информацию о структуре сети связи, исходные данные об узлах и абонентах сети, допустимого значения комплексного показателя безопасности...
Тип: Изобретение
Номер охранного документа: 0002645292
Дата охранного документа: 19.02.2018
Показаны записи 1-10 из 11.
20.07.2014
№216.012.e002

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

Изобретение относится к области психологии, а именно к педагогической психологии, и может быть использовано для получения объективных данных о ходе процесса обучения, усвоения материала, познавательной деятельности обучаемых во время проведения занятий. Предъявляют группе обучаемых обучающей...
Тип: Изобретение
Номер охранного документа: 0002523132
Дата охранного документа: 20.07.2014
10.04.2015
№216.013.3adb

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

Изобретение относится к системам классификации документов. Техническим результатом является сокращение времени работы системы за счет возможности классифицировать документы по форме и выделяемым метаданным и возможности проводить анализ только информативной части документа. В способе...
Тип: Изобретение
Номер охранного документа: 0002546555
Дата охранного документа: 10.04.2015
12.01.2017
№217.015.5c1f

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

Система включает в себя механизм управления давлением, трубопроводы подвода воздуха к шинам колес, источник сжатого воздуха. Механизм управления давлением выполнен в виде электронного блока, а система дополнительно снабжена креномером с оптическими датчиками, связанными с электронным блоком. На...
Тип: Изобретение
Номер охранного документа: 0002589764
Дата охранного документа: 10.07.2016
25.08.2017
№217.015.9a0f

Способ защиты акустической речевой информации от сопутствующей передачи по оптическим линиям связи

Изобретение относится к технике связи и может использоваться для обеспечения информационной безопасности при защите акустической речевой информации (АРИ) от сопутствующей передачи по линиям связи, в том числе оптическим линиям связи (ОЛС). Технический результат состоит в исключении наводимой в...
Тип: Изобретение
Номер охранного документа: 0002609893
Дата охранного документа: 07.02.2017
25.08.2017
№217.015.cbf8

Способ измерения разборчивости речи

Изобретение относится к измерению разборчивости речи и предназначено для оценки защиты объектов от несанкционированной утечки акустической речевой информации (АРИ). Техническим результатом является уменьшение времени и повышение точности вычисления уровня разборчивости речи за счет применения...
Тип: Изобретение
Номер охранного документа: 0002620569
Дата охранного документа: 26.05.2017
04.04.2018
№218.016.321a

Способ маскирования структуры сети связи

Изобретение относится к технологиям сетевой связи. Технический результат заключается в повышении безопасности передачи данных. В способе предварительно задают информацию о структуре сети связи, исходные данные об узлах и абонентах сети, допустимого значения комплексного показателя безопасности...
Тип: Изобретение
Номер охранного документа: 0002645292
Дата охранного документа: 19.02.2018
10.05.2018
№218.016.3a8c

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

Изобретение относится к системам классификации документов. Технический результат – автоматизация классификации конфиденциальных формализованных документов в системе электронного документооборота по областям информационной ответственности и по меткам конфиденциальности. Способ автоматической...
Тип: Изобретение
Номер охранного документа: 0002647640
Дата охранного документа: 16.03.2018
12.07.2018
№218.016.6fdc

Акустический способ определения упругих констант токопроводящих твёрдых тел

Использование: для определения упругих констант токопроводящих твердых тел. Сущность изобретения заключается в том, что одновременно или поочередно воздействуют на поверхность локальной области упомянутого твердого тела электромагнитным одно- или многопериодным импульсом и постоянным или...
Тип: Изобретение
Номер охранного документа: 0002660770
Дата охранного документа: 09.07.2018
22.06.2019
№219.017.8e12

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

Изобретение относится к вычислительной технике. Технический результат – обеспечение автоматической классификации формализованных текстовых документов и авторизованных пользователей системы электронного документооборота по меткам конфиденциальности. Способ включает: извлечение метаданных и...
Тип: Изобретение
Номер охранного документа: 0002692043
Дата охранного документа: 19.06.2019
02.07.2019
№219.017.a2ed

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

Изобретение относится к системам классификации документов. Техническим результатом является автоматизация классификации формализованных документов в системе электронного документооборота по областям компетенции должностных лиц, формирования на основе классификации реквизита «резолюция» каждого...
Тип: Изобретение
Номер охранного документа: 0002692972
Дата охранного документа: 28.06.2019
+ добавить свой РИД