Плагин REST API TO MiniProgram для WordPress уязвим к небезопасной прямой ссылке на объект во всех версиях до 5.1.2 включительно. Это связано с тем, что обратный вызов разрешений (update_user_wechatshop_info_permissions_check) проверяет только то, что предоставленный параметр «openid» соответствует существующему пользователю WordPress, в то время как функция обратного вызова (update_user_wechatshop_info) использует отдельный, контролируемый злоумышленником параметр «userid», чтобы определить, какие метаданные пользователя будут изменены, без проверки того, что «openid» и «userid» принадлежат одному и тому же пользователю. Это позволяет злоумышленникам, прошедшим проверку подлинности, с доступом на уровне подписчика и выше, изменять метаданные произвольных пользователей, связанные с магазином (storeinfo, storeappid, storename), через параметр REST API userid.
Показать оригинальное описание (EN)
The REST API TO MiniProgram plugin for WordPress is vulnerable to Insecure Direct Object Reference in all versions up to, and including, 5.1.2. This is due to the permission callback (update_user_wechatshop_info_permissions_check) only validating that the supplied 'openid' parameter corresponds to an existing WordPress user, while the callback function (update_user_wechatshop_info) uses a separate, attacker-controlled 'userid' parameter to determine which user's metadata gets modified, with no verification that the 'openid' and 'userid' belong to the same user. This makes it possible for authenticated attackers, with Subscriber-level access and above, to modify arbitrary users' store-related metadata (storeinfo, storeappid, storename) via the 'userid' REST API parameter.
Характеристики атаки
Последствия
Строка CVSS v3.1