【实验目的】了解Salt型密码的加密机制,学会使用本地密码pojie工具来pojieSalt型密码,了解pojie密码原理。

【知识点】Salt,密码pojie

【实验原理】

1.Salt概念

在密码保护技术中,salt是用来修改口令散列的随机数据串。可将salt加入散列,即使系统的另一用户也选用了同一口令,也可通过唯一辨识用户口令来避免冲突。也可加入salt,使用口令散列匹配策略为进攻系统的攻击者制造困难,因为,在口令散列中增加salt可防止攻击者使用字典单词来检验整个系统。salt值属于随机值。用户注册时,系统用来和用户密码进行组合而生成的随机数值,称作salt值,通称为加盐值。

背景:

系统通常把用户的密码如MD5加密后,以密文形式保存在数据库中,来防止黑客偷窥。

产生:

随着对MD5密文查询工具的出现,而很多用户的密码又设置简单,单纯的对用户密码进行MD5加密后保存,用密文很容易就能反查询得到某用户的密码

原理:

为用户密码添加Salt值,使得加密的得到的密文更加冷僻,不宜查询。即使黑客有密文查询到的值,也是加了salt值的密码,而非用户设置的密码。salt值是随机生成的一组字符串,可以包括随机的大小写字母、数字、字符、位数可以根据要求而不一样。

用途:

当用户首次提供密码时(通常是注册时),由系统自动添加随机生成的salt值,然后再散列。而当用户登录时,系统为用户提供的代码撒上同样的加盐值,然后散列,再比较散列值,已确定密码是否正确。

其它:

经过添加salt值处理的密码,即使用户设置的原密码是相通的,数据库中的密文却是不同的。

2.口令pojie原理

密码pojie,作为黑客常用的攻击手段之一,在攻击的初步阶段实现了账号口令的暴力猜测,为深入攻击做准备。使用精心的构造口令字典、性能强劲的运算系统,能够快速、有效的完成口令强度较低的账户的pojie。无论口令加密采用DES算法、MD5算法,还是其他机制,因为它们具有单向不可逆的特性,要想从算法本身去pojie,难度相当大,通常只存在理论上的可能性。由于各种加密算法都是公开的,虽然逆向猜解不可行,但从正向猜解却是很现实的。因为,设置口令的用户是人,人们在设置口令时,习惯使用一些容易记忆且带有明显特征的口令,如用户名、生日、电话号码、亲友姓名等,这就给我们pojie口令带来机会。我们可以制作一个字典文件:里面的条目都是经常用作口令的字串。猜解口令时,就从字典文件中读出一个条目作为口令,使用与系统口令加密算法相同的方法进行加密,得到的字串与口令文件中的条目进行比较,如果相同,则猜解成功;否则,继续下一次尝试。最终结果可能得到了真正的用户口令,也可能字典文件条目用尽而不能pojie。口令pojie的方法主要是字典法,利用字典文件进行口令猜解。常见的口令猜解模式主要是:

字典模式:即使用指定的字典文件进行口令猜解。

混合模式:即指定字典规则,对字典条目进行某种形式的变化,增加字典内容,提高猜解的效率。

暴力模式:即遍历所有可能的密钥空间,进行口令猜解。

JohntheRipper

John撕裂者(工具),是一个快速的密码pojie工具,用于在已知密文的情况下尝试pojie出明文的pojie密码软件,支持目前大多数的加密算法。免费的开源软件,是一个快速的密码pojie工具,用于在已知密文的情况下尝试pojie出明文的pojie密码软件,支持目前大多数的加密算法,如DES、MD4、MD5等。它支持多种不同类型的系统架构,包括Unix、Linux、Windows、DOS模式、BeOS和OpenVMS,主要目的是pojie不够牢固的Unix/Linux系统密码。

【软件工具】

操作系统:Windows7

工具:JohntheRipper

【实验目标】

使用JohntheRipperpojie带Salt值的密码散列文件

【实验步骤】

步骤1:使用JohntheRipperpojie带Saltde密码散列文件

