From fa9b29fdd3ff5d7f8149e497262c950e14f9069f Mon Sep 17 00:00:00 2001 From: Dhiyaneshwaran Date: Wed, 7 Jan 2026 22:42:59 +0530 Subject: [PATCH] WordPress Elementor Page Builder - Full Path Disclosure --- .../wordpress/wordpress-elementor-fpd.yaml | 35 +++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 http/misconfiguration/wordpress/wordpress-elementor-fpd.yaml diff --git a/http/misconfiguration/wordpress/wordpress-elementor-fpd.yaml b/http/misconfiguration/wordpress/wordpress-elementor-fpd.yaml new file mode 100644 index 00000000000..06500c65dd1 --- /dev/null +++ b/http/misconfiguration/wordpress/wordpress-elementor-fpd.yaml @@ -0,0 +1,35 @@ +id: wordpress-elementor-fpd + +info: + name: WordPress Elementor Page Builder - Full Path Disclosure + author: DhiyaneshDk + severity: low + description: | + WordPress Plugin Elementor Page Builder plugin files are publicly accessible without ABSPATH protection, exposing sensitive server path information through PHP error messages when accessed directly. + reference: + - https://wordpress.org/plugins/elementor/ + metadata: + plugin: elementor + verified: true + max-request: 6 + tags: wp,wordpress,wp-plugin,fpd,elementor,misconfig + +http: + - method: GET + path: + - "{{BaseURL}}/wp-content/plugins/elementor/app/modules/import-export/runners/export/wp-content.php" + - "{{BaseURL}}/wp-content/plugins/elementor/app/modules/import-export/runners/import/wp-content.php" + - "{{BaseURL}}/wp-content/plugins/elementor/app/modules/import-export/runners/revert/wp-content.php" + - "{{BaseURL}}/wp-content/plugins/elementor/app/modules/import-export-customization/runners/export/wp-content.php" + - "{{BaseURL}}/wp-content/plugins/elementor/app/modules/import-export-customization/runners/import/wp-content.php" + - "{{BaseURL}}/wp-content/plugins/elementor/app/modules/import-export-customization/runners/revert/wp-content.php" + + stop-at-first-match: true + + matchers: + - type: dsl + dsl: + - 'status_code == 200 || status_code == 500' + - 'contains(body, "elementor")' + - 'contains_all(body, "Fatal error", "Uncaught Error") || contains_all(body, "Warning:","failed to open stream")' + condition: and