sql语言是弱类型语言,今天根据这个特性做了个小测试
在sql语句里“="是判断的意思,并不是赋值。
根据上图,**‘1test’**这是一个字符窜,而他第一个字符是1,就类似于MD5弱类型绕过
所以返回true。
这样我们根据这个特点来访问数据库看看
可以发现我们访问数据库成功
’1d’=1返回true,所以成功执行,查询所有的数据
我在搜索sql弱类型语言绕过的资料的时候发现了新的方法。
根据这个特性
password='asdd'=''
由于sql查询从左到右执行的,因为密码不是asdd所以返回false
而false=’’,在sql语句里是返回true的,因为在sql语句里,NULL就是0就是false。
所以可以成功被执行,这样就成功查询了。