# [BSidesCF-2019]Mixer

image-20241118213754642

主页,有一些提示

It looks like you aren't admin, though! Better work on that! Remember, is_admin must bet set to 1 (integer)! And you can safely ignore the rack.session cookie. Like actually. But that other cookie, however....

这就说明可能不是 session 加密解密了,得用密码学的东西来解释一下了

登录抓包后发现有了一个 user 的 session,肯定不是 jwt,也不会是 flask 的 session,密码的话有两个大类的分组密码,一个是加密后的密文参与下一组的明文加密,一个是直接加密的,分组的密文互不影响,这个 user 很可能是密码加密的,我可以直接修改一点值,将头三个字符换成 123

image-20241118214245512

发现存在有正常的回显,那就是互不影响的密码加密(ECB 加密)

ECB 加密是 16 位一组,并且每组互相独立,加密后每组为 32 位。又因为在 JSON 中 1.0 = 1,所以如果替换成这样:

第一个块

{“first_name”:”A

第二个块
1.00000000000000

第三个块
“,”last_name”:”1

第四个块
231″,”is_admin”:

第五个块
0}

将第二块加到第四块后面就行了

s='227f846a99b58fab1ba58859ca38e4af78ba38397fd14ba8a08e18b5cb318e22989561536b419cd4053214349996364eab0cfaf489d5309500bf83df1de3b2f4c2980bfa0bbac594d039877e4d4c14db'
res = s[:128] + s[32:64] + s[128:]
print(res)

参考链接:https://blog.csdn.net/weixin_44037296/article/details/112370510

https://www.shawroot.cc/874.html

Edited on

Give me a cup of [coffee]~( ̄▽ ̄)~*

odiws WeChat Pay

WeChat Pay

odiws Alipay

Alipay

odiws PayPal

PayPal