环境需求
- 系统:Windows10
- 中间件:https://dlcdn.apache.org/tomcat/tomcat-9/v9.0.58/bin/apache-tomcat-9.0.58-windows-x64.zip
- 数据库:用phpstudy携带的5.7.26版本即可
- jspxcms安装包(部署到Tomcat用来复现):https://www.ujcms.com/uploads/jspxcms-9.0.0-release.zip
- jspxcms源码包(部署到IDEA进行分析):https://www.ujcms.com/uploads/jspxcms-9.0.0-release-src.zip
部署过程
一、jspxcms安装包部署到Tomcat
解压好jspxcms安装包后,将Tomcat的ROOT目录替换为jspxcms的ROOT目录。
修改application.properties数据库信息,最后启动Tomcat就部署完成了。
二、jspxcms源码部署到IDEA
使用IDEA打开解压好的源码目录,由于使用了SpringBoot,直接启用主程序Application即可。
漏洞复现
一、XSS
在首页随便打开一条新闻,评论需要登录,先注册一个用户,然后提交评论,使用burpsuite抓包。
查看请求包可以看到请求路径是/comment_submit,通过路径定位到源码。
【→所有资源关注我,私信回复“资料”获取←】
1、网络安全学习路线
2、电子书籍(白帽子)
3、安全大厂内部视频
4、100份src文档
5、常见安全面试题
6、ctf大赛经典题目解析
7、全套工具包
8、应急响应笔记
在IDEA使用Ctrl+Shift+F搜索comment_submit,很容易就可以找到,在此处下断点进行调试。
重新发布一条评论,回到 IDEA,可以看到变量 text 接收了评论的内容,然后又调用了 submit。
跟进这个 submit,在调用 service 层进行业务处理的位置下断点。可以看到使用了 comment 对象的属性去保存 text 然后传递给 service.save ,text 的内容没有被改变。跟进 service.save 在调用 dao 层的位置下断点。