Розробка програмного забезпечення для знаходження внесених змін в код виконуваних файлів
Вантажиться...
Дата
2023
Назва журналу
Номер ISSN
Назва тому
Видавець
Анотація
Метою даної роботи є розробка програмного забезпечення для знаходження внесених змін в код виконуваних файлів. Відомо що, розвиток сучасних комп'ютерних технологій породжує безліч нових можливостей та оптимізації звичайних процесів. Однак в основі кожного процесу лежить передача даних і виконання коду на обчислювальній машині, що включає в себе комплексні процеси перетворення коду в машину мову. Чим більшими і складнішими стають ці системи, тим вище стають вимоги до безпеки на кожному етапі розвитку і тим більше потенційних слабкостей у них виявляється. Однією з таких вразливостей є ін'єкція коду у виконуваний файл. Ці випадки можуть призвести до величезних втрат, потенційної небезпеки втрати важливих даних та їхнього потрапляння до третіх осіб.
Досліджено різні метрики для визначення авторства коду програмного забезпечення, отже, для виявлення впровадження шкідливого коду. У статті розглянуто один із способів вирішення цієї проблеми, а саме підрахунок метрик вихідного або виконуваного програмного коду. Визначено кількісну метрику ентропію, яка добре підходить для перевірки авторства програмного коду та показано, що використовуючи дану метрику можна з високою ймовірністю стверджувати, написана нова ділянка коду розробником програми чи ні.
Результатом роботи є програмне забезпечення для знаходження внесених змін в код виконуваних файлів DisEn, побудоване на .NET Framework з використання мови програмування С#, яке дозволяє перевіряти виконувані файли на наявність змін і допомагає користувачам визначити, чи був файл змінений автором або шкідливим програмним забезпеченням. Основними функціональними можливостями програми DisEn є: дизасемблювання виконуваних файлів для отримання асемблерного коду, обчислення значення ентропії для кожної команди, зіставлення даних із попередньою версією файлу (за наявності), аналіз отриманих даних з точки зору різниці ентропії, відображення отриманих даних у вигляді таблиць та графіків, збереження зліпків файлів за іменами для подальшого порівняння на предмет авторства змін.
Опис
Макарова, Л. М. Розробка програмного забезпечення для знаходження внесених змін в код виконуваних файлів = For detecting changes made to the code of executable files / Л. М. Макарова, С. С. Камінський, М. В. Бризгалов // Вчені записки ТНУ. Сер. Технічні науки. – Одеса : Гельветика, 2023. – Т. 34 (73), № 2. – Ч. 1. – С. 179–185.
Ключові слова
ентропія, дизасемблювання, виконуваний файл, зміна коду, програмний додаток, entropy, disassembly, executable file, code change, software application