Клиентские SDK LangSmith предоставляют SDK для взаимодействия с платформой LangSmith. До версии 0.5.18 LangSmith JavaScript/TypeScript SDK (langsmith) содержал неполное исправление загрязнения прототипа в собственной утилите lodash set(). Функция baseAssignValue() защищает только от ключа __proto__, но не может предотвратить обход через конструктор.prototype.
Это позволяет злоумышленнику, который контролирует ключи в данных, обрабатываемых API createAnonymizer(), загрязнять Object.prototype, затрагивая все объекты в процессе Node.js. Эта уязвимость исправлена в версии 0.5.18.
Показать оригинальное описание (EN)
LangSmith Client SDKs provide SDK's for interacting with the LangSmith platform. Prior to 0.5.18, the LangSmith JavaScript/TypeScript SDK (langsmith) contains an incomplete prototype pollution fix in its internally vendored lodash set() utility. The baseAssignValue() function only guards against the __proto__ key, but fails to prevent traversal via constructor.prototype. This allows an attacker who controls keys in data processed by the createAnonymizer() API to pollute Object.prototype, affecting all objects in the Node.js process. This vulnerability is fixed in 0.5.18.
Характеристики атаки
Последствия
Строка CVSS v3.1