程序逻辑问题

进去一看

没什么奇特的地方,两个输入框一个提交

不多说,流程走一遍,先是看源码再抓个包

源码中提到了给index.text

点进去qio一哈,发现时打印flag的过程

抓包的话没遇到上面奇特的信息

算了,先分析源码吧

关键点在,如果($row[pw]) && (!strcasecmp($pass, $row[pw])就打印flag,

row是自定义的一个函数mysql_fetch_array($query, MYSQL_ASSOC)

mysql-fetch-array函数:

这里的意思是去query指针的关联数组,然后再看$query=mysql_query($sql)

mysql-query函数:执行一条mysql查询。。。这里的意思是数据库里得有password和user。。。。,但是如果我们直接让sql有一个值而不去访问数据库就可以轻而易举的绕过了

根据源码

 

所以这里使用单引号闭合

直接对它给出的username后面进行注入Username' union select md5(1)#

使用union select将md5(1)的值直接给sql然后用#注释掉后面的内容

再将password的值改为1(不能为空)就得到flag了

 

 

转载于:https://www.cnblogs.com/wosun/p/11215757.html

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值