nuclei-templates/http/technologies/magento-detect.yaml

42 lines
1.3 KiB
YAML
Raw Normal View History

2021-05-18 13:53:10 +00:00
id: magento-detect
info:
name: Magento Detect
author: TechbrunchFR
severity: info
description: Identify Magento
reference:
- https://devdocs.magento.com/guides/v2.4/graphql/
2024-09-10 09:08:16 +00:00
classification:
cpe: cpe:2.3:a:magento:magento:*:*:*:*:*:*:*:*
2022-06-15 19:57:31 +00:00
metadata:
verified: true
2023-10-14 11:27:55 +00:00
max-request: 2
2024-09-10 08:22:50 +00:00
vendor: magento
2024-09-10 09:08:16 +00:00
product: magento
shodan-query: http.component:"Magento"
2022-11-14 19:45:12 +00:00
tags: magento,tech
2021-05-18 13:53:10 +00:00
http:
2021-05-18 13:53:10 +00:00
- method: GET
path:
- '{{BaseURL}}'
2021-05-19 01:11:04 +00:00
- '{{BaseURL}}/graphql?query=+{customerDownloadableProducts+{+items+{+date+download_url}}+}'
2021-05-18 17:29:14 +00:00
2023-10-14 11:27:55 +00:00
# There might be a better way to do that, the idea of this check is that Magento might be behind some kind of proxy when
# consumed by a SPA/PWA app, so we need a valid GraphQL query from Magento to check reference[1]
2021-05-19 00:22:07 +00:00
matchers-condition: or
2021-05-18 13:57:50 +00:00
matchers:
2021-05-18 17:29:14 +00:00
- type: dsl
dsl:
- 'contains(tolower(header), "x-magento")'
2021-05-18 17:29:14 +00:00
- 'status_code == 200'
condition: and
- type: dsl
dsl:
2021-05-19 00:22:07 +00:00
- 'contains(body, "graphql-authorization")'
2021-05-18 17:29:14 +00:00
- 'contains(body, "The current customer")'
- 'status_code == 200'
2021-05-19 01:11:04 +00:00
condition: and
2024-09-12 05:14:01 +00:00
# digest: 4a0a00473045022016ad140be400ce01e3eecf2d1da962a2769b8a20035edd839b297cf990710129022100903ad9c8d39a2918924efc58345a5a3428e2b50a351d64ca683e26c8679581e1:922c64590222798bb761d5b6d8e72950