目录
前言
本文使用靶场为sqli-labs less-1;
一,联合注入前提
页面上有回显
什么是回显?
在一个网站页面,客户端将服务端执行SQL语句查询数据库中的数据展示在页面中,那么这个页面就存在回显
二,基本流程
- 判断注入点
- 使用order by推断字段数,即表中列的数量
- 使用union,确认显示位,即会显示的字段
- 获取数据库信息:数据库名>数据库表名>数据库表中所有字段>字段中数据
三,实战注入过程
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,