关于davwa的SQL注入时报错:Illegal mix of collations for operation ‘UNION‘原因剖析与验证

本文详细阐述了在dvwa靶场注入过程中遇到的'Illegal mix of collations for operation 'UNION''错误,主要原因是字段collation不一致。通过修改dvwa中的字符集和排序规则为utf8_general_ci,成功解决了这个问题。
摘要由CSDN通过智能技术生成

项目场景:

在进行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

在这里插入图片描述此时,就可以解决了:

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值