Details
Title | Защита исполняемого кода атак на основе возвратно-ориентированного программирования на базе бинарного морфинга: выпускная квалификационная работа бакалавра: направление 10.03.01 «Информационная безопасность» ; образовательная программа 10.03.01_03 «Безопасность компьютерных систем» |
---|---|
Creators | Литвинов Константин Олегович |
Scientific adviser | Павленко Евгений Юрьевич |
Other creators | Гололобов Н. В. |
Organization | Санкт-Петербургский политехнический университет Петра Великого. Институт компьютерных наук и кибербезопасности |
Imprint | Санкт-Петербург, 2025 |
Collection | Выпускные квалификационные работы ; Общая коллекция |
Subjects | бинарный морфинг ; статистический анализ ; возвратно-ориентированное-программирование ; шифрование ; перемешивание ; binary morphing ; statistical analysis ; return-oriented programming ; encryption ; shuf-fling |
Document type | Bachelor graduation qualification work |
File type | |
Language | Russian |
Level of education | Bachelor |
Speciality code (FGOS) | 10.03.01 |
Speciality group (FGOS) | 100000 - Информационная безопасность |
DOI | 10.18720/SPBPU/3/2025/vr/vr25-790 |
Rights | Доступ по паролю из сети Интернет (чтение, печать, копирование) |
Additionally | New arrival |
Record key | ru\spstu\vkr\35729 |
Record create date | 7/30/2025 |
Allowed Actions
–
Action 'Read' will be available if you login or access site from another network
Action 'Download' will be available if you login or access site from another network
Group | Anonymous |
---|---|
Network | Internet |
Объектом исследования данной выпускной квалификационной работы является программное обеспечение, для которого создаётся метод защиты. Целью данной работы является создание нового способа защиты исполняемого файла от атак на основе возвратно-ориентированного программирования за счёт бинарного морфинга. Задачи, решаемые в ходе исследования: 1. Проанализировать современные исследования в области рандомизации адресного пространства. 2. Разработать новый метод бинарного морфинга на основе рассмотренных. 3. Описать его механизмы и как они взаимодействуют. 4. Выполнить программную реализацию разработанного метода. 5. Выполнить тестирование разработанного метода. В ходе выполнения работы была частично достигнута поставленная цель — предложен новый метод защиты исполняемых ELF-файлов от атак возврат-но-ориентированного программирования на основе бинарного морфинга. Про-ведённый анализ структуры ELF-файлов и современных методов рандомизации адресного пространства позволил сформулировать алгоритмы шифрования, перестановки и динамической перерандомизации кода, однако программная реализация ограничилась лишь шифрованием и расшифрованием блоков. Тестирование подтвердило, что реализованный метод повышает уровень защиты, минимизируя возможности злоумышленников для успешной эксплуатации уязвимостей. Для достижения данных результатов была разработана программа-загрузчик, которая имеет возможность упаковывать исполняемые файлы и вызывать упакованные файлы, для этого использовали редактора кода VSCode, программные утилиты ядра Linux для сборки и компиляции, а также для проведения исследования бинарных кодов и проведения инъекций в исполняемые файлы.
The object of research of this graduate qualification work is the software for which the protection method is created. The purpose of this work is to develop a new method for protecting executable files against return-oriented programming (ROP) attacks using binary morphing. The tasks addressed in the study include: 1. Analyzing modern research in the field of address space randomization. 2. Developing a new binary morphing method based on the reviewed concepts. 3. Describing its mechanisms and their interactions. 4. Implementing the proposed method programmatically. 5. Testing the developed method. During the course of this work, the goal was achieved — a new method for protecting executable ELF files against ROP attacks using binary morphing was proposed and implemented. The analysis of ELF file structures and modern address space randomization methods allowed the formulation of algorithms for encryption, shuffling, and dynamic rerandomization of code. The programmatic implementation demonstrated resistance to both static and dynamic analysis. Testing confirmed that the proposed method enhances security levels by minimizing opportunities for attackers to successfully exploit vulnerabilities. To achieve these results, a custom loader program was developed, capable of both packaging executable files and launching them in their packaged form. The implementation utilized the VSCode code editor, Linux kernel utilities for building and compiling, as well as tools for analyzing binary code and performing injections into executable files.
Network | User group | Action |
---|---|---|
ILC SPbPU Local Network | All |
|
Internet | Authorized users SPbPU |
|
Internet | Anonymous |
|
Access count: 0
Last 30 days: 0