下载后可任意编辑常见安全漏洞和解决方案12024 年 4 月 19 日下载后可任意编辑1
1 身份认证安全1
1 弱密码密码长度 6 个字符以上密码字符必须包含大写字母、小写字母和数字,并进行密码复杂度检查强制定期更换密码1
2 密码存储安全密码存储必须使用单向加密单纯的 md5,sha1 容易被破解,需要添加随机的盐值 salt涉及支付及财产安全的需要更高的安全措施,单纯的密码加密已经不能解决问题
能够考虑手机验证码、数字证书、指纹验证
22024 年 4 月 19 日下载后可任意编辑1
3 密码传输安全1
1 密码前端加密用户名、密码传输过程对称加密,能够使用密钥正确对称加密,前端使用公钥加密,后端使用私钥解密
前端加密示例引入脚本,rsa 加密工具和 md5 加密工具
前端加密脚本,省略了提交步骤…
// rsa 加密,var publicKey = '${rsaPublicKey}';var encrypt = new JSEncrypt();encrypt
setPublicKey(publicKey);// 加密var username = encrypt
encrypt($('input[name= username]')
val());var password = encrypt
encrypt($('input[name=password]')
val());32024 年 4 月 19 日下载后可任意编辑
…注意:前端密码加密假如还用了 md5 加密的,先 md5 加密再 rsa加密
后端解密,省略了其它验证步骤ShiroUserServiceImpl
java…public ShiroUser getUser(String name, Integer