Skip to content

23.md5_calculator

复制本地路径 | 在线编辑

一般难度,有两点:

  1. rand() 随机数如果为 srand(time(0)),可以通过获取当前时间暴力破解,因为 time(0) 是按照秒来记的,完全来得及知道它的值。
  2. 一般来说,一个程序的 canary 是始终一致的,也就是其各个函数的 canary 都是一样的。如果某个函数泄露了 canary 的值,那如果还有别的有栈溢出漏洞的函数,此时构造栈溢出就可以不用担心 canary 不对了。