求知 文章 文库 Lib 视频 iPerson 课程 认证 咨询 工具 讲座 Model Center   Code  
会员   
 
 
 
开班计划 | 技术学院 | 管理学院 | 嵌入式学院 | 机械 | 军工学院 | 定向培养 | 专家指导  
 电话 English
成功案例   品质保证
 
   
成功案例
西门子西 网络安全、嵌入式软
GE 区块链技术与实现
中国银行 信息安全技术及深度
北京和利 性能和安全性
北京 Web应用安全架构、入侵

相关课程  
WEB网站与应用安全原理与实践
web应用安全架构设计
创建安全的Java/J2EE Web代码
注册信息安全专业人员(CISP)
信息安全管理
信息安全问题与防范
 

全部课程 >安全  
C++安全编程与渗透测试(Windows平台) 
2314 次浏览  51 次
William
在某公有云公司云安全中心任职,数据驱动安全方向负责人,主要负责安全前沿技术的研究以及新产品落地工作。
 
时间地点:北京 上海 深圳根据报名开班
课程费用:5700元/人
企业内训:可根据企业需求,定制内训,详见 内训学习手册



认证方式:
培训前了解能力模型。
培训后进行能力评测:
  • 在线考试
  • 能力分析,给出学习建议
  • 合格者颁发证书,作为职业技能资格证明


    围绕如何开发出更安全的C++应用程序这一主题,本培训将深挖影响C++程序安全性的关键问题,分析历史上的经典案例,并系统介绍解决这些问题所需的基础知识、关键工具和最佳实践。

    培训目标

  • 了解C++程序安全概览
  • 了解渗透测试基础
  • 学习WinDBG精要
  • 了解栈和局部缓冲区溢出
  • 解析异常处理和应用程序崩溃
  • 多线程同步和死锁
  • 堆和堆腐败
  • 安全开发和威胁建模
  • 代码扫描
  • 数字签名和代码完整性基础
  • 钩子和外挂
  • 培训对象:使用C++语言开发Windows应用软件的软件工程师,或者相关项目的测试工程师、项目带头人和技术经理
    学员基础:有一定C++开发和调试经验。
    授课方式: 定制课程 + 案例讲解 + 小组讨论,60%案例讲解,40%实践演练

    培训内容:2天
    主题
    课程安排
    第一部分:C++程序安全概览 要点:从C++程序角度的安全定义,Top 25 Errors,CVE,资源
    第二部分:渗透测试基础 要点:Pentest,背景,测试过程,重要资源,
    Kali Linux, Metasploitable 2,
    BackBox,
    环境搭建,
    渗透测试的五大步骤,
    Metasploit Framework详细解析,
    主机入侵完整过程演示(利用IRC漏洞远程登录被攻克目标机),
    Armitage
    [试验一]使用MSF利用IRC的溢出漏洞入侵主机
    第三部分:WinDBG精要

    要点:WinDBG的命令类型,常用命令,命令语法,调试符号,符号文件的种类,符号服务器,
    定制调试事件的方法和重要的调试命令,
    软件断点、硬件断点,复杂的断点命令,
    x86寄存器和反汇编技巧
    [试验二] WinDBG基础(15分钟)

    第四部分:栈和局部缓冲区溢出 要点:栈基础,栈帧,栈帧布局,
    栈指针被破坏(Stack pointer corruption.),
    局部缓冲区越界(Overruns),
    栈被破坏(Stack corruption.),
    缓冲区溢出攻击(BOA),
    实例演示,SQL Server案例,Win7案例,IRCDaemon案例,GS机制(基于Cookie的溢出检测机制),编译器的保护措施

    [试验三] 理解缓冲区溢出攻击(30分钟)

    第五部分:异常处理和应用程序崩溃 要点:结构化异常处理(SEH),C++异常处理,
    Windows的异常奋发机制,
    程序崩溃的完整过程和调试方法,
    转储的基本知识,
    如何使用ADPLUS自动产生用户态转储,以及分析用户态转储的常用命令和技巧
    [试验四] JIT调试和异常事件处理(30分钟)
    第六部分:多线程同步和死锁 要点:并发和并行,多线程,
    C++程序中创建线程的多种方法,
    在VC和WinDBG中观察和操纵线程的方法,
    使用WinDBG来调试多线程程序和同时调试多个进程,包括控制线程执行状态,临界区,观察同步对象、分析死锁的方法,
    案例演示,CPU的同步机制,互锁系列内建函数(intrinsic)
    第七部分:堆和堆腐败

    要点:C++程序中动态分配内存的多种方法(malloc, new, HeapAlloc),
    介绍调试内存有关的典型问题的方法和技巧,
    包括使用CRT堆和Win32堆的调试支持,
    分析内存泄漏、访问违例和栈溢出等,
    在探讨实践经验的同时会穿插重要的理论知识,
    包括Win32对和CRT堆的结构、内存管理常识、堆布局等,真实案例分析
    [试验五] 使用UMDH追踪堆的分配细节(30分钟)

    第八部分:安全开发和威胁建模 要点:SDL(Security Development Lifecycle),SD3C,SDL定义的主要过程和最佳安全实践,
    Software Assurance Maturity Model (SAMM),TOP 25编程错误解析,
    常用建模方法概览(Trike 、OCTAVE 和P.A.S.T.A),
    威胁建模,Microsoft Threat Modeling过程,STRIDE,风险评级,
    微软Threat Modeling Tool 2016用法演示
    第九部分:代码扫描 要点:源代码扫描和黑盒扫描,
    静态扫描的优势,
    Coverity介绍,
    工作过程,AST树,Checkers,
    三类事件,误报问题和函数建模,
    开源的扫描工具
    第x部分:数字签名和代码完整性基础 数字签名的工作原理和有关的密码学基础,
    非对称加密,
    Key的保护和管理,
    Windows系统检查代码完整性的过程和有关的系统部件,对文件进行数字签名的工具和方法
    第x部分:钩子和外挂 介绍钩子(Hook)技术的背景和简要历史,
    分析Windows平台上的常用钩子技术及其工作原理,
    包括DLL注入、IAT挂钩、消息挂钩等,
    然后针对保护键盘输入这一目标,
    讨论键盘输入的数据路径,
    防止按键被嗅探的方法
     
    2314 次浏览  51 次
    其他人还看了课程
    C++安全编程与渗透测试(Windows平台)  2314 次浏览
    Web网络安全与渗透测试实践训练营  3477 次浏览
    WEB网站与应用安全原理与实践  4053 次浏览
    信息安全问题与防范  3434 次浏览
    软件安全开发周期、过程与规范  3043 次浏览
    信息安全管理  3718 次浏览
    定制内训


    咨询服务:安全评测与体系建设
    咨询目标 帮助客户对当前系统进行安全评测
    帮助客户建立安全架构
    帮助客户建立安全管理体系。
    咨询范围 网站安全,信息安全,web应用安全,移动端安全,通信网络安全,数据库安全,应用服务安全。
    咨询方式 安全评测指标与体系建立,
    对当前系统进行安全评测
    安全架构设计
    安全管理体系建设
    成功案例 中国银行,亚信联创,某电商金融公司,当当网,万达电商
    详情咨询:010-62670969, zhgx@uml.net.cn
    课程计划
    QT应用开发 11-21[线上]
    C++高级编程 11-27[北京]
    LLM大模型应用与项目构建 12-26[特惠]
    UML和EA进行系统分析设计 12-20[线上]
    数据建模方法与工具 12-3[北京]
    SysML建模专家 1-16[北京]