Methodology for Machine Code Reverse Engineering. Part 1. Preparation of the Research Object

Cover Page

Cite item

Full Text

Abstract

The results of creating a unified methodology for reverse engineering the devices machine code are presented. The first part of the series of articles reviews scientific publications in this subject area. In the absence of satisfactory solutions, the author's process methodology is proposed, consisting of the following 4 stages: preparatory activities, static research, dynamic research and documentation. A detailed description of the steps of the first stage is provided, as well as examples of their application in practice using standard software. The scheme of the proposed methodology is presented in graphical form, and the steps given are formally written. The next part of the series of articles will describe the steps of the remaining stages and their systematization in tabular form, indicating the input and output objects, as well as the form of steps execution.

About the authors

K. E. Izrailov

Saint-Petersburg Federal Research Center of the Russian Academy of Sciences

Email: konstantin.izrailov@mail.ru
ORCID iD: 0000-0002-9412-5693
SPIN-code: 5109-3499

References

  1. Марков А.С., Цирлов В.Л. Опыт выявления уязвимостей в зарубежных программных продуктах // Вопросы кибербезопасности. 2013. № 1(1). С. 42‒48.
  2. Sabir U., Azam F., Haq S.U., Anwar M.W., Butt W.H., Amjad A. A Model Driven Reverse Engineering Framework for Generating High Level UML Models From Java Source Code // IEEE Access. 2019. Vol. 7. PP. 158931‒158950. doi: 10.1109/ACCESS.2019.2950884
  3. Баранова И.В., Батова М.М., Майоров С.В. Информационные инструменты реверсинжиниринга в стратегии деятельности инновационно-ориентированных структур // Теоретическая экономика. 2020. № 3(63). С. 28‒35.
  4. Передерий М.В. Реверс-инжиниринг в условиях инновационной инфраструктуры // Вестник Южно-Российского государственного технического университета (НПИ). Серия: Социально-экономические науки. 2015. № 5. С. 30‒34.
  5. Ивлиев Г.П., Эриванцева Т.Н. Патентная информация - источник ценных знаний для реинжиниринга // Право и цифровая экономика. 2022. № 3(17). С. 5‒11. doi: 10.17803/2618-8198.2022.17.3.005-011
  6. Нехорошев М.В. Методика реверс инжиниринга изделий в системе Siemens NX // Международная научно-техническая конференция «Проблемы и перспективы развития двигателестроения» (Самара, Россия, 23–25 июня 2021). Самара: Самарский национальный исследовательский университет имени академика С.П. Королева, 2021. Т. 1. С. 275‒276.
  7. Беляков А.А., Шулепов А.И. Проблемы практики реверс-инжиниринга космических аппаратов // Решетневские чтения: материалы XXV Международной научно-практической конференции, посвященной памяти генерального конструктора ракетно-космических систем академика М.Ф. Решетнева (Красноярск, Россия, 10–12 ноября 2021). Красноярск: Сибирский государственный университет науки и технологий имени академика М.Ф. Решетнева, 2021. Ч. 1. С. 8‒9.
  8. Штомпель И. Вакансия: реверс-инженер // Системный администратор. 2014. № 11(144). С. 85‒87.
  9. Kleber S., Maile L., Kargl F. Survey of Protocol Reverse Engineering Algorithms: Decomposition of Tools for Static Traffic Analysis // IEEE Communications Surveys & Tutorials. 2019. Vol. 21. Iss. 1. PP. 526‒561. doi: 10.1109/COMST.2018.2867544
  10. Kotenko I., Izrailov K., Buinevich M. Static Analysis of Information Systems for IoT Cyber Security: A Survey of Machine Learning Approaches // Sensors. 2022. Vol. 22. Iss. 4. P. 1335. doi: 10.3390/s22041335
  11. Израилов К.Е. Концепция генетической декомпиляции машинного кода телекоммуникационных устройств // Труды учебных заведений связи. 2021. Т. 7. № 4. С. 95‒109. doi: 10.31854/1813-324X-2021-7-4-95-109
  12. Kotenko, I., Izrailov, K., Buinevich, M., Saenko I., Shorey R. Modeling the Development of Energy Network Software, Taking into Account the Detection and Elimination of Vulnerabilities // Energies. 2023. Vol. 16. Iss. 13. PP. 5111. doi: 10.3390/en16135111
  13. Долгова К.Н., Чернов А.В., Деревенец Е.О. Методы и алгоритмы восстановления программ на языке ассемблера в программы на языке высокого уровня // Проблемы информационной безопасности. Компьютерные системы. 2008. № 3. С. 54‒68.
  14. Израилов К.Е. Моделирование программы с уязвимостями с позиции эволюции ее представлений. Часть 1. Схема жизненного цикла // Труды учебных заведений связи. 2023. Т. 9. № 1. С. 75‒93. doi: 10.31854/1813-324X-2023-9-1-75-93
  15. Израилов К.Е. Моделирование программы с уязвимостями с позиции эволюции ее представлений. Часть 2. Аналитическая модель и эксперимент // Труды учебных заведений связи. 2023. Т. 9. № 2. С. 95‒111. doi: 10.31854/1813-324X-2023-9-2-95-111
  16. Ревнивых А.В., Велижанин А.С. Методика автоматизированного формирования структуры дизассемблированного листинга // Кибернетика и программирование. 2019. № 2. С. 1‒16. doi: 10.25136/2306-4196.2019.2.28272


Creative Commons License
This work is licensed under a Creative Commons Attribution 4.0 International License.

This website uses cookies

You consent to our cookies if you continue to use our website.

About Cookies