freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

网站后台“空降”了一个管理员
2018-01-01 09:00:00

*本文中涉及到的相关漏洞已报送厂商并得到修复,本文仅限技术研究与讨论,严禁用于非法用途,否则产生的一切后果自行承担。

*本文作者:sjy93812,本文属 FreeBuf 原创奖励计划,未经许可禁止转载。

新的一年开始了,发点小福利。无意间发现了一个影响phpcms最新版本的漏洞。最近我一个使用phpcms框架搭建的系统,无故多出了一个超级管理员。确定不是出于本意添加的,然后联想到可能是这个框架中可能是存在SCRF漏洞,但是去看添加管理员的数据包的时候貌是有防CSRF的字符串,那么这个管理员从哪里来的呢?

然后我去分析了一下后台中可能存在SCRF的地方,能在不知不觉中被CSRF的点也只可能是在前台提交的数据,在后台能看到的地方,可能只有友情链接这里了,然后我进一步的去分析了一下。

网站后台”空降”了一个管理员

这是申请链接的入口,这里输入的数据会在后台显示。这里我们提交一个数据,然后抓包看一下。

网站后台”空降”了一个管理员

这里调用了link模块我们看一下这个模块的功能

网站后台”空降”了一个管理员

这里可以看到对我们提交的一些参数做了安全过滤,也就是我们直接想往后台插入恶意数据基本上是不可能的。接着往下看,下面就是直接入库的操作。

网站后台”空降”了一个管理员

可以看到这里正常插入了,而已数据也是正常的,到这里为止都是正常的。接下来就是看哦我们在后台读取这些数据的时候有没有问题。

网站后台”空降”了一个管理员

同样的我们找到后台读取数据库数据的代码

网站后台”空降”了一个管理员

这里直接在数据库中得到了表中的数据,这里非管理权限是不能操作的,这里也不存在什么问题,接着往下跟数据包的流向。

可以看到这里加载了一个link_list文件,这里继续跟一下。这里将要向页面输出的数据打印出来看一下。

网站后台”空降”了一个管理员 

网站后台”空降”了一个管理员

这里看起来都是正常的,但是在分析数据包的时候发现响应包中出现了一段对url处理的JS。这里就出现了问题,这里遍历了所有的a标签,并在a标签的href属性值后面全部添加了pc_hash字段。

网站后台”空降”了一个管理员

经过这段JS处理之后的我们之前提交的链接变成了如下的格式:

网站后台”空降”了一个管理员

那么这个链接就存在很大的问题了,这里在访问你之前提交的超链接时会将这个参数以GET方式携带过去。这里就造成了会话凭证的泄露。

然后在自己的服务器中写一个接收参数的页面

网站后台”空降”了一个管理员

然后将你本地的链接提交到后台审核

网站后台”空降”了一个管理员

然后当管理员去审核你提交的链接时你就可以拿到这个防csrf的字符串了,那么就可以做很多事情了。

网站后台”空降”了一个管理员

本文仅供学习研究,正在使用该程序的站长要注意一下这个问题。

*本文作者:sjy93812,本文属 FreeBuf 原创奖励计划,未经许可禁止转载。

# phpcms
本文为 独立观点,未经允许不得转载,授权请联系FreeBuf客服小蜜蜂,微信:freebee2022
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
相关推荐
  • 0 文章数
  • 0 关注者