安全编码

  • 输入验证

    • 在值得信任的系统上执行数据验证。
    • 确定所有的数据源,并将其分为信任和不信任的,难所有不信任的数据。
    • 对于应用程序应当有一个集中的输入验证规则。
    • 为所有的输入明确恰当的字符集。
    • 在输入验证以前,将数据编码为常用字符(规范化)。
    • 任何没有通过的输入验证将禁止输入内容的使用。
    • 明确系统是否支持UTF-8扩展字符集,如果支持,在UTF-8解码完成以后进行输入验证。
    • 核实来自重定向的数据。
    • 验证期待的数据类型。
    • 验证数据范围。
    • 验证数据长度。
  • 输出编码

    • 在值得信任的系统上执行所有的输出编码。
    • 为每一种输出编码方法采用一个标准的、已通过测试的常规。
  • 身份验证和密码管理
    • 除了那些特定设为“公开”的内容以外,对所有的网页和资源要求身份验证。
    • 所有的身份验证控制必须在一个可信任的系统中执行。
    • 建立并使用标准的、已通过测试的身份验证服务。
    • 将身份验证逻辑从被要求的资源中分隔开,并使用重定向或自集中的身份验证控制。
    • 身份验证的失败应当不提示身份哪些部分验证数据出现错误。
    • 只使用HTTP POST请求传输身份验证的秘密信息。
    • 当无效登录次数达到一个预先设置的值时,强制执行账户失效。账户失效的时间必须足够长,以阻止暴力攻击。
  • 会话管理

    • 使用服务器或框架的会话管理控制。
    • 注销功能应当完全终止相关的会话或连接。
    • 不允行同一用户ID的同时登录。
    • 不要在URL、错误信息或日志中暴露会话标识符。
    • 通过TLS连接为cookier的传输设置“安全的”属性。
  • 访问控制

  • 加密规范
    • 加密模块没有成功的操作应当是安全的。
    • 为管理加、解密的密钥,建立并使用一个政策和流程。
  • 错误处理和日志记录
    • 不要在错误的响应中泄露敏感信息。
    • 使用错误处理以不显示调试或堆栈跟踪信息。
    • 限制只有授权的个人才能访问日志。
    • 记录所有失败的后端TLS链接。
  • 数据保护
    • 不要在HTTP GET请求参数中包含敏感信息。
  • 通讯安全
  • 系统配置
    • 关闭目录列表功能。
    • 移除不需要的功能和文件 。
  • 数据库安全
    • 使用强类型的参数化查询方法。
    • 禁止任何不支持业务需求的默认账户。
  • 文件管理
  • 内存管理
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值