{"id":8882,"date":"2026-09-04T18:50:07","date_gmt":"2026-09-04T10:50:07","guid":{"rendered":"https:\/\/www.54iter.cn\/?vuln=cve-2026-15689-2"},"modified":"2026-09-04T18:50:07","modified_gmt":"2026-09-04T10:50:07","slug":"cve-2026-15689-2","status":"publish","type":"vuln","link":"https:\/\/www.54iter.cn\/?vuln=cve-2026-15689-2","title":{"rendered":"CVE-2026-15689 [CRITICAL] &#8211; Dancer2::Plugin::Auth::Extensible versions through 0.713 for Perl allow password reset lin"},"content":{"rendered":"<p>Dancer2::Plugin::Auth::Extensible versions through 0.713 for Perl allow password reset link poisoning via the request Host header in _default_email_password_reset and _default_welcome_send.<\/p>\n<p>Both default emails emit a link of the form `$base\/login\/$code`, whose authority comes from the request Host header, or from X-Forwarded-Host under behind_proxy (obtained from Dancer2&#8217;s request-&gt;base function). A POST to \/login carrying submit_reset and a username needs no authentication: it stores a fresh reset code against that account and mails the account holder a link to a host of the sender&#8217;s choosing. The welcome mail takes the same path when the application calls create_user with email_welcome set.<\/p>\n<p>Through 0.711 the handlers read `request-&gt;uri_base` and `request-&gt;base` directly; Versions 0.712 and later provide an uri_base configuration key that defaults to the untrusted `request-&gt;uri_base` when unset.<\/p>\n<p>The default configuration with reset_password_handler enabled and the default message text, a recipient who follows the link hands a working reset code to the sender&#8217;s host, which is enough to take over the account.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Dancer2::Plugin::Auth::Extensible versions through 0.713 for Perl allow password reset link poisoning via the request Host header in _default_email_password_reset and _default_welcome_send.<\/p>\n<p>Both defa<\/p>\n","protected":false},"template":"","meta":[],"categories":[],"tags":[],"class_list":["post-8882","vuln","type-vuln","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/vuln\/8882","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/vuln"}],"about":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/types\/vuln"}],"wp:attachment":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=8882"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=8882"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=8882"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}