新浪安全开发流程培训课程.ppt
《新浪安全开发流程培训课程.ppt》由会员分享,可在线阅读,更多相关《新浪安全开发流程培训课程.ppt(83页珍藏版)》请在三一办公上搜索。
1、,新浪安全开发流程介绍,新浪信息安全团队V1.0,课程内容,安全问题趋势,http:/www.cert.org/stats/,安全漏洞的危害,影响产品性能和稳定性影响公司声誉SONY影响客户对产品的信心CSDN影响整个公司的生存和发展CloudNineDiginotar,安全问题的起因,以功能为主,忽略安全的重要性,缺乏系统的安全开发流程,安全问题的起因,开发者缺乏安全开发经验,安全漏洞解决,选择后期补救的原因过去,在软件开发阶段,安全不是重要的考虑因素。软件开发人员没有足够的精力在早期解决缺少安全审计人员人们习惯于接受有缺陷的软件,然后应用安全补丁进行修补。,各个阶段统计数据,各个阶段问题的
2、统计数据,安全的开发流程,最少的安全漏洞,编码,设计,需求,准备,测试,配置跟踪,安全开发流程,最少的安全漏洞,编码,设计,需求,准备,测试,配置跟踪,任务启动之前的准备,为每一个项目要指定安全方面的负责人安全策略的执行和跟踪安全问题的咨询安全相关的培训安全问题统计和决策,任务启动之前的准备,安全培训安全开发流程安全设计方法安全编码规范安全测试方法安全测试用例的编写如何检测培训效果针对安全培训的考试,安全的开发流程,编码,设计,需求,准备,测试,配置跟踪,最少的安全漏洞,安全需求的来源,安全需求的可能来源系统或者应用的功能需求国家,国际或者组织内部的标准和指南被加工数据的敏感度级别公司相关的安
3、全策略误用、滥用用例,http:/,安全需求来源,是否需要符合某个行业标准 HIPAA是否需要符合某些法律法规(进/出口限制)可用性99.99%单点故障灾难恢复灾难恢复计划热备份 冷备份 暖备份,安全需求目标和方法,机密性 防止泄露秘密,完整性 防止修改数据,可用性 灾难后可以迅速恢复,认证 用户是可信的,授权 权限的分配,追踪 重要操作防抵赖,安全目标,安全需求实施方法,安全需求实施方法,安全需求实施方法,如何保证检查列表得到执行,需求审查机制参加审查的人员,需求分析人员,安全人员,项目负责人,设计人员,测试者,需求分析文档,安全的开发流程,编码,设计,需求,准备,测试,配置跟踪,最少的安全
4、漏洞,设计-安全设计原则I,安全设计原则最小特权赋予最小特权,并且只允许使用所需要的最少时间。创建一个新用户时,默认的权限应该是最小的。故障安全化确保如果系统出现故障,那么它将以安全方式失败,例如,自动关闭无单点故障.提供深度防御保护最薄弱环节分隔基本思想是如果我们将系统分成尽可能多的独立单元,那么我们可以将对系统可能造成损害的量降到最低。总体调节每次访问一个对象时,都要检查访问授权,特别是和安全很关键的对象。,设计-安全设计原则II,安全设计原则简单易懂默认拒绝保护隐私用户通常认为隐私是安全性问题。您不应该做任何可能泄露用户隐私的事情.公开设计,不要假设隐藏秘密就是安全,设计的安全目标,安全
5、目标可靠性在所有的情况下,程序可以预期地正确地运行,包括受攻击的情况。可信赖性只有很少的缺陷或者弱点可以被利用,且没有恶意的逻辑。健壮性能抵抗是大多数已知的攻击和尽可能多的新的攻击,在受到不可抵抗的攻击时,能够容忍攻击并将损失降到最低,受到其他少数的不可抵抗和容忍的攻击时,可以快速恢复。,和第三方集成注意事项,和第三方集成注意事项认证第三方要明确第三方的权限要明确请求的具体内容格式,安全设计的实施方法,认证与授权 Check list 选项,安全设计的实施方法,信息保密和完整性 Check list 选项,常见问题和预防I-XSS,讨论如何传输保存用户的密码?防范对象:网络传输中间人知道代码逻
6、辑的内部员工数据管理员黑客,安全设计的实施方法,编程安全相关 Check list 选项,安全设计的实施方法,编程安全相关 Check list 选项输入验证-第一道防线,安全设计的实施方法,日志、错误处理、审计 Check list 选项,安全设计的实施方法,环境和配置 Check list 选项,变更控制,变更控制变更控制,要有安全方面的人员跟踪与审查。需要评估变更是否影响现在的威胁和防御措施。,如何保证检查列表得到执行,设计审查机制参加审查的人员,测试者,需求分析人员,安全人员,开发人员,设计人员,设计文档,安全的开发流程,编码,设计,需求,准备,测试,配置跟踪,最少的安全漏洞,安全代码
7、规范,安全代码规范的重要性可以使开发认识到安全编码的重要性可以规避一些缺陷,提高产品的质量提高代码的可读性,有助于代码审查有助于维护代码,常见问题和预防I-XSS,跨站点脚本攻击(XSS Injection)反射式存储式基于Dom危害页面内的内容可以被发往任何地方,包括Cookie使得其他类型的攻击更加容易,CSRF,Session Attack可以拦截整个站点的行为,常见问题和预防I-XSS,常见的预防方式输入验证(客户端和服务端)Httponly有些浏览器不支持,有些Web 服务器也不支持,例如:weblogicsecure只对HTTPS有效输出编码OWASP ESAPI性能复合编码,常见
8、问题和预防I-XSS,通用解决方案-输出编码哪里需要编码不仅仅是页面HTML任何包含用户数据的地方HTTP头和主体Cookie,HTTP头里的重定向URL编码方式URL 编码参数中特殊的字符%20Html编码Javascript编码“”复合编码从内到外,从后到前,按照浏览器语法解析的逆序进行编码,常见问题和预防I-XSS,思考题$userid=$_POSTuser;if()$_SESSIONuser=$userid;/login successfully$datausername=$_SESSIONuser;alert(“The user you type can not be found!”
9、);”,常见问题和预防I-XSS,典型攻击字符串XSS”img upload onerror onerror=alert(XSS)alt=.jpgUTF-7 XSS攻击向量:+ADw-script+AD4-http:/ha.ckers.org/xss.html,常见问题和预防I-XSS,跨站点脚本攻击(XSS)的总结最有效的解决方案:输出编码,要提供统一的易用的解决方案。,常见问题和预防II-SQL注入,SQL 注入 对于输入检查不充分或者处理不当,导致SQL语句将用户提交的非法数据当作语句的一部分来执行。SQL 注入的危害泄露数据库信息泄露秘密数据信息破坏,删除以及修改数据,常见问题和预防I
10、I-SQL注入,SQL注入代码示例$userName=$_POSTusername“;$password=$_POSTpassword“;$query=SELECT count(*)FROM users WHERE username=+$userName+AND password=+$password;if(intval($mysql-getVar($query)0)/登录成功else/登录失败.,登录用户名:or 1=1-,SELECT count(*)FROM users WHERE username=or 1=1-and password=,常见问题和预防III-文件上传下载,文件上传下
11、载问题主要原因服务器端路径的权限没有控制好文件名校验不严格文件的类型控制不严格文件的大小控制不严格,常见问题和预防III-文件上传下载,文件上传下载问题类型控制只在客户端控制可以修改,将.php文件上传修改文件名例如:修改 test.txt./././././test.txt并发控制问题一个用户同时登录多个,同时上传多个文件,导致超过最大空间的限制。,常见问题和预防III-文件上传下载,.jpg 文件问题,常见问题和预防III-文件上传下载,常见问题和预防III-文件上传下载,文件上传问题的解决办法使用正确的函数使用白名单,黑名单白名单 zip,txt黑名单 jsp,php,pl,exe,ba
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 新浪 安全 开发 流程 培训 课程

链接地址:https://www.31ppt.com/p-2215000.html