在核心加密算法strcode函数中:
可以看到加密的算法是异或,所以可以用密文和明文异或的方法反过来求出密钥key,如下:
key长度为18,因此我们要找一个明文长度超过18而被加密的字串,经过检查,发现cookie中的auth值长度超过了18,因此将针对cookie中的auth进行key猜解。
在Tipask的密码重置中,生成密码重置链接的关键字串是由strcode产生,因此可以利用破解后的key来达到任意密码修改功能。
首先申请重置目标用户的密码

利用自己的注册用户的cookie解密key:

当前登录用户cookie中的auth为VjEFWAFbAwtXBlUDV1ZVCAEAUFkDBQFcVFcCUggCAlNVWg%3D%3D
然后进行解密:

获得key为d82ab802de152bf9bb
然后输入想要重置的用户:

获得了重置密码的链接。

