一次朋友的cms网站练习

今天对朋友搭建的平台进行了测试,主要是一些已经爆出来的漏洞进行复现
1.前台xss
漏洞出现的位置在/e/ViewImg/index.html,浏览代码,发现如下代码存在漏洞
分析代码:通过Request函数获取地址栏的url参数,并作为img和a标签的src属性和href属性,然后经过document.write输出到页面。
image.png

跟进Request函数
分析代码:通过window.location获取当前url地址,根据传入的url参数,获取当前参数的起始位置和结束位置。
例如,地址是:index.html?url=javascript:alert(document.cookie),经过Request函数处理就变成javascript:alert(document.cookie)
url地址经过Request函数处理之后,然后把url地址中的参数和值部分直接拼接当作a标签的href属性的值和img标签的src标签的值。
通过上面的分析,可以发现代码没有对url的参数做过滤就直接拼接成a和img标签的属性的值,因此可以构造payload:? ?url=javascript:alert(/xss/)
http://ip/e/ViewImg/index.html?url=javascript:alert(/ctsz1/)
访问url,然后点击图片触发

 

进入后台

先用御剑进行了目录扫描,发现了后台登录界面

 

 然后进行密码爆破,发现密码为password

 

 然后进行后台测试

 

 


2.后台xss
在后台系统-备份与恢复数据-执行SQL语句中存在xss漏洞
<script>alert('ctsz1')</script>

 


3.后台xss
后台系统-系统参数设置-前台允许提交的来源地址中存在XSS漏洞
</tExtArEa>'"><sCRiPt>alert('ctsz1')</sCrIpT>

 

 

4.后台xss
后台系统-系统参数设置-远程保存忽略地址框中存在XSS漏洞
</tExtArEa>'"><sCRiPt>alert('ctsz1')</sCrIpT>

 


 

3,4这两个xss是一样的
5.任意代码执行

 


然后把 参数tablename 的值改为 phpifno()

 


点击点击 Forward 完成备份,然后关闭抓包php版本就出来了
 

 
6.信息泄露
点击备份与恢复数据-管理备份目录-查看备份说明
 

 


然后将url的readme.txt改为config.php

 


 

复制
复制
复制
复制
复制
复制
posted @ 2024-06-28 16:10  Ctsz1丶  阅读(22)  评论(0)    收藏  举报