SQL联合注入


前言

本文使用靶场为sqli-labs less-1;


一,联合注入前提

页面上有回显

什么是回显?

在一个网站页面,客户端将服务端执行SQL语句查询数据库中的数据展示在页面中,那么这个页面就存在回显


二,基本流程

  1. 判断注入点
  2. 使用order by推断字段数,即表中列的数量
  3. 使用union,确认显示位,即会显示的字段
  4. 获取数据库信息:数据库名>数据库表名>数据库表中所有字段>字段中数据

三,实战注入过程

1,判断注入点

http://127.0.0.1/sqli-labs-master/Less-1/?id=1
在这里插入图片描述
将id的参数改为2,id=2,发现页面有变化
http://127.0.0.1/sqli-labs-master/Less-1/?id=2
在这里插入图片描述
可以判断此页面与数据库进行了交互,任何与数据库产生交互的地方,都可能存在注入,接下来,我们利用and 1=1(判断的是整型参数)来判断是否存在注入点。

首先:

我们尝试在url后面加一个’
http://127.0.0.1/sqli-labs-master/Less-1/?id=1'
页面返回我们存在有语法错误:
在这里插入图片描述
显然是因为单引号引起的报错,结合报错信息,我们猜测后端执行的sql语句为:

select * from xxx where id=$id limit 0,
  • 4
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值