За словами Флеша, для потужної атаки можливо цього буде недостатньо, але все одно становить загрозу і є певним упущенням з боку OpenAI. Так, лише один API-запит можна «розігнати» до 20–5000 і більше запитів на сайт щосекунди, знову і знову, пише The Register.
«API ChatGPT демонструє серйозний дефект якості при обробці HTTP POST-запитів до пояснює Флеш.
Ця кінцева точка API використовується для отримання даних про вебджерела, на які посилається чат-бот у відповідях. Коли ChatGPT згадує певні вебсайти, він викликає атрибуцію зі списком URL-адрес цих сайтів, щоб його пошуковий робот міг отримати доступ та інформацію.
Якщо надати API довгий список URL-адрес, які трохи відрізняється, але всі вказують на той самий сайт, краулер почне звертатися відразу до всіх.
«API очікує список гіперпосилань у параметрі URL-адрес. Загальновідомо, що гіперпосилання на один і той самий вебсайт можуть бути написані різними способами. Через погане програмування OpenAI не перевіряє, чи не з’являється гіперпосилання на один і той самий ресурс кілька разів у списку. OpenAI також не встановлює обмеження на максимальну кількість гіперпосилань у параметрі urls, що дозволяє передавати багато тисяч гіперпосилань в рамках одного HTTP-запиту», — пише Флеш.
Таким чином, використовуючи такий інструмент, як Curl, зловмисник може надіслати HTTP POST-запит на кінцеву точку ChatGPT, і сервери OpenAI в Microsoft Azure відповідатимуть, ініціюючи HTTP-запит для кожної переданої в URL посилання. Коли ці запити спрямовані на один і той самий вебсайт, вони потенційно можуть перевантажити ціль, викликаючи симптоми DDoS. Причому краулер, що проксується Cloudflare, щоразу заходитиме на сайт з нової IP-адреси.
«Жертва ніколи не дізнається, що її атакували, тому що вона бачить лише те, що бот ChatGPT атакує її сайт з приблизно 20 різних IP-адрес одночасно», — сказав Флеш, додавши, що навіть якщо жертва заблокує діапазон IP-адрес, бот все одно буде надсилати запити.
«Таким чином, один невдалий/заблокований запит не завадить боту ChatGPT знову надіслати запит до сайту-жертви протягом наступної мілісекунди. Завдяки такому посиленню зловмисник може відправити лише кілька запитів до API ChatGPT, але жертва отримає дуже велику кількість запитів», — пояснив Флеш.
Флеш каже, що повідомив про цю вразливість через платформу повідомлень про вразливості BugCrowd від OpenAI, на електронну пошту команди безпеки OpenAI, Microsoft (включаючи Azure) та HackerOne — але відповіді не отримав.