0
点赞
收藏
分享

微信扫一扫

记一次密码安全优化及关联修改项

_刘彦辉 2022-02-28 阅读 93

原设计:
产品未提及 密码复杂度要求,只有一个后端 加盐的操作。

测试中:
询问密码是否有复杂度要求。
产品给到复杂度要求:要大小写英文+数字+特殊字符,并且不少于8位。
复杂度要求
补充密码安全修改要求:
1、前端MD5加密后传给后端加盐

影响原功能:
1、新增用户、重置密码原方式是 后端 写死按 123456 的密码进行用户新增、重置密码
2、修改密码,原密码、新密码是按 明文传给后端
3、登录页用户输入的密码是明文传给后端。

与架构师寻求建议沟通后:
1、前端MD5加密后,传给后端加盐。
2、新增用户、重置密码时,前端随机生成符合复杂度要求的密码,进行前端弹窗展示。并按MD5加密后传给后端。
3、登录页 用户密码按MD5加密后再传给后端。

具体优化处理:
1、新增用户时,后端会修改接口,增加一个传密码的参数。前端需按 复杂度要求随机生成密码,再按MD5加密后,传给后端; 前端在新增用户后需展示弹窗,展示MD5加密前的随机密码“新增用户密码为:XXXX,请保存!” 需用户点击右上角关闭按钮才会关闭弹窗

2、重置密码时,后端也会改接口,增加一个传密码的参数。前端需按 复杂度要求随机生成密码,再按MD5加密后,传给后端; 前端在重置密码操作后需展示弹窗,展示MD5加密前的随机密码“重置用户密码为:XXXX,请保存!” 需用户点击右上角关闭按钮才会关闭弹窗

3、修改密码时,原密码、新密码 的传参,需前端按 MD5加密后 ,再传给后端

(ps:MD5加密方式需前端统一!!!因为前端开发可能不止一个。)

这种方式都能被批量破解密码,那肯定是 有非常熟悉系统的内鬼

举报

相关推荐

0 条评论