sql注入复习总结 -- 1

1 sql注入的类型

字符型,数字型,布尔盲注,时间盲注,堆叠注入,宽字节注入,二次注入

2 面试常问

1 你有没有手工注入过,手工注入的流程是什么

2 有没有用过sqlmap,他的某些参数

3 sql注入的绕过

4 sql注入如何防御

5 给你个登录框你有什么注入思路

3 常见的函数

user():查看当前登录的用户名,可以查看权限的大小

mysql> select user();
+----------------+
| user()         |
+----------------+
| root@localhost |
+----------------+

database():当前所处数据库

version():版本信息

@@datadir():读取当前数据库的路径

load_file:读取本地文件的函数

substr/substring:截取函数

if():

mid():当substr被禁用了可以使用

ascii():

concat(), group_concat():group_concat可以将输出放在一行输出,因为有些时候子查询只让显示一行

4 MySQL如何写shell,如何getshell

1 权限为root

2 secure_file_priv为空

3 必须要知道网站的物理路径

例题:

http://127.0.0.1/sqliabs/Less-7/?id=-1%27))%20union%20select%20%22%3C?php%20phpinfo();%20?%3E%22,2,3%20into%20outfile%20%22E:\phpstudy_pro\WWW\sqliabs\Less-7\web.php%22--+

闲谈:

user-agent(uagent)字段:保存的是浏览器的内核和引擎

referer:保存的是从那个地方来的(跳转之前的网址)

5 注入流程

联合注入查询,首先得知道他有多少列,因为只有列数相同才能用union select,用order by注入

闭合:

如果不闭合,mysql就会默认查询gid'为1的,把后面的自动去除

但是闭合后还是会有一个单引号,我们如何逃出呢?

and ‘1’=1

--+注释,在MySQL中--(空格)是注释,#也是注释 

为什么id=-1

正常查询来说当id=1时就会查询gid为1的值,就查到了第一排的数据,但是我们注入主要是在虚拟表里面注入出数据的,就得让id=-1或者一个不存在的值,他就会走到虚拟表中来,就会展示在前端

回显user(),database()

有数据库和用户了,那么接下来我就可以去回显我们的数据库的管理员表名,列名和数据

总结:

字符型注入如上:

报错注入:

updatexml等函数他只能显示32个字节所以需要用substr把他一个一个列出来

例题:

因为如果用联合查询页面不会回显,这时我们能用报错注入让路径报错回显到页面上面来

?id=1%27%20and%20%20updatexml(1,concat(0x7e,user(),0x7e),1)--+

盲注:

你的页面有两种状态,一个成功一个失败,对的就显示,错误就无任何回显,就是一个ture,一个fales;

  • 第一个 1 表示从 database() 函数返回的数据库名字符串的第 1 个位置(字符串的索引通常从 1 开始,也有些情况从 0 开始,这里结合 SQL 注入中常见的用法,是从第 1 个字符开始)开始截取。
  • 第二个 1 表示截取的长度为 1 个字符

当ascii等于115的时候有返回

http://127.0.0.1/sqliabs/Less-8/?id=1%27%20and%20ascii(substr(database(),1,1))=115--+

但是当大于115的时候就没了。大于114也有,说明第一个字符的ascii值为115

1,我们可以先用length判断出数据库的位数,然后再慢慢注入

2 sqlmap跑

直接跑出来的payload可以用,有时间盲注和Boolean盲注

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

fatsheep洋

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值