我一直在努力缩小有人攻击我的基于表单身份验证的web应用的机率。我知道我无法控制连接应用的人,但我要怎么做才能阻止攻击,并锁定用户的帐户?
基于web的密码攻击对于基于表单的身份验证是一个真正的问题。在人们使用的较弱的密码和不断发生的大量的web攻击之间,在你一觉没准备检测和保护时,你很可能是成为攻击的目标。根据2014年Verizon数据泄露调查报告称,35%的攻击与web相关。
我通常建议开始人员,包括入侵者在内,锁定基于表单的身份验证的机制。例如,当尝试登录失败5到10次后,锁定帐户几分钟,或者给用户提供一种方法重置他们的密码(如,通过带外数据邮件重置流程)。
你还可以帮忙阻止自动化的基于表单的攻击,通过要求用户登录时经过多步骤的流程。我见过的最弹性的基于表单的web身份验证系统是这样的:它要求用户点击图片,输入他们的密码,而且每次登录图片都会稍许改变位置。 这种方法的问题是,它同时打破大多数登录的宏记录,这一记录用在Web漏洞扫描中,这使得它几乎不可能执行身份验证漏洞扫描,如果你使用了错误的工具。
Web应用防火墙(WAF)或入侵防御系统(IPS)也可以帮忙阻止登录表单受到攻击。变量很多,但只有你知道什么才是最适合你的系统架构、你的应用工作流和你的用户的。确保你正在考虑这一挑战,因为它很有可能已经浮出水面.