当前位置:
文档之家› 安全开发流程与安全开发生命周期管理
安全开发流程与安全开发生命周期管理
SDL SaaS - 安全KCP任务
如果项目本阶段的KCP任务 (关键控制点任务)没有 完成,则无法执行阶段切 换
KCP任务主要有:安全设计、 安全开发、安全测试、安 全部署、验收等
SDL SaaS – 在线Checklist
Checklist自检结果以不同的颜 色标识,供安全审核人员进行 风险评估参考 不同的阶段、不同的产品类型, 使用不同的Checklist标准/规范
SDL传统做法与SDL SaaS的对比
对比 安全组织 传统SDL推行 需要建立项目管理、安全管理、安 全架构、评审资源池等组织或部门 需要较多专职安全专业人员 自建项目管理平台 需要单独拟制设计规范/开发规范/ 部署规范,并输出Checklist等交付 件模板 SDL SaaS服务 可以不用建立专职的项目管理、 安全管理或其它流程化组织
如何从源头开始规避漏洞
不使用工具,仅靠双手,无法建起摩天大楼 从源头开始规避大部分漏洞,要靠组织和流程保障 将安全要素融入项目管理流程,启用安全开发流程,关 键项目阶段要添加相应的安全任务 上述安全开发流程,或融入安全要素的项目管理流程, 业界称之为SDL (Security Development Lifecycle, 安全开 发生命周期)。
KCP任务的添加,遵循安全流 程规范,只在需要的阶段添加
SDL SaaS – 项目管理与任务协同
SDL SaaS也是一个完整的项目管理与任务协同平台,可 以作为项目管理、任务协同平台使用 提供完整的项目审批日志、任务处理日志 提供知识管理(Wiki)、消息管理等
谢谢!
安全漏洞的危害
数据泄露(入侵后泄露用户隐私、公司敏感信息) 影响服务器完整性(入侵后篡改) 影响服务器可用性(不可用或性能低下) 法律法规冲突,卷入法务纠纷 影响公司声誉,影响用户对公司产品的信心 影响公司的生存与发展
方案设计过程中的安全问题
架构设计不合理,前后端未有效分离,或数据库向 用户开放 依赖客户端安全控制措施 关键算法或保护措施薄弱 事务完整性没有保障 交易过程未形成完整的证据链 跨网络空间的访问未校验对方身份 未校验数据源的完整性 未校验可执行文件、库、配置文件的完整性
安全开发流程与SDL简介
项目的各个阶段, 有自己的安全任务 这些任务如果未完 成,则意味着本阶 段的安全问题/风险 没有解决,带给下 一阶段,并最终带 入生产环境 通过流程保障,不 将问题、风险、缺 陷带给下一阶段
SDL推行的传统做法
采购SDL顾问咨询服务,并执行全员培训 建立安全流程相关的部门,为SDL实施提供组织保障 招聘大量安全专业人员,为SDL推行提供专业支持 建立标准与规范,含设计规范、开发规范、部署规范等, 为SDL推行提供技术依据 建立项目管理流程和项目管理的IT系统 建立与规范对应的Checklist模板、测试用例等,作为流程 执行过程中的交付件 将安全要素嵌入项目管理流程的各个阶段的关键活动中 (需求确认、同行评审、方案评审、验收等)
SDL SaaS使用体验
以Janusec SDL SaaS服务为例
这是一个以强化安全内控为特色的在线项目管理平台(SDL SaaS),它源于安全开发周期方法论和国际/国内巨头公司的 项目管理实践,从源头开始进行安全控制,通过规范的项目 管理过程和KCP(关键控制点)任务的引入,确保开发设计及 部署过程中遵从安全标准与规范,保障所交付产品在全生命 周期过程中的安全性。
测试过程中的安全问题
缺乏安全测试用例 未执行安全测试或安全扫描 带着漏洞上线
ห้องสมุดไป่ตู้
部署过程中的安全问题
弱口令、空口令、通用口令(一个口令在多处使用) 数据库向互联网开放 备份未经验证,使用备份数据无法还原系统 未执行安全配置 缺乏基本防护措施(WAF等) 无法解决开发上的问题
安全开发流程与安全开发生命周期
Security Development Flow & Security Development Lifecycle
目录
安全漏洞的危害 方案设计过程中的安全问题 开发过程中的安全问题 测试过程中的安全问题 部署过程中的安全问题 安全漏洞的原因分析 如何从源头开始规避漏洞 安全开发流程与SDL简介 SDL SaaS服务简介
开发过程中的安全问题
未对用户提交的参数进行合法性校验 拼接SQL语句,SQL指令和用户参数的拼接导致SQL 注入漏洞的产生 将用户创建的未转义的内容呈现给用户,导致跨站 攻击脚本(XSS)的产生 未对Form启用防止跨站请求伪造(CSRF)的随机Token 使用路径或路径回溯(../)等作为参数进行传递 各种逻辑或权限设计上的缺陷
安全人员 安全流程 安全交付件 推行成本
没有专职安全人员也能开始使 用(当然有安全专业人员更 好),团队成员兼职投入
直接通过浏览器访问在线服务 直接以在线Checklist形式提供, 在线保存检查结果,不使用附 件和模板以提高效率。 基本服务免费
昂贵(顾问费/员工人力资源投入/IT 基础设施建设与维护)
安全漏洞的原因分析
只关注功能实现,忽略安全需求 团队的安全开发经验欠缺 缺乏安全开发规范或安全开发规范没有融入项目管理 缺乏安全开发流程,或项目管理流程未包含安全控制 缺乏安全部署标准或规范 缺乏评审环节,没有人对交付质量把关 缺乏上线/发布流程,未执行安全部署、验收审核 安全上缺少投入,寄希望于后期补救