news 2026/4/18 20:13:59

防止密码暴力破解的常见防御措施(DVMA)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
防止密码暴力破解的常见防御措施(DVMA)
在前文中我们已经学习了如何利用代码和工具对外部网站的密码进行破解。本文将聚焦于如何保护自己的网站,防止他人进行暴力破解。
你可能在生活中遇到过类似情况,比如有人尝试用已知手机号破解支付宝账号。那么,像支付宝这样的平台是如何防御暴力破解的呢?本文将分级别介绍常见的防御措施,并讲解如何利用工具进行相关测试。

实验环境说明

  • 本次实验依旧基于DVWA 靶场,安全级别设置为Medium
  • 进入 Brute Force 相关题目进行测试。

一、Medium 安全级别:延迟响应防御

  • 查看源码时会发现多了一行 sleep(2),即登录失败后服务器会延迟 2 秒返回结果。
主要特点:
  • 用户名和密码校验:收到用户名和密码后,直接查表进行匹配。
  • 延时响应:当用户名或密码不匹配时,服务端延迟 2 秒响应。
影响分析:
  • 显著延长暴力破解所需总时间,降低破解效率。
  • 但本质上只是增加时间成本,如果攻击者有足够耐心,仍可能成功破解。

二、High 安全级别:引入 Token 防御

High 级别的防御措施更加完善,主要包括:
  • CSRF Token 校验具体什么是 CSRF Token 校验,可以参考:Check Anti-CSRF Token (AI)-CSDN博客
    • 除用户名和密码外,新增了名为 ntc srf token 的一次性 Token。
    • 每次请求都需带上服务端下发的 Token,且 Token 用过即失效。
    • 防止第三方网站利用已登录用户身份发起伪造请求。
  • 随机延迟响应sleep 时间变为 0~3 秒随机,进一步增加破解难度。

工具测试与配置要点

1. 抓包分析
  • 开启 Burp Suite 代理,登录抓包,发现请求中新增了 Token 字段。
2. Intruder 模块配置
  • 这次有两个字段需要添加,一个是密码,一个是 Token,如下图:
  • 破解模式选择
    • sniper 不适用,因为只能拆解一个字段。
    • pitchfork 可以考虑,但实际上也不适用,因为 Token 是一次性的,不能与密码字典一一对应。
    • cluster bomb 也不行,因为 Token 用一次即失效,不能与密码做交叉验证。
    • 因此这里只能用 pitchfork 模式。
  • 第一个字段为密码,载入密码字典,如下图:
3. 递归匹配 Token
  • 这里需要用到 Burp Suite 的 recursive grep 递归匹配模式,从上一次 HTTP 响应中提取 Token。
  • 在 Options 中设置 grep extract 规则,匹配隐藏字段中的 Token 值。
  • 我们要去添加一个规则。这个规则当然是从 http 响应结果值里面去匹配到一个文本,但是怎么匹配呢?你现在又没有一个响应结果啊,所以我们先拿到一个响应结果再说。
  • 实际上在 DVWA 的关卡里面,它是怎么样去保存这个 cookie,并且发给服务器的呢?它是放在了前端的一个 input 的 hidden 属性字段里面,所以我们选中它。
  • 选中它之后,BP 会生成一个规则。
  • 它的意思是什么呢?在上一次 http 的响应结果里面如果说有一串文本,它的前面是 value + 等于号 + ' , 后面是'(空格)/

    这串东西的话,那中间的这个内容,就是我们需要的 token 值。

  • 点了确定后就有这个规则了。
    • 第一次请求需手动填入 Token,后续自动递归提取。
  • 看一下我这个啊,第一次的 Token 你要复制到下面那个框框里面,如果你是从上面的步骤一直做下来的,正常来说是只有一个规则的,博主这里有两个纯纯手贱。
  • 我们来分析一下:这个 token 是我们填进去了,然后发起了一次 http 的请求,服务器又给了他一个 token。他把拿到的这个 token 作为第二次请求,然后发起请求又得到一个 token,把这个 token 作为第三次请求的 token,它是串行依次这样去访问的。
  • 这边排序一下就可以知道哪个是正确的密码了,就是这个 password。
4. 结果过滤与标记
  • 我们其实在看上面的图的时候,会有个疑问:如果我们的数量太大了,一下子抓包的响应数太多怎么办?那我们可以先过滤一下。
  • 回到题目来,我们这次输入一个正确的账号密码看看。
  • Welcome to the password protected areaadmin
  • 这一串就是我们要过滤的内容。
  • 然后我们要再抓一次包,不然第一次的 Token 就没有了,我们也就不能叠罗汉了。
  • 之前做过的操作再复刻一遍就行了。
  • 可在 Options 中设置 grep match,如响应结果中包含 "Welcome to the password protected areaadmin" 即自动打标记,便于快速定位正确密码。
  • 这个 √ 是它自己打的。

三、Impossible 安全级别:账户锁定机制

Impossible 级别的防御措施极为严格,主要包括:
  • Token 校验持续存在:每次请求仍需有效 Token。
  • 错误次数限制与账户锁定
-连续输错密码超过三次,账户将被锁定 15 分钟。
-理论上一小时最多尝试 4 次,一天最多 96 次,极大降低暴力破解的可能性。
锁定时间可进一步延长,如支付宝等平台可能锁定一小时、一天,或需短信/人脸识别等方式解锁。
  • 错误次数记录:数据库记录每个账户的错误尝试次数,超过上限即禁用账户。
  • 进一步延长响应时间:sleep 时间进一步增加,提高攻击成本。
本质分析:
  • 通过限制尝试次数,从根本上杜绝了暴力破解的可能,是最有效的防御方式之一。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/18 20:13:47

π0.7发布,VLA押出了机器人的GPT-3时刻

henry 发自 凹非寺量子位 | 公众号 QbitAI今天凌晨,Physical Intelligence发布了全新的VLA模型π0.7,狠狠敲了世界模型一记闷棍。π0.7第一次在机器人领域证明了Compositional Generalization(组合泛化),且VLA。在遇到…

作者头像 李华
网站建设 2026/4/18 20:11:31

【三维重建】从PCD到模型:点云库PCL实战与三维重建全流程解析

1. 三维重建入门:从点云到模型的魔法之旅 第一次接触三维重建时,我被这个技术深深震撼了——它就像给计算机装上了一双能感知立体世界的眼睛。简单来说,三维重建就是通过采集物体表面的空间数据,经过一系列算法处理,最…

作者头像 李华
网站建设 2026/4/18 20:08:22

MediaPipe实时姿态估计与Unity虚拟化身驱动的全链路实践

1. 从摄像头到虚拟化身:技术链路全景 想象一下,当你站在普通摄像头前挥挥手,屏幕里的3D虚拟人物就能同步做出完全相同的动作——这种看似科幻的场景,现在用MediaPipeUnity的组合就能轻松实现。我去年在开发体感交互游戏时&#xf…

作者头像 李华