博主在前公司当程序员的时候,做的是web相关项目,公司对安全方面格外重视,项目代码每年会拿去安全送审,对发现的问题会做出整改
密码强度
这个没什么好说的,太简单的密码肯定是被禁止的,一个安全的密码有以下几点要求:
密码长度6~8以上
至少2~3种字符组合(大写字母、小写字母、数字、特殊符号)
密码正序和逆序不能相同
明文密码展示与存储
对于前端页面,密码框需要隐藏,用星号或者黑色圆点代替(可手动勾选显示密码)
对于后台,密码直接明文存在数据库是绝对禁止的,一定要经过加密
password:passwd123(×)
password:A1e23a9s3eDEea26sDd7as8bgHyj(√)
加密方式:sha256、AES等
此外,也要排查配置文件或其他资料中是否含有密码,防止被他人看到
防暴力破解
远程连接
重新输入IP地址或端口后,需要重新输入密码
假如系统中配置了一个第三方数据库,攻击者登录了系统,打开了这个数据库配置界面,此时未对密码做更改,可以直接保存;
但如果攻击者修改了IP和端口,将其指向自己提前准备好的恶意服务器上
测试连接需要加锁,否则高并发下会DDoS