漏洞挖掘 | 弱口令漏洞

弱口令漏洞

漏洞描述

应用存在默认口令或口令较简单易被猜到。

风险等级

漏洞测试

使用常见的弱口令字典进行尝试登陆。一般采用BurpSuite进行测试。在这里我们用DVWA进行演示(DVWA不会搭建的请自行百度)。

首先登陆进入DVWA后,修改安全等级:
修改DVWA安全等级

然后在Brute Force模块进行测试弱口令:
Brute Force模块

使用 BrupSuite 进行抓包:
发现账户和密码是使用GET方式提交的,然后我们右键将抓到的包发送到 Intruder 模块进行暴力破解:
抓包发送到Intruder模块

进入到Intruder模块后,发现有四种攻击方式可选择:
四种攻击模式

现在我们来分别介绍一下四种攻击模式:

狙击手模式(Sniper)——它使用一组Payload集合,依次替换Payload位置上(一次攻击只能使用一个Payload位置)被§标志的文本(而没有被§标志的文本将不受影响),对服务器端进行请求,通常用于测试请求参数是否存在漏洞。
攻城锤模式(Battering ram)——它使用单一的Payload集合,依次替换Payload位置上被§标志的文本(而没有被§标志的文本将不受影响),对服务器端进行请求,与狙击手模式的区别在于,如果有多个参数且都为Payload位置标志时,使用的Payload值是相同的,而狙击手模式只能使用一个Payload位置标志。
草叉模式(Pitchfork )——它可以使用多组Payload集合,在每一个不同的Payload标志位置上(最多20个),遍历所有的Payload。举例来说,如果有两个Payload标志位置,第一个Payload值为A和B,第二个Payload值为C和D,则发起攻击时,将共发起两次攻击,第一次使用的Payload分别为A和C,第二次使用的Payload分别为B和D。
集束炸弹模式(Cluster bomb)——它可以使用多组Payload集合,在每一个不同的Payload标志位置上(最多20个),依次遍历所有的Payload。它与草叉模式的主要区别在于,执行的Payload数据Payload组的乘积。举例来说,如果有两个Payload标志位置,第一个Payload值为A和B,第二个Payload值为C和D,则发起攻击时,将共发起四次攻击,第一次使用的Payload分别为A和C,第二次使用的Payload分别为A和D,第三次使用的Payload分别为B和C,第四次使用的Payload分别为B和D。

现在我们使用集束炸弹模式(第四种)进行测试:
点击 clear 将所有参数置为未选中,然后将 usernamepassword 选中,设置完毕后点击 payloads 开始设置攻击载荷:
选择特定参数
设置攻击载荷

开始攻击,通过查看返回包的Length可判断是否爆破成功,在这里我们发现admin/admin与其他返回长度不同:
爆破

然后我们在登录页面使用admin/admin进行尝试登录:
登陆成功

成功进行登录。

漏洞危害

攻击者利用弱口令,可以获取特定账户或应用的访问控制权限,如果进一步攻击利用可能获取到服务器权限。

加固建议

关于如何防止弱口令的一些方法:

  1. 不使用空口令或系统缺省的口令,因为这些口令众所周之,为典型的弱口令。
  2. 口令长度不小于8个字符。
  3. 口令不应该为连续的某个字符(例如:AAAAAAAA)或重复某些字符的组合。
  4. 口令应该为以下四类字符的组合,大写字母(A-Z)、小写字母(a-z)、数字(0-9)和特殊字符。每类字符至少包含一个。如果某类字符只包含一个,那么该字符不应为首字符或尾字符。
  5. 口令中不应包含本人、父母、子女和配偶的姓名和出生日期、纪念日期、登录名、E-mail地址等等与本人有关的信息,以及字典中的单词。
  6. 口令不应该为用数字或符号代替某些字母的单词。
  7. 口令应该易记且可以快速输入,防止他人从你身后很容易看到你的输入。
  8. 至少90天内更换一次口令,防止未被发现的入侵者继续使用该口令。

关于如何防止暴力攻击的一些方法:

  1. 限制验证次数,或者设置较长的密码和各种组合,延长暴力破解的时间。
  2. 尽可能的使密码足够的复杂,密码的长度要大于8位。
  3. 发现同一IP错误登录次数过多时,强制使用人脸识别技术,确定是否为本人操作。
  4. 如果错误次数超过五次或者十次以上,那么就采用验证码登录,或者使用短信验证,每天验证次数不超过20次。
  5. 可以添加延迟(如:sleep(2))来延长暴力破解的时间,这样可以减缓一些单线程攻击,但对多线程攻击则效果不好。

互联网挖掘弱口令漏洞的方法

使用 GoogleHacking 语法进行寻找登录页面:

inurl:login
intext:后台登录
...

通常为节省时间只测试几种常见的弱口令:

admin/admin
admin/admin123
admin/123456
...

若挖到弱口令漏洞,可以提交到国家信息安全漏洞共享平台CNVD

下面是文中使用的靶场官网和工具教程:

DVWA官网:
http://www.dvwa.co.uk/

BurpSuite实战指南:
https://t0data.gitbooks.io/burpsuite/

posted @ 2019-03-19 11:03  Snrt7  阅读(10336)  评论(0编辑  收藏  举报