培训介绍:
可以全方位了解Java开发过程中遇到的各种容易忽视的安全问题,及其防范方法。可以在今后的开发过程中有意识的避免各种安全问题,提高代码质量。
主 题
|
内 容
|
培 训 目 标
|
培训开始
|
讲师与学员自我介绍
课程目标介绍
课程内容介绍
|
使学员了解培训的目标和内容
|
数据输入验证与数据清理
|
1、SQL注入,XML注入,regex注入攻击原理与防范
|
了解系统输入数据验证过程中的安全注意事项,以及转换和传输过程中的安全注意事项
|
2、字符串验证,路径名验证以及日志记录中的安全漏洞与防范
|
3、ZipInputStream与Runtime安全注意事项
|
4、字符串在编码转换,网络传输中的安全注意事项
|
对象声明与初始化过程中安全陷阱与防范
|
1、防范类初始化的嵌套循环
|
了解对象声明与初始化过程中安全陷阱与防范方法
|
2、不要重复使用Java标准库中的公开标识符
|
3、循环相关变量声明注意事项
|
表达式安全注意事项
|
1、不要忽略方法的返回值
|
了解表达式安全注意事项
|
2、不要引用空指针
|
3、数组内容比较安全注意事项
|
4、‘==’和equals方法中的安全注意事项
|
5、原始数据封装与运算中的安全注意事项
|
数字类型与操作安全
|
1、防范整数溢出
|
了解数字类型变量声明和操作中的各种安全问题及其防范方法
|
2、单精度浮点数运算相关安全问题
|
3、strictfp的使用
|
面向对象安全
|
1、防范类与方法的恶意扩展
|
了解对象声明,继承,传递过程中的各种安全问题及其防范方法
|
2、更新父类引发的安全问题
|
3、传递对象时使用copy功能
|
4、防范嵌套类暴露外层类的敏感信息
|
类方法安全
|
1、类方法参数的验证
|
了解类方法实现过程中的各种安全问题及避免方法
|
2、Assert相关安全注意事项
|
3、用private和final修饰执行安全检查的方法
|
4、降低被覆盖方法与隐藏方法的可见性
|
5、其他类方法相关的安全注意事项
|
异常处理中的安全问题
|
1、 压抑或忽视异常情况导致的安全问题
|
了解异常处理中的安全问题及防范方法
|
2、异常暴露敏感信息
|
3、防范日志记录过程中的异常
|
4、finally相关安全问题
|
5、不要抛出RuntimeException,Exception,或者Throwable异常
|
可见性与原子性
|
1、共享变量复合操作的原子性
|
了解共享变量访问和复合操作原子性相关的安全问题及其防范方法
|
2、保证一连串的方法调用具有原子性
|
3、不要假定对一组相互独立的方法的调用具有原子性
|
4、当读写64位数据时确保原子性
|
5、保证共享原始变量的可见性
|
输入输出安全
|
1、操作共享目录的风险
|
了解输入输出中安全问题及其防范方法
|
2、应用程序结束前删除所有临时文件
|
3、检测和处理文件相关的错误
|
4、文件操作相关的其他安全问题
|
序列化过程中安全
|
1、在class升级进化过程中,维护序列化过程的兼容性
|
了解序列化过程中的安全问题及防范方法
|
2、使用正确的序列化方法声明方式
|
3、不要序列化非加密的敏感数据
|
4、在序列化过程中避免内存和资源泄露
|
5、序列化过程中其他安全相关问题
|
线程安全
|
1、不要对一个可能重用的对象加锁
|
了解线程安全相关问题及其防范方法
|
|
2、不要对getClass()方法返回的class对象进行加锁
|
|
|
3、线程API(run,ThreadGroup,stop)相关安全问题
|
|
|
4、在一个线程池内不要执行相互依赖的任务
|
|
|
5、当使用线程池时,确保ThreadLocal变量重新初始化
|
|
平台安全
|
1、不要允许特权模块泄露敏感信息到受信区域之外
|
了解Java平台相关的安全问题及其防范方法
|
2、不允许特权模块有受污染变量
|
3、不要使用反射机制增加类,方法和成员变量的可访问性
|
4、不要在非受信区域执行安全检查
|
运行时环境安全
|
1、只执行非特权操作的代码不要进行代码签名
|
了解Java运行时环境安全相关问题及其防范方法
|
2、把所有安全敏感相关的代码放在一个单一的jar包中,进行签名封装
|
3、不要进行危险的联合授权
|
4、不要废除二进制码的验证机制
|
培训结束
|
培训结束
|
培训总结及疑问解答
|
如果您想学习本课程,请
预约报名
如果没找到合适的课程或有特殊培训需求,请
订制培训
除培训外,同时提供相关技术咨询与技术支持服务,有需求请发需求表到邮箱soft@info-soft.cn,或致电4007991916
技术服务需求表点击在线申请
服务特点:
海量专家资源,精准匹配相关行业,相关项目专家,针对实际需求,顾问式咨询,互动式授课,案例教学,小班授课,实际项目演示,快捷高效,省时省力省钱。
专家力量:
中国科学院软件研究所,计算研究所高级研究人员
oracle,微软,vmware,MSC,Ansys,candence,Altium,达索等大型公司高级工程师,项目经理,技术支持专家
中科信软培训中心,资深专家或讲师
大多名牌大学,硕士以上学历,相关技术专业,理论素养丰富
多年实际项目经历,大型项目实战案例,热情,乐于技术分享
针对客户实际需求,案例教学,互动式沟通,学有所获