在网络威胁领域,暴力破解攻击仍然是网络犯罪分子非常喜爱且有利可图的攻击方法。,黑客通过收集互联网已泄露的用户和密码信息,生成对应的字典表,由于许多用户重复使用相同的用户名和密码,攻击者可以使用撞库攻击获得对其他网站上用户帐户未经授权的访问。尝试批量登录其他网站后,得到一系列可以登录的用户。因此黑客可以通过获取用户在A网站的账户从而尝试登录B网址,这就可以理解为撞库攻击。
撞库可采用大数据安全技术来防护,比如:用数据资产梳理发现敏感数据,使用数据库加密保护核心数据,使用数据库安全运维防运维人员撞库攻击等。
常见的暴力破解攻击类型包括:
- 简单暴力破解攻击。这种攻击使用标准密码组合或个人识别号。简单的攻击往往会取得成功,因为许多用户不使用密码管理器,仍然依赖于包含常用单词的弱密码,这些密码很容易被猜到。
- 字典攻击。 攻击者首先对个人用户名发起攻击,测试从字典中提取的可能密码,并用特殊字符和数字来修正密码。
- 混合暴力破解攻击。 这种形式的攻击使用外部逻辑来确定各种可能的密码和最有可能成功的组合,然后尝试尽可能多的密码。
- 反向暴力破解攻击。 在这种方法中,攻击者会使用一组常见密码来破解用户名。
- 撞库攻击。攻击者使用从数据泄露中获得的已知密码,试图登录到其他各种网站。即使用户拥有复杂的密码,这种方法也会取得成功,因为许多人在各种帐户中重复使用相同的凭据。
针对暴力破解攻击,应用的安全设计要多方考量,从每一个可能的受攻击面出发,结合逆向的逻辑思路,建立合理的防御机制。常见的防御措施如下:
- 用户名或密码输入错误时统一返回“登录错误,请重试”提示信息
- 在用户登录时增加验证码,防止通过程序自动枚举账户
- 验证码应具有足够的随机性和干扰性,考虑逻辑和交互式验证码
- 确保所有类型的验证码能够用后即失效,防范可被重用
- 在用户登录中增加对同一IP地址尝试次数的限制
- 是否在必要的情况下采用了双因数认证