大半夜来提交洞了,快凌晨2点了,蛋碎。
看文件/Lib/BidAction.php 13-35行
注意这里
能看出来id和id2这2个参数是没经过过滤就直接带入了update.
那么下面分析如何才能实现这个利用
看这句
如果从上面过来的talk表里面的作者跟当前session的作者是同一人,并且发的帖子需要是一个提问帖,is_question就是来判断是否为提问帖。
看利用,
首先注册一个号。发布一个提问帖
然后记下当前帖子的id,现在是4
自己随便回复一个,记下回复的id,,这个如何找到呢?把鼠标移到编辑那里就能晓得了
当前是5.
看了下数据库的结构,在源码中id传给了rid也就是帖子的id,所以id=4
id2回复的id也就是5
访问http://127.0.0.1/YouYaX/index.php/bid/accept/id/4/id2/5.html
当前这两个参数都是可以注入的。
没有回显,就盲注,
http://127.0.0.1/YouYaX/index.php/bid/accept/id/4/id2/5 AND 1111=IF((select length(database())=2),SLEEP(5),1111).html
如果猜解正确的话 浏览器转5秒返回页面,如果长度猜解错误,则直接返回页面。
如果猜解正确的话,页面会返回正确,如果猜解错误,则采纳的答案就会多一条,看图