TypeBot — инструмент для создания чат-ботов. В версиях 3.16.1 и более ранних версиях POST /api/blocks/file-input/v3/generate-upload-url не проходит проверку подлинности и использует необработанный ввод имени файла для создания ключей объекта public/S3, одновременно выдавая предварительно назначенные URL-адреса PUT, которые не привязывают Content-Type. В результате любой анонимный посетитель опубликованного бота с вводом файла может загрузить контролируемый злоумышленником HTML, SVG или JS по выбранным злоумышленником подпутям, включая общедоступные пути результатов других арендаторов, что позволяет размещать произвольный контент и потенциально хранить XSS в источнике хранилища. ../ обход блокируется канонизацией S3/MinIO (несоответствие сигнатур), но введение пути с косой чертой можно использовать.
Эта проблема исправлена в версии 3.17.0.
Показать оригинальное описание (EN)
TypeBot is a chatbot builder tool. In versions 3.16.1 and earlier, POST /api/blocks/file-input/v3/generate-upload-url is unauthenticated and uses unsanitized fileName input to construct public/ S3 object keys, while issuing presigned PUT URLs that do not bind Content-Type. As a result, any anonymous visitor to a published bot with a file input can upload attacker-controlled HTML, SVG, or JS to attacker-chosen subpaths, including other tenants’ publicly served result paths, enabling arbitrary content hosting and potential stored XSS on the storage origin. ../ traversal is blocked by S3/MinIO canonicalization (signature mismatch), but forward-slash path injection is exploitable. This issue has been fixed in version 3.17.0.
Характеристики атаки
Последствия
Строка CVSS v3.1