网络安全与渗透测试训练营

网络安全与渗透测试训练营
    马上咨询


    张银奎   Intel 英特尔软件架构师,系统调试专家

    毕业于上海交通大学信息与控制工程系,长期从事软件开发和研究工作,对 IA-32 架构、操作系统内核、驱动程序、尤其是软件调试有较深入研究。从2005年开始公开讲授“Windows内核及高级调试”课程,曾在微软的Webcast 和各种技术会议上做过《Windows Vista内核演进》《调试之剑》(2008年中国软件技术大会)《感受和思考调试器的威力》(CSDN SD2.0大会)《Windows启动过程》《如何诊断和调试蓝屏错误》《Windows体系结构——从操作系统的角度》(以上三个讲座都是微软 “深入研究Windows内部原理系列”的一部分)等。

    • 著有《软件调试》《格蠹汇编》,担任杂志《程序员》中“调试之剑”的专栏作者,创建高端调试网站(ADVDBG.ORG)。
    • 翻译(合译)作品有《观止——微软创建NT和未来的夺命狂奔》《数据挖掘原理》《机器学习》《人工智能:复杂问题求解的结构和策略》等。


    主要内容:

    围绕网络安全这一主题,本训练营重点覆盖以下三方面的内容:(一)深刻理解安全漏洞,深度解析重大漏洞的本质和原理,包括MELTDOWN、SPECTRE这样的底层漏洞;(二)熟练使用重要的渗透测试工具,MetasploitFramework、BEEF、BurpSuite等,实际动手演练黑客攻击的完整过程;(三)探讨新的安全问题和热点,包括Java和.Net程序较难防御的反序列化攻击,手机终端APP的安全问题(活动劫持)和云端安全等。整个训练营理论与实战密切结合,通过大量的演示和动手试验理解网络安全的关键问题,启发思考。

    时间长度:3 (每天6小时)、形式:讲解 + 演示动手试验

    第一部分:漏洞和安全基础(1.5小时)要点:漏洞三要素,攻击类型,RCE,DoS,外部攻击和内部攻击,CVE,安全风险,Open Web Application Security Project(OWASP),OWASP的十大安全风险排名,深刻理解注入攻击(经典的溢出注入和SQL注入),重要的学习资源——DVWA、mutillidae样本网站,Botnet和黑色产业链
    第二部分:渗透测试(2小时)要点:Pentest,背景,测试过程,重要资源,Kali Linux, Metasploitable 2,BackBox,环境搭建,渗透测试的五大步骤详细介绍,Whois,WhatWeb, NMAP,ZenMap,PingScan,静态扫描工具,OpenVas,Metasploit Framework详细解析,主机入侵完整过程演示(利用IRC漏洞远程登录被攻克目标机),Armitage;DoS攻击
    第三部分:XSS攻击和浏览器安全(1.5小时)

    要点:演示和理解XSS攻击,Reflected XSS (Type-1 XSS),Stored XSS(Type-2 XSS),DOM-based XSS (Type-0 XSS),使用XSSER扫描XSS漏洞,防卫方法:输出编码,净化输入;使用BeE颠覆IE,Burp Suite详解(Instrder, Comparer, Repeater, Decode, Sequencer),Burp Suite演示

    第四部分:SQL注入和数据库安全(1小时)

    要点:SQL Injection,原理,演示,真实案例:2011年LulzSec组织对SonyMusic网站的SQL Injection攻击,防卫方法;设置数据库许可,存储过程,绑定参数,特权控制,ad-hoc SQL,直接对象引用,实例演示

    第五部分:数字签名和用户认证(1.5小时)要点:对称加密,非对称加密,RSA算法,公钥,私钥,两种基本应用模式,Public Key Infrastructure(PKI),数字证书,X.509V3,Key的保护和管理,对文件进行数字签名的工具和方法,文件加密,案例分析:12306网站的数字证书,基于密码(Password)的认证,密码攻击,Man-in-the-Middle攻击(Hash-Identifier和findmyhash工具演示),使用Hydra暴力破解密码,关于密码保护的最佳实践,Single sign-on (SSO),OAuth,OAuth1(RFC-5849), OAuth1的安全漏洞,OAuth2(RFC6749),服务提供者,注册,认证过程,两次重定向,重定向风险
    第六部分:会话管理和CSRF攻击(1.5小时)要点:认证和授权,授权基础,会话管理,Cookie原理,Cookie的属性,Cookie的使用过程,在浏览器中观察Cookie,Cross-Site Request Forgery (CSRF), Session Hijacking,最佳实践:强制会话超时,控制会话并发,安全使用cookie,HttpOnly,SSL和HTTPS
    第七部分:服务器端文件安全原则(1.5小时)要点:使用有漏洞的组件(2017-A8),XcodeGhost,利用漏洞上传文件,TomcatRCE,CWE-434(允许上传危险类型文件),服务器被上传文件的案例分享,访问敏感信息,2017-A4(XML外部引用),forceful browsing,目录枚举,不安全的直接对象引用(文件包含和相对路径),扩展名猜测,LINUX操作系统的安全漏洞,配置不当,2017-A10(日志和监视不足)
    第八部分:反序列化(1小时)要点:序列化背景,对象序列化,反序列化,2017-A8,对象篡改,破坏数据完整性,提升特权,DoS攻击演示,JavaSerialKiller,YSOSerial,已经公布的漏洞,检测工具
    第九部分:安全开发(1 小时)

    要点:SDL(Security Development Lifecycle),SD3C,SDL定义的主要过程和最佳安全实践,Software Assurance Maturity Model (SAMM),TOP25编程错误解析

    第十部分:漏洞扫描(1小时)

    要点:源代码扫描和黑盒扫描,Coverity介绍,工作过程,AST树,Checkers,三类事件,误报问题和函数建模,W3AF介绍和用法演示,OWASPZAP用法和演示

    第十一部分:威胁建模(1小时)要点:常用建模方法概览(Trike 、OCTAVE 和P.A.S.T.A),详细介绍Microsoft Threat Modeling过程,STRIDE,风险评级,微软Threat Modeling Tool 2016用法演示,
    第十二部分:App 移动业务安全和漏洞分析(1 小时)要点:Santoku Linux,Santoku Linux中的常用工具,Android App逆向,APKTool,DEX,Dex2Jar,Java反编译工具(Jd-GUI, JAD, Dare, Mocha),Java混淆工具,JNI调用本地代码,App与服务器的通信,使用Burp Suite为代理服务器,设置iPhone手机,淘宝应用举例,安装数字证书,测试HTTPS通信,12306 App举例,Android系统上的界面劫持(Activity-Hijacking),工作原理,测试方法,检测方法和防御
    第十三部分:云安全初步(1小时)要点:云安全联盟(CSA)定义的主要威胁(Top Threats to Cloud Computing),云服务存在的主要漏洞排名,跨虚拟机攻击,多级云安全(MTCS)标准,云安全事故案例分析

    //*对于使用C/C++语言的研发团队,可以选择如下主题

    第一部分:栈和局部缓冲区溢出(1.5小时)要点:栈基础,栈帧,栈帧布局,栈指针被破坏(Stack pointer corruption.),局部缓冲区越界(Overruns),栈被破坏(Stack corruption.),缓冲区溢出攻击(BOA),实例演示,SQLServer案例,Win7案例,IRCDaemon案例,GS机制(基于Cookie的溢出检测机制),扩展到LINUX平台,GCC编译器的保护措施
    [试验一]理解缓冲区溢出攻击(30分钟)
    第二部分:信号、异常和意外出口(1.5小时)要点:结构化异常处理(SEH),C++异常处理,信号,LINUX的信号处理机制,程序崩溃的完整过程和调试方法,转储的基本知识,异常处理有关的安全漏洞,不合理的异常处理器,因为异常和执行意外代码,代码实例分析
    第三部分:堆和堆溢出攻击(1.5小时)要点:C++程序中动态分配内存的多种方法(malloc, new, HeapAlloc),介绍调试内存有关的典型问题的方法和技巧,包括使用CRT堆和Win32堆的调试支持,分析内存泄漏、访问违例和栈溢出等,在探讨实践经验的同时会穿插重要的理论知识,包括Win32对和CRT堆的结构、内存管理常识、堆布局等,真实案例分析,基于堆的安全漏洞和分析