php伪随机数

从 PHP 4.2.0 开始,随机数生成器自动播种,如果设置了seed参数,生成的随机数就是伪随机数,意思就是每次生成的随机数是一样的.

1
2
3
mt_srand(seed);
echo intval(mt_rand());
#若seed不变,则每次的随机数都一样

通过伪随机数爆破种子

使用工具 php_mt_seed,在linux环境下使用.

1
2
3
4
5
[*]./php_mt_seed 伪随机数
[!]找到对应版本的种子,如果有多个,可以依次尝试

[!]如果生成了多个随机数,可以这样使用
[*]./php_mt_seed 伪随机数1 伪随机数2 伪随机数3