代码审计之YXcms1.2.1

这篇文章就算是漏洞复现吧。。下面进入正题~

拿到源码,首先在seay代码审计系统扫扫看看有没有明显的漏洞~

图片[1]-代码审计之YXcms1.2.1-安全小百科

全篇都是用的类,,,对于这种框架类的我很少接触,,这次就算好好研究吧~

扫下来没看到什么有用的,不过对整个网站框架有了一个基本了解

网页源码都在protected目录下,public目录下存放的都是css,js等代码,对我们审计用处不是太大~

下面来找找配置文件,以及最重要的是网站功能文件~一般出问题,作过滤之类的都能在这个文件找到

图片[2]-代码审计之YXcms1.2.1-安全小百科

这是网站的配置文件,包含了一些基本的数据库连接及配置,先留着后面或许有用~

下面来寻找网站功能文件

图片[3]-代码审计之YXcms1.2.1-安全小百科

翻了一会儿,找到了这个网站功能函数的文件,第一个函数功能就是sql过滤,,感觉就是这个文件了,后面如果发现漏洞,这个文件就相当于一扇门,首先得过这个门,所以这个文件源码需要精读~

读读读。。

图片[4]-代码审计之YXcms1.2.1-安全小百科

中间有很多函数,不过大多是一个独立的函数,并不知道用在哪儿。。所以只能说先放一放~不过读到这里,觉得有问题!

这是cookie的生成方法,难道有cookie注入?

然后我注册了一个账户,来找找这个cookie,这里由于之前的工作,cp_encode函数就在这个文件里,并且最重要的是在这个加密函数下就是解密函数cp_decode

下面来通过代码调试看看,解密后是什么~

图片[5]-代码审计之YXcms1.2.1-安全小百科

这里string为我们的cookie值,而这个key是什么。。由于安装都是直接点下一步,所以有的配置也没好好看,这时候翻出我们之前看的config配置文件,来找找这个key是什么~

图片[6]-代码审计之YXcms1.2.1-安全小百科

密钥默认的应该就是yx,下面开始解密!

图片[7]-代码审计之YXcms1.2.1-安全小百科

可以看到解密结果为1t2tyhjtyhj123t8.8.8.8

这里解释一下,1应该是用户id,2应该表示这是用户组,然后后面的就是用户名,用户昵称、ip信息,至此我们已经能够分析出cookie的内容,下面来进行cookie注入!

exp:100′ union select username,password from yx_admin#t2tyhjtyhj123t8.8.8.8

图片[8]-代码审计之YXcms1.2.1-安全小百科

这里利用cookie修改器将生成的cookie覆盖原先的cookie,然后刷新页面~

图片[9]-代码审计之YXcms1.2.1-安全小百科

下面继续审计!

功能函数文件算是看完了,,下面来找找网站内提供给用户有什么功能~

图片[10]-代码审计之YXcms1.2.1-安全小百科

网站正常的留言本功能,看看存不存在xss~

提交完成后需要后台管理同意,下面来看看后台有没有作过滤什么的。。

图片[11]-代码审计之YXcms1.2.1-安全小百科

这就行了?就一个最简单的xss就行了。。可是我在功能文件里明明看到了过滤函数

图片[12]-代码审计之YXcms1.2.1-安全小百科

下面来好好找找in函数和out函数应用的地方(框架类的不好找啊啊)

这是in函数的应用,对输入的进行循环检查

既然在进数据库前已经进行了检查,那么数据库存放的就应该是已经转义的

但是在后台输出时应该是用out又将转义字符还原回来,从而造成了xss

这里用html_out函数将原先转义的恢复过来了

图片[13]-代码审计之YXcms1.2.1-安全小百科

这里转义回来了。。。转来转去最终出问题了。。

下面真的就是漏洞复现了。。自己挖肯定挖不出来。

图片[14]-代码审计之YXcms1.2.1-安全小百科

这是后台管理的一个公共类,所有后台页面都会引用这个类,问题出在这个通过GET方法传递sessionid,这里利用的方法是csrf

假设我们生成一个url:http://xxxx/index.php?r=admin&phpsessid=adog

那么这里管理员的phpsessid就会变成adog,而这里session的生效时间是20分钟(这里在后台进入时可以设置),这里我作为攻击者,如果也访问后台,利用的phpsessid同样是adog,那么我就拥有了管理员权限~

审计的漏洞还不是很全,水平有待涨进,敬请谅解!

相关推荐: 浅谈内网渗透

最近在常州上课,大家都连着公司的网,形成了一个大的局域网,这时候假设我想看下隔壁教室在上什么课,我们的内网渗透技术就有用了~ 我们这里所提到的内网渗透技术相对简单,其实就是arp+dns欺骗,后续有机会再介绍系统的提权和其他姿势~ arp+dns真的是内网渗透…

© 版权声明
THE END
喜欢就支持一下吧
点赞0
分享
评论 抢沙发

请登录后发表评论