郑先森灬
世上没有偶然,有的只是必然,正面面对困难,才能迈向成功。
用户名:’ or 1 #
密码:随便写8位以上
验证码:写正确
如果用户在填写表单或者其他数据的时候,通过一些特殊的数据形式,对SQL的行为作出了非法的影响,就叫作SQL注入!
正常执行的sql语句:
select * from bg_admin where admin_name='zhouyang' and admin_pass=md5('12345678')
不正常执行的sql语句:
select * from bg_admin where admin_name='' or 1 #' and admin_pass=md5('123654uiykgjfhdsav')
由于#在sql语句中是注释符,所以,上面的SQL语句真正执行的是
select * from bg_admin where admin_name='' or 1
很显然,上面执行的结果就是where后面的条件永远为真!其实就相当于:
select * from bg_admin
其实,在这里可以进行sql注入的“用户名”还有很多,比如:
‘ or 1 or ‘
select * from bg_admin where admin_name='' or 1 or '' and admin_pass=md5('ewsdfgbnvb')
protected function escapeData($data) {
return addslashes(strip_tags(trim($data)));
}
EYblog - Powered by Eyblog
https://jwwey.com/index.php/archives/54/(转载时请注明本文出处及文章链接)