52 lines
1.2 KiB
YAML
52 lines
1.2 KiB
YAML
id: matrix-detect
|
|
|
|
info:
|
|
name: Matrix Server Detect
|
|
author: erethon
|
|
severity: info
|
|
description: Detects Matrix servers based on .well-known entries. See https://en.wikipedia.org/wiki/Matrix_(protocol)
|
|
reference: https://spec.matrix.org/v1.3/server-server-api/#getwell-knownmatrixserver, https://spec.matrix.org/v1.3/client-server-api/#getwell-knownmatrixclient
|
|
tags: tech,matrix
|
|
|
|
requests:
|
|
- method: GET
|
|
path:
|
|
- "{{BaseURL}}/.well-known/matrix/server"
|
|
- "{{BaseURL}}/.well-known/matrix/client"
|
|
|
|
matchers-condition: and
|
|
matchers:
|
|
|
|
- type: regex
|
|
regex:
|
|
- '"m\.([a-z]+)":'
|
|
|
|
- type: word
|
|
part: header
|
|
words:
|
|
- text/html
|
|
negative: true
|
|
|
|
- type: status
|
|
status:
|
|
- 200
|
|
|
|
extractors:
|
|
- type: json
|
|
part: body
|
|
name: server-to-server
|
|
json:
|
|
- '."m.server" | select( . != null )'
|
|
|
|
- type: json
|
|
part: body
|
|
name: client-homeserver
|
|
json:
|
|
- '."m.homeserver" | .base_url | select( . != null )'
|
|
|
|
- type: json
|
|
part: body
|
|
name: identity-server
|
|
json:
|
|
- '."m.identity_server" | .base_url | select( . != null )'
|