
WooCommerce-плагин: безопасное ценообразование товаров на основе формул, закрывающее RCE на основе eval() из CVE-2026-4001
Расчёт цены товара на основе введённых клиентом чисел по формуле — безопасно, без использования PHP-функции eval().
HDWebmobile Formula Pricing позволяет клиентам вводить размеры или количество на странице товара, а цена рассчитывается в реальном времени по формуле, которую вы составляете, используя имена этих полей (например, 10 + width * height * 0.05 для материала, нарезаемого по индивидуальным размерам и оцениваемого по площади). Это распространённая реальная потребность для магазинов, продающих ткань по индивидуальным размерам, оформленные в рамку принты, гравированные изделия или любые товары, цена которых зависит от размеров или количества, а не является фиксированной суммой.
Конкурирующий плагин «Custom Product Addons Pro» реализовывал расчёт цены по формуле, передавая текст формулы продавца напрямую в PHP-функцию eval() во время вычисления (CVE-2026-4001) — уязвимость удалённого выполнения кода без аутентификации. Этот плагин полностью закрывает данный класс уязвимостей по своей конструкции:
eval(), нет create_function(), нет никакой динамической диспетчеризации функций — единственные операции, которые могут выполняться, это сложение, вычитание, умножение и деление обычных чисел.Стандартная структура плагина WordPress:
hdwebmobile-formula-pricing.php Bootstrap
includes/class-hdfp-activator.php
includes/class-hdfp-admin.php
includes/class-hdfp-cart.php
includes/class-hdfp-core.php
includes/class-hdfp-formula-evaluator.php
includes/class-hdfp-frontend.php
includes/class-hdfp-hub.php
includes/class-hdfp-product.php
Часть набора HDWebmobile узкоспециализированных плагинов WooCommerce, каждый из которых решает одну задачу.
GPLv2 или новее. См. LICENSE.