Sql注入基础复习

  • 有赞点赞,没赞请看完后补票…
  • 此文章为干货,但务必实战,自主搭建靶场sql-labs供使用
  • (http://47.94.22.226/sqli-labs/)

SQL 注入经常出现的地方

(用户输入数据和后端数据库产生交互的地方)

  • 内部实现 / 流程的角度

url 传参、表单 post、Cookie、User-Agent、X-Forwarded-For…

  • 常用业务点注入

新闻 / 商品等查询处、用户注册 / 登陆处、修改用户资料时、找回密码处、搜索框…

判断闭合方式–有回显和无回显

闭合方式’ " () (‘x’) ((‘x’)) (“x”) ((“x”)) (()) ‘%x%’-------
(创造错误,使用转义字符或大数等,无法判断闭合方式时,要多方面求证)
有回显:
2’ and ‘1’=‘1,若返回结果为id=2时的值,则说明注入类型为’,若返回结果为id=1时的值,说明注入类型为’)
原因:注入类型为’时,所构造的sql语句为’2’ and ‘1’=‘1’,返回的值为’2’,所以所查询的结果为id=2。注入类型为’)时,所构造的sql语句为(‘2’ and ‘1’=‘1’),这时会把括号内的值当做布尔值处理。括号内的值为0,最终返回id=1(数字型和字符型的根本在于闭合方式不同,还是在于探究闭合方式)
无回显:(排除法,一些典型特征闭合方式基本固定)
搜索select * from table1 where username like ‘% x %’;
插入数据insert into table1 (username,password,xx1,xx2) values(‘zj’,‘123’,‘xx1’,‘xx2’);

Sql注入的基本步骤

* 步骤1:

推断数据库语法大概是什么(通过确认语法才能判断大概的闭合方式)
查询、POST、GET、插入
例如查询语法:
select * from [某个表] where id = [参数]

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值