74cms -v3.0 存储型xss 分析与复现

本文详细分析了74cmsv3.0的一个存储型XSS漏洞,涉及admin_link.php的管理员后台,表单提交时未做输入验证,导致logo链接处存在XSS风险,且SQL注入可能。作者追踪了从表单提交到数据存入的流程,强调了安全检查和输入过滤的重要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

74cms -v3.0 存储型xss 分析与复现

漏洞存在版本为v3.0

进入管理员后台admin_link.php,url为[Powered by 74CMS](http://localhost/74cms/upload/admin/admin_link.php)


点击添加就可以添加友情链接,表单如下

查看admin_link.php的源码

在这里插入图片描述

包含了一些头文件,通过smarty模板调用了友情链接的模板admin_link.htm

判断接收的参数act,如果是list,就通过查询数据库取出友情链接的信息,并使用smarty显示出来

在这里插入图片描述

actdel_link就是删除
在这里插入图片描述

actadd,使用smarty调用admin_link_add.html

在这里插入图片描述

其中admin_link_add.html 在admin/templates/link目录下

跟进查看后,根据html代码,可以判断出这个模板显示的页面是
在这里插入图片描述

参数为addsave

猜测应该是对表单处理的数据做了处理,最后调用inserttable方法构造sql语句将信息存入数据库,再通过前面的方法取出数据库中的友情链接信息

admin_link_add.htm中,可以输入logo地址

在这里插入图片描述

该logo地址在admin_link.htm的输出位置如下

在这里插入图片描述

在img标签中,通过占位符填充logo的链接,就有存在xss的风险

接下来就是找安全检查

将表单插入到数据库中使用了inserttable自定义函数,跟进查看

在这里插入图片描述

没有对输入做出过滤

输出位置也没有做出过滤

在这里插入图片描述

直接在链接logo输入

1 onerror=alert(1)

返回友情链接显示页,将鼠标指针停留在logo,就出现了弹窗

在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值