【课程背景】
随着互联网时代的到来,企业的应用也逐步转向互联网,以互联网形式开放给用户进行使用?而互联网带来最大的问题就是安全问题,企业如何解决互联网应用的安全问题?
本课程在主动的安全开发框架指导下,深入剖析软件开发生命周期各阶段的安全细节问题,理解协同构建安全系统的方法。并通过大量的动手实操和相关案例贯穿所有的理论知识,使学员熟练掌握代码安全漏洞分析、编程规范、代码质量问题分析、安全设计与防御常见问题及解决方法。
【课程收益】
Ø 学会分析软件安全脆弱性产生的根源
Ø 展示多种攻击软件的手段、指出软件开发过程中不同人员在设计和开发中常犯的错误
Ø 探讨当前软件安全界关注的热点问题
Ø 总结和提高软件质量和安全性的指导思想、开发策略、技术路线和实施方法
Ø 掌握代码安全典型漏洞
Ø 安全漏洞攻防演练
Ø 掌握通用代码编程规范
Ø 能够对代码进行质量问题分析
Ø 掌握项目的安全设计与防御
【课程对象】IT技术负责人、软件架构师、系统分析师、资深开发人员、测试人员、信息技术安全部门的相关人员
【课程时间】2天
【课程大纲】
一、安全知识背景
1、安全基础
Ø 当前企业面临的安全态势分析
Ø 安全分类
Ø Top 10安全问题分析
Ø 安全案例分析
2、常见的Web攻击手段
二、服务器&浏览器安全
1、服务器安全
Ø 服务器分等级隔离部署策略
Ø 应用部署的目录要求
Ø 服务器开放账号最小特权权限
Ø 端口白名单开放策略
Ø 不同权限级别用户增加额外访问控制
Ø 公共配置存储的安全
Ø 检测指定web应用是否开放非必须的http方法
Ø http trace方法开放测试
Ø 关闭后台调试信息
Ø 应用上传路径的安全监控
2、浏览器安全
Ø 浏览器厂商对安全的日渐重视
Ø 同源策略
Ø 浏览器沙箱
Ø 恶意网址拦截
Ø 基于浏览器自身安全机制的提升
三、常用安全漏洞的攻与防-客户端安全
1、跨站脚本攻击(XSS)
Ø 什么是XSS
Ø XSS为什么是一种热门攻击手段
Ø XSS Payload的定义
Ø Cookie劫持
Ø XSS钓鱼
Ø 常见的CSS攻击平台
Ø XSS Worm
Ø XSS构造技巧
Ø 如何防御XSS
实战:XSS攻击与防范实战
2、跨站请求伪造(CSRF)
Ø CSRF定义
Ø CSRF可以做什么
Ø CSRF漏洞现状
Ø CSRF的攻击原理
Ø 如何防御CSRF
Ø CSRF与XSS的比较
实战:CSRF修改用户密码以及防范措施
3、钓鱼攻击
Ø 什么是钓鱼攻击
Ø 钓鱼攻击的一般步骤
Ø 目前钓鱼攻击的调查报告统计
Ø 钓鱼攻击有哪些常见的方法
案例:钓鱼攻击
4、点击劫持
Ø 点击劫持的定义
Ø 常见的点击劫持分类
5、HTML5安全
Ø Iframe sandbox机制
Ø Canvas
Ø PostMessage跨窗口消息传递
Ø WebStorage本地存储
案例:Noreferer问题演示与防范
四、常用安全漏洞的攻与防-服务端安全
1、SQL注入
Ø SQL注入定义
Ø SQL注入目的
Ø 常用的SQL注入语句
Ø SQL注入方式
Ø 注入思路分析
Ø SQL盲注与一般SQL注入的区别
Ø 如何防御SQL注入
实战:SQL注入攻击与防范实战
2、文件上传和下载漏洞
Ø 文件上传漏洞的定义
Ø 因文件上传漏洞所带来的安全问题
Ø 必须具备的条件
Ø 文件上传漏洞包括哪些类型
Ø 如何防御文件上传漏洞
实战:文件上传和下载漏洞注入攻击与防范实战
3、认证与会话管理
Ø 认证与授权的定义
Ø 认证分类
Ø 密码认证的优缺点
Ø 密码设计应遵循的原则
Ø 密码出错策略设置
Ø 密码输入框的密文显示
Ø 密码的加密存储
Ø 密码的加密传输
Ø 初始化口令的要求
Ø 验证码的安全使用
Ø 认证处理模块的合法性校验及认证结果返回要求
Ø 关键事务处理的多级认证和强身份认证
Ø 会话重写
Ø 用户账号的锁定策略
Ø Session机制详解
Ø Session常用的攻击漏洞
Ø 获取sessionid的两种手段
Ø 注销时会话清除
Ø 单点登录
Ø 如何进行认证测试
Ø 不安全的数据传输
Ø 服务端业务处理的流程顺序限制
案例:Session劫持与防范
4、访问控制
Ø 不安全对象的引用
Ø 功能级的访问必须经过认证和鉴权
Ø 认证和鉴权必须在服务器端处理
Ø 采用最小化权限控制策略
Ø 应用程序运行账号和数据库连接账号的分离以及最小职权原则
Ø 操作系统文件的权限控制策略
Ø 访问控制的分类
Ø 垂直权限管理
Ø 水平权限管理
5、安全配置错误
Ø 安全配置的定义
Ø 因安全配置错误引发的安全问题
Ø 如何防御安全配置错误引发的安全问题
案例:文件目录的安全问题
6、使用含有已知漏洞的组件
Ø 描述
Ø 所带来的危害
Ø 解决办法
7、未验证的重定向和转发
Ø 案例
Ø 解决办法
8、敏感信息泄露
Ø 敏感信息的定义
Ø 敏感信息的危害
Ø 敏感信息的案例
Ø 如何解决敏感信息泄露引发的问题
Ø 如何进行敏感信息泄露的测试
Ø 代码中的敏感数据
Ø 禁止明文存储密钥和口令
Ø 禁止Cookie中存储明文形式敏感数据
Ø 安全的加密算法推荐
Ø 日志中敏感数据存储
Ø 敏感数据禁止缓存到页面
Ø 敏感数据表单提交规则
Ø 使用带证书的SSL
Ø 禁止URL中携带敏感信息
9、拒绝服务攻击
Ø 网络层的拒绝服务攻击
Ø 应用层的拒绝服务攻击
Ø 如何防范应用层的拒绝服务攻击
10、安全审计
Ø 安全事件和操作事件的记录
Ø 安全日志的访问权限控制
Ø 安全日志的分析