SQL注入入门笔记
注入判断
数值型
方法:URL后面输入 and 1=1 / and 1=2后页面回显不同(前提是页面上有回显的地方)
当输入1=1时页面正常,1=2时页面出错,说明为数值型注入
原理:后台脚本中提交的sql语句为类似 select * from <表名> where id = x 的语句,通过get方式提交用户输入的数值来改变语句中的x,没有引号
字符型
方法:URL后面输入正常值后,在后面加上用单引号、双引号、括号等一个或两个的组合(一般是单引号)
在后面加上单引号后页面报错,在后面再加上"--+"后页面恢复正常,说明为字符型注入
原理:后台脚本中提交的sql语句为类似SELECT * FROM <表名> WHERE id=‘x’,可以看到id后面的内容是被引号包裹的,注入时需要输入相应的引号来把原来的引号截胡,再把后面的多余引号注释掉
开始注入
判断字段数
字段数,个人理解为返回结果中的列数,一般使用order by语句判断,将语句直接拼接在用户输入的数值后面,当order by后面的数字最大且不报错时即为字段数,这里使用sqli-labs做例子
http: