禅道9版本注入漏洞
2020-03-21 11:01:01 Author: mp.weixin.qq.com(查看原文) 阅读量:195 收藏

禅道在9版本存在sql注入漏洞,原理是limit后的参数采用了直接拼接,但是现在这个版本的禅道对所有的sql语句都做了转义处理,并且get参数都有严格的限制,不能出现"()"等特殊符号,所以说要想要通过get去注入获得数据,会显得非常困难,另外要提到的一点就是禅道很多参数都会有base64的解码,这其实也是一个比较不错的突破口,但是这里发现了一个更明显的sql注入漏洞。漏洞代码位于module/api/model.php文件的sql函数

这里是有很多限制的,比如说只能用select语句,并且其中可能还不能出现“()”这样的符号,因此这里只能采用最古老的的select语句去读数据库信息,虽然简单但是十分有效。

漏洞

url:

http://127.0.0.1/zentao/api-getModel-api-sql-sql=select account,password from zt_user

禅道所采用的pathinfo模式,首先通过传参确定进入的control文件为api,对应的method为getModel,接着开始对参数进行赋值,其中moduleName为api,methodName=sql,最后的param为sql=select account,password from zt_user,那么调用了call_user_func_array函数后,会进入到api目录下的model文件,对应调用其中的sql函数,并通过赋值,将sql变量赋值为select account,password from zt_user,最后执行query语句,造成数据库泄露。

推荐文章++++

*Tplmap - 扫描服务器端模板注入漏洞的开源工具

*动态论坛经典的注入漏洞利用

*手把手注入门之配置asp漏洞环境


文章来源: http://mp.weixin.qq.com/s?__biz=MzAxMjE3ODU3MQ==&mid=2650460286&idx=3&sn=fe4f53bc9bb51d7a985f69281ded3cc9&chksm=83bbb59ab4cc3c8c5f34a121bd661c3cf013659a12a51c9580eb1ca84e4b2629a0a03c389b98#rd
如有侵权请联系:admin#unsafe.sh