V
Сканер-ВС
ГлавнаяКаталогИсточникиCWECAPECATT&CKМеры защитыПродуктыВендорыДокументация
← Вернуться к списку
CWE-915БазаНеполный
Абстракция: База
Статус: Неполный
Источник ↗

Неконтролируемое изменение динамически определяемых атрибутов объекта

Продукт получает от вышестоящего компонента входные данные, задающие несколько атрибутов, свойств или полей, которые должны быть инициализированы или обновлены в объекте, однако не обеспечивает надлежащего контроля над тем, какие атрибуты могут быть изменены.

Открыть в каталоге с фильтром CWE →

Связанные CAPEC

Связанные уязвимости

CVE-2026-33453Неправильное управление модификацией динамически-определяемых объектов уязвимости атрибутов в компоненте Apache Camel Camel-Coap. Компонент верблюжьего муравья Apache Camel уязвим для заголовка Camel, что приводит к удаленному выполнению кода при маршрутах запросов CoAP чувствительным к заголовку производителям (например, Camel-Exec) Входящие параметры компонента капельного копотребления требуют параметры запроса URI непосредственно в заголовки сообщений Camel Exchange В заголовках сообщений без применения какой-либо HeaderFilterStrategy.   В частности, CamelCoapResource.handleRequest() итерирует по OptionSet.getUriQuery() и звонит camelExchange.getIn().setHeader(...) для каждого параметра запроса. CoAPendpoint расширяет DefaultEndpoint, а не DefaultHeaderFilterStrategyEndpoint, а CoAPComponent не реализует компонент HeaderFilterStrategyComponent; компонент вообще не содержит ссылок на HeaderFilterStrategy. В результате неаутентифицированный злоумышленник, который может отправить один пакет CoAP UDP на маршрут Camel, потребляющий из лужа, может ввести произвольные внутренние заголовки Camel (те, которые префиксированы Camel*) в Exchange. Когда маршрут доставляет сообщение чувствительному к заголовку производителю, такому как верблюд-исполнитель, верблюд-шал, верблюжь, верблюжьи или компоненты шаблона (комфорта верблюда, верблюжья скорость), впрыскиваемые заголовки могут изменить поведение производителя. В случае с CamelExec-ExmandExecutable и CamelExecCommandArgs заголовки отменяют исполняемые файлы и аргументы, настроенные на конечную точку, в результате чего произвольное выполнение команд ОС осуществляется в соответствии с привилегиями процесса Camel. Выход производителя отправляется обратно в орган Exchange и возвращается в полезной нагрузке CoAP ответа CamelCoapResource, предоставляя злоумышленнику интерактивный канал RCE без какой-либо необходимости внеполосной эксфильтрации.                                                                                                                                                                         Предпосылки к эксплуатации минимальны: единый недостоверный дейтаграмм UDP до порта КоАП (по умолчанию 5683). CoAP (RFC 7252) не имеет встроенной аутентификации, а DTLS является опциональным и отключенным по умолчанию. Поскольку протокол основан на UDP, элементы управления WAF/IDS HTTP-слой не применяются. Эта проблема затрагивает Apache Camel: с 4.14.0 до 4.14.5, от 4.18.0 до 4.18.1, 4.19.0. Пользователям рекомендуется обновиться до версий 4.18.1 или 4.19.0, исправляя проблему.
CVE-2025-58367DeepDiff — проект, посвященный глубокому сравнению и поиску различий в данных Python. Версии с 5.0.0 по 8.6.0 уязвимы к загрязнению класса через конструктор Delta, что может привести к отказу в обслуживании и удаленному выполнению кода (через небезопасную десериализацию Pickle). Уязвимость позволяет злоумышленнику выполнить произвольный код Python, если входные данные для Delta контролируются пользователем. Это исправлено в версии 8.6.1 [1]. Уязвимость позволяет атакующему изменить `deepdiff.serialization.SAFE_TO_IMPORT`, разрешив небезопасные классы, такие как `posix.system`, и затем выполнить небезопасную десериализацию Pickle через класс Delta. Источники: - [1] https://github.com/seperman/deepdiff/security/advisories/GHSA-mw26-5g2v-hqw3 - [2] https://github.com/seperman/deepdiff/commit/c69c06c13f75e849c770ade3f556cd16209fd183 - [3] https://github.com/seperman/deepdiff/releases/tag/8.6.1
CVE-2020-11066В TYPO3 CMS версий от 9.0.0 и до 9.5.17 и от 10.0.0 и до 10.4.2 вызов unserialize() для вредоносного контента, отправленного пользователем, может привести к изменению динамически определяемых атрибутов объекта и привести к удалению произвольного каталога в файловой системе, если он доступен для записи для веб-сервера. Это также может вызвать отправку сообщения по электронной почте с использованием идентификатора веб-сайта (почтовый ретранслятор). Для фактической эксплуатации упомянутых аспектов требуется другая уязвимость небезопасной десериализации. Это исправлено в версиях 9.5.17 и 10.4.2.
CVE-2024-55638Уязвимость десериализации ненадежных данных в Drupal Core позволяет осуществлять внедрение объектов. Эта проблема затрагивает Drupal Core: с 7.0 до 7.102, с 8.0.0 до 10.2.11, с 10.3.0 до 10.3.9. Drupal core содержит цепочку методов, которые можно использовать, когда на сайте существует уязвимость небезопасной десериализации. Эта так называемая цепочка гаджетов не представляет прямой угрозы, но является вектором, который можно использовать для достижения удаленного выполнения кода, если приложение десериализует ненадежные данные из-за другой уязвимости.
CVE-2024-55637Уязвимость десериализации ненадежных данных в Drupal Core позволяет осуществлять внедрение объектов. Эта проблема затрагивает Drupal Core: с 8.0.0 до 10.2.11, с 10.3.0 до 10.3.9, с 11.0.0 до 11.0.8. Drupal core содержит цепочку методов, которые можно использовать, когда на сайте существует уязвимость небезопасной десериализации. Эта так называемая цепочка гаджетов не представляет прямой угрозы, но является вектором, который можно использовать для достижения удаленного выполнения кода, если приложение десериализует ненадежные данные из-за другой уязвимости.
CVE-2024-55636Уязвимость десериализации ненадежных данных в Drupal Core позволяет осуществлять внедрение объектов. Эта проблема затрагивает Drupal Core: с 8.0.0 до 10.2.11, с 10.3.0 до 10.3.9, с 11.0.0 до 11.0.8. Drupal core содержит цепочку методов, которые можно использовать, когда на сайте существует уязвимость небезопасной десериализации. Эта так называемая цепочка гаджетов не представляет прямой угрозы, но является вектором, который можно использовать для достижения удаленного выполнения кода, если приложение десериализует ненадежные данные из-за другой уязвимости.
CVE-2024-5452Уязвимость удаленного выполнения кода (RCE) существует в библиотеке lightning-ai/pytorch-lightning версии 2.2.1 из-за неправильной обработки десериализованного пользовательского ввода и ненадлежащего управления атрибутами dunder библиотекой `deepdiff`. Библиотека использует объекты `deepdiff.Delta` для изменения состояния приложения на основе действий интерфейса. Однако можно обойти предполагаемые ограничения на изменение атрибутов dunder, что позволяет злоумышленнику создать сериализованную дельту, которая проходит список разрешений десериализатора и содержит атрибуты dunder. При обработке это можно использовать для доступа к другим модулям, классам и экземплярам, что приведет к произвольной записи атрибутов и полному RCE в любом самостоятельно размещенном приложении pytorch-lightning в его конфигурации по умолчанию, поскольку конечная точка дельты включена по умолчанию.
CVE-2022-43441Существует уязвимость выполнения кода в функциональности Statement Bindings в Ghost Foundation node-sqlite3 5.1.1. Специально созданный Javascript-файл может привести к произвольному выполнению кода. Злоумышленник может предоставить вредоносный ввод для запуска этой уязвимости.
CVE-2022-31106Underscore.deep — это коллекция примесей Underscore, которые работают с вложенными объектами. Версии `underscore.deep` до версии 0.5.3 уязвимы для уязвимости загрязнения прототипа. Злоумышленник может создать вредоносную полезную нагрузку и передать ее в `deepFromFlat`, что приведет к загрязнению любых будущих создаваемых объектов. Любым пользователям, у которых есть `deepFromFlat` или `deepPick` (из-за ее зависимости от `deepFromFlat`) в своем коде, следует обновиться до версии 0.5.3 как можно скорее. Пользователи, не имеющие возможности обновиться, могут смягчить эту проблему, изменив `deepFromFlat`, чтобы предотвратить определенные ключевые слова, которые предотвратят это.
CVE-2022-24802deepmerge-ts - это библиотека typescript, предоставляющая функциональность для глубокого слияния объектов javascript. deepmerge-ts уязвим для загрязнения прототипа через файл deepmerge.ts, функцию defaultMergeRecords(). Эта проблема была исправлена в версии 4.0.2. Для этой проблемы нет известных обходных путей.
CVE-2021-3918json-schema уязвим для ненадлежащего контролируемого изменения атрибутов прототипа объекта («Загрязнение прототипа»).
CVE-2021-26707Библиотеку merge-deep до версии 3.0.3 для Node.js можно обманом заставить перезаписывать свойства Object.prototype или добавлять в него новые свойства. Эти свойства затем наследуются каждым объектом в программе, что облегчает атаки с загрязнением прототипа против приложений, использующих эту библиотеку.
CVE-2021-21304Dynamoose — это инструмент моделирования с открытым исходным кодом для DynamoDB от Amazon. В Dynamoose начиная с версии 2.0.0 и до версии 2.7.0 существовала уязвимость prototype pollution во внутреннем служебном методе «lib/utils/object/set.ts». Этот метод используется во всей кодовой базе для различных операций в Dynamoose. Мы не видели никаких доказательств эксплуатации этой уязвимости. Нет никаких доказательств того, что эта уязвимость влияет на версии 1.x.x, поскольку уязвимый метод был добавлен как часть перезаписи v2. Эта уязвимость также влияет на бета/альфа-версии v2.x.x. Версия 2.7.0 включает исправление для этой уязвимости.
CVE-2020-28282Уязвимость prototype pollution в 'getobject' версии 0.1.0 позволяет злоумышленнику вызвать отказ в обслуживании и может привести к удаленному выполнению кода.
CVE-2026-34406APTRS (Automated Penetration Testing Reporting System) - это автоматизированный инструмент отчетности на основе Python и Django, предназначенный для тестировщиков проникновения и организаций безопасности. До версии 2.0.1 конечная точка edit_user (POST /api/auth/edituser/<pk>) позволяет любому пользователю, который может достичь этой конечной точки и отправить созданное разрешение на эскалацию своей собственной учетной записи (или любой другой учетной записи) суперпользователю, включив «is_superuser»: true в орган запроса. Первопричина заключается в том, что CustomUserSerializer явно включает is_superuser в свой список полей, но опускает его из read_only_fields, что делает его записным полем. Просмотр редактирования_user не выполняет дополнительной валидации, чтобы предотвратить изменение этого поля не-суперпользователями. Как только is_superuser настроен на true, получение неограниченного доступа ко всем функциональным возможностям приложения, не требуя повторной аутентификации. Этот вопрос был исправлен в версии 2.0.1.