DVWA之SQL Injection的坑(代码能执行但没显示完全)
在自己做dvwa的SQL注入的时候总是不知道哪个地方出了问题,代码没报错,但就是爆不出表名那些,只能爆出数据库名,如下图:折腾了我几天时间,后来发现应该是编码规则的原因
需要在数据库里改它的编码规则(我用的是phpstudy搭建的dvwa,所以用它里面的phpMyAdmin工具来对其编码规则进行修改),一开始创建的编码规则如下图:
通过上面两张图我们可以发现,information_schema与dvwa的编码规则是不一样的,然后我们进行SQL注入的时候是用information_schema去跟dvwa进行union联合查询,而union需要它们的编码规则相同才行,所以我们只要把编码规则改成一样的就行了,此处我是将dvwa中的first_name,last_name,password的编码规则都改成utf8_general_ci。算是解决了这个坑。如下图:希望下次有人遇到这个坑能知道怎么过。最后附上一张成功的截图: