《白帽子讲WEB安全》学习笔记之第17章 安全开发流程(SDL)

第17章 安全开发流程(SDL)

17.1 SDL简介

安全开发是从根源有效地解决安全漏洞问题,而已在软件的生命周期内,这样的开发模式成本更低。

SDL过程:

q  培训

所有的开发人员必须接收适当的安全培训,了解相关的安全知识。

q  安全要求

明确项目的安全要求。

q  质量门/bug栏

质量门和bug栏相当于确定安全和隐私质量的最低可接受级别。

q  安全和隐私风险评估

评估项目中的安全现状和威胁模型

q  设计要求

在产品设计初期考虑安全问题

q  减小攻击面

减小攻击面通过减少攻击者利用潜在弱点或漏洞的机会来降低风险。减少攻击面包括关闭和限制对系统服务的访问,应用“最小权限原则”,以及尽可能的进行分层防御。

q  威胁建模

建立威胁模型分析项目或产品可能遇到的攻击,以及给出解决方案

q  使用指定的工具

q  弃用不安全函数

q  静态分析

q  动态程序分析

q  模糊测试

模糊测试是一种专门形式的动态分析,它通过故意想应用程序引入不良格式或随即数据诱发程序故障。

q  威胁模型和攻击面评析

需求发生改变时,安全模式也需要相应改变

q  事件响应计划

产品的发布需要留下开发人员的联系方式,以及相应的文档,方便日后解决问题。

q  最终安全评估

q  发布/存档

17.2 敏捷SDL

敏捷sdl的思想其实就是以变化的观点实施安全的工作。需求和功能可能一直在变化,代码可能也在发生变化,这要求实施SDL时需要在每一个阶段更新威胁模型和隐私策略,在必要的环节迭代模糊测试、代码安全分析等工作。

17.3 SDL实战经验

准则:

q  与项目经理进行充分的沟通,排出足够的时间

q  规范公司的立项流程,确保所有项目都能通知到安全团队,避免遗漏

q  树立安全部门的权威,项目必须由安全部门审核后才能发布

q  将技术安放写入开发、测试的工作手册

q  给开发工程师培训安全方案

q  记录所有的安全bug,激励程序员编写安全的代码

17.4 需求分析与设计阶段

应该建立安全编程的代码库,以及一些比较常见的安全编码问题。

17.5 开发阶段

Sun 的安全编码指导方针:

q  小心使用 特权代码

q  小心处理 静态字段

q  最小化作用域 (scope)

q  小心选择 公共 (public) 方法和字段

q  适当的 包 (package) 保护性

q  尽可能使用 不可变 (immutable) 对象

q  永远不要返回对包含敏感数据的内部数组的引用

q  永远不要直接存储用户提供(user-supplied)的数组

q  小心使用序列化(Serialization)

q  小心使用本地方法(native methods)

q  清除敏感信息

Java 安全反模式

q  忽略那些全模式的代码不经意间就会造成漏洞

典型的 Java 安全编码反模式(Antipatterns):

忽略语言特性 (例如整数溢出 (Integer Overflow) )

不注意使用序列化, 不注意使用 特权代码

将字段和方法定义到不适当的可见性作用域

在非终态 (non-final) 静态字段中的隐蔽通道(Covert  Channels)

17.6 测试阶段

参考资料:http://blog.csdn.net/Test_sunny/article/details/4653783

http://51CTO提醒您,请勿滥发广告!/ceshi/ceshijishu/aqcs/2013/0715/206456.html

http://51CTO提醒您,请勿滥发广告!/ceshi/ceshijishu/aqcs/2012/0329/204547.html

时间: 2024-12-05 04:50:41

《白帽子讲WEB安全》学习笔记之第17章 安全开发流程(SDL)的相关文章

白帽子讲Web安全--读书笔记

在安全圈子里,素有"白帽"."黑帽"一说. 黑帽子是指那些造成破坏的黑客,而白帽子则是研究安全,但不造成破坏的黑客. 白帽子 均以建设更安全的互联网为己任. 不想拿到"root"的黑客,不是好黑客.漏洞利用代码能够帮助黑客们达成这一目标.黑 客们使用的漏洞利用代码,被称为"exploit".在黑客的世界里,有的黑客,精通计算机技术, 能自己挖掘漏洞,并编写 exploit:而有的黑客,则只对攻击本身感兴趣,对计算机原理和各种

《白帽子讲Web安全》笔记1-5章

