项目场景:
在进行dvwa靶场注入时,发现出现这里出现了一些bug:Illegal mix of collations for operation ‘UNION’
经过查询与验证后,解决并分析了这一问题。
原因分析:
之所以会出现这个情况,是union两端的字段的collatie(排序规则)不同。即dvwa的first_name与last_name字符校对格式与information_schema的发生了冲突:
解决方案:
我们需要将dvwa中的校对规则进行修改,让其与information中的一致,即改成utf8_general_ci:
alter table users modify first_name varchar(15) character set utf8 collate utf8_general_ci
alter table users modify last_name varchar(15) character set utf8 collate utf8_general_ci
alter table users modify user varchar(15) character set utf8 collate utf8_general_ci
alter table users modify password varchar(15) character set utf8 collate utf8_general_ci
此时,就可以解决了: