Vyper - это питонический язык смарт-контрактов для виртуальной машины Ethereum. В версиях 0.3.10 и более ранних использование встроенной фу…
Vyper - это питонический язык смарт-контрактов для виртуальной машины Ethereum. В версиях 0.3.10 и более ранних использование встроенной функции `create_from_blueprint` может привести к уязвимости двойной оценки, когда `raw_args=True` и аргумент `args` имеет побочные эффекты. Видно, что функция `_build_create_IR` встроенной функции `create_from_blueprint` не кэширует упомянутый аргумент `args` в стеке. Таким образом, он может оцениваться несколько раз (вместо получения значения из стека). Не было найдено уязвимых производственных контрактов. Кроме того, двойную оценку побочных эффектов должно быть легко обнаружить в клиентских тестах. Таким образом, влияние невелико. На момент публикации исправленные версии отсутствуют.
Продукт получает входные данные от вышестоящего компонента, однако не нейтрализует или некорректно нейтрализует синтаксис кода перед передачей этих данных в вызов динамического вычисления (например, «eval»).
https://cwe.mitre.org/data/definitions/95.html →Открыть в коллекции CWE →Данная атака эксплуатирует доверие системы к файлам конфигурации и ресурсов. Когда исполняемый файл загружает ресурс (например, файл изображения или файл конфигурации), злоумышленник модифицирует файл таким образом, чтобы либо непосредственно выполнить вредоносный код, либо манипулировать целевым процессом (например, сервером приложений), заставляя его выполнять действия на основе вредоносных параметров конфигурации. По мере того как системы всё активнее интегрируют ресурсы из локальных и удалённых источников, вероятность осуществления данной атаки возрастает.
https://capec.mitre.org/data/definitions/35.html →Открыть в коллекции CAPEC →