Календарь встреч и событий — плагин Amelia для WordPress уязвим к небезопасной прямой ссылке на объект во всех версиях до 2.1.3 включительно. Это связано с тем, что UpdateProviderCommandHandler не может проверить изменения в поле externalId, когда пользователь поставщика (сотрудника) обновляет свой собственный профиль. «externalId» напрямую сопоставляется с идентификатором пользователя WordPress и передается в «wp_set_password()» и «wp_update_user()» без проверки авторизации. Это позволяет прошедшим проверку подлинности злоумышленникам с доступом на уровне поставщика (сотрудника) и выше получить контроль над любой учетной записью WordPress, включая администратора, путем введения произвольного значения «externalId» при обновлении своего собственного профиля поставщика.
Показать оригинальное описание (EN)
The Booking for Appointments and Events Calendar – Amelia plugin for WordPress is vulnerable to Insecure Direct Object Reference in all versions up to, and including, 2.1.3. This is due to the `UpdateProviderCommandHandler` failing to validate changes to the `externalId` field when a Provider (Employee) user updates their own profile. The `externalId` maps directly to a WordPress user ID and is passed to `wp_set_password()` and `wp_update_user()` without authorization checks. This makes it possible for authenticated attackers, with Provider-level (Employee) access and above, to take over any WordPress account — including Administrator — by injecting an arbitrary `externalId` value when updating their own provider profile.
Характеристики атаки
Последствия
Строка CVSS v3.1