Web站点为什么会遭受攻击?是为了恶作剧?损害企业名誉?免费浏览收费内容?盗窃用户隐私信息?获取用户账号谋取私利?总之攻击方式层出不穷,作为B/S开发框架来说,帮助开发者做好解决安全问题也是刻不容缓的,本篇文章来告诉大家弱口令的解决方案。
适用范围
需要帐号密码登陆的Web网站或应用程序
攻击原理
通过常见的账号和密码进行猜解,例如用户名admin,密码123456。利用字典穷举法等来破解。
解决方案
B/S开发框架中处理方式
1、建立密码策略,密码最小长度为6位,必须包含字母和数字,更细致的策略由各应用程序自行决定;
2、登录处加上验证码,验证码通过Session保存;
3、密码使用MD5+salt进行加密。
4、令牌环验证。
5、证书授权。
6、Web子系统单点登陆。
7、登陆图文验证和手机码验证。
MD5+salt加密:
/// MD5加密 /// </summary> /// <param name="toCryString">被加密字符串</param> /// <returns>加密后的字符串</returns> public static string MD5(string toCryString) { return FormsAuthentication.HashPasswordForStoringInConfigFile(toCryString+"~!##$%^Q#$#%QWRTHSADFGH%$@", "MD5"); }
session验证
证书验证
云微开发平台单点登录原理
管理处理
SQL Server、MySql、Radmin、第三方程序等使用复杂密码,密码最小长度8位,须包含大小字母、数字、特殊字符,登录验证码等。