Optima Express IDX <= 8.7.5 - Unauthenticated Privilege Escalation to 'ihf_clear_cache' AJAX Action to Author Role Assignment
What fixes it
No source in this snapshot names a fixed version.
Description
The Optima Express IDX plugin for WordPress is vulnerable to Privilege Escalation in all versions up to, and including, 8.7.5. This is due to the provisionBlogCredentials() function in iHomefinderAdmin.php being reachable via the wp_ajax_nopriv_ihf_clear_cache AJAX action — through the call chain iHomefinderAjaxHandler::clearCache() → activateAuthenticationToken() → getAuthenticationInfo() → provisionBlogCredentials() — with no capability check, nonce verification, or ownership validation, and the function unconditionally calling $user->set_role('author') on whichever WordPress account matches the hard-coded login optima-express via get_user_by('login', 'optima-express'). This makes it possible for unauthenticated attackers to escalate a pre-registered optima-express account to the Author role, gaining publish_posts, upload_files, and edit_published_posts capabilities, including access to the plugin's own /wp-json/optima-express/v1/blog-post REST endpoint. Exploitation requires open user registration to be enabled on the target site, and the attacker must register the optima-express username before the plugin has had the opportunity to provision that login for its own integration account.
Text from CVE List
Affected versions 1
- Optima Express IDXaffected: all versions through 8.7.5CVE List
References 10
- wordfence.com/threat-intel/vulnerabilities/id/8ba63df6-ae71-4320-bb82-87d6e17cc47d?source=cveReferencevia CVE List
- plugins.trac.wordpress.org/browser/optima-express/tags/8.7.5/iHomefinderAdmin.php#L818Referencevia CVE List
- plugins.trac.wordpress.org/browser/optima-express/tags/8.7.5/iHomefinderAdmin.php#L795Referencevia CVE List
- plugins.trac.wordpress.org/browser/optima-express/tags/8.7.5/iHomefinderAjaxHandler.php#L146Referencevia CVE List
- plugins.trac.wordpress.org/browser/optima-express/tags/8.7.5/iHomefinder.php#L291Referencevia CVE List
- plugins.trac.wordpress.org/browser/optima-express/tags/8.7.5/iHomefinderAdmin.php#L369Referencevia CVE List
- plugins.trac.wordpress.org/browser/optima-express/tags/8.7.5/iHomefinderAdmin.php#L498Referencevia CVE List
- plugins.trac.wordpress.org/browser/optima-express/tags/8.7.5/iHomefinder.php#L176Referencevia CVE List
- plugins.trac.wordpress.org/browser/optima-express/tags/8.7.5/iHomefinderAdmin.php#L752Referencevia CVE List
- plugins.trac.wordpress.org/changeset?reponame=&old=3706448%40optima-express&new=3706448%40optima-expressReferencevia CVE List