I. 代码实现
1.1 加密算法
1.1.1【必须】避免使用不安全的哈希算法
- DES和3DES已经不再现代应用程序,应改为使用AES。
1.2 程序日志
1.2.1 【建议】对每个重要行为都记录日志
- 确保重要行为都记录日志,且可靠保存6个月以上。
1.2.2 【建议】禁止将未经验证的用户输入直接记录日志
- 当日志条目包含未经净化的用户输入时会引发记录注入漏洞。恶意用户会插入伪造的日志数据,从而让系统管理员以为是系统行为。
1.2.3 【建议】避免在日志中保存敏感信息
- 不能在日志保存密码(包括明文密码和密文密码)、密钥和其它敏感信息
1.3 系统口令
1.3.1【必须】禁止使用空口令、弱口令、已泄露口令
1.3.2 【必须】口令强度要求
口令强度须同时满足:
- 密码长度大于14位
- 必须包含下列元素:大小写英文字母、数字、特殊字符
- 不得使用各系统、程序的默认初始密码
- 不能与最近6次使用过的密码重复
- 不得与其他外部系统使用相同的密码
1.3.3 【必须】口令存储安全
- 禁止明文存储口令
- 禁止使用弱密码学算法(如DES和3DES)加密存储口令
- 使用不可逆算法和随机salt对口令进行加密存储