{"id":30320,"date":"2026-09-29T08:30:57","date_gmt":"2026-09-29T00:30:57","guid":{"rendered":"https:\/\/www.54iter.cn\/?vuln=cve-2026-100371"},"modified":"2026-09-29T08:30:57","modified_gmt":"2026-09-29T00:30:57","slug":"cve-2026-100371","status":"publish","type":"vuln","link":"https:\/\/www.54iter.cn\/?vuln=cve-2026-100371","title":{"rendered":"CVE-2026-100371 &#8211; InvoicePlane is a self-hosted open source application for managing invoices, clients, and"},"content":{"rendered":"<p>InvoicePlane is a self-hosted open source application for managing invoices, clients, and payments. In version 1.7.2, an authorization guard to Users::change_password(), was added to address a previous authorization flaw that allowed a secondary administrator (user_type=1, user_id != 1) to directly change the password of the primary administrator (user_id=1) through users\/change_password\/{id}. That remediation, however, protects only the direct password-change operation. It does not protect the identity attribute that password recovery actually trusts: user_email. Users::form() applies no equivalent object-level authorization check when editing the primary administrator&#8217;s account, and user_email is not included in PROTECTED_FIELDS. A secondary administrator can therefore rewrite the primary administrator&#8217;s email address, then drive the public password-recovery flow \u2014 which resolves the account by user_email \u2014 to receive the reset token and take over user_id=1. The result is an alternate attack path that achieves the same impact PR #1638 was intended to prevent: cross-administrator full account takeover of the primary administrator. This issue has been patched via commit 8616fa4.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>InvoicePlane is a self-hosted open source application for managing invoices, clients, and payments. In version 1.7.2, an authorization guard to Users::change_password(), was added to address a previou<\/p>\n","protected":false},"template":"","meta":[],"categories":[],"tags":[],"class_list":["post-30320","vuln","type-vuln","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/vuln\/30320","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=30320"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=30320"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=30320"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}