首先解压工具包,进入目录【D:\网络攻防技术\5.Salt型密码散列本地pojie实验】,解压工具包【Tools.rar】到当前文件夹然后打开一个命令提示符,进入实验工具目录中的【john179j5\run】子目录,使用cmd运行John.exe,查看可用参考数,打开cmd后输入如下命令,如下图所示:

或直接在run目录下空白处shift+右键选择在此处打开命令行运行john.exe。

“__format”参数用来指定所要破解的密码的类型,如下图所示,在所支持的破解类型中,其中有一个类型名为“dynamic_n”,即动态密码类型。接着运行命令“John--subformat=LIST”来查看各类支持的动态破解类型。

比如常见的Discuz论坛,其带Salt的加密机制为:md5(md5(\(pass).\)salt)对应的是“dynamic_6”这种破解类型。查看破解速度。破解速度取决于主机的机器性能以及所要破解的类型,这里以“dynamic_6”这种破解类型为例,命令为john--format=dynamic_6-test(请一定注意命令的书写格式)。

查看实验工具目录下要破解的密码文档“salt_6.txt”,内容如下所示:

每一行都是一个目标用户的密码散列信息,格式为:“用户名:最终的hash值$salt”。使用如下命令进行简单模式的密码破解:john--format=dynamic_6--singleD:\网络攻防技术\5.Salt型密码散列本地破解实验\salt_6.txt。

破解结束后,可以使用如下命令查看已经破解成功的密码:john--format=dynamic_6--showD:\网络攻防技术\5.Salt型密码散列本地破解实验\salt_6.txt。

步骤2:进行字典模式的密码破解

使用如下命令进行字典模式的密码破解:john--format=dynamic_6--wordlist=D:\网络攻防技术\5.Salt型密码散列本地破解实验\pass-1w.dicD:\网络攻防技术\5.Salt型密码散列本地破解实验\salt_6.txt。这里使用了“pass-1w.dic”这个字典。

步骤3:使用暴力模式的密码破解

这里使用“Digits”字符组合模式来进行暴力破解:john--format=dynamic_6--incremental=DigitsD:\网络攻防技术\5.Salt型密码散列本地破解实验\salt_6.txt。关于“Digits”模式的设置可以查看John目录中的“Join.ini”配置文件中的“[Incremental:Digits]”部分的设置,默认如下:从中可以看到,“Digits”字符集合暴力破解的密码最长为8。注:若要终止程序的运行,可以按“Ctrl+C”。

步骤4:最后查看所有已经破解成功的密码

使用如下命令查看所有已经破解成功的密码:john--format=dynamic_6--showD:\网络攻防技术\5.Salt型密码散列本地破解实验\salt_6.txt。

实验六-Salt本地pojie实验的更多相关文章

  1. VMware vSphere服务器虚拟化实验六 vCenter Server 添加储存

                                                                          VMware vSphere服务器虚拟化实验六 vCente ...

  2. windows本地安全策略实验-远程桌面连接锁定账户

    windows本地安全策略实验-远程桌面连接锁定账户 实验环境: 服务端:Win7-1:10.10.10.136,开启远程桌面服务 客户端:win7-2:10.10.10.153 确保客户端和服务端能 ...

  3. 实验六 CC2530平台上P2P通信的TinyOS编程

    实验六 CC2530平台上P2P通信的TinyOS编程 实验目的: 加深和巩固学生对于TinyOS编程方法的理解和掌握 让学生初步的掌握射频通信TinyOS编程方法 学生通过本实验应理解TinyOS中 ...

  4. 【黑金原创教程】【FPGA那些事儿-驱动篇I 】实验六:数码管模块

    实验六:数码管模块 有关数码管的驱动,想必读者已经学烂了 ... 不过,作为学习的新仪式,再烂的东西也要温故知新,不然学习就会不健全.黑金开发板上的数码管资源,由始至终都没有改变过,笔者因此由身怀念. ...

  5. 实验 六:分析linux内核创建一个新进程的过程

    实验六:分析Linux内核创建一个新进程的过程 作者:王朝宪  <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029 ...

  6. Linux内核分析实验六

    Linux内核分析实验六 进程控制块PCB——task_struct(进程描述符) 为了管理进程,内核必须对每个进程进行清晰的描述,进程描述符提供了内核所需了解的进程信息. struct task_s ...

  7. MySQL数据库实验六:存储过程建立与调用

    实验六  存储过程建立与调用 一.实验目的 理解存储过程的概念.建立和调用方法. 二.实验环境 三.实验示例 1.定义一个函数,按性别计算所有学生的平均年龄. CREATE FUNCTION aver ...

  8. 实验六 DIV+CSS的综合应用

    实验六 DIV+CSS的综合应用 [实验目的] 1.掌握DIV布局的方法: 2.利用CSS对DIV进行美化: 3.利用CSS对文本图像等网页元素进行美化 [实验环境] 连接互联网的PC ,Win7操作 ...

  9. HCIA-datacom 4.2 实验二:本地AAA配置实验

    关于本实验 AAA是Authentication(认证).Authorization(授权)和Accounting(计费)的简称,是网络安全的一种管理机制,提供了认证.授权.计费三种安全功能.这三种安 ...

  10. 实验六 MapReduce实验:二次排序

    实验指导: 6.1 实验目的基于MapReduce思想,编写SecondarySort程序. 6.2 实验要求要能理解MapReduce编程思想,会编写MapReduce版本二次排序程序,然后将其执行 ...

随机推荐

  1. 开源相机管理库Aravis例程学习(四)——multiple-acquisition-signal

    目录 简介 例程代码 函数说明 g_main_loop_new g_main_loop_run g_main_loop_quit g_signal_connect arv_stream_set_emi ...

  2. 面向教师的OBS直播速成教程

    引言 本文是面向教师讲述的如何使用OBS软件进行课程直播的速成教程. 本文配套视频链接如下️ 面向教师的OBS直播教学速成教程_哔哩哔哩_bilibili 环境准备 1. 下载对应本机系统版本的并安装 ...

  3. docker 完美部署gitea

    效果: docker-compose version: "3" networks: gitea: external: false services: server: image: ...

  4. SATA与PCI-E速度对比

    SATA SATA接口已经发展到了第三代,理论上的最大速度达到600MB/s.平时大家见到的SATA SSD使用的都是SATA三代,实际测试速度在550MB/s左右,这比普通的机械硬盘的速度100MB ...

  5. nodejs搭建chatgpt服务

    5分钟快速搭建基于nodejs的chatgpt服务 写在前面 首先大家都知道,在国内是无法成功调用openapi的接口,甚至openai的官网都很难打开.所以如果想使用chatgpt的几乎是不可能,不 ...

  6. C数据结构:树和森林存储方式与遍历方式

    文章目录 树的存储方式 双亲表示法 孩子链表表示法 孩子兄弟表示法(二叉树表示法) 树和二叉树的转换 森林和二叉树的转换 树和森林的遍历 树的遍历方式 森林的遍历方式 浅谈一下几个问题 为什么树没有中 ...

  7. PageOffice既保存Word文件中指定区域的数据又保存整篇文件

    一.首先在word文件中给需要在后台获取数据的区域设置以PO_开头的书签. 二.通过pageoffice在线打开文件并编辑保存.有两种打开文件的模式 1.普通编辑模式(docNormalEdit) 普 ...

  8. docker flannel网络

    部署etcd github部署访问链接:https://github.com/etcd-io/etcd/releases/ ETCD_VER=v3.5.1 # choose either URL GO ...

  9. 做程序员这么久,你知道UTF-8和Unicode的关系吗?

    UTF-8和Unicode到底有什么区别?是存储方式不同?编码方式不同?它们看起来似乎很相似,但是实际上他们并不是同一个层次的概念. 要想先讲清楚他们的区别,首先应该讲讲Unicode的来由: 众所周 ...

  10. Django——自定义前端上传文件

    from django.db import models class Mytb(models.Model): file = models.FileField(upload_to='uploads/') ...