https://www.pillar.security/blog/new-vulnerability-in-github-copilot-and-cursor-how-hackers-can-weaponize-code-agents
Як можна атакувати автоматичні генератори коду?
Отруюючи системні інструкції (“Rules File Backdoor”) LLM.
У багатьох програмах ШІ-кодінгу зараз є можливість підвантажувати їх з текстового файлу (наприклад, у Cursor це .cursorrules
чи тека правил у корені проекту) - просто текстовий файл(и).
Гадаю, лише малодосвідчені програмісти або ті, хто не знайомий, як працюють нові IDE з агентними кодерами, запустять чужий код, не прочитавши перед цим файл інструкцій якщо він там є.
Наступний варіант, це коли ми створюємо проєкт і копіюємо таку інструкцію самі з відкритих каталогів, на кшталт cursor.directory - знову ж таки, треба розуміти, що ти робиш, і читати перед цим.
Але дослідники Pillar Security виявили, що зловмисники можуть використовувати приховані юнікод-символи та інші техніки обходу в текстових файлах правил, щоб обдурити агент-асистентів (наприклад, в Cursor або GitHub Copilot) і змусити їх генерувати код з бекдорами або вразливостями (наприклад, до головної сторінки сайту підвантажувати зовнішній javascript хакера).
Як це працює?
- Створення шкідливого файлу правил: Хакер створює файл правил, який виглядає нешкідливо 👀, але містить приховані шкідливі інструкції 😈, використовуючи юнікод-символи.
- Впровадження в проєкт: Файл правил потрапляє до спільного репозиторію 🌐 або поширюється через спільноти 🧑🤝🧑.
- Генерація коду: Розробник, використовуючи AI-асистента, генерує код 💻. AI, слідуючи шкідливим правилам, створює код з вразливостями або бекдорами 💥.
- Шкідливий код поширюється: Через те, що файли правил часто спільні та використовуються повторно, зараження може поширитися на безліч проєктів 🦠.
"На відміну від традиційних атак впровадження коду, націлених на конкретні вразливості, “Rules File Backdoor” являє собою значний ризик, оскільки перетворює сам AI на вектор атаки."
Найбільш вразливі до такої атаки ті, хто мало думає, коли створює код - не читає файли інструкцій, не перевіряє все, що було згенеровано. Публікує код чи деплоїть проекти без попереднього аудиту на безпеку.
Теоретично агентні IDE повинні бути відповідальні хоча б за перевірку файлів правил та коментарів коду на вставлені невидимі інструкції, але, судячи зі статті, розробники Cursor та GitHub Copilot сказали, що це користувачі самі (!) відповідальні за код, який вони генерують.
#agentmode #prompts #hacking #cursor #githubcopilot #windsurf