CAPTCHA (полностью автоматизированный тест Тьюринга для различения компьютеров и людей) используют на сайтах, чтобы отличать людей от ботов. Это своего рода «задания» для пользователей — распознать искаженные буквы, числа, изображения или выбрать объекты на картинках.
До недавнего времени такие проверки считались надежным способом защиты от автоматизированных действий. Но исследователи из SPLX нашли способ обмануть ChatGPT.
Режим агента ChatGPT позволяет модели выполнять задания в фоновом режиме и взаимодействовать с сайтами почти как человек. Исследователи из SPLX использовали методику, называемую prompt injection («внедрение подсказки»), чтобы обмануть ChatGPT в режиме агента. Этот способ предполагает внедрение в диалог команд или инструкций, которые модель воспринимает как часть задачи, и выполняет их автоматически.
Чтобы заставить модель проходить CAPTCHA, исследователи представили тест как «фальшивый», создав диалог, где ChatGPT уже якобы согласился пройти тест. Агент наследовал контекст предыдущих сообщений и не видел обычных сигналов тревоги. Благодаря этому ChatGPT в режиме агента решил «капчу», как это сделал бы человек.
Этот многоэтапный метод внедрения подсказок хорошо известен хакерам. Эксперимент показал, насколько уязвимы к нему языковые модели. Исследователи отметили, что ChatGPT сложнее дается CAPTCHA на основе изображений, однако даже такие тесты он смог успешно пройти.
Последствия этого открытия могут быть серьезными. ChatGPT используется повсеместно, и если метод попадёт в руки злоумышленников, боты смогут автоматически заполнять комментарии и использовать сайты, предназначенные только для людей, для мошенничества и спама. OpenAI пока не предоставила комментариев по этому вопросу.