thinkphp3
ThinkCMFX2.2.3SQL注⼊漏洞
该漏洞在2.3版本⼜以下,漏洞点与ArticleController.class.php edit_post⽅法SQL注⼊(CVE-2018-19898)。
ThinkCMF X2.2.2是基于ThinkPHP 3.2.3开发的,ThinkPHP 3.x版本之前被爆出存在bind注⼊,这个漏洞就是ThinkPHP3.x注⼊的典型案例。漏洞位于前台⽂章编辑处,不过要复现这个漏洞点⾸先是要注册⼀个普通的会员。
如果⽬标⽹站可以允许你注册那么就可以⽇翻它,注册地址:localhost/ThinkCMFX/index.php?
g=user&m=login&a=index&redirect=
在ArticleController.class.php类⽂件中,问题出在edit_post 函数中,第173⾏声明了该函数,之后的意思是输⼊的参数通过
I(“post.post”)传递到$article。
可以看到,数据是从外部进⼊的,并且id参数是可控的,为save操作。
⽽$article=I(“post.post”),该函数定在跟进到/simplewind/Core/Common/functions.php⽂件,⽽I⽅法定义在428⾏,会调⽤think_filter⽅法对参数进⾏过滤。
由于正则字符中没有匹配bind,所以导致了后⾯的注⼊漏洞,ThinkPHP官⽅的修复措施就是在此处匹配时加上了bind。接下来进⼊典型的数据库更新操作了,$articles为多维数组包含payload。
最终Payload为:

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。