【攻防世界-web】PHP2

1.打开训练网址,内容翻译为下图:

2.源代码也无任何提示,在题目中写的是php2,那在网站中常见的是index.php和script.php,

index.php

script.php

根据上方的结果,可以看见script.php不存在,index.php存在,但无任何信息,由于这个脚本文件是在服务器上运行的,不是在客户端浏览器上,因此需知道这个脚本文件里的代码,也就是要找到脚本源代码,php文件源代码通常在phps文件,尝试查看:

出现内容,翻译为:

如果通过urldecode解码后,id是admin,则登录成功返回并携带一串密钥,这个就是本题要解的

这里urldecode是PHP函数,解码经过URL编码的字符串,解码回原始的形式;URL编码中某些字符被替换为%后跟两个十六进制形式;这是为了确保 URL 中的特殊字符不会与 URL 结构冲突。

例如,空格字符在 URL 中被编码为 %20,而 & 字符被编码为 %26,%字符被编码为%25

这里需要对"admin"部分或者对全部进行编码,对a进行编码:%61;id=%61dmin,因为编码后参数%61dmin中存在特殊字符%,浏览器会自动进行URL解码,所以我们对%进行编码:%25

最终id=%2561bmin,通过get请求给参数id赋值;

通过id=%2561%2564%256d%2569%256e,也可以获得flag,因为url发送请求时会解一次码,到php时通过urldecode函数,再次解码,得到的也是admin

出现flag值,提交。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值