感谢您发送咨询!我们的团队成员将很快与您联系。
感谢您发送预订!我们的团队成员将很快与您联系。
课程大纲
第1天
- IT 安全和安全编码
- 安全的性质
- IT 安全相关术语
- 风险定义
- IT 安全的不同方面
- 不同应用领域的要求
- IT 安全与安全编码
- 从漏洞到僵尸网路和网路犯罪
- 安全漏洞的性质
- 困难的原因
- 从受感染的电脑到有针对性的攻击
- 安全漏洞的分类
- 兰德维尔分类法
- 七恶王国
- OWASP 2013 年前十名
- OWASP 2003 – 2013 年十大比较
- Microsoft ® 安全开发生命周期 (SDL) 简介
- 议程
- 应用程式受到攻击...
- 网路犯罪的演变
- 攻击主要针对应用程式
- 大多数漏洞位于较小的ISV应用程式中
- Microsoft SDL 的起源...
- 安全时程表在 Microsoft...
- 哪些应用程式需要遵循 SDL?
- Microsoft 安全开发生命周期 (SDL)
- Microsoft 安全开发生命周期 (SDL)
- SDL 入学前要求:安全培训
- 第一阶段:要求
- 第二阶段:设计
- 第三阶段:实施
- 第四阶段:验证
- 第五阶段:发布 – 回应计划
- 第五阶段:发布 – 最终安全审查
- 第五阶段:发布 – 存档
- SDL 后要求:回应
- 适用于 LOB 应用程式的 SDL 流程指南
- Agile 方法的 SDL 指南
- 安全的软体开发需要改进流程
- 安全设计原则
- 攻击面
- 攻击面减少
- 攻击面 – 示例
- 攻击面分析
- 攻击面减少 – 示例
- 隐私
- 隐私
- 了解应用程式行为和关注点
- 深度防御
- SDL 核心原则:深度防御
- 纵深防御 – 示例
- 最小许可权原则
- 最低许可权 – 示例
- 安全预设值
- 安全预设值 – 示例
- 攻击面
- 安全实施原则
- 议程
- Microsoft 安全开发生命周期 (SDL)
- 缓冲区溢出基础知识
- Intel 80x86 处理器 – 主寄存器
- 记忆体地址布局
- 在 x86 上 C/C++ 中的函数调用机制
- 局部变数和堆栈帧
- 堆叠溢出
- 堆叠上的缓冲区溢出
- 练习 – 简介
- 练习BOFIntro
- 练习 BOFIntro – 确定堆叠布局
- 练习BOFIntro – 一个简单的漏洞
- 输入验证
- 输入验证概念
- 整数问题
- 负整数的表示
- 整数溢出
- 算术溢出 – 猜猜输出!
- 练习 IntOverflow
- What is the value of Math.Abs(int.MinValue)?
- 整数问题缓解
- 整数问题缓解
- 避免算术溢出 – 加法
- 避免算术溢出 – 乘法
- 在 C# 中检测带有 checked 关键字的溢出
- 练习 – 在 C# 中使用 checked 关键字
- C# 中的溢出触发的异常
- 案例研究 – .NET 中的整数溢出
- 现实世界的整数溢出漏洞
- 利用整数溢出漏洞
- 路径遍历漏洞
- 路径遍历缓解
第2天
- 安全实施原则
- 注射
- 典型的 SQL 注入攻击方法
- 盲注和基于时间的 SQL 注射
- SQL 注射保护方法
- 命令注入
- 身份验证失效 - 密码管理
- 练习 – 哈希密码的弱点
- 密码管理和存储
- 用于密码存储的特殊用途哈希演算法
- 跨网站文稿 (XSS)
- 跨网站文稿 (XSS)
- CSS 注射
- 利用漏洞:通过其他 HTML 标签注入
- XSS 预防
- 缺少函数级访问控制
- 筛选档上传
- 实用密码学
- 通过对称加密技术提供机密性
- 对称加密演算法
- 群组密码 – 操作模式
- 哈希或消息摘要
- 哈希演算法
- 讯息认证代码 (MAC)
- 使用对称金钥提供完整性和真实性
- 通过公钥加密提供机密性
- 经验法则 – 拥有私钥
- 密码管理中的典型错误
- 练习 – 硬编码密码
- 结论
- 注射
- 安全验证原则
- 功能测试与安全测试
- 安全漏洞
- 优先顺序
- SDLC 中的安全测试
- 测试计划的步骤(风险分析)
- 范围界定和资讯收集
- 利益相关者
- 资产
- 攻击面
- 测试的安全目标
- 威胁建模
- 威胁建模
- 攻击者配置档
- 基于攻击树的威胁建模
- 基于误用/滥用案例的威胁建模
- 误用/滥用案例 – 一个简单的网上商店示例
- 威胁建模的 STRIDE 每元素方法 – MS SDL
- 确定安全目标
- 图表 – DFD 元素示例
- 数据流图 – 示例
- 威胁枚举 – MS SDL 的 STRIDE 和 DFD 元素
- 风险分析 – 威胁分类
- DREAD 威胁/风险排名模型
- 安全测试技术和工具
- 一般测试方法
- SDLC 各个步骤的技术
- 代码审查
- 软体安全代码审查
- 污点分析
- 启发式
- 静态代码分析
- 静态代码分析
- 静态代码分析
- 练习 – 使用静态代码分析工具
- 测试实现
- 手动运行时验证
- 手动与自动安全测试
- 渗透测试
- 压力测试
- 模糊
- 自动安全测试 - 模糊测试
- 模糊测试的挑战
- Web 漏洞扫描程式
- 练习 – 使用漏洞扫描程式
- 检查和强化环境
- 通用漏洞评分系统 – CVSS
- 漏洞扫描程式
- 公共资料库
- 案例研究 – Forms 身份验证绕过
- NULL 位元组终止漏洞
- 代码中的 Forms Authentication Bypass 漏洞
- 利用 Forms 身份验证绕过
- 知识来源
- 安全的编码源 – 入门套件
- 漏洞资料库
- MSDN 上的 .NET 安全编码准则
- .NET 安全编码备忘单
- 推荐书籍 – .NET 和 ASP.NET
14 小时
客户评论 (5)
每个模组都有多个示例,并且对培训师有深入的了解。
Sebastian - BRD
课程 - Secure Developer Java (Inc OWASP)
机器翻译
Module3 Applications Attacks and Exploits, XSS, SQL 注入 Module4 服务器攻击和漏洞利用、DOS、BOF
Tshifhiwa - Vodacom
课程 - How to Write Secure Code
机器翻译
一般课程信息
Paulo Gouveia - EID
课程 - C/C++ Secure Coding
机器翻译
The trainer's subject knowledge was excellent, and the way the sessions were set out so that the audience could follow along with the demonstrations really helped to cement that knowledge, compared to just sitting and listening.
Jack Allan - RSM UK Management Ltd.
课程 - Secure Developer .NET (Inc OWASP)
Nothing it was perfect.