密码破解-hashcat的简单使用
在我们抓取到系统的hash值之后,需要通过一些工具来破解密码
hashcat是一款可以基于显卡暴力破解密码的工具,几乎支持了所有常见的加密,并且支持各种姿势的密码搭配
在kali Linux中自带的有,也支持Windows Mac平台,可以在官网下载:https://hashcat.net
得到一个压缩包,加压后其中有各种版本的可执行文件.sh .exe

这里我使用的是windows版,在windows中使用hashcat只需要在根目录进入命令行

进入命令行输入hashcat64.exe如果你是机器是x32位的可以使用hashcat32.exe

使用hashcat64.exe -h可以查看工具相关的帮助
会列出很多帮助,首先是命令参数,然后是命令参数的值
-m hash的类型
指定hash的加密类型,默认是MD5类型

在对应的类型前面有它的id,可以通过id来指定类型
当我们想要找一个类型在hashcat支不支持的时候,例如windows系统加密的是NTML,可以执行命令
hashcat64.exe -h | findstr NTLM

可以看到NTLM的ID号为1000
-a 攻击方式
破解密码的方式
分别有:
0 | Straight 字典破解
1 | Combination 组合破解
3 | Brute-force 掩码破解
6 | Hybrid Wordlist + Mask 混合字典 + 掩码
7 | Hybrid Mask + Wordlist 混合掩码 + 字典

掩码
当没有字典的时候,可以使用掩码指定密码的每一位是什么类型的字符,首先我们知道密码有多少位

例如:?d?d?d?d?d?d?d?d代表密码为8为数字,?u?l?l?l?l?d?d?d代表密码为7位,首个字母大写,然后三个小写字母,最后三个数字
破解windows hash密码
使用字典爆破windows hash
hashcat64.exe -a 0 -m 1000 hash或者hashfile 字典文件
准备好我们的密码本,这里我使用的是手写的2.txt

hashcat64.exe -a 0 -m 1000 e45a314c664d40a227f9540121d1a29d 2.txt
执行后会进入这样一个状态,这里每个可能不一样,在破解成功或者跑完字典后会自动停止


可以看到我们的密码已经被破解出来,为Admin123
在破解后,会在根目录下的hashcat.potfile文件记录这个hash的缓存

这里我们将改文件清空,方便后续做实验
使用掩码破解windows hash
hashcat64.exe -a 3 -m 1000 e45a314c664d40a227f9540121d1a29d ?u?l?l?l?l?d?d?d


破解成功
在我们爆破的同事,会有
[s]tatus [p]ause [b]ypass [c]heckpoint [q]uit =>
分别:查看破解状态,暂停,绕过,检查,退出
破解Linux hash密码
在linux中,我们知道,密码分别存储在/etc/passwd和/etc/shadow中,只需要more /etc/shadow,将其中的文件复制出来,使用工具破解即可

将root和jackson用户的密码保存到/var/www/html/passWeb服务目录中
root:$6$90/diajJs2fHcIGa$hB5wj4tMF8Qdd6o5VNRTY4v4vEpV8x0NP4O1N/tpJ8ns7JmJ8RyvSih7.W8TQdfwweUFh16dJejFpKw07i2uR1::0:99999:7:::
jackson:$6$Zje1WaoS$eH24JFr5n67149yBcDWWsfxME5cYlOXMmJxnf2uinbvYm8vWc0BmjvAoXIFY/0ZUJItRpPhHkCGDiqjXT10EV0:19066:0:99999:7:::

注意这里的换行,一个用户的hash值是一行

启动Web服务

并在实验机器下载,这里使用certutil将pass文件内容下载到了D盘下的pass文件中去

Linux使用的是 sha512crypt加密方式,在hashcat中寻找是否有该方法
hashcat64.exe -h|findstr sha512crypt

代号为1800
继续使用我们的2.txt对d:\pass文件进行暴力破解
hashcat64.exe -a 0 -m 1800 d:\pass 2.txt


