企业内训

软件安全设计与开发实战

陈国星 · 授课老师

适合对象
IT技术负责人、软件架构师、系统分析师、资深开发人员、测试人员、信息技术安全部门的相关人员

随着互联网时代的到来,企业的应用也逐步转向互联网,以互联网形式开放给用户进行使用?而互联网带来最大的问题就是安全问题,企业如何解决互联网应用的安全问题? 本课程在主动的安全开发框架指导下,深入剖析软件开发生命周期各阶段的安全细节问题,理解协同构建安全系统的方法。…

课程内容

按章节阅读课程大纲

课程概览

随着互联网时代的到来,企业的应用也逐步转向互联网,以互联网形式开放给用户进行使用?而互联网带来最大的问题就是安全问题,企业如何解决互联网应用的安全问题?

本课程在主动的安全开发框架指导下,深入剖析软件开发生命周期各阶段的安全细节问题,理解协同构建安全系统的方法。

并通过大量的动手实操和相关案例贯穿所有的理论知识,使学员熟练掌握代码安全漏洞分析、编程规范、代码质量问题分析、安全设计与防御常见问题及解决方法。

学习目标

  • 学会分析软件安全脆弱性产生的根源

  • 展示多种攻击软件的手段、指出软件开发过程中不同人员在设计和开发中常犯的错误

  • 探讨当前软件安全界关注的热点问题

  • 总结和提高软件质量和安全性的指导思想、开发策略、技术路线和实施方法

  • 掌握代码安全典型漏洞

  • 安全漏洞攻防演练

  • 掌握通用代码编程规范

  • 能够对代码进行质量问题分析

  • 掌握项目的安全设计与防御

课程大纲

  • 一、安全知识背景

  • 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、安全审计

    安全事件和操作事件的记录

    安全日志的访问权限控制

    安全日志的分析

微信咨询

添加客服微信

选好课程后,可在微信中沟通培训内容、讲师和时间安排。

正在读取联系方式…

查看完整咨询说明 →