Том 18, № 3Страницы 61 - 72 Технология активных данных в виртуальных машинах с динамической системой команд
С.В. Кулешов, А.А. Зайцева, А.Ю. АксеновВ ряде прикладных задач, таких как разработка защищенных банковских терминалов или приложений, систем группового управления БПЛА, требуется обеспечить защиту исполнимого кода от реверс-инжиниринга путем копирования области памяти и последующего его изучения путем дизассемблирования и восстановления алгоритма, содержащего фрагмент исполнимого кода. Данный вид реверс-инжиниринга может быть осуществлен при физическом перехвате одного из узлов распределенной системы. Для достижения поставленной цели в статье рассматривается подход к организации защиты от такого типа атаки, основанный на использовании активных данных совместно с виртуальными машинами, использующими динамическую систему команд. В результате проведенных исследований на основе технологии активных данных предложен подход к динамической реконфигурации виртуальных машин, позволяющий осуществить дополнительную защиту устройств от реверс-инжиниринга программного кода. Практическая значимость предложенного подхода состоит в реализации программно-определяемых и программно-управляемых систем на основе технологии активных данных.
Полный текст- Ключевые слова
- виртуальная машина; динамическая система команд; активные данные.
- Литература
- 1. Кулешов, С.В. Активные данные в цифровых программно определяемых системах / С.В. Кулешов, О.В. Цветков // Информационно-измерительные и управляющие системы. - 2014. - № 6. - С. 12-19.
2. Alexandrov, V.V. Active Data in Digital Software Defined Systems Based on SEMS Structures / V.V. Alexandrov, S.V. Kuleshov, A.A. Zaytseva // Smart Electromechanical Systems. Studies in Systems, Decision and Control. - Cham: Springer, 2016. - P. 61-69.
3. Самоделов, А. Создание защищенных пользовательских приложений на базе СнК SmartFusion2 компании Microsemi. Часть 7. Доверенное программирование микросхем в недоверенном окружении. Общие положения / А. Самоделов // Компоненты и технологии. - 2018. - № 2. - С. 56-62.
4. Гладкий, В.П. Защита кода проекта для ультразвуковых медицинских приборов, построенных на ПЛИС типа FPGA, при помощи генератора ПСП / В.П. Гладкий // Вестник Астраханского государственного технического университета. Серия: Управление, вычислительная техника и информатика. - 2009. - № 2. - С. 166-171.
5. Niranjana, R. FPGA Security: Challenges and Best Practices / R. Niranjana. - URL: https://fpgainsights.com/fpga/fpga-security-challenges-and-best-practices/ (дата обращения: 18.10.2024)
6. Коковин, В.А. Аппаратные методы кибербезопасности при взаимодействии распределенных устройств автоматизированной системы / В.А. Коковин, П.Н. Кривцов, А.Н. Сытин, С.У. Увайсов // Инновационные, информационные и коммуникационные технологии: сборник трудов XX Международной научно-практической конференции. - Махачкала, 2023. - С. 226-231.
7. Baetoniu, С. FPGA IFF Copy Protection Using Dallas Semiconductor/Maxim DS2432 Secure EEPROMs / С. Baetoniu. - URL: https://docs.amd.com/v/u/en-US/xapp780 (дата обращения: 18.10.2024)
8. Paul, S. PGA Configuration Protection and Control Using Hardware Watchdog Timer / S. Paul, A. Garcia, M. Capellaro. - Patent U.S. № US7971051B2, 28.06.2011.
9. Комолов, Д. Использование микросхем специальной памяти для обеспечения защиты FPGA от копирования / Д. Комолов, Р. Золотухо // Компоненты и технологии. - 2008. - № 12. - С. 24-26.
10. Александров, В.В. Этерификация и терминальные программы / В.В. Александров, С.В. Кулешов // Информационно-измерительные и управляющие системы. - 2008. - № 10. - С. 50-53.
11. Koppe, P. Reverse Engineering x86 Processor Microcode / P. Koppe, B. Kollenda, M. Fyrbiak, at el. // Proceedings of the 26th USENIX Security Symposium. - Vancouver, 2017. - 19 p.
12. Kuleshov, S. Distributed System of Virtual Machines for Self-Organized Networks / S. Kuleshov, A. Zaytseva, I. Shalnev // Information and Control Systems. - 2019. - № 5. - P. 30-37.
13. Архипов, П.А. Алгоритм распределенного тестирования веб-приложений на основе технологий ВЕБ-прокси и активных данных / П.А. Архипов, А.С. Галкин, Д.О. Маркин // Информационные системы и технологии. - 2018. - № 1. - С. 93-101.
14. Шальнев, И.О. Подход к построению распределенных систем на основе балансировки объема исполняемого кода между узлами / И.О. Шальнев // Технологическая перспектива в рамках Евразийского пространства: новые рынки и точки экономического роста: материалы 4-й Международной научной конференции. - СПб, 2018. - С. 165-172.
15. Craig, I.D. Virtual Machines / I.D. Craig. - London: Springer, 2006.
16. Yunhe Shi. Virtual Machine Showdown / Yunhe Shi, D. Gregg, A. Beatty, M.A. Ertl // ACM Transactions on Architecture and Code Optimization. - 2008. - № 4. - P. 1-36.
17. Sinnathamby, M. Stack Based vs Register Based Virtual Machine Architecture, and the Dalvik VM / M. Sinnathamby // Engineering The Code. - URL: https://markfaction.wordpress.com/2012/07/15/stack-based-vs-register-based-virtual-machine-architecture-and-the-dalvik-vm/ (дата обращения: 18.10.2024)
18. Kuleshov, S.V. The Analysis of Cybersecurity Problems in Distributed Infocommunication Networks Based on the Active Data Conception / S.V. Kuleshov, A.Y. Aksenov, I.I. Viksnin // Cyber-Physical Systems and Control. Lecture Notes in Networks and Systems. - Cham: Springer, 2020. - P. 491-499.
19. Xiaojing Zhu. PULP: Inner-process Isolation based on the Program Counter and Data Memory Address / Xiaojing Zhu, Mingyu Chen, Yangyang Zhao, Zonghui Hong, Yunge Guo // Arxiv: Cryptography and Security. - 2018. - URL: https://arxiv.org/abs/1804.03379
20. Turing, A.M. On Computable Numbers, with an Application to the Entscheidungsproblem / A.M. Turing // Proceedings of the London Mathematical Society. - 1937. - № 1. - P. 230-265
21. Turing, A.M. The Essential Turing: Seminal Writings in Computing, Logic, Philosophy, Artificial Intelligence, and Artificial Life Plus the Secrets of Enigma. - Oxford: Oxford University Press, 2004.