基于linux服务器的hashcat握手包破解


前言:为什么要使用linux服务器?

当下对于wifi密码的破解,主流的两种手段是握手包破解和WPS破解,而WPS破解却仅限于无线路由器。如果你到了一条陌生的街道或者办公场所,大部分情况下,手机热点是会比无线路由器信号要多的。所以握手包破解还是更加普适。hashcat作为最快的密码恢复工具之一,能够支持GPU加速计算,相关的测试表明,利用GPU计算密码是同层次CPU计算速度的几百倍左右。这个速度就不用我说了。但是,作为一名贫穷的学生党,买一款好的显卡来hashcat是不现实的好吧。幸运的是,最近搞了个项目做深度学习,本人成功的接触到了云服务器这个领域,实测发现,云服务器真的是又便宜又快。我用的是AutoDL这个平台:(不是来推销的,但真的很便宜。)

https://www.autodl.com/

在这里插入图片描述
在这个大前提下,有个好基友把他的手机热点当靶机让我破解,于是兴趣就来了,咱话也不多说,直接开干。

一、握手包的抓取

关于握手包的抓取,我是在kali系统里利用aircrack进行抓取的,在这里就不做过多的阐述了,大家可以参考这位兄台的博客。

http://t.csdn.cn/imXl5

基本上按照流程来,都没啥问题。
这是我抓取到的握手包。
在这里插入图片描述

二、握手包格式转换(cap to hc22000)

现在很多关于hashcat的博客关于转换的描述都说是cap转换为hccap格式,但是这种格式其实已经不适用于现在的hashcat版本了,在hashcat6.0版本之后,-m 2500 和 -m 16800 已经被更改为 -m 22000 了,
在这里插入图片描述

所以基于这个原因,现在握手包转换之后都是hc22000格式了,格式转换可以在hashcat官网进行转换,路径如下:

https://hashcat.net/cap2hashcat/

转换结果如下
在这里插入图片描述

三、linux服务器的环境配置

在云服务器平台上,我创了一个用于hashcat计算的实例:
在这里插入图片描述
在这里插入图片描述
一张2080ti的卡,很普通的配置,但是也比我笔记本的GTX1650好很多。
可以利用 uname -a 来查看服务器的系统,其为ubuntu,在服务器上的apt版本都是比较低的了,所以想要顺利的安装hashcat,就必须要对apt和sudo的列表进行更新,否则就会报错,一般都是这种错误:

unable to lacate package
在这里插入图片描述

基本步骤如下:
第一步,apt更新

apt-get update在这里插入图片描述

第二步,sudo版本更新

sudo apt-get upgrade
在这里插入图片描述

第三步、安装hashcat

apt install hashcat
在这里插入图片描述

配好服务器环境之后,可以调用hashcat里面的命令看看你的显卡和对应的驱动支不支持hash计算,输入命令来查看服务器配置,这里可以看到,我的显卡是2080ti的,显存是11GB,Device编号是#1,在计算的时候如果不指定,hashcat会优先选择GPU来计算。

hashcat -I
在这里插入图片描述

四、利用hashcat进行哈希破解

hashcat的使用还是比较简单的,在这里做一点简单的介绍。

-m 破解模式,握手包现在是22000,以前是2500
-a 破解方法,
-o 结果输出路径
–custom-charset1 自由组合模式,这里可以自定义4种范围
–increment-min 最少位数
–increment-max 最大位数

这里只是列出了一些常用的方法,方便我自己以后查阅,有个大佬关于hashcat的用法写的非常的全,链接如下:

https://www.sqlsec.com/2019/10/hashcat.html#!

个人认为这位大佬写的非常好,hashcat不仅仅是只用于握手包破解,在其他的密码破解方面也非常强大。

在这里我输入如下命令进行hash破解

hashcat -a 3 -m 22000 29955_1649255867.hc22000 -o result.txt --custom-charset1 chegakun0123456789 ?1?1?1?1?1?1?1?1

-a 3 代表组合破解
-m 22000 代表握手包破解模式
-o 表示结果输出路径
–custom-charset1 我这里相当于是自建了一个组合,因为我有先验知识(我的好基友告诉我他的密码是8位数字和字母组合,我猜测字母是他的姓名里边的字母)
?1?1?1?1?1?1?1?1 这个的意思就是八位数,每位数的范围是在–custom-charset1集合里面,并且根据需要,我们还可以创作更多的组合集,如–custom-charset2、3、4等等

在云服务中运行的结果如下
在这里插入图片描述
这个就是运行中的结果,在运行过程中可以向终端输入命令s 来查看实时破解状态。这个hash计算从我起草这篇博客开始运行,到现在跑了大概两个,跑了差不多55%,总密码数一共有18**8次方=110亿个,我细细想想…不对劲啊,hashcat不是号称一秒钟1.4亿个密码么?我这跑了两个小时了才试了60亿个左右。果然卖家和买家之间永远都存在一定的差距,关于速度这个问题看来还得深究一下,下次租个更好的显卡试试。

总结

感谢你能阅读完这篇博客,这是我的第一篇博客,如果你觉得这篇博客对你有帮助,可以点个赞或者转发。之所以写这篇博客,一个是为了把自己的整个学习流程给捋一捋,方便以后查阅,另一方面是为了留一个念想。

下一步想改进的空间,一个是想着如何提升hash计算的速度,另外一个是把训练日志记录到一个log中而不是在终端输出来,因为终端有个时候会刷掉。这也是我在yolov5学习中得到的经验。

破解进程已经进行了55%左右了,给服务器设一个定时关机明天等结果,今晚早点睡觉。

  • 15
    点赞
  • 47
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
Linux系统下安装hashcat可以按照以下步骤进行: 1. 首先,确保你的系统已经安装了所需的依赖项。这些依赖项括OpenCL、GMP、MPFR、MPC和GCC等。你可以使用管理器来安装这些依赖项。 2. 接下来,你需要下载hashcat的安装。你可以从hashcat的官方网站上下载最新版本的安装。 3. 解压缩下载的安装,并进入解压后的文件夹。 4. 在终端中,使用以下命令安装OpenCL: ``` sudo apt-get install opencl-headers ocl-icd-opencl-dev ``` 5. 安装GMP、MPFR和MPC。你可以使用以下命令安装它们: ``` sudo apt-get install libgmp-dev libmpfr-dev libmpc-dev ``` 6. 安装GCC。你可以使用以下命令安装它: ``` sudo apt-get install gcc ``` 7. 现在,你可以编译和安装hashcat了。在终端中,使用以下命令: ``` make sudo make install ``` 8. 安装完成后,你可以通过在终端中输入`hashcat`命令来验证安装是否成功。 需要注意的是,以上步骤适用于Ubuntu(Ubantu)系统。如果你使用的是其他Linux发行版,可能会有一些细微的差异,请根据实际情况进行相应的调整。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [hashcatlinux下的安装](https://blog.csdn.net/cpongo3/article/details/93996116)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值