实战练习是在一个公众号上学习的
推荐一下,文章写的很好,特别是选取的cms都很适合新手,文章中说这个cms漏洞比较多,没想到是真的,我这个新手也能找到几个漏洞 :)
我个人比较喜欢敏感函数回溯参数过程这种审计思路,这次练习的cms是熊海cms
在这里我只说一下文章中没有提起的漏洞,我为什么说文章写得很好呢,就是因为新手也能找到漏洞,这令我有更大的动力去学习
话不多说,直接搜索关键字select
第一个是这种没有变量的语句
这种没有办法控制,是没有注入的
在columnlist.php中发现了一个查询语句
看似有一个可以控制的变量,往上回溯,查找他的来源
发现在这里只是查询处数据库字段的值
然后将查询出的$nav的id值赋值给$navid,中间无法控制,
所以这种情况也无法注入
再往下面继续找
这个就很明显了,先判断type的值,然后get到的id值直接拼接到sql语句中执行,很明显是存在注入的
但是在最上面包含了一个文件,checklogin.php
这里因该是检查是否登录,因此这个是一个后台的sql注入,
验证一下
下面的editlink.php也是一样的情况,也是一个后台的注入
后面一样的就不说了,还有几个这种的
然后在下面的一个top.php中发现了一个cookie注入
通过获取cookie中user的值,然后拼接到sql语句中查询
这个参数user是登录后才会出现在cookie中,经测试,未登录的时候添加在cookie中并没有注入
直接访问好像也不行,可能是模版文件之类的,(我也不太懂,轻喷)然后我就找那些文件包含了top.php
直接搜索,发现全是后台文件,也是一个后台的注入
随便找一个页面进行测试
其他的注入估计还有一些,就不再找了,下面还有一个无意中发现的一个存储型xss
还是老方法,直接搜索echo等输出函数
在一个editlink.php中发现echo了好几个东西
我以为还是从数据库中查出来然后输出的
往上找了一下,发现并不是
在这里发现是通过post接收的
然后在下面更新数据库中的值
没有任何过滤直接存储到了数据库中,在后面输出
测试一下
编辑链接
随便找一个框输进去payload
成功弹出cookie
--------------------------------------------------------------------
这个cms洞实在太多了。。。
未完待续