本文主要是介绍(php伪随机数生成)[GWCTF 2019]枯燥的抽奖,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
审核源码发现加载check.php,审计发现使用了mt_rand()函数,这个函数生成的值是伪随机的
参考下面这篇文章
PHP mt_rand安全杂谈及应用场景详解 - FreeBuf网络安全行业门户
kali里面输入下载工具
git clone https://github.com/openwall/php_mt_seed.git
cd进去输入make后编译出的文件先chmod +x一下
然后先用脚本将所给字符串处理成工具需要的数据形式
str1='abcdefghijklmnopqrstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ'
str2='vBAuEECbgZ'
res=''
for i in range(len(str2)): for j in range(len(str1)):if str2[i] == str1[j]:res+=str(j)+' '+str(j)+' '+'0'+' '+str(len(str1)-1)+' 'break
print(res)
按我这个格式输入计算出种子
利用原计算函数算出完整字符串
这篇关于(php伪随机数生成)[GWCTF 2019]枯燥的抽奖的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!