网络安全

安全通道

  1. 用户测不允许直接连接到管理系统
  2. 无任何隐藏通道
  3. 关闭高危端口

网络协议

  1. 所有的网络端口都是业务必须的,动态监听的端口都应该被关闭
  2. 所有的网络连接都需要有认证机制

web 安全

  1. 每一个需要用户授权的网络请求,都需要鉴权。必须核实用户的会话标识是否合法。
  2. 对用户的最终认证必须发生在服务器端。
  3. 服务器对所有来自不可信数据源的数据进行校验(注入攻击),拒绝任何没通过校验的数据。若输出到客户端的数据来自不可信的数据源,都必须进行编码和转义(XSS攻击)。
  4. 必须使用 web 安全扫描软件对容器和应用进行安全扫描,并解决高风险的漏洞。
  5. Session ID必须具有随机性、唯一性,身份验证成功后需要更换 Session ID。
  6. 文件上传需要对类型进行验证,应当正确使用 MIME 检查。

数据库安全

  1. 禁止使用默认口令
  2. 用户应该具有最小权限,不允许使用超级用户访问所有的数据库
  3. 如果存在多个默认账号,应该禁用无用的账号

编码安全

  1. 数据库等凭据不允许明文存储在应用程序中
  2. 非信任的网络传输应该使用 HTTPS
  3. 系统中对接必须使用公有账号
  4. 禁止使用私有加密算法

口令策略

口令复杂度

  1. 口令至少5个字符
  2. 口令包含如下规则
    1. 至少一个小写字母
    2. 至少一个大写字母
    3. 至少一个数字
    4. 至少一个特殊字符
  3. 口令不能和账号一样
  4. 口令不能被重复使用
  5. *例外情况不要求强制复杂度
    1. 输入受限,例如无法使用3完整的键盘
    2. 业界习惯,例如手机 PIN 码

防暴力破解机制

超过一定阈值(例如5次尝试)启动防暴力破解机制:

  1. 锁定账号
  2. 锁定IP
  3. 登录延迟
  4. 验证码识别
  5. 白名单

口令安全规则

  1. 口令禁止回显
  2. 输入框不允许拷贝
  3. 缺省密码符合复杂度要求
  4. 用户修改自己口令必须验证旧口令或者 OTP 验证
Last Updated:
Contributors: lin