
Доказательство концепции для CVE-2025-51858: self-XSS в ChatPlayground.ai, приводящий к краже JWT-токена, угону аккаунта и утечке истории чатов через IDOR.
ChatPlayground.ai — это популярное веб-приложение для сравнения AI-моделей. В компоненте чата существует уязвимость межсайтового скриптинга (XSS). Это может привести к краже JWT-токенов и удаленному захвату учетных записей. Кроме того, конечная точка /api/chat-history демонстрирует слабый контроль доступа (IDOR). Злоумышленник может использовать этот IDOR для доступа к истории чата жертвы, используя имя пользователя из JWT-токена, что приводит к утечке личных данных даже после истечения срока действия JWT-токена.
ChatPlayground.ai — это популярное веб-приложение для сравнения AI-моделей. Уязвимость межсайтового скриптинга (XSS) существует в компоненте чата (https://www.chatplayground.ai/chat/) ChatPlayground.ai, популярной платформы для сравнения AI-моделей. Жертвы могут быть атакованы копированием и вставкой вредоносного текста в компонент чата.
Злоумышленник может выполнить произвольный JavaScript-код, внедрив SVG XSS-пейлоад в вредоносный текст. Это self-XSS уязвимость. Выполняя JavaScript-код, злоумышленник может получить JWT-токен жертвы (используемый для идентификации статуса входа пользователя), что приводит к удаленному захвату учетной записи. На рисунке 1 показан интерфейс после ввода пользователем Self-XSS пейлоада, который раскрывает JWT-токен пользователя.

Кроме того, JWT-токен жертвы содержит имя пользователя, закодированное в Base64. Конечная точка API для получения истории пользователя (https://www.chatplayground.ai/api/chat-history) на ChatPlayground.ai демонстрирует слабый контроль доступа. Этот API полагается исключительно на поле имени пользователя в запросе для авторизации, что приводит к небезопасной прямой ссылке на объект (IDOR) или уязвимости нарушенного контроля доступа. После начальной XSS-атаки злоумышленник может извлечь имя пользователя жертвы и продолжать доступ к истории чата жертвы, используя это имя пользователя, даже после истечения срока действия JWT-токена. Это позволяет постоянную утечку личных данных жертвы. На рисунке 2 показан POC уязвимости IDOR чат-плейграунда, который раскрывает историю чата жертвы злоумышленнику.

Эта уязвимость может затронуть любого пользователя https://www.chatplayground.ai. Будет постоянная утечка личных данных пользователя, то есть частной информации в истории чата.