sqli-lab-php7靶场

Less-1 sql注入

  1. 利用单引号闭合,--+注释后面的内容,实现sql注入(urlcode编码会自动把+号转换为空格,如果要使用+号,则使用%)

  1. Order by排序,用二分法,确定表格的列数

第四列的排序的时候报错,第三列正确显示

  1. 联合查询,先查询数据库,再利用information_schema数据库查询表名和列名。

前面条件为真,则后面不执行。前面条件为假,后面才执行。

  1. 最后根据得到的数据库、表名、列名查询数据。

Less-5 get请求  布尔盲注 或者 报错注入

根据输入正确和错误的参数显示不同的页面信息。

当输入正确是显示”You are in”,可以截取想要查询的信息的一个字符的ascii码与某个值比较,可以得到正确和错误两种答案,将想要查询的信息的字符全部遍历完就可得到想要查询的信息的全部内容。

用and符连接,两个条件为真,则结果为真,否则为否

后续步骤,同第一关的思路一样,只需将database()换成想要查询的表名和列名。

报错注入,页面会显示报错点

原理:updatexml的第二个参数的格式不能包含’~’(~的url编码为0x7e),如果包含会报错

Less-9 时间盲注

与布尔盲注不同的是,输入正确和错误的参数会显示相同的页面信息。

所以我们要先办法创建一个条件,输入正确和错误的参数有不同的响应结果。

这里我们可以利用时间,请求成功利用sleep函数睡眠一秒,请求成功则没用响应

使用if(),三元判断

后续步骤,同第一关的思路一样,只需将database()换成想要查询的表名和列名。

Less-11 post注入

思路和第一关一样,没有任何过滤,只是请求方式发生了变化

aa' union select 1, database()#

aa' union select 1, group_concat(table_name) from information_schema.tables where table_schema='security'#

Less-15 post请求 布尔盲注

与Less-5相似,只是请求方式发生了变化

注意点:这里passwd字段也要传值,否则数据提交不了

Less-17 

这里对uname使用了mysqli_real_escape_string过滤,但passwd没有过滤

审计代码

,可以使用报错注入或布尔注入

mysqli_real_escape_string函数

需要进行转义的字符串。

会被进行转义的字符包括:NUL (ASCII 0)、 \n、\r、\、 '、" 和 CTRL+Z。

这里可以使用,count(),floor(),rand(),group by,这四个函数造成主键冲突的报错

1' and (select 1 from (select count(*), concat(database(),floor(rand(0)*2)) as x from information_schema.tables group by x) as a)#

Less-18 User-Agent头部注入,或者X-Forwarded-For头部注入

uname和passwd都被mysqli_real_escape_string函数过滤了,无法闭合

但$uagent并没有被过滤,可以通过Burpsuite抓包工具,修改User-Agent的值实现注入

---这里还用用到报错注入

X-Forwarded-For头部注入与上述相同

Less-20 Cookie注入

与Less-18相似都要用到Burp suite和报错注入

Cookie: uname=admin1' and updatexml(1,concat(0x7e,(select database()),0x7e),1)#

Less-21 Cookie注入+base64编码

与Less-20相比只是多了一个base64编码,实用工具将Cookie注入的值编码就ok了

Less-24 二次注入

注册的时候有mysqli_real_escape_string函数过滤,但转义字符’\’再入数据库是会自动丢弃掉,所以数据库存储的用户名是:admin1’#

密码修改的时候,并没有过滤,而是直接从SESSION取出来的。修改admin1’#的密码入库时,把后面的内容注释了,就相当于修改了admin1的密码

  • 25
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值