收藏 分享(赏)

Java安全编码高级课程new.docx

上传人:dreamzhangning 文档编号:2313531 上传时间:2018-09-10 格式:DOCX 页数:10 大小:283.36KB
下载 相关 举报
Java安全编码高级课程new.docx_第1页
第1页 / 共10页
Java安全编码高级课程new.docx_第2页
第2页 / 共10页
Java安全编码高级课程new.docx_第3页
第3页 / 共10页
Java安全编码高级课程new.docx_第4页
第4页 / 共10页
Java安全编码高级课程new.docx_第5页
第5页 / 共10页
点击查看更多>>
资源描述

1、 Java 安全编码高级课程信息系统安全开发培训方案 Copyright 2011 谷安天下科技 版权所有 2 http:/Java 安全编码课程说明在以往的信息系统生命周期中,安全维护的工作压力主要集中在运营阶段,安全问题发现得较晚,安全损失与弥补的代价大。GooAnn 认为应当在信息系统开始规划阶段就会全面考虑系统安全问题,实施各种安全控制措施,从而达到早预防,节省成本的效果。开发过程中的安全编码是其中很重要的方面。谷安研究人员通过分析数以千计的漏洞报告,常见的编程错误会带来系统的很多安全漏洞。软件开发人员可以通过识别不安全的编码,在开发过程中注意安全编码,显著减少或消除在部署之前的漏洞。

2、我们努力研究和总结常见的编程错误所导致的软件漏洞,帮助客户建立安全编码标准,教育软件开发人员,从而保证软件的安全。谷安将陆续推出 Java/JEE、C/C+、.net、PHP、Andriod、iOS 等安全编码高级课程,敬请期待!信息系统安全开发培训方案 Copyright 2011 谷安天下科技 版权所有 3 http:/培训内容培 训 内 容时 间 主 题 内 容 培 训 目 标培训开始讲师与学员自我介绍课程目标介绍课程内容介绍使学员了解培训的目标和内容数据验证系列军规数据验证系列军规军规A0:清理验证跨安全域非信任的数据军规A1:验证前使字符串归一化军规A2:路径验证前对其进行标准化处理

3、军规A3:防范日志注入攻击军规A4:防范ZIP炸弹攻击军规A5:使用ASCII码的子集作为文件路径名军规A6:从格式化串中去除用户输入数据军规A7:防范命令行注入攻击军规A8:清理正则表达式中不可信输入数据军规A9:防范地区敏感的字符串操作错误军规A10:不要通过byte数组进行字符切割军规A11:验证前删除非字符码点军规A12:在不同字符编码格式之间执行无损转换军规A13:在文件与网络IO操作的两端采用兼容的字符编码格式了解系统输入数据验证过程中的安全注意事项,以及转换和传输过程中的安全注意事项第一天上午(9 :00-12:00)类声明与初始化系列军规军规B0:阻止类的初始化循环军规B1:不

4、要重用Java标准库中的公开标识符军规B2:将增强for循环中的变量声明为final了解对象声明与初始化过程中安全陷阱与防范方法信息系统安全开发培训方案 Copyright 2011 谷安天下科技 版权所有 4 http:/表达式系列军规军规C0:不要忽视方法的返回值军规C1:不要引用空指针军规C2:使用具有双参数的Array.equals()比较两个数组的内容军规C3:比较初始类型值的包装对象时不要使用=和!=操作符军规C4:确保自动包装产生正确的对象类型军规C5:不要在同一个表达式中对同一个变量进行多次更改军规C6:不要调试断言中使用具有副作用的表达式了解表达式安全注意事项第一天下午(13

5、 :30-17:30)数值运算系列军规军规D0:整数溢出的检查与预防军规D1:不要对同一数据同时执行位操作和数据运算操作军规D2:避免除法或求余运算中除数为0军规D3:使用能覆盖无符号整数范围的整型数据来读取JNI无符号数据军规D4:float浮点数不能满足精确计算要求军规D5:不要使用非正常浮点数军规D6:浮点数运算跨平台一致性军规D7:不要试图与 NaN进行比较军规D8:检查浮点数输入中的异常情况军规D9:不要使用浮点数为循环计数器军规D10:不要使用阿拉伯数字表达的浮点数构造BigDecimal对象军规D11:不要与浮点数字符串进行比较军规D12:保证降低转化不会导致数据损失或数据错误军

