sql显错注入——靶场操作记录<掌控安全>

掌控安全学院SQL注入靶场
存在index.php? 前几节课讲过?一般为get传参!
当然界面上也说了


————————————————开始尝试——————————————
1.判断是否存在注入

当输入id=2时页面发生变化
再继续
掌控安全学院SQL注入靶场
当加上条件and1=2时界面不显示(报错)基本确定存在注入
————————————————判断字段数——————————————
掌控安全学院SQL注入靶场 输入order by 4 之后原本显示正常的界面显示不正常!
判断当前表中字段数为3
由于接下来要使用union select 联合查询(联合查询关键在于前后字段数需要相同 )所以进行字段数判断!
————————————————判断回显点——————————————


输入联合查询发现回显为第二三字段


并且得出当前database()=’error’


再次查看所使用MySQL 版本
由于MySQL版本高于5.0 大概率有系统自带库information_schema/ tables/ columns 存在
————————————————尝试查找——————————————


查询出一个table_name为user 那么我们再看看有没有其他的表
在url尾输入 limit 0,1 /1,1 /2,1 /尝试一下


发现输出为error表中的内容
原来是因为 id=1 and 1=1 并没有造成前面的数据异常,导致输出为
id =1 and 1=1 limit 1,1 的内容

改正后输出尝试得到另一个表 error_flag


————————————————尝试查找字段——————————————


发现表error_flag 中有id 字段
再次limit 尝试


得到想要内容 column_name 为Flag
————————————————尝试查找内容——————————————


得到flag
提交发现错误
再次limit
得出更多


完成第一题4.1.1-SQL注入-显错注入Rank 1

印证(注入的本质是由于用户可控制输入的内容被当作数据库代码进行执行!)

第二题

————————————————分析url——————————————-
掌控安全学院SQL注入靶场
输入id=1/2/3 返回界面会发生变化

但是输入id=3-1界面无变化


并且输入


显示界面正常
and 1=2 永远不可能成立 为什么界面会正常

查看提示
被闭合


说输入内容确实是被单引号所闭合当成一个整体字符串来
并没有将1!=2这个执行
于是想办法破坏’’由于单引号需要两个在一起才能发挥作用
于是’ 我在次输入单引号并且破坏后面的单引号#(或者—%20+将其注释)’
————————————————开始尝试——————————————


发现界面错误了
再次尝试
将条件变为 and 1=1


他又行了
说明注释单引号起作用了
————————————————判断字段数——————————————
order by 1/2/3/4
当输入order by 4 时候界面出错
大概率说明 字段数为 3
————————————————判断回显点——————————————


由此发现回显点为第二三字段
并且得出 数据库的版本 以及 database()=‘error’
————————————————尝试查找——————————————


发现table 有user
继续使用limit 得出


得出想要的table 为error_flag

————————————————尝试查找字段——————————————


得到字段为 flag

————————————————尝试查找内容——————————————

得出flag
再次使用limit 查看是否有其他flag


得到所有flag
完成第二题4.1.2-SQL注入-显错注入Rank 2
验证(注入本质为用户输入的数据被数据库当作代码执行)

第三题

——————————————研究url——————————————


输入不同id 参数 界面信息会发生变化

输入 and 1=2 尝试

发现界面无动于衷
发现(‘2 and 1=2’)输入内容被’’和()包围

同样是输入的内容被闭合

尝试 突破闭合


发现’ 突破闭合行不通


括号突破闭合同样行不通

再次尝试


更改and 条件


突围成功
—————————————— 判断字段数————————————————

当oeder by 为4 时候
出现错误
得出字段数为三
—————————————— 判断回显点————————————————


回显为二三字段

—————————————— 尝试找出table_name————————————————


得出user表
limit
得出error_flag 表

—————————————— 尝试找出column_name————————————————


得出字段flag

—————————————— 尝试找出内容————————————————


继续limit
得出更多的flag


得到所有flag
完成第三题4.1.3-SQL注入-显错注入Rank 3
验证(注入本质为用户输入的数据被数据库当作代码执行)

第四题

————————————————分析url——————————————


貌似没有什么异常
但是
输入and1=2 无反应


发现被双引号加括号包围了

尝试突破闭合包围
基于前面经验直接”)突破闭合

突破成功
——————————————判断字段数————————————


字段数为三
——————————————判断回显点————————————


回显点在二三字段
——————————————查找表————————————


使用limit 得出其他表


得到error_flag
——————————————查找表中字段————————————


得到flag 字段

——————————————查找表中内容————————————


得到flag
使用limit 得到其他的


完成第四题

结论:and 条件是需要加上的,从而使得想要的内容不受影响
查找内容时候要细心,猜想时一次不行试多次
不要一次不行就放弃
细心特别是中英文差别!

  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

chick&

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值