安全代码编写规范
《安全代码编写规范》由会员分享,可在线阅读,更多相关《安全代码编写规范(4页珍藏版)》请在装配图网上搜索。
安全代码编写规范 一 编写目的 为加强武汉楚烟信息技术有限公司在软件开发中的安全规范要求 减少应用上线后带来潜在的安全风险 特拟定安全代码编写规范 二 使用范围 本规范适用于武汉楚烟信息技术有限公司承建的各类开发类的软 件类项目 三 应用安全设计 在总体架构设计阶段 需明确与客户方沟通确认甲方对于软件安 全的相关要求 对于有明确安全要求的 例如授权管理要求 用户 认证要求 日志审计要求等 须在设计文档中予以详细说明 对于 互联网应用 务必明确网络安全 应用安全 数据安全相关的安全 防护手段 在技术架构上 应采用表现层 服务层 持久层分类的架构 实 现对底层业务逻辑进行有效隔离 避免将底层实现细节暴露给最终 用户 在部署架构上 应采用应用服务器 数据库服务器的分离部署模 式 在应用服务器被攻击时 不会导致核心应用数据的丢失 如软 件产品具备有条件时 应优先采用加密数据传输方式 例如 https 协 议 在外部接口设计方面 应采用最小接口暴露的原则 避免开发不 必要的服务方法带来相关安全隐患 同时对于第三方接口 应共同 商定第三方接入的身份认证方式和手段 四 应用安全编码 4 1 输入验证 对于用户输入项进行数据验证 除常见的数据格式 数据长度外 还需要对特殊的危险字符进行处理 特殊字符包括 以 防止跨站攻击脚本 XSS 对于无法规避的 HTML 片段提交 需对 标签进行检查处理 避免应用被挂马的可能性 在程序中应尽量规避 SQL 的拼接处理 优先推荐使用 iBatis MyBaits 框架 其次推荐使用 SQL 的参数化查询方法 在无法 避免使用 SQL 拼接时 因对 SQL 参数值进行编码处理 至少对单引 号进行编码 4 3 会话管理 不要在 URL 错误信息或日志中暴露会话标识符 会话标识符应 当只出现在 HTTP cookie 头信息中 比如 不要将会话标识符以 GET 参数进行传递 将 cookie 设置为 HttpOnly 属性 除非在应用程序中明确要求了 客户端脚本程序读取或者设置 cookie 的值 从 Cookie 或者 Session 中获取之前保存的数据进行应用时 须增 加必要的数据检验 对于敏感的业务操作 通过在每个请求或每个会话中使用强随机 令牌或参数 为高度敏感或关键的操作提供标准的会话管理 4 4 访问控制 应用必须具备授权访问控制功能 能够限制在最小的范围内使用 系统功能 同时限制只有授权的用户可以访问受保护的 URL 4 5 文件管理 在文件上传处理中 应限制符合要求格式的文件 尽量避免用户 直接上传可执行文件或在服务器端限制可执行文件的执行权限 在文件下载时 应规避直接列举服务器上的文件 同时规避将服 务器端的路径作为参数进行传递 避免用户非法获取服务器端文件 4 6 数据加密 原则上在程序代码中不能直接写入用户和密码 对于无法规避的 情况 应当对使用的用户名 密码进行加解密处理 在程序中使用 加密后的内容 4 7 错误处理 不要在错误响应将服务器的信息暴露给最终用户 例如 服务器 的 IP 地址 操作系统的类型和版本 会话标识符 账号信息等 从 而避免增加服务端被黑客攻击的可能性 在错误处理时 因在后台统一进行日志记录 避免显示调试或堆 栈跟踪信息 建议使用通用的错误消息并使用定制的错误页面 4 8 其它通用规范 审核应用使用的第三方开发框架 第三方代码或类库文件 以确 定业务的需要 并验证功能的安全性 避免产生新的漏洞 执行安全更新 如果应用程序采用自动更新 则为您的代码使用 加密签名 以确保的您的下 载客户端验证这些签名 使用加密的信 道传输来自主机服务器的代码- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 安全 代码 编写 规范
装配图网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
关于本文