由于最近公司服务器被攻击,但是公司没有安全工程师,所以自己也想了解这方面的知识,于是购买了此书,看的时候记录了一些自己认为重要的笔记.转载请注明出处:http://blog.csdn.net/cym492224103 第1章 安全世界观 安全评估过程 资产等级划分 威胁分析 风险分析 确认解决方案 第2章 浏览器安全 第3章 XSS攻击 反射型XSS 存储型XSS DOM Based XSS XSS钓鱼 XSS攻击平台 Flash XSS XSS防御 第4章 CSRF CSRF本质 CSRF防御

读>>>>白帽子讲Web安全<<<<摘要→我推荐的一本书

<白帽子讲Web安全>吴翰清著 刚开始看这本书就被这本书吸引,感觉挺不错,给大家推荐下,最近读这本书,感觉不错的精华就记录下, 俗话说>>>好脑袋不如一个烂笔头<<< 还有,大家也看出来,最近我也要开始写博客了, 万事开头难嘛,先拿来那些nx点的人物的书籍来记录下, 本人文笔确实不怎么滴,思路略混乱,中学时代我的作文就是我们班的一盏亮灯,指引我们全班文笔不要向我的文笔思路靠近 ←```warn```→ 读万卷书,行万里路,以后不做宅男.加油··· 信息不等于

白帽子讲Web安全2.pdf

XSS构造技巧 利用字符编码: var redirectUrl="\";alert(/XSS/);"; 本身没有XSS漏洞,但由于返回页面是GBK/GB2312编码的“%c1\”成为了一个Unicode字符,忽略掉转义字符\ %c1";alert(/XSS/);// 绕过长度限制: 很多时候产生XSS的地方会有变量长度限制,将代码藏在location.hash中,然后在其他地方调用即可 http://www.a.com/test.html#alert(1) <

白帽子讲Web安全1.pdf

第一章 我的安全世界观 安全是一个持续过程 6种威胁:Spoofing(伪装).Tampering(篡改).Repudiation(抵赖).InformationDisclosure(信息泄漏).Denial of Service(拒绝服务).Elevation of Privilege(提升权限) 一个优秀的安全方案需要: 有效解决问题 用户体验良好 高性能 低耦合 易于升级和扩展 安全策略 Secure by Default原则(最小权限原则):白名单可通过和禁止黑名单,前者限制的范围更大更

《深入Java虚拟机学习笔记》- 第17章 异常

<深入Java虚拟机学习笔记>- 第17章 异常

《白帽子讲WEB安全》学习笔记之第1章 我的安全世界观

第1章 我的安全世界观 1.1 web安全简史 1.1.1 中国黑客简史 现在中国乃至全世界的黑客或者说是骇客已经进入了"黑暗时代",因为互联网存在这大量的利益. 1.1.2 黑客技术的发展历程 1.1.3 web安全的兴起 web安全是信息安全领域的一个重要的分支,但是中国目前对web安全的重视程度远远不足. 为什么要攻击Web应用,我认为主要有以下几个原因: q  web应用无处不在. q  相比较与操作系统等的安全防御能力,攻破web更容易一些. q  攻击web可以来无影去无踪

《白帽子讲WEB安全》学习笔记之第18章 安全运营

第18章 安全运营 18.1 把安全运营起来 战略: q  寻找漏洞并修补--漏洞修补 q  防御快速响应--安全监控 q  规范开发流程--入侵检测 18.2 漏洞修补流程 流程: q  建立类似Bug Tracker的漏洞跟踪机制,并为漏洞的紧急程序选择优先级 q  建立漏洞分析机制,并与程序员一起制定修补方案,同时review补丁的代码实现 q  对曾经出现的漏洞进行归档,并定期统计漏洞的修补情况 Bug Tracker 这是一个用于软件开发和测试阶段的缺陷跟踪.过失跟踪和问题跟踪工具.你

白帽子讲Web安全

在安全圈子里,素有"白帽"."黑帽"一说. 黑帽子是指那些造成破坏的黑客,而白帽子则是研究安全,但不造成破坏的黑客. 白帽子 均以建设更安全的互联网为己任. 不想拿到"root"的黑客,不是好黑客.漏洞利用代码能够帮助黑客们达成这一目标.黑 客们使用的漏洞利用代码,被称为"exploit".在黑客的世界里,有的黑客,精通计算机技术, 能自己挖掘漏洞,并编写 exploit:而有的黑客,则只对攻击本身感兴趣,对计算机原理和各种