重新构建Hashcat的安装过程——避免常见问题,确保顺利安装
Hashcat是一款强大的开源密码破解软件,被誉为世界上最快的密码破解工具。配合强大的字典,它能够破解超过90%的密码。在之前的文章中,我们简要介绍了Hashcat的发展历程和基本命令使用方法。然而,要充分发挥Hashcat的功能,仅仅在虚拟机中使用是不够的。最好的方式是将Hashcat安装在本机或服务器上,并利用GPU进行密码破解。
在本机或服务器上使用Hashcat的第一步是安装。在这里,除了与大家分享Hashcat在不同环境下的安装方法,我还想帮助大家避免一些常见的安装问题。
硬件要求:
操作系统:Windows 7 64位
配置:两块NVIDIA显卡:GeForce GTX 750和Tesla K20c
我安装了两块显卡,一块用于显示,一块用于计算。Tesla K20c是专门用于大规模计算的GPU,比我的CPU快几百倍。目前,NVIDIA的Tesla P系列是计算能力最强的GPU,但价格太高,我舍不得购买。如果对GPU感兴趣,可以自行搜索学习相关知识。
Tesla K20c功耗较大,普通电源无法同时驱动两块GPU,因此我更换了一台800瓦的高功率电源。唉,这个电源真的很贵啊!准备工作:
-
下载Hashcat。
官网提供了两个下载链接,一个是二进制文件,一个是源代码。如果您的电脑已经配置完整,可以下载二进制文件并解压即可运行。但如果不确定电脑配置是否完整,建议下载源代码。因为Hashcat的Makefile文件中包含了完善的编译程序,按照提示一步一步安装,一定可以成功运行。而二进制文件无法保证在所有电脑上都能正常运行,如果配置出现问题,可能会很难解决。 -
阅读Hashcat的文档。
在Hashcat中,主要需要阅读三个文件:README.md、BUILD.md和Makefile。
首先阅读README.md文件,其中包含了对Hashcat的相关介绍,包括简短的介绍、许可证、下载地址、安装说明以及其他注意事项。
然后阅读BUILD.md文件,其中包含了Hashcat在不同系统下的安装命令。按照BUILD.md文件的说明,就可以成功安装Hashcat。
最后阅读Makefile文件,位于src/Makefile,是Hashcat的编译代码。其中包含了完整的安装过程,运行Makefile文件就可以生成hashcat.exe。如果在配置过程中遇到文件路径或配置问题,可以在Makefile文件中找到答案。
如何在Windows环境下安装Hashcat?
通常情况下,Hashcat是在服务器上运行,并进行远程调用。但对于个人使用来说,搭建服务器可能会很麻烦。Hashcat非常人性化,其源代码在Windows、苹果和Linux三种系统中通用。由于大多数人使用Windows系统,我们可以尝试在Windows环境下安装Hashcat。
在Windows环境下安装Hashcat,首先需要安装编译器。我使用mingWG来编译Hashcat的源代码。Hashcat的3.0和4.0版本兼容CPU版本和GPU版本。在安装过程中,Hashcat会自动判断您的电脑是否有GPU,如果没有,将安装CPU版本。
下载并安装MinGW
MinGW是适用于Windows的轻量级GNU工具集,它是一组头文件和端口库,可以让我们在没有第三方库文件的情况下使用GCC编译器。MinGW的核心是GCC,它是一套可以在几乎所有计算机平台上移植的编译系统。除了GCC,MinGW还包含其他GNU程序工具。
首先下载并安装MinGW,选择您喜欢的版本,并安装到您熟悉的位置。
在MinGW Installation Manager中进行设置,右键选择”Mark for Installation”,然后选择Installation -> Apply Changes。
配置WinGW环境
安装完成后,需要设置环境变量:
我的电脑 -> 属性 -> 高级系统设置 -> 高级 -> 环境变量
在系统变量中找到”Path”并编辑。环境变量Path指定了可执行文件的搜索路径,这样我们可以在任何路径下运行该文件。系统除了在当前目录下寻找程序,还会在Path指定的目录下寻找。Bin文件夹是MinGW中命令所在的文件夹。
将MinGW的路径放在Path变量值的最前面,并用分号进行分隔。
安装Hashcat
打开Hashcat的BUILD.MD文件,这是Hashcat的安装文件。在Windows下的安装方法如下:
在Hashcat的目录下,运行”make win64″命令。
如果发现”make”命令不存在,可以在MinGW的bin目录下找到”mingw32-make”命令,并使用”mingw32-make win64″执行。运行该命令后可能会出现错误,找不到模块,这是因为没有安装OpenCL的原因。Hashcat需要在OpenCL环境下运行,并调用许多OpenCL库。
OpenCL有Intel版本、NVIDIA版本和AMD版本,这些版本都可以使用。我下载了Intel的OpenCL,根据自己电脑的配置选择合适的安装包。由于我之前没有进行任何与OpenCL相关的配置,所以下载了SDK和驱动程序,以防在后续安装过程中出现意外问题:
- Intel® SDK for OpenCL™ Applications 2017R2 for Windows* (64-bit)
- OpenCL™ Runtime for Intel® Core™ and Intel® Xeon® Processors
安装完成后,再次运行”make”命令可能会出现错误。这是因为Makefile文件中的路径问题。可以在Hashcat中找到libiconv文件,如果发现Hashcat中没有这个文件路径,可以下载一个libiconv,并修改Makefile文件中的调用路径。然后再次运行”make”命令。安装成功后,可以按照之前设置Path的方式,将hashcat64设置为全局命令。如果觉得每次输入hashcat64命令很麻烦,可以将hashcat64.exe重命名为您喜欢的任何名称,比如”个人姓名’s Tool”,这样看起来更酷炫!
测试
安装完成后,我们需要测试一下Hashcat是否能正常运行。打开命令提示符并切换到Hashcat所在的目录,使用”-b”命令测试效率吧!
测试结果显示两块GPU都能正常运行。这样,我们的Hashcat安装就算是大功告成了。
总结:
虽然Hashcat的安装看起来很简单,但在安装过程中可能会遇到许多问题,特别是在文件路径配置方面容易出错。因此,在安装过程中一定要注意Hashcat的Makefile文件中调用的模块和路径,当遇到问题时,先检查MinGW和OpenCL中是否存在被调用的文件。通过修改路径,可以解决我在安装过程中遇到的大部分问题,避免不必要的麻烦。
考虑到大多数Hashcat用户更倾向于使用Linux系统,下次我们将分享Hashcat在Linux系统下的安装方法。另外,从本周开始,我们将持续发布有价值的内容,如果您感兴趣,请继续关注!