Testimonials Widget < 4.0.0 - Multiple Authenticated Stored XSS
| Reporter | Title | Published | Views | Family All 12 |
|---|---|---|---|---|
| CVE-2021-24136 | 18 Mar 202115:15 | – | attackerkb | |
| CVE-2021-24136 | 18 Mar 202117:32 | – | circl | |
| Wordpress Testimonials Widget 跨站脚本漏洞 | 18 Mar 202100:00 | – | cnnvd | |
| Wordpress Testimonials Widget Cross-Site Scripting Vulnerability | 22 Mar 202100:00 | – | cnvd | |
| CVE-2021-24136 | 18 Mar 202114:57 | – | cve | |
| CVE-2021-24136 Testimonials Widget < 4.0.0 - Multiple Authenticated Stored XSS | 18 Mar 202114:57 | – | cvelist | |
| EUVD-2021-11050 | 7 Oct 202500:30 | – | euvd | |
| CVE-2021-24136 | 18 Mar 202115:15 | – | nvd | |
| CVE-2021-24136 | 18 Mar 202115:15 | – | osv | |
| Cross site scripting | 18 Mar 202115:15 | – | prion |
10
1. Download and install "Testimonials Widget 3.5.1" from https://wordpress.org/plugins/testimonials-widget/
2. Go into "Testimonials" tab from the sidebar and create a new testimonials by clicking on the "Add New" button
3. Enter testimonial's name, content. In "Author", "Job Title", "Location", "Company", "URL" fields of "Testimonial Data", input an XSS vector, For example:
<script>alert(document.domain)</script>
4. Save the changes and click on "Submit for Review" (if roles is Contributor) or "Publish" (if roles is Author or Editor).
5. By visiting permalink, ex: http://example.com/?testimonials-widget=<name-of-testimonial> or by visiting posts that have embedded shortcodes (Ex: [testimonials limit=5 paging=true char_limit=0]), the JavaScript code injected would be executed.
The problem lied in files at "templates/" folder, where plugin echos user input values without sanitizing:
Ex: testimonials-widget/templates/span-author.php
<?php
global $tw_template_args;
$testimonial = $tw_template_args['testimonial'];
$author = empty( $testimonial['testimonial_author'] ) ? $testimonial['testimonial_source'] : $testimonial['testimonial_author'];
?>
<span class="author"><?php echo $author; ?></span>
Data
Build on a solid foundation with Vulners data
We provide the essential building blocks for cybersecurity solutions with comprehensive, structured, and constantly updated vulnerability and exploits data
Api
Power your application with Vulners API
The Vulners REST API offers reliable, high-performance access to vulnerability intelligence, with 99.9% SLA uptime and CDN-backed data delivery for seamless global access
App
Assess and manage vulnerabilities with Vulners tools
Built on top of Vulners' database and SDK, end-user solutions give security professionals and developers lightweight and powerful tools for vulnerability remediation
23 Jan 2021 06:00Current
5.6Medium risk
Vulners AI Score5.6
EPSS0.00822