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