6、规D13:转变整数为浮点数时避免损失精度了解数字类型变量声明和操作中的各种安全问题及其防范方法信息系统安全开发培训方案 Copyright 2011 谷安天下科技 版权所有 5 http:/面向对象系列军规军规E0:限制对有固定逻辑的类和方法进行扩展军规E1:宣称属性值为private并提供属性访问方法军规E2:更新父类时保持子类的依赖性军规E3:不要在新代码中把简单类型和泛化类型混用军规E4:为易变对象提供Copy方法军规E5:返回内部易变属性的copy军规E6:保护性复制易变输入对象和内部对象军规E7:敏感类应该有防复制功能军规E8:不要将外层类的私有属性在嵌套类中暴露军规E9:比较类本身

7、而非类名军规E10 :不要使用public static变量军规E11 :不要让构造函数抛出异常了解对象声明,继承,传递过程中的各种安全问题及其防范方法对象方法系列军规军规F0:验证方法的输入参数军规F1:不要使用assert 验证输入参数军规F2:不要使用废弃的或过期的类和方法军规F3:执行安全检查的方法必须要声明为private或final军规F4:不要增加被覆盖、隐藏方法的可见性军规F5:保证构造函数不要调用可覆盖方法军规F6:不要在clone()函数中调用可覆盖方法军规F7:不要去声明一个隐藏超类或超接口方法的类方法军规F8:保证相等的对象在运算时保持相等性军规F9:equals()方

8、法和hashCode()方法应该同时定义军规F10 :实现compareTo()方法时要满足一般约定军规F11 :确保用于比较操作的了解类方法实现过程中的各种安全问题及避免方法信息系统安全开发培训方案 Copyright 2011 谷安天下科技 版权所有 6 http:/键值是不可变的军规F12 :不要使用 finalize()异常处理系列军规军规G0:不要抑制或忽略异常军规G1:不要让异常暴露了敏感信息军规G2:在记录log时防范异常军规G3:方法失败时恢复先前对象的状态军规G4:不要在finally语句中任意退出军规G5:不要让异常从finally语句中溜走军规G6:不要抛出没有声明的异常

9、军规G7:不要抛出RuntimeException, Exception, or Throwable军规G8:不要去捕获NullPointerException和他的任何父异常类军规G9:不要让非受信代码停止JVM了解异常处理中的安全问题及防范方法第二天上午(9 :00-12:00)可见性与原子性系列军规军规H0:访问初级类型共享变量时保证可见性军规H1:保证不可变对象共享参考指针的可见性军规H2:确保对共享变量的复合操作具有原子性军规H3:不要假定一组相互独立的原子性方法的调用在整体上具有原子性军规H4:确保链状方法调用的原子性军规H5:读写64位值时保证原子性了解共享变量访问和复合操作原子

10、性相关的安全问题及其防范方法信息系统安全开发培训方案 Copyright 2011 谷安天下科技 版权所有 7 http:/同步系列军规军规I0:对与非信任代码交互的类进行同步要使用私有不变对象锁军规I1:不要对可重用对象进行同步加锁军规I2:不要对通过 getClass返回的Class对象进行同步加锁军规I3:不要在高并发访问对象的内在锁上同步军规I4:如果底层集合可访问就不要对集合视图进行同步加锁军规I5:非信任代码可以修改对静态属性的同步访问军规I6:不要对实例对象加锁去保护静态数据军规I7:以同样的顺序请求和释放锁以避免死锁军规I8:确保在异常情况下的持有锁能够被释放军规I9:持有锁时

11、不要执行具有阻塞可能的操作军规I10:不要使用不正确的双重检查锁定机制军规I11:当使用的类不遵循既有锁定策略时避免客户端锁定了解输入输出中安全问题及其防范方法线程 API 系列军规军规J0:不要调用 Thread.run()军规J1:不要调用ThreadGroup中的方法军规J2:通知所有等待线程而非单个线程军规J3:总是在循环中调用wait()和await()方法军规J4:确保执行阻塞操作的线程能被终止军规J5:不要使用Thread.stop()终止线程了解序列化过程中的安全问题及防范方法第二天下午(13 :30-17:30)线程池系列军规军规K0 :在请求爆发时用线程池对服务质量进行体面

