rainbowCrack 的创建彩虹表,并解密

rainbowCrack 的创建彩虹表,并解密

环境: win10
rainbowCrack : 1.7版本

参考网站:http://www.project-rainbowcrack.com/ 这个rainbowCrack工具的官网

下载适合自己的操作版本.

在官网下载适合自己操作系统和GUP(显卡)的版本.

rainbowCrack 的创建彩虹表,并解密_第1张图片

我自己下载的是第一个版本.

下载完成之后,解压.文件解压结果如下.

rainbowCrack 的创建彩虹表,并解密_第2张图片

解压文件目录作用 

文件 作用
rtgen.exe 生成彩虹表的执行文件
rtsort.exe 给彩虹表排序文件
rcrack.exe 执行解密的文件
rt2rtc.exe 将后缀是rt的文件转化为rtc文件
rtc2rt.exe 将后缀是rt的文件转化为rt文件
charset.txt 这个文件是我们的字符集对照表文件(解密的类型)
group.txt -这是组文件.将几个彩虹表组合起来

下面的这些都是文件是命令行和图形化界面的执行文件

rainbowCrack 的创建彩虹表,并解密_第3张图片

.执行根目录下大部分exe文件都会,闪退.

生成彩红表

我们的环境是window环境. 我用命令行的形式生成彩虹表.
我是在rainbowcrack 的根目录下.进入window的命令行界面.
生成彩虹表的命令结构 (词表来自官网的文档,经有道词典翻译)

rtgen hash_algorithm charset plaintext_len_min plaintext_len_max table_index chain_len chain_num part_index

rainbowCrack 的创建彩虹表,并解密_第4张图片

表格生成参数隐式确定了许多彩虹表格特征:
rainbowCrack 的创建彩虹表,并解密_第5张图片

彩虹桥能够解密的密码越复杂它所占磁盘空间就越多.如果只是想在自己电脑上测试一下.就生成一个小一点的.
我们生成一个只能解密md5的密码位数为4位(必须是4位)的纯数字的彩虹表,下面这个是我生成的命令.

rtgen md5 numeric 4 4 0 3000 400000  0 

如下图:
rainbowCrack 的创建彩虹表,并解密_第6张图片

生成的彩虹表很小只有6.1M. 几十秒就完成了彩虹表生成. 在输入完这条命令后也可以在命令行中看到我们设置的一些相关信息.
第二行的 md5_numeric#4-4_0_3000*400000_0.rt 就是我们生成的彩虹表文件.这个文件就存储在当前命令行执行的目录下.

彩虹表的排序.

彩虹表是一串彩虹链。每条彩虹链都有一个起点和一个终点。rtsort程序通过终点对彩虹链进行排序,使二进制搜索成为可能。
运行以下命令对当前目录中的所有.rt彩虹表进行排序:
rtsort .
切勿中断rtsort程序; 否则被分类的彩虹表可能会被损坏。
如果可用内存大小小于正在排序的彩虹表的大小,则需要与彩虹表大小一样大的临时硬盘空间来存储中间结果。

我们生成的这表太小,所以瞬间就完成了排序.
rainbowCrack 的创建彩虹表,并解密_第7张图片

解密

随便在网上搜一下在线md5加密.随表加密一个4位的数字,将加密完的结果拿过来.我们执行解密工作.
rainbowCrack 解密的md5必须是32位的.(其实16位就是 32位去掉前8位和后8位字符)

下面这些是官方给出的集中解密格式.
一般使用Helvetica Neue
假设彩虹表位于目录c:\ rt中。
破解单个哈希:

rcrack c:\rt -h fcea920f7412b5da7be0cf42b8c93759
rcrack_cuda c:\rt -h fcea920f7412b5da7be0cf42b8c93759
rcrack_cl c:\rt -h fcea920f7412b5da7be0cf42b8c93759

为了破解多个哈希:

rcrack c:\rt -l hash_list_file
rcrack_cuda c:\rt -l hash_list_file
rcrack_cl c:\rt -l hash_list_file

在上面的例子中,hash_list_file是一个文本文件,每个散列在一行中。
在多个目录中查找彩虹表格:
rcrack c:\rt1 c:\rt2 -l hash_list_file
rcrack_cuda c:\rt1 c:\rt2 -l hash_list_file
rcrack_cl c:\rt1 c:\rt2 -l hash_list_file
在上面的例子中,rcrack / rcrack_cuda / rcrack_cl程序将按顺序在c:\ rt1和c:\ rt2目录中查找彩虹表。

我在使用window命令行的时候发现,这里面也有一种方式.我用的就是这种方式.(具体如下所示)在官网出现了三个命令行工具,这个应该是根据我们电脑的GPU区分的.如果我们GPU是NVIDIA(英伟达的)我们就可以用rcrack_cuda.exe.

我用的是rcrack.exe
在命令行中输入
rcrack.exe
rainbowCrack 的创建彩虹表,并解密_第8张图片
我在解密是输入一个2342的md5加密值 2321994D85D661D792223F647000C65F
命令如下.
rcrack.exe . -h 2321994D85D661D792223F647000C65F

解密结果如下.成功的解密出了.
rainbowCrack 的创建彩虹表,并解密_第9张图片

整个过程就完成了.

图形化界面的形式解密结果.

图像化界面的简单实用;(以md5为例)
根据自己的GPU来使用相同的exe文件.当然rcrack_gui.exe 是可以什么GPU都能使用的.
直接在根目录点击rcrack_gui.exe,打开如下图所示.
rainbowCrack 的创建彩虹表,并解密_第10张图片

在File中Add Hashes中添加md5密文,每一行输入一组密文.
也可点击Load Hashes from File 将一个有md5密文的文件引入,进来.和Add Hashes效果一样.(文件需要一行只能有一组md5密文)

rainbowCrack 的创建彩虹表,并解密_第11张图片

点击 Rainbow Table中的 Search Rainbow tables选择需要用到的彩虹表,我们可以用我们刚刚生成的md5_numeric#4-4_0_3000x400000_0.rt.选中之后将自动的解密.
rainbowCrack 的创建彩虹表,并解密_第12张图片

菜单栏中的Edit 中Delete all Hashes 可以删除所有刚才添加的md5密文
Edit 中的Clear Messages 可以删除主界面下方所有解密的具体信息

我的这篇文章.主要是借鉴了rainbowCrack的官网文档,和我在实际的测试过程中自己总结的经验.
附上官网的文档地址:http://project-rainbowcrack.com/documentation.htm.希望能帮到大家.

你可能感兴趣的:(rainbow)