Hashview是一款开源的密码破解及分析工具,其密码破解功能基于世界上最快的密码破解软件——hashcat。Hashview可以通过Web界面方便的进行密码破解任务建立、进度查询,密码破解后存储于数据库中,系统对破解出来的密码进行多个维度的汇总分析,并生成各类统计图表。

关于这款工具的更多介绍,可从Hashview官网了解。

下面开始介绍该工具的安装及使用,本示例基于Kali 2017.2,Nvidia 970独显。

Hashview安装需求

  1. Hashcat已安装并能正常工作

    Hashcat的强大破解能力依赖于显卡的GPU浮点运算,建议直接在物理机上安装Kali和显卡驱动。Kali安装显卡驱动,参考Kali官方教程,双显卡安装显卡驱动遇到黑屏参考这篇文章解决。VMware虚拟机中hashcat也可以使用CPU运行,只是破解速度远远低于GPU破解。

  2. MySQL&Redis创

    建一个MySQL普通帐号hashview(普通权限帐号即可,帐户名可自定)并加入sudo用户组,用于安装运行Hashiew

  3. RVM环境

Hashview安装

安装MySQL和Redis

sudo apt-get update sudo apt-get install git mariadb-server libmariadbclient-dev redis-server openssl 

mysql安全配置

设置root密码,并禁止root远程登录

sudo mysql_secure_installation 

新建一个数据库账号,赋予新建库的权限,后面将用到这个账号

mysql -uroot -p use mysql; create user 'hashview'@'localhost' identified by 'P@ssw0rd';   //密码修改为你自己的 grant all on *.* to 'hashview'@'localhost'; flush privileges; 

优化数据库配置

vim /etc/mysql/mariadb.conf.d/50-server.cnf
//在[mysqld]下面添加以下几行内容:
innodb_flush_log_at_trx_commit  = 0
innodb_file_format = Barracuda
innodb_large_prefix = 1
innodb_file_per_table=true 

修改后重启数据库

sudo service mysql restart 

安装RVM环境

需使用普通权限帐号运行,否则会报错,安装参考文档

添加GPG公玥

gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB 

执行安装脚本

\curl -sSL https://get.rvm.io | bash 

RVM安装完成后,进入rvm环境

source ~/.rvm/scripts/rvm 

Clipboard Image.png

安装Hashview

克隆源代码

git clone https://github.com/hashview/hashview 

安装gems

//之后的操作都在hashview目录下执行 cd hashview //hashview使用ruby2.2.2,需指定版本 rvm install ruby-2.2.2 //这里需要输入hashview的密码 gem install bundler
bundle install 

Clipboard Image.png

设置数据库连接

修改数据库配置文件,添加数据库密码

cp config/database.yml.example config/database.yml
vim config/database.yml //修改用户名和密码为之前步骤新建的账号 

创建Hashview数据库

RACK_ENV=production rake db:setup 

Clipboard Image.png

设置hashcat路径

vim config/agent_config.json
//填写hashcat的完整路径,Kali默认已安装hashcat,路径为/usr/bin/hashcat "hc_binary_path": "/usr/bin/hashcat" 

启动Hashview

RACK_ENV=production TZ='Asia/Chongqing' foreman start 

为了下次方便启动,创建一个启动脚本:

vi hashview-start.sh
//添加以下三行内容: #!/bin/bash source ~/.rvm/scripts/rvm cd ~/hashview
RACK_ENV=production TZ='Asia/Chongqing' foreman start

//添加执行权限
chmod +x hashview-start.sh
//启动脚本
bash hashview-start.sh 

访问Hashview

https://localhost:4567

第一次访问时新建一个管理员帐号。

Hashview使用

基础设置

创建用户并登录后,先做一些简单的设置。

Manage – Global Settings —— Hashcat

Hashcat的路径在Hashview/config/agent_conf文件中设置,这里仅能查看,不能修改;Max Task Runtime —— 每个任务的最大破解时间,默认86400秒,也就是24小时;

opencl-device-types —— 破解密码使用的设备,这里选择2 - GPU;

workload-profile —— 破解时的工作载荷,可以选高一点,这里选择3 - Hign;其它保持默认即可。

在虚拟中运行时,opencl-device-types选择1 - CPU,勾选–force

Clipboard Image.png

Manage – Global Settings —— Email

配置邮件发送账号,用于破解任务完成后的邮件通知。

Manage – User Accounts

Hashview的账号管理,可以添加多个账号。

Manage – Agents

Hashview可以使用多台电脑进行分布式hash破解,这里可以看到当前接入的Agent及运算能力,我们当前只在本机测试,只能看到Local Agent。

Manage – Rules

密码规则,对密码字典中的密码进行规则处理,如前后添加数字,改变大小写等,Hashview已内置了大量规则,你也可以添加自定义的规则。

Manage – Wordlists

字典库,这里可以添加你搜集的各类字典,添加后Hashview会计算该字典含有的密码数量。

Clipboard Image.png

Tasks

这里的任务是指密码的破解方式,如字典、掩码等方式,内置了几种基本的破解方式,我们在Wordlists里导入的字典,需要在这里建立Task后才能使用。Task使用字典方式时,还可以添加规则对字典中密码做变型扩展处理,提高破解成功率。

Clipboard Image.png

Clipboard Image.png

开始一次破解作业

Jobs

前面的各项内容都配置完成后,就要在Jobs中添加Hash破解工作了。Jobs界面,点击Create a New Job

Job NameCustomer都不重要,可以随便填。

israbye FreeBuf.COM 

Assign Hashes —— 添加Hash

Hash添加有两种方式,填写单个Hash或上传hash文件两种方式,我在这里上传一个shadow文件进行演示。

Clipboard Image.png

Verify File format —— 选择shadow

Confirm Hash Type —— 确认需破解的Hash类型

Hashview会判断当前hash文件包含的Hash类型,并给出选择项,hashcat一次任务只能破解一种hash类型,Kali默认使用的是sha512,这里选择sha512。

各种类型的Hash,请看这里,Hash文件中分类提取hash值,参考这里

Assign Tasks to Job —— 添加密码破解任务

一次破解作业可包含多个破解任务,使用多种破解方式,如字典方式、掩码方式、暴力破解等。在`Add Task`下拉列表中选择,为当前作业添加破解任务。 

Clipboard Image.png

添加完成Task后,点击Done。

启动破解作业 

回到Jobs主界面,Job添加后默认未启动,需手动点击开始。

查看破解进度

破解过程中,可以点击左上角Hashview到主界面查看破解进度。

Clipboard Image.png 

Password Analysis —— 密码分析

Jobs界面,点击任务的Analysis,查看当前Job的密码破解统计信息,总共hash数量、已破解hash数量、Top 10口令等。

Clipboard Image.png

 

Search —— 密码搜索

所有破解过的密码Hash均存储在数据库中,Manage – Search界面可以通过Username、Hash、Password方便的搜索。

Clipboard Image.png

结语

Hashview的安装和使用介绍到此结束。

*本文作者:Shad0wpf_