CVE-2026-93901
Optima Express IDX <= 8.7.5 - Unauthenticated Privilege Escalation to 'ihf_clear_cache' AJAX Action to Author Role Assignment
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.
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- Low
- Privileges needed
- None
- User interaction
- None
What an attacker can affect
- Confidentiality
- Low
- Integrity
- Low
- Availability
- Low
Exploit likelihood
What each source reports
CVE List Score used
7.3
Optima Express IDX <= 8.7.5 - Unauthenticated Privilege Escalation to 'ihf_clear_cache' AJAX Action to Author Role Assignment
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.
- Record
CVE-2026-93901- CVSS 3.1
- 7.3 High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L - Weakness
- CWE-269
- Updated
- 2026-11-02
EUVDEUVD-2026-86601
7.3
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.
- Record
EUVD-2026-86601- CVSS 3.1
- 7.3 High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L - Updated
- 2026-11-02
GitHub AdvisoriesGHSA-6j3j-m6gr-8hmg
7.3
The Optima Express IDX plugin for WordPress is vulnerable to Privilege Escalation in all versions...
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.
- Record
GHSA-6j3j-m6gr-8hmg- CVSS 3.1
- 7.3 High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L - Weakness
- CWE-269
- Updated
- 2026-11-02
NVD
7.3
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.
- Record
CVE-2026-93901- CVSS 3.1
- 7.3 High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L - Weakness
- CWE-269
- Updated
- 2026-11-02
Affected products
History
| Recorded | Changed | Sources |
|---|---|---|
| first indexed | CVE List, EUVD, GitHub Advisories, NVD |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2026-93901 is a high vulnerability (CVSS 7.3) in Ihomefinder Optima Express Idx, published September 25, 2026. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.35%, the 28th percentile. No source names a fixed version.
References
wordfence.com/threat-intel/vulnerabilities/id/8ba63df6-ae71-4320-bb82-87d6e17cc47d?source=cve
plugins.trac.wordpress.org/browser/optima-express/tags/8.7.5/iHomefinderAdmin.php
plugins.trac.wordpress.org/browser/optima-express/tags/8.7.5/iHomefinderAjaxHandler.php
plugins.trac.wordpress.org/browser/optima-express/tags/8.7.5/iHomefinder.php
plugins.trac.wordpress.org/changeset?reponame=&old=3706448%40optima-express&new=3706448%40optima-express
nvd.nist.gov/vuln/detail/CVE-2026-93901
github.com/advisories/GHSA-6j3j-m6gr-8hmg