BUUCTF-[MRCTF2020]Ezaudit

Posted TzZzEZ-web

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了BUUCTF-[MRCTF2020]Ezaudit相关的知识,希望对你有一定的参考价值。

[MRCTF2020]Ezaudit

扫描目录,发现www.zip可以下载到源码。
进行部分审计,

只有当username,password和private_key全部正确时,才会获取flag。
对于username和password,由于是sql查询,可以万能密码进行绕过,剩下的问题是获取private_key。

给出了获取public_key和private_key的函数,并且mt_rand函数是伪随机函数,只要获取种子值就都不是问题。
接下来我们要根据public_key反推出种子值。
首先转换字符串

s = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789'
key = 'KVQP0LdJKRaV3n9D'
m = ''
for i in key:
    for j in range(len(s)):
        if i == s[j]:
            m += "{} {} 0 {} ".format(j,j,len(s)-1)
print(m)


找到了一个种子值,开始尝试获取private_key。

(这里一定要注意php的版本,根据爆破出的种子的版本来,版本不一样,密钥也不一样)

登录成功获取flag。

以上是关于BUUCTF-[MRCTF2020]Ezaudit的主要内容,如果未能解决你的问题,请参考以下文章

BUUCTF-[MRCTF2020]Ezaudit

BUUCTF-[MRCTF2020]Ezaudit

BUUCTF: [MRCTF2020]Ezpop

BUUCTF: [MRCTF2020]Ezpop

BUUCTF: [MRCTF2020]Ezpop

BUUCTF [MRCTF2020]你传你呢