Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
35 changes: 35 additions & 0 deletions http/technologies/matrix-homeserver-detect.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
id: matrix-homeserver-detect

info:
name: Matrix Homeserver - Version Detection
author: davidegirardi
severity: info
description: |
Extract the Matrix homeserver name and version
metadata:
max-request: 1
shodan-query: title:"Synapse is running"
verified: true
tags: tech,matrix,synapse

http:
- method: GET
path:
- "{{BaseURL}}/_matrix/federation/v1/version"

redirects: true
max-redirects: 2

matchers:
- type: word
part: body
words:
- '"name":"Synapse"'
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

See above, this is not just for Synapse. Moreover, the fact that the federation endpoint under _matrix exists (at Matrix spec level) is much more robust than matching a string.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi @davidegirardi , i have updated the matcher and raised a PR 8739

Let me know if it works

Thanks !

- '"server":'
condition: and

extractors:
- type: json
part: body
json:
- '.server | select((.name != null) and (.version != null)) | .name, .version'