Langroid - это фреймворк для создания приложений на основе больших языковых моделей. В версии до 0.53.4 обнаружена уязвимость XXE Injection…
Langroid - это фреймворк для создания приложений на основе больших языковых моделей. В версии до 0.53.4 обнаружена уязвимость XXE Injection через класс XMLToolMessage, которая может привести к DoS и/или раскрытию локальных файлов с конфиденциальной информацией [1]. Проблема заключается в том, что XMLToolMessage использует lxml без надлежащей защиты, что делает его уязвимым для атак quadratic blowup и обработки внешних сущностей. Исправление достигнуто в версии 0.53.4 путем инициализации XMLParser с флагами, предотвращающими атаки XXE, billion laughs и external DTD. Источники: - [1] https://github.com/langroid/langroid/security/advisories/GHSA-pw95-88fg-3j6f - [2] https://github.com/langroid/langroid/commit/36e7e7db4dd1636de225c2c66c84052b1e9ac3c3 - [3] https://github.com/langroid/langroid/blob/df6227e6c079ec22bb2768498423148d6685acff/langroid/agent/xml_tool_message.py#L51-L52
Продукт обрабатывает XML-документ, который может содержать XML-сущности с URI, разрешающимися в документы за пределами предусмотренной сферы контроля, из-за чего продукт включает некорректные документы в свой вывод.
https://cwe.mitre.org/data/definitions/611.html →Открыть в коллекции CWE →Данная атака использует свойство замены сущностей в ряде языков сериализации данных (например, XML, YAML и т. д.), при котором значением замены является URI. Специально сформированный файл может содержать ссылку на URI, потребление которого требует значительных ресурсов, что создаёт условие отказа в обслуживании. Это может привести к зависанию, аварийному завершению системы или выполнению произвольного кода в зависимости от URI.
https://capec.mitre.org/data/definitions/221.html →Открыть в коллекции CAPEC →