id: ms-exchange-server

info:
  name: Microsoft Exchange Server Detect
  author: pikpikcu,dhiyaneshDK
  severity: info
  description: Check for presence of Exchange Server using Outlook Web App path data.
  reference:
    - https://github.com/GossiTheDog/scanning/blob/main/http-vuln-exchange.nse
  metadata:
    max-request: 1
  tags: microsoft,exchange,tech

http:
  - method: GET
    path:
      - "{{BaseURL}}/owa/auth/logon.aspx"

    matchers-condition: or
    matchers:
      - type: regex
        part: header
        regex:
          - "(?i)(X-Owa-Version:)"

      - type: regex
        part: body
        regex:
          - "/owa/auth/[0-9.]+/"

      - type: word
        words:
          - '<title>Exchange Log In</title>'
          - '<title>Microsoft Exchange - Outlook Web Access</title>'

    extractors:
      - type: kval
        kval:
          - x_owa_version

      - type: regex
        part: body
        group: 1
        regex:
          - "/owa/auth/([0-9.]+)/"
# digest: 4b0a00483046022100e8484cafcf72702c1efa18e6748e9605823c6e6ffb900ed6ae7b07ebe42a5b68022100d4d9ae98dfd76f70057de120f75b0ec100fdae00d5092db6c16e014870e007af:922c64590222798bb761d5b6d8e72950