Інтелектуальний метод виявлення вразливостей типу переповнення буферу в програмному забезпеченні

Вантажиться...
Ескіз
Дата
2025
Назва журналу
Номер ISSN
Назва тому
Видавець
Хмельницький національний університет
Анотація
У сучасних умовах цифрової трансформації програмне забезпечення стало ключовим інструментом функціонування суспільства, економіки та держави. Зростання його складності супроводжується виникненням нових ризиків інформаційної безпеки, серед яких особливу небезпеку становлять переповнення буферу. Такі вразливості здатні призвести до витоку даних, порушення цілісності інформаційних систем або навіть до виконання шкідливого коду зловмисниками. Традиційні методи ручного аудиту та класичного тестування коду демонструють обмежену ефективність, адже потребують значних людських і часових ресурсів та не забезпечують належного рівня достовірності у великих масштабах. Це зумовлює актуальність пошуку нових підходів, що базуються на автоматизації та інтеграції інтелектуальних алгоритмів у процес аналізу програм. У даній роботі запропоновано метод виявлення вразливостей типу переповнення буферу, який поєднує математичне моделювання, символьне виконання програмного коду та алгоритм Q-навчання як інструмент адаптивного симулятивного покриття. Метод забезпечує підвищення точності та достовірності аналізу, а також сприяє зменшенню кількості хибнопозитивних результатів. Проведене тестування довело ефективність розробленого підходу у практичних умовах, що дозволяє розглядати його як перспективну складову сучасних систем кіберзахисту
The rapid growth of information technologies and the complexity of software systems has intensified the risks of security vulnerabilities, among which buffer overflow remains one of the most critical. Traditional methods such as manual code auditing, static and dynamic analysis, and conventional testing are limited by scalability, accuracy, and high false-positive rates. This research proposes an intelligent method for detecting buffer overflow vulnerabilities that integrates mathematical modelling, symbolic execution, and reinforcement learning through Q-learning. The approach models buffer overflow conditions formally, employs symbolic variables to explore execution paths systematically, and applies Q-learning to mitigate the path explosion problem by prioritising the most promising branches. Constraint-based test input generation ensures realistic scenarios that activate potential vulnerabilities while reducing false positives. The method was implemented using LLVM-based symbolic execution (KLEE), dynamic instrumentation (Valgrind), and Python-based Q-learning with TensorFlow and OpenAI Gym. Experimental validation on synthetic benchmarks and real-world vulnerable code demonstrated improvements of over 30% in execution path coverage and a 20% reduction in false positives compared to classical symbolic execution. The study highlights the potential of combining formal models, symbolic analysis, and reinforcement learning to improve both precision and reliability in software vulnerability detection. The developed approach shows promise for integration into modern cybersecurity tools to enhance early identification of critical defects. Future work will focus on optimising computational efficiency, extending applicability to other vulnerability classes, and validating performance in large-scale industrial systems
Опис
Ключові слова
інформаційна безпека, навчання з підкріпленням, Q-навчання, переповнення буферу, виявлення вразливостей, кібербезпека, information security, reinforcement learning, Q-learning, buffer overflow, vulnerability detection
Бібліографічний опис
Інтелектуальний метод виявлення вразливостей типу переповнення буферу в програмному забезпеченні / Н. Петляк, Б. Гордєєв, А. Пелехата, А. Нагорняк // Вимірювальна та обчислювальна техніка в технологічних процесах. – 2025. – № 4. – С. 182-187.
Зібрання