id: umami-panel

info:
  name: Umami Panel - Detect
  author: userdehghani
  severity: info
  description: |
    simple, fast, privacy-focused, open-source analytics solution.
  reference:
    - https://umami.is/
    - https://umami.is/docs
  metadata:
    verified: true
    max-request: 3
    shodan-query: http.favicon.hash:-130447705
  tags: panel,umami,login,detect,discovery

flow: http(1) && http(2)

http:
  - method: GET
    path:
      - "{{BaseURL}}/login"
      - "{{BaseURL}}/favicon.ico"

    stop-at-first-match: true
    matchers:
      - type: dsl
        dsl:
          - 'status_code==200 && contains_any(tolower(body), "Login | umami", "umami</div>", "umami</h1>", "<title>umami - login")'
          - "status_code==200 && (\"-130447705\" == mmh3(base64_py(body)))"
        condition: or

  - method: GET
    path:
      - "{{BaseURL}}/~404"

    extractors:
      - type: regex
        part: body
        regex:
          - 'v(?P<version>\d+\.\d+\.\d+)'
# digest: 4b0a00483046022100e6cfb6fd3783458a53a029bf1c588f5bf798848d18a1fc49f8f923c4b43b72c20221008e4c5b4578cf31cf03cb5d05a4fcf992d435ba7c13f290a2bcc9d5e3d3823fa2:922c64590222798bb761d5b6d8e72950