fastcoll

我用的不知道是哪个项目里面的,我就一个exe文件,可能是以前的吧(猫爹无奈),也可以就用我的那个独子,也可以去网上找找新版本的更稳定的生成器

用于构造两个原值不同,但是MD5值相同的工具。在CTF里面如果给你两个String类型变量(用不了数组绕过),还要你MD5强相等(===),就得用这个工具来构造了。这就叫MD5碰撞,分为有前缀和无前缀,在工具的同目录下应该有一个txt,里面写的是前缀,无前缀txt里面就为空。

下载

用法:

  1. 直接把txt拖到exe上,会给你生成两个文件,还会弹出来个cmd窗口(猫爹严肃,演示的时候CMD卡死了,关也关不掉,最后任务管理器给他强制关的)

    最后输出的两个文件里面有不可编码字符,最好URL编码一下

    脚本如下(记得改路径!):

    <?php
    function readmyfile($path){ $fh = fopen($path, "rb"); $data = fread($fh, filesize($path)); fclose($fh); return $data; } $a = urlencode(readmyfile("C:/fastcoll/0_msg1.txt"));
    $b = urlencode(readmyfile("C:/fastcoll/0_msg1.txt")); if(md5((string)urldecode($a))===md5((string)urldecode($b))){ echo $a; } if(urldecode($a)!=urldecode($b)){ echo $b;
    }
    ?>

  2. 也可以指定输出文件名

    ./fastcoll.exe -p 前缀文件.txt -o 输出文件1.txt 输出文件2.txt

感觉用着应该略够,可能后面我会把它换成新的,到时候再更新,有兴趣的可以去看看现在新的fastcoll,感觉挺多的。