Небезпечна обробка виводу AI
Exploit an AI whose outputs flow unchecked into live systems.
Що ви дізнаєтесь у Небезпечна обробка виводу AI
- Визначити поверхню атаки, створену коли контент, згенерований AI, передається без санітизації в бази даних, вебсторінки, API та системні команди
- Простежити повний ланцюг атаки, де сформований ввід AI створює шкідливий вивід, що експлуатує підключену систему
- Застосовувати контроль валідації та санітизації виводу на межі між AI-компонентами та підключеними системами
- Оцінити архітектурні патерни, включаючи параметризовані запити, кодування виводу та доступ до API з мінімальними привілеями, що запобігають експлуатації виводу AI
- Розрізняти сценарії, де вивід AI можна довіряти для відображення, і сценарії, де його потрібно розглядати як ненадійний ввід для іншої системи
Небезпечна обробка виводу AI — Кроки навчання
-
Нова функція ШІ для тестування
Сьогодні функція API запитів на природній мові (NLQ) готова до внутрішнього тестування, перш ніж надсилати її в робочу версію. API NLQ використовує модель штучного інтелекту для перетворення звичайних запитань англійською мовою на запити SQL: бізнес-користувачі вводять запитання, штучний інтелект записує SQL, а API повертає результати.
-
Електронний лист від технічного керівника
Аліса отримує електронний лист від свого технічного керівника Джеймса Парка, у якому повідомляється, що кінцеву точку API NLQ розгорнуто в проміжному середовищі та готово до тестування.
-
Відкриття API Tester
Аліса відкриває інструмент API Tester, щоб почати надсилати запити до кінцевої точки NLQ. Це стандартна частина її робочого процесу для тестування нових функцій API перед їх запуском.
-
Простий тестовий запит
Аліса починає з прямого запиту, щоб переконатися, що API працює. Кінцева точка NLQ приймає запити GET із параметром запиту, що містить питання природної мови.
-
Відповідь API
API відповів п’ятьма записами клієнтів, що відповідають запиту. Відповідь виглядає нормально.
-
Згенерований SQL
Панель «Аналіз запитів SQL» показує, що саме згенерував штучний інтелект із введення природною мовою. Це запит, який було виконано до бази даних.
-
Потік даних
Візуалізація ланцюга показує, як дані протікають від запитання користувача природною мовою до результату бази даних.
-
Тестування зі зловмисним введенням
Аліса вирішує перевірити стійкість API. Що робити, якщо користувач додає синтаксис SQL-ін’єкції у свій запит природною мовою? Добре побудована система повинна або відхиляти вхідні дані, або очищати їх. Вона створює параметр запиту, який вбудовує команду DROP TABLE у підказку природною мовою.
-
Пошкодження у відповідь
Відповідь повернулася, але щось дуже не так. Уважно подивіться на тіло відповіді.
-
Введений SQL
Панель SQL показує, що саме створив ШІ. Корисне навантаження ін’єкції було точно переведено у виконуваний SQL.