欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Sql注入之limit注入的学习

程序员文章站 2023-12-22 13:49:28
...

0x01 前言

今天听学长们交流漏洞挖掘的经验,提到了Limit注入,借此来学习一下limit注入

0x02 知识介绍

limit

LIMIT[位置偏移量,]行数

其中,中括号里面的参数是可选参数,位置偏移量是指MySQL查询分析器要从哪一行开始显示,索引值从0开始,即第一条记录位置偏移量是0,第二条记录的位置偏移量是1,依此类推...,第二个参数为“行数”即指示返回的记录条数。

效果如图 自行理解

Sql注入之limit注入的学习

benchmark

benchmark函数有两个参数,第一个是执行次数,第二个是要测试的函数或者表达式 

比如 benchmark(10000000,sha1(1))

意思是执行sha1函数10000000次 使mysql运算量增大 导致延时 有点类似与多表联合查询(笛卡尔积)

如图

Sql注入之limit注入的学习

大概执行10000000次会造成3秒以上的延时

0x03 limit注入

Example:select*from limittest limit 1,[可控点] or select ... limit [可控点]

limit后面能够拼接的函数只有into和procedure,into可以用来写文件,本文我们不考虑。

在Limit后面 可以用 procedure analyse()这个子查询

而且只能用extractvalue 和 benchmark 函数进行延时

procedure analyse(updatexml(rand(),concat(0x3a,benchmark(10000000,sha1(1)))),1)

如图

Sql注入之limit注入的学习

0x04 脚本批量检测

我的思路是将获取的url的每个id用poc来测试查看有没有延时。

上一篇:

下一篇: