弱口令介绍及破解方式

Posted rocky2624

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了弱口令介绍及破解方式相关的知识,希望对你有一定的参考价值。

一、弱口令的定义

仅包含简单数字和字母的口令,例如“123”、“abc”等,因为这样的口令很容易被别人破解,从而使用户的计算机面临风险,因此不推荐用户使用。

二、弱口令的特点

1、连续字符串(如aaaa,abc等)

2、数字

数字通常会包含个人信息,如生日、身份证号的某几位。

3、字符串+数字;数字+字符串;重复数字或字符串的组合

三、安全口令的要求(有效防止弱口令)

1.不使用空口令或系统缺省的口令,因为这些口令众所周知,为典型的弱口令。

2.口令长度不小于8个字符。

3.口令不应该为连续的某个字符(例如:AAAAAAAA)或重复某些字符的组合(例如:tzf.tzf.)。

4.口令应该为以下四类字符的组合,大写字母(A-Z)、小写字母(a-z)、数字(0-9)和特殊字符。每类字符至少包含一个。如果某类字符只包含一个,那么该字符不应为首字符或尾字符。

5.口令中不应包含本人、父母、子女和配偶的姓名和出生日期、纪念日期、登录名、E-mail地址等等与本人有关的信息,以及字典中的单词。

6.口令不应该为用数字或符号代替某些字母的单词。

7.口令应该易记且可以快速输入,防止他人从你身后很容易看到你的输入。

8.至少90天内更换一次口令,防止未被发现的入侵者继续使用该口令。

四、暴力破解

1、定义

暴力破解,是一种针对于密码的破译方法,将密码进行逐个推算直到找出真正的密码为止。例如一个已知是四位并且全部由数字组成的密码,其可能共有10000种组合,因此最多尝试10000次就能找到正确的密码。而当遇到人为设置密码(非随机密码,人为设置密码有规律可循)的场景,则可以使用密码字典(例如彩虹表)查找高频密码,破解时间大大缩短。

2、暴力破解的方法

1)穷举法

穷举法是指根据输入密码的设定长度、选定的字符集生成可能的密码全集,进行地毯式搜索。例如一个已知是四位并且全部由数字组成的密码,其可能共有10000种组合,因此最多尝试10000次就能找到正确的密码。理论上利用这种方法可以破解任何一种密码,但随着密码复杂度增加,破解密码的时间会指数级延长。

穷举法适用于猜解随机生成的短信验证码等,因为各种随机生成密码出现的概率是一样的,不受人的记忆影响。

2)字典式攻击

字典式攻击是将出现频率最高的密码保存到文件中,这文件就是字典,暴破时使用字典中的这些密码去猜解。

字典式攻击适用于猜解人为设定的口令,因为人为设定受人方便记忆影响不同密码出现的概率是不一样的,12345678、password作为密码的概率比fghtsaer作为密码的概率要高得多。与穷举法相比,字典式攻击虽然损失了较小的命中率但节省了较多的时间。

3)彩虹表攻击

彩虹表攻击也属于字典式攻击,但它是一种高效地破解哈希算法(MD5、SHA1、SHA256/512等)的攻击方式。

网站为了增加安全性,不会直接将用户密码存储在数据库中,而是将密码进行哈希,变成一长串毫无意义的字符,并且哈希算法是不可逆的,没有解密算法可以还原成原来的密码。面对哈希后的密码,破解的方法有两个,一是用穷举法组合出所有的密码可能,然后经哈希加密算法计算,将结果与目标哈希值进行比对,但边计算边比对会耗费海量的时间;二是提前生成可能密码与对应哈希串的对照表,但是对照表将占据海量的磁盘空间,以14位字母和数字的组合密码为例,生成的密码32位哈希串的对照表将占用5.7×10^14 TB的存储空间。

彩虹表是时间空间折中的方法,其核心思想是将明文计算得到的哈希值由R函数映射回明文空间,交替计算明文和哈希值,生成哈希链,将这个链的首尾存储在表中,中间的都删掉,用的时候临时算,那么存储的空间比原来的减少了一半,而计算次数也并没有大量增多。由于在哈希链的计算过程中引入不同的R函数,将不同的R函数用不同的颜色表示,众多的哈希链就会像彩虹一样,所以叫做彩虹表。

使用彩虹表进行破解,普通PC也能达到每秒1000亿次以上的惊人速度。为了增加安全性,可能会多次哈希,例如MD5后再MD5一次;或者在原始密码前后补上一串字符,增加密码长度后再哈希,学名叫加盐(salt),这些算法的结果都可以加入彩虹表中。最完善的彩虹表差不多能破解出目前网上99.9%的密码。

五、容易被暴力破解的口令

许多人设置的密码都过于简单,或者使用电话号码、出生日期、亲人或宠物的名字作为密码,或者在不同网站使用相同密码,这些行为导致密码很容易被破解。

在 2020 年末,NordPass 公布了 2020 年使用率最高的 200 个密码,排名靠前的几个密码分别为 123456、123456789、password、12345678、111111、123123、12345、1234567890、1234567、000000、1234 …… ,除了纯数字,还有各种数字和字母组合,例如:qwerty、abc123 和 picture1 等。

暴力破解不会造成直接的入侵,但攻击者通过暴力破解获得了系统/用户的账号和密码,以此为后续的入侵做准备。对于个人而言,直接从用户那里窃取金钱,或者窃取其身份,身份盗用可能导致进一步的财务损失。对于企业而言,通过暴力破解可以登录Telnet服务、POP3服务和mysql服务等,登录成功将会导致用户信息泄露、文件共享、邮件泄露或无法正常发送邮件等高危事件。

六、如何防止用户的密码被暴力破解

1、应用层面

  • 对登录设置账户锁定。例:在连续输入错误的密码之后,需要间隔一段时间才能输入下一次密码。
  • 对登录的设备进行识别,如果是受信任的设备可通过,如果是新设备需要进行用户认证。

2、用户层面

  • 使用复杂度较高的密码,如包含大小写字母、数字、特殊字符。
  • 定期修改密码。

七、总结

对于弱口令的破解,穷举法对于简单的口令有着“奇效”,但是对于一般的口令,穷举法的工作量太大;字典式攻击,弱口令字典可以存储相关弱口令,相较于穷举法损失了一些命中率(缺),节省了存储空间(优);彩虹表攻击,是针对破解使用哈希算法加密的口令破解法,成本非常高。

超好用弱口令扫描工具John the Ripper 图解使用教程

       工具介绍

         John the Ripper ,简称 JR。 用 于 在 已 知 密文 的 情 况 下尝 试 破 解 出 明 文 的 破 解 密软件 主要 支 持 对DES、 MD5 两 种 加 密 方式 的 密 文 进行 破 解 工 作。 

官方网站:http://www.openwall.com/john/  

百度网盘下载:https://pan.baidu.com/s/1n4UlKEmpKRPP8fRwYhWkUQ      

密码:pxxf


实验目标

利用弱口令扫描工具 Joth the Ripper,对Linux服务器中的所有账户成功破解出明文密码。


实验环境

redhat 6.5 操作系统

弱口令扫描工具 Joth the Ripper


实验步骤

1.将window上的共享文件挂载到Linux上,找到工具JR,解压到opt目录下。

                技术分享图片

2.在安装扫描工具前,先安装好编译环境。

                技术分享图片

3.安装弱口令扫描工具JR。

                 技术分享图片

4.将所有账户密码信息复制到root家目录中,生成password文本。

                技术分享图片

5.利用弱口令扫描工具成功检测出所有账户名及对应密码。

                 技术分享图片

 注意事项:

            任何窥探别人电脑隐私的行为,都要承担相应法律责任!

            扫描工具检测时通常都需要等待一段时间,请您耐心等待片刻!

以上是关于弱口令介绍及破解方式的主要内容,如果未能解决你的问题,请参考以下文章

安全测试 服务器安全 渗透测试 常规服务器安全漏洞 高危端口暴露弱口令密码暴力破解服务器提权Mysql数据库提权等 浅谈《社会工程学》实战案例

web安全弱口令&爆破&协议对象&字典生成

口令破解基础

超好用弱口令扫描工具John the Ripper 图解使用教程

弱口令检测——John the Ripper

业务系统弱口令如何检测