12、降级军规K1 :不要在有界线程池中执行相互依赖的任务军规K2 :保证提交给线程池的任务是可中断的军规K3 :保证提交给线程池的任务是可中断的军规K4 :当使用线程池时确保了解线程池安全相关安全问题及其防范方法信息系统安全开发培训方案 Copyright 2011 谷安天下科技 版权所有 8 http:/ThreadLocal变量被重新初始化线程安全附加军规军规L0:不要用非线程安全的方法覆盖线程安全的方法军规L1:对象构造期间不要暴露this指针军规L2:对象初始化时不要使用守护线程军规L3:不要发布半初始化对象了解 Java 线程相关的其他安全问题及其防范方法培训结束 培训结束 培训总结及疑

13、问解答讲师介绍:危老师CISSP 国际认证信息系统安全专家,CISP 注册信息安全专业人员,CISA 国际认证信息系统审计师。10 余年信息安全领域研发经验,主要集中于软件安全架构设计与安全编码,对于身份认证,访问授权,用户管理,SSO 实现,安全通信,PKI 与加解密技术,web 服务安全等有着丰富的应用开发与设计经验。对于软件开发团队管理,软件研发过程有着丰富经验与深刻理解。目前主要专业领域集中于软件生命周期安全、信息安全等方面,曾服务的主要客户有:国家认监委,深圳国信证券等等。从事 CISSP,CISP 以及 CISA 等信息安全培训工作。工作经历: 现任谷安咨询公司咨询经理,为客户提供

14、信息系统生命周期安全,信息安全等咨询服务,谷安 IT 风险管理学院 Jave 安全编码、 CISP,CISA、CISSP 高级讲师。 曾服务于新加坡 EPB 公司,担任客户经理,负责客户需求采集,跟踪管理,负责产品安全架构。 曾服务于全球著名信息安全解决方案提供商 SafeNet,担任高级软件工程师多年,主要负责软件加密技术研发及客户支持。 曾服务于本土著名中间件系统提供商 EstarCom,担任产品安全专员,负责产品安全架构设计与实现。信息系统安全开发培训方案 Copyright 2011 谷安天下科技 版权所有 9 http:/ 曾服务于铁道部信息中心,全面参与铁路信息安全平台的论证,设计

15、,搭建与测评工作,负责平台 SSO,PKI 方面研发。培训特点 以企业切实需求为目的 透彻讲解并辅以充足示例代码培训收益具体来说,可以使学员在以下方面有所提高: 可以全方位了解 Java 开发过程中遇到的各种容易忽视的安全问题,及其防范方法。可以在今后的开发过程中有意识的避免各种安全问题,全面提高代码质量。培训对象该课程的主要培训对象为: 有一定 Java 开发经验的研发人员培训与形式本次培训采用企业内训形式。 由客户提供场地、投影仪、麦克风、白板及其它必要的设施。课堂要求 学员需最好有电脑,方便研习示例代码,手机需置于关机或震动状态; 禁止课堂录音、摄像,如有违反讲师可停止授课,相关后果和责

16、任由客户承担。信息系统安全开发培训方案 Copyright 2011 谷安天下科技 版权所有 10 http:/培训资料本次培训将为每位学员提供以下资料一套: 专为本课程开发的讲义资料(打印版) ;说明:恕不提供讲义电子版。培训费用 内训:20000 元/天 公开课: 4000 元/人培训客户 金融行业:中国金融认证中心、中国建设银行、浦发银行、中国银行卡中心、中国农业银行、中行新疆分行等、长盛基金、瑞泰人寿保险、海康保险等 电信行业:中国电信研究院、中国移动、中国电信、中国网通、厦门电信分公司、山东网通等 IT 企业:IBM、亚美大陆煤炭、西门子、德勤、安永、新东方、奥美、东风汽车、中芯国际、ABB、埃森哲等 政府机构及其他:海关数据、外交部、赛宝认证中心、清华大学、中航信、农业部等联系我们联 系 人: 陈龙飞 电子邮件: 联系电话: 13671327668 010-51626887-806 传 真: 010-51626887-816联系地址: 北京市海淀区中关村南大街 2 号数码大厦 A 座 806

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 大学课件

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报