这里我更换了root和jackson用户在文件中的位置
爆破成功,得到jackson的密码为root,但是只爆破出了一个密码,应该只支持一个密码的破解
注意:复制的时候一定不要有换行,不然是无法破解成功的
密码破解-hashcat的简单使用的更多相关文章
- Hash破解神器:Hashcat的简单使用
Hash破解神器:Hashcat的简单使用 2014-06-10 21:02:42| 分类: 离线密码破解 | 标签:密码字典 rar密码破解 zip密码破解 密码破解 |举报|字号 订阅 ...
- hashcat 密码破解工具 使用教程
日期:2019-08-16 15:03:12 更新: 作者:Bay0net 介绍:记录一下 hashcat 的使用命令 0x01.Install Hashcat Wiki - FAQ Github - ...
- Wifi密码破解实战
原文链接地址:http://www.freebuf.com/articles/wireless/127261.html https://www.baidu.com/?tn=98012088_4_dg& ...
- 快讯 | FireEye在GitHub上开源密码破解工具GoCrack
近日,FireEye 开源了一款密码破解工具 GoCrack,可在多机器上部署破解任务. GoCrack 是由 FireEye’s Innovation and Custom Engineering ...
- 对抗密码破解 —— Web 前端慢 Hash
(更新:https://www.cnblogs.com/index-html/p/frontend_kdf.html ) 0x00 前言 天下武功,唯快不破.但在密码学中则不同.算法越快,越容易破. ...
- [基础技能] 安全技术——哈希算法密码破解之彩虹表(Rainbow Table)学习
1.基础知识 刚刚学习过数字签名的相关知识,以及数字签名的伪造技术,而伪造数字签名归根结底就是密码破解的一个过程,然而直接破解的速度是非常缓慢的,所以有人想出一种办法,直接建立出一个数据文件,里面事先 ...
- Office密码破解工具最好用的是哪款
很多的用户朋友设置密码的office文档一般都含有比较重要的信息.因此,忘记密码在破解的过程中非常重视安全保密性.现在有很多款office密码破解工具,很多的用户朋友不知道用哪一款比较好,其中Adva ...
- Kali Linux Web 渗透测试视频教程— 第十三课-密码破解
Kali Linux Web 渗透测试— 第十三课-密码破解 文/玄魂 目录 Kali Linux Web 渗透测试— 第十三课-密码破解............................... ...
- zip压缩包密码破解
有一种破解方法叫做Known plaintext attack.市面上的密码破解软件几乎都带有这个功能.操作方法就是找到加密压缩包中的任意一个文件,用同样的压缩软件同样的压缩方式压缩成一个不加密的包, ...
- MD5 密码破解 碰撞 网站
MD5反向查询网站 http://www.cmd5.com/ 文件MD5值查询网站 http://www.atool.org/file_hash.php 个人对密码破解的理解 1.使用MD5对密码加密 ...
随机推荐
- selenium浏览器参数设置详解——转
所有参数 https://peter.sh/experiments/chromium-command-line-switches/ 参数使用介绍 https://blog.csdn.net/XianZ ...
- echars简单使用
引入js <script type="text/javascript" src="js/echarts.js" ></script> 记 ...
- Android studio学习第一期
下载工具 Android studio 参考博客https://blog.csdn.net/weixin_45406151/article/details/114531103 汉化完成 并创建了虚拟手 ...
- Linux 使用Bind提供域名解析服务
DNS域名解析服务 相较于由数字构成的IP地址,域名更容易被理解和记忆,所以我们通常更习惯通过域名的方式来访问网络中的资源.但是,网络中的计算机之间只能基于IP地址来相互识别对方的身份,而且要想在互联 ...
- Django启动时提示ModuleNotFoundError: No module named 'xxx'的原因
①创建项目:django-admin startproject DL ②创建app:python manage.py startapp myapp ③启动服务:python manage.py run ...
- Day09-参数+递归
参数+递归 一.命令行传参 有时候你希望运行一个程序时候再传递给它消息.这要靠传递命令行参数给main()函数实现 public class CommandLine{ public static vo ...
- Vue3父组件调用子组件内部的方法
1. 子组件中定义方法并通过defineExpose暴露出去 import { reactive, defineExpose } from "vue"; const state = ...
- SQL servr——基础篇之DML增删改查
DML:数据操作语言 用于添加.更新.删除和查询数据库中的语言 添加--insert语句 向数据表中插入新的行(记录)可多行可一行 语法:insert [into] 表名 [(column1,. ...
- wavesurfer音波插件之播放指定语音片段
使用wavesurfer音波插件时,可能会用到这么一个功能,点击音转文后的某一句文字,则需要在音波条上进行播放这一段录音,恰好wavesurfer插件自带这么一个功能,直接上代码: <scrip ...
- Jetpack compose初尝试
2021/07/29 Jetpack compose1.0正式发布,已经可以在生产环境中使用了. 下面的内容为根据官方教程尝试的总结,上手没难度,而且也不需要配置什么环境. Android 开发者 ...