在我们抓取到系统的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.txtd:\pass文件进行暴力破解

hashcat64.exe -a 0 -m 1800 d:\pass 2.txt





这里我更换了rootjackson用户在文件中的位置

爆破成功,得到jackson的密码为root,但是只爆破出了一个密码,应该只支持一个密码的破解

注意:复制的时候一定不要有换行,不然是无法破解成功的

密码破解-hashcat的简单使用的更多相关文章

  1. Hash破解神器:Hashcat的简单使用

    Hash破解神器:Hashcat的简单使用 2014-06-10 21:02:42|  分类: 离线密码破解 |  标签:密码字典  rar密码破解  zip密码破解  密码破解  |举报|字号 订阅 ...

  2. hashcat 密码破解工具 使用教程

    日期:2019-08-16 15:03:12 更新: 作者:Bay0net 介绍:记录一下 hashcat 的使用命令 0x01.Install Hashcat Wiki - FAQ Github - ...

  3. Wifi密码破解实战

    原文链接地址:http://www.freebuf.com/articles/wireless/127261.html https://www.baidu.com/?tn=98012088_4_dg& ...

  4. 快讯 | FireEye在GitHub上开源密码破解工具GoCrack

    近日,FireEye 开源了一款密码破解工具 GoCrack,可在多机器上部署破解任务. GoCrack 是由 FireEye’s Innovation and Custom Engineering ...

  5. 对抗密码破解 —— Web 前端慢 Hash

    (更新:https://www.cnblogs.com/index-html/p/frontend_kdf.html ) 0x00 前言 天下武功,唯快不破.但在密码学中则不同.算法越快,越容易破. ...

  6. [基础技能] 安全技术——哈希算法密码破解之彩虹表(Rainbow Table)学习

    1.基础知识 刚刚学习过数字签名的相关知识,以及数字签名的伪造技术,而伪造数字签名归根结底就是密码破解的一个过程,然而直接破解的速度是非常缓慢的,所以有人想出一种办法,直接建立出一个数据文件,里面事先 ...

  7. Office密码破解工具最好用的是哪款

    很多的用户朋友设置密码的office文档一般都含有比较重要的信息.因此,忘记密码在破解的过程中非常重视安全保密性.现在有很多款office密码破解工具,很多的用户朋友不知道用哪一款比较好,其中Adva ...

  8. Kali Linux Web 渗透测试视频教程— 第十三课-密码破解

    Kali Linux Web 渗透测试— 第十三课-密码破解 文/玄魂 目录 Kali Linux Web 渗透测试— 第十三课-密码破解............................... ...

  9. zip压缩包密码破解

    有一种破解方法叫做Known plaintext attack.市面上的密码破解软件几乎都带有这个功能.操作方法就是找到加密压缩包中的任意一个文件,用同样的压缩软件同样的压缩方式压缩成一个不加密的包, ...

  10. MD5 密码破解 碰撞 网站

    MD5反向查询网站 http://www.cmd5.com/ 文件MD5值查询网站 http://www.atool.org/file_hash.php 个人对密码破解的理解 1.使用MD5对密码加密 ...

随机推荐

  1. selenium浏览器参数设置详解——转

    所有参数 https://peter.sh/experiments/chromium-command-line-switches/ 参数使用介绍 https://blog.csdn.net/XianZ ...

  2. echars简单使用

    引入js <script type="text/javascript" src="js/echarts.js" ></script> 记 ...

  3. Android studio学习第一期

    下载工具 Android studio 参考博客https://blog.csdn.net/weixin_45406151/article/details/114531103 汉化完成 并创建了虚拟手 ...

  4. Linux 使用Bind提供域名解析服务

    DNS域名解析服务 相较于由数字构成的IP地址,域名更容易被理解和记忆,所以我们通常更习惯通过域名的方式来访问网络中的资源.但是,网络中的计算机之间只能基于IP地址来相互识别对方的身份,而且要想在互联 ...

  5. Django启动时提示ModuleNotFoundError: No module named 'xxx'的原因

    ①创建项目:django-admin startproject DL ②创建app:python manage.py startapp myapp ③启动服务:python manage.py run ...

  6. Day09-参数+递归

    参数+递归 一.命令行传参 有时候你希望运行一个程序时候再传递给它消息.这要靠传递命令行参数给main()函数实现 public class CommandLine{ public static vo ...

  7. Vue3父组件调用子组件内部的方法

    1. 子组件中定义方法并通过defineExpose暴露出去 import { reactive, defineExpose } from "vue"; const state = ...

  8. SQL servr——基础篇之DML增删改查

    DML:数据操作语言 用于添加.更新.删除和查询数据库中的语言 添加--insert语句 向数据表中插入新的行(记录)可多行可一行 语法:insert  [into]  表名  [(column1,. ...

  9. wavesurfer音波插件之播放指定语音片段

    使用wavesurfer音波插件时,可能会用到这么一个功能,点击音转文后的某一句文字,则需要在音波条上进行播放这一段录音,恰好wavesurfer插件自带这么一个功能,直接上代码: <scrip ...

  10. Jetpack compose初尝试

    2021/07/29 Jetpack compose1.0正式发布,已经可以在生产环境中使用了. 下面的内容为根据官方教程尝试的总结,上手没难度,而且也不需要配置什么环境. Android 开发者   ...