Skip to content

Instantly share code, notes, and snippets.

@Xib3rR4dAr
Last active March 1, 2024 23:42
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Xib3rR4dAr/8b0f2bf40092e00851fe2f57f15e947e to your computer and use it in GitHub Desktop.
Save Xib3rR4dAr/8b0f2bf40092e00851fe2f57f15e947e to your computer and use it in GitHub Desktop.
Avada <= 7.11.6 Contributor+ Stored XSS (fusion_form_submit)

Avada <= 7.11.6 Contributor+ Stored XSS

Exploit Author: Muhammad Zeeshan (Xib3rR4dAr)

Description:

The Avada | Website Builder For WordPress & WooCommerce theme for WordPress is vulnerable to Stored Cross-Site Scripting via fusion_form_submit shortcode in versions up to, and including, 7.11.6 due to insufficient input sanitization and output escaping on user supplied attributes. This makes it possible for authenticated attackers with contributor-level and above permissions to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page.
While creating a button, Avada allows to add attributes to a button, which can be exploited to perform XSS. By exploiting XSS attacker can perform actions on behalf of other users like create new backdoor admin account when admin views the form.

Reproduction Steps:

  1. Login as contributor user
  2. Visit http://127.0.0.1/wp-admin/admin.php?page=avada-forms
  3. Enter any name for form and click "Create New Form"
  4. In editor, "Text" tab would already be selected, if not then click "Text" tab and paste:
[fusion_form_submit link_attributes="autofocus onfocus=eval(atob(&quot;YWxlcnQoJ1hTUycpOw&quot;))"]Submit[/fusion_form_submit]
  1. Click "Submit for Review"
  2. Logout from contributor user
  3. Login as administrator user
  4. View form created by user by visiting http://192.168.253.1/wp-admin/admin.php?page=avada-forms
  5. Clicking "Live Builder" for the form created by contributor user will trigger XSS without further interaction.

Author and other users can also publish a form having XSS in shortcode and then link to a post then XSS will trigger when any visiting user visits the post.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment