
课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
web前端编程开发随着互联网的不断发展而逐渐成为互联网的又一大热门互联网行业,而本文我们就通过案例分析来简单了解一下,web应用程序安全问题分析。
区分公共区域和受限区域
站点的公共区域允许任何用户进行匿名访问。受限区域只能接受特定用户的访问,而且用户必须通过站点的身份验证。考虑一个的零售网站。您可以匿名浏览产品分类。当您向购物车中添加物品时,应用程序将使用会话标识符验证您的身份。后,当您下订单时,即可执行安全的交易。这需要您进行登录,以便通过SSL验证交易。
将站点分割为公共访问区域和受限访问区域,可以在该站点的不同区域使用不同的身份验证和授权规则,从而限制对SSL的使用。使用SSL会导致性能下降,为了避免不必要的系统开销,在设计站点时,应该在要求验证访问的区域限制使用SSL。
对终用户帐户使用帐户锁定策略
当终用户帐户几次登录尝试失败后,可以禁用该帐户或将事件写入日志。如果使用Windows验证(如NTLM或Kerberos协议),操作系统可以自动配置并应用这些策略。如果使用表单验证,则这些策略是应用程序应该完成的任务,必须在设计阶段将这些策略合并到应用程序中。
请注意,帐户锁定策略不能用于抵制服务攻击。例如,应该使用自定义帐户名替代已知的默认服务帐户,以防止获得Internet信息服务(IIS)Web服务器名称的攻击者锁定这一重要帐户。
支持密码有效期
密码不应固定不变,而应作为常规密码维护的一部分,通过设置密码有效期对密码进行更改。在应用程序设计阶段,应该考虑提供这种类型的功能。
能够禁用帐户
如果在系统受到威胁时使凭证失效或禁用帐户,则可以避免遭受进一步的攻击。
不要在用户存储中存储密码
如果必须验证密码,则没有必要实际存储密码。相反,可以存储一个单向哈希值,然后使用用户所提供的密码重新计算哈希值。为减少对用户存储的词典攻击威胁,可以使用强密码,并将随机salt值与该密码结合使用。
要求使用强密码
不要使攻击者能轻松破解密码。有很多可用的密码编制指南,但通常的做法是要求输入至少8位字符,其中要包含大写字母、小写字母、数字和特殊字符。无论是使用平台实施密码验证还是开发自己的验证策略,此步骤在对付粗暴攻击时都是必需的。在粗暴攻击中,攻击者试图通过系统的试错法来破解密码。使用常规表达式协助强密码验证。
不要在网络上以纯文本形式发送密码
以纯文本形式在网络上发送的密码容易被窃听。为了解决这一问题,应确保通信通道的安全,例如,使用SSL对数据流加密。
保护身份验证Cookie
身份验证cookie被窃取意味着登录被窃取。可以通过加密和安全的通信通道来保护验证票证。另外,还应限制验证票证的有效期,以防止因重复攻击导致的欺骗威胁。在重复攻击中,攻击者可以捕获cookie,并使用它来非法访问您的站点。减少cookie超时时间虽然不能阻止重复攻击,但确实能限制攻击者利用窃取的cookie来访问站点的时间。
【免责声明】:本内容转载于网络,转载目的在于传递信息。文章内容为作者个人意见,本平台对文中陈述、观点保持中立,不对所包含内容的准确性、可靠性与完整性提供形式地保证。请读者仅作参考。更多内容请加danei0707学习了解。欢迎关注“达内在线”参与分销,赚更多好礼。