phpList до версии 3.7.0-RC5 не может обеспечить проверку токена CSRF в конечной точке удаления правила отказов (bouncerules.php/bouncerule.php). Удаление выполняется с помощью запроса GET (?page=bouncerules&del=N), а центральная проверка CSRF (verifyCsrfGetToken) вызывается с Enforce=false, поэтому она проверяет токен только при наличии параметра «tk». Удаленный злоумышленник может обманом заставить аутентифицированного администратора загрузить созданный URL-адрес (например, встроенный в тег изображения) для удаления произвольных правил отказов из таблицы phplist_bounceregex без действующего токена CSRF.
Показать оригинальное описание (EN)
phpList before 3.7.0-RC5 fail to enforce CSRF token validation on the bounce rule deletion endpoint (bouncerules.php / bouncerule.php). The deletion is performed via a GET request (?page=bouncerules&del=N), and the central CSRF check (verifyCsrfGetToken) is invoked with enforce=false, so it only validates the token when a 'tk' parameter is present. A remote attacker can trick an authenticated administrator into loading a crafted URL (e.g., embedded in an image tag) to delete arbitrary bounce rules from the phplist_bounceregex table without a valid CSRF token.
Характеристики атаки
Последствия
Строка CVSS v4.0