АВТОМАТИЗОВАНЕ ВИЯВЛЕННЯ ВРАЗЛИВОСТЕЙ SQL-ІН’ЄКЦІЙ У ЧАТ-БОТАХ ЗА ДОПОМОГОЮ НАВЧАННЯ З ПІДКРІПЛЕННЯМ - Вікулов, Владислав; Пишнограєв, Іван (Електронне фахове наукове видання «Кібербезпека: освіта, наука, техніка», 2025)
У даній роботі досліджується застосування алгоритмів навчання з підкріпленням для автоматизованого виявлення вразливостей SQL-ін’єкцій у розмовних AI-агентах, які використовують API та бази даних. З цією метою було розроблено Gymnasium-сумісне середовище з назвою SQLiChatbotEnv та реалізовано систему на основі методів Proximal Policy Optimization (PPO), Advantage Actor-Critic (A2C) та REINFORCE для навчання інтелектуального агента виявляти та експлуатувати різні типи SQL-ін’єкцій в автоматизованому режимі. Створене середовище моделює реалістичні сценарії взаємодії з вразливими чат-ботами, включаючи багатокомпонентний простір дій, систему винагород та механізми відстеження прогресу виявлення вразливостей. Створене спеціалізоване середовище для навчання з підкріпленням SQLiChatbotEnv моделює реальні сценарії взаємодії з вразливими чат-ботами і дозволяє сконфігурувати чат-бот середовище з одним з п’яти основних систем управління базами даних на вибір (MySQL, PostgreSQL, Microsoft SQL Server, Oracle та SQLite). Також SQLiChatbotEnv підтримує декілька ключових типів SQL-ін’єкцій, таких як union-based атаки та error-based експлуатацію, і дозволяє досліджувати схему СУБД – виявляти назви таблиць та колонок. Система дає змогу використовувати обфускацію SQL-запитів у повідомленні до чатбота, що дозволяє обходити базові перевірки безпеки, які можуть бути у реальній системі. Контекстний фреймінг дає змогу використати природну інтеграцію SQL-ін’єкції у розмову, наприклад, маскування через фрази типу "I’m trying to understand...", імітуючи поведінку звичайного користувача. Для стимулювання агента до ефективного пошуку вразливостей система дозволяє конфігурувати винагороди та штрафи за типові дії, як-от виявлення нової інформації, витік даних або використання шаблону SQL-ін’єкції, несумісного з реальним типом БД. Проведено порівняльний аналіз ефективності трьох алгоритмів навчання з підкріпленням протягом 2500 епізодів тренування. Результати експериментів показують, що A2C демонструє найкращу комбінацію швидкості конвергенції та стабільності навчання, досягаючи винагороди 100 балів вже за 30 епізодів та фінальної продуктивності 232.82 ± 16.44 з найнижчим коефіцієнтом варіації 16.5%. PPO характеризується найповільнішою конвергенцією до високих порогів (221 епізод до винагороди 150) та найвищою варіативністю результатів (35.6%), але демонструє найкращу здатність до повного виявлення всіх типів вразливостей (87.4% епізодів). REINFORCE показує збалансовані проміжні результати з помірною швидкістю збіжності (145 епізодів до винагороди 100), стабільністю (коефіцієнт варіації 21.4%) та високою ефективністю дослідження вразливостей (78.0% епізодів з усіма типами атак). Практичне значення роботи полягає у створенні автоматизованого інструменту для тестування безпеки розмовних AI-агентів. Результати дослідження демонструють перспективність застосування навчання з підкріпленням для задач кібербезпеки та автоматизації процесів тестування на проникнення.