Preview

Russian Technological Journal

Расширенный поиск

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

https://doi.org/10.32362/2500-316X-2024-12-2-7-15

Аннотация

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

Об авторах

А. А. Легкодумов
OOO «СФБ Лаборатория»
Россия

Легкодумов Александр Алексеевич, специалист инженерно-криптографического анализа

127083, Москва, ул. Мишина, д. 56, стр. 2



Б. Н. Козеев
АО «АЛЬФА-БАНК»
Россия

Козеев Борис Николаевич, главный специалист

107078, Москва, ул. Каланчевская, д. 27



В. В. Беликов
ФГБОУ ВО «МИРЭА – Российский технологический университет»
Россия

Беликов Владимир Вячеславович, к.воен.н., доцент, доцент кафедры информационной безопасности, Институт искусственного интеллекта

119454, Москва, пр-т Вернадского, д. 78

Scopus Author ID 57983605100



А. В. Корольков
ФГБОУ ВО «МИРЭА – Российский технологический университет»
Россия

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

119454, Москва, пр-т Вернадского, д. 78

SPIN-код РИНЦ 3849-6868.

 



Список литературы

1. Карпов Ю.Г. Model checking. Верификация параллельных и распределенных программных систем. СПб.: БХВ-Петербург; 2010. 560 с. ISBN 978-5-9775-0404-1

2. Беликов Д.В. Использование статического анализа исходного кода в разработке и тестировании программного обеспечения. Студенческий форум. 2021;41:90–93.

3. Беликов Д.В. Методы проведения статического анализа программного кода. Студенческий форум. 2022;13(192):15–18.

4. Казарин О.В., Скиба В.Ю. Об одном методе верификации расчетных программ. Безопасность информационных технологий. 1997;3:40–33.

5. Щедрин Д.А. Применение методов машинного обучения и анализа статического кода интеллектуальных систем. Научно-исследовательский центр «Technical Innovations». 2023;16:28–32.

6. Иванников В.П., Белеванцев А.А., Бородин А.Е., Игнатьев В.Н., Журихин Д.М., Аветисян А.И., Леонов М.И. Статический анализатор Svace для поиска дефектов в исходном коде программ. Труды Института системного программирования РАН. 2014;26(1):231–250. https://doi.org/10.15514/ISPRAS-2014-26(1)-7

7. Викторов Д.С., Самоволина Е.В., Мокеева О.А. Эффективность статического анализа для поиска дефектов программного обеспечения. Вестник Военной академии воздушно-космической обороны. 2021;6:25–39.

8. Бурякова Н.А., Чернов А.В. Классификация частично формализованных и формальных моделей и методов верификации программного обеспечения. Инженерный Вестник Дона. 2010;4:129–134.

9. Ефимов А.И. Проблема технологической безопасности программного обеспечения систем вооружения. Безопасность информационных технологий. 1994;3–4:22–33.

10. Ефимов А.И., Пальчун Б.П., Ухлинов Л.М. Методика построения тестов проверки технологической безопасности инструментальных средств автоматизации программирования на основе их функциональных диаграмм. Вопросы защиты информации. 1995;3(30):52–54.

11. Глухих М.И., Ицыксон В.М., Цесько В.А. Использование зависимостей для повышения точности статического анализа программ. Моделирование и анализ информационных систем. 2011;18(4):68–79.

12. Маликов О.Р. Автоматическое обнаружение уязвимостей в исходном коде программ. Известия Таганрогского радиотехнического университета (Известия ТРТУ). 2005;4:48–53.

13. Несов В.С., Маликов О.Р. Использование информации о линейных зависимостях для обнаружения уязвимостей в исходном коде программ. Труды Института системного программирования РАН. 2006;9:51–57.

14. Воротникова Т.Ю. Надежный код: статический анализ программного кода как средство повышения надежности программного обеспечения информационных систем. Информационные технологии в УИС. 2020;2:22–27.

15. Fritz C., Arzt S., Rashofer S., et al. Highly Precise Taint Analysis for Android Applications. Technical Report TUD-CS-2013-0113. EC SPRIDE. May 2013. 14 p. URL: http://www.bodden.de/pubs/TUD-CS-2013-0113.pdf


Дополнительные файлы

1. Результат совмещения двух графов
Тема
Тип Исследовательские инструменты
Посмотреть (52KB)    
Метаданные ▾
  • Приведены результаты исследования методов анализа изменений программного обеспечения с описанием недостатков. Представлено описание метода проведения анализа изменений, использующего поток управления функций, который дополняет существующие методы, устраняя их представленные недостатки.
  • Использование методов, локализующих наиболее уязвимые участки кода, выделено как одно из наиболее перспективных направлений для проведения анализа влияния изменений. Также важным является оценка эффективности метода сравнения потоков управления в анализе исходного кода при его переходе на другую кодовую базу.

Рецензия

Для цитирования:


Легкодумов А.А., Козеев Б.Н., Беликов В.В., Корольков А.В. Методы анализа влияния изменений программного обеспечения на целевые функции и функции безопасности. Russian Technological Journal. 2024;12(2):7–15. https://doi.org/10.32362/2500-316X-2024-12-2-7-15

For citation:


Legkodumov A.А., Kozeyev B.N., Belikov V.V., Korolkov A.V. Methods for analyzing the impact of software changes on objective functions and safety functions. Russian Technological Journal. 2024;12(2):7–15. https://doi.org/10.32362/2500-316X-2024-12-2-7-15

Просмотров: 605


Creative Commons License
Контент доступен под лицензией Creative Commons Attribution 4.0 License.


ISSN 2782-3210 (Print)
ISSN 2500-316X (Online)