模块一:基础前置知识掌握
网络基础
- TCP/ IP网络基础:OSI 七层模型(物理层、数据链路层、网络层、传输层、会话层、表示层和应用层)
- 网络设备概念、MAC、网桥、交换机工作原理讲解
- VLAN 及其工作机制
- 网络层:IP 网络、子网、超网及报文路由
Linux 基础
- 冯诺依曼体系:输入单元、输出单元、CPU、内存、服务器、PC 机及虚拟机简介
- 操作系统概述及 Linux 操作系统基础、Linux 操作系统的发展历史、常见的开源协议、Linux 哲学思想
- 手把手带领实现 Linux 虚拟化学习环境介绍:VMware、VirtuaBox(多虚拟化平台讲解)
- Linux 发行商和常见发行版介绍,CentOS 7.X 、系统安装及 Ubuntu 系统安装(最新版本讲解)
- 人机交互接口 Shell 介绍:GUI(图形界面)和 CLI(命令行界面)
- 基础系统命令使用入门:shutdown、reboot、poweroff、echo 等
- Linux 基础命令的通用语法格式:$COMMAND OPTIONS ARGUMENTS 详解
- bash 的功能特性:常用快捷键、命令补全和路径补全、命令别名 alias、命令历史 history
- 目录管理类命令:mkdir、rmdir、tree 和文件管理工具:cp、mv、rm 及单源复制和多源复制
- 文件时间截 atime、ctime、mtime 和文件常用命令 nano、cat、tac、more、less、head、tail 等
- 链接文件的创建 In[-s] 及符号链接与硬链接区别(面试必备)
- I/O 重定向之输入重定向、输出重定向、错误输出重定向实战用法
- Linux的用户、组、权限基础,进程安全,上下文及用户和权限管理模型
- 用户管理命令 useradd、usermod、userdel 及解析库文件 /etc/passwd
- Linux 文件权限 r、w、x 及文件属性;Linux 文件权限管理命令:chmod、chown、 chgrp
- Vim 编辑器基础应用及进阶:可视化模式、文件查找、多窗口模式
- 文本查看及处理工具 wc、cut、sort、unig、diff、patch 等命令
- 运维必备技能:基本正则表达式及扩展正则表达式及案例演练
- 文件实时查找 find 命令全方位讲解,文件压缩工具 zip、xz、zip、tar 及各自的解压缩的使用
- rpm 软件包安装及常见 yum 仓库配置,企业级标准配置实战
模块二:网络安全入门核心知识
安全趋势概览
- 网络安全当前趋势、环境、法律法规:数据安全法&个人信息保护法的解读
- 网络安全就业环境,企业安全人员需求
- 安全职业发展前景
- 网络安全学习路径
网络安全基础
HTML、JavaScript 入门学习
- 为什么要学习 HTML
- HTML 元素、标签、格式、实体详解
- HTML 链接、框架、表格、列表、表单、图使用
- 如何在网页中写 JavaScript
- JavaScript 语法、数据类型、变量
- 运算符、流程控制、字符串对象、事件等
实战案例
- 恶意程序攻击及防御实例讲解
- 用 HTML 结合 JavaScript 写一个网站登录系统
- JavaScript安全示例分析
MySQL/MSSQL
- 数据库介绍、分类、安装配置、登录连接等
- 数据库基本操作(创建、查看、选中、查询等相关命令行操作)
- 数据字段操作(创建、修改、增加、调整字型、复合型等)
- 数据库表操作(创建、查看、选中、删除数据表、删除数据库等相关命令行操作)
- 数据类型
- 增删改查之更新记录、数据库权限操作
Docker
- Docker 介绍
- Docker 基本命令
- 使用 Docker 搭建实验环境
模块三:信息安全基础
Web 应用程序安全与风险
- Web 应用程序的发展历程、应用程序安全
- Web 渗透测试学习框架
Web 应用程序技术
- HTTP 请求与响应;
- HTTP 用法、URL、Cookie 及状态码
- Web 应用程序编码
攻防环境搭建
- Windows 及 Kali 安装配置
- Tomcat 攻防环境搭建
- Struts 2 攻防环境搭建
- JBoss 攻防环境搭建
渗透测试之信息收集
- 主域名及二级域名深测
- Google Hack 信息探测
- 子域名探测、敏感信息收集
- Web 系统指纹识别
- FOFA 及 Nmap 使用
- 前期信息资产梳理
模块四:信息安全工具使用(渗透测试必备工具篇)
扫描工具
- 长亭科技 xray 正向及反向漏洞检测
- 漏洞扫描原理及 X-Scan 使用
- Web 漏洞扫描 AppScan 安装配置及扫描
- Web 漏洞扫描 AWVS 安装配置及扫描
- 系统漏洞扫描 Nessus 使用,漏洞扫描器评估方案讲解
- 完成一个企业漏洞扫描报告编写
抓包工具
- Wireshark 使用简介
- Burp 安装与配置
- Burp 代理和浏览器设置
- Burp 漏洞扫描及检测模块
- Burp Target 模块
- Burp Intruder 模块
- Burp Repeater 模块
- Burp Comparer 模块及其他模块
- Burp 实现手机抓包
模块五:渗透测试
SQL 注入漏洞攻防
- SQL 注入攻击原理
- SQL 注入攻击分类及提交方式
- Union 联合注入
- 基于函数报错手工注入(insert update delete)
- HTTP Header 及 Cookie 手工注入
- (布尔型、时间型)手工盲注
- 宽字节及二阶注入
- MySQL + PHP 手工获取 Webshell 过程
- Cookie 手工实战注入
- Cookie 中转及工具注入
- 伪静态突破
- SQL 注入漏洞修复
- sqlmap 注入神器高级使用
上传验证绕过
- 上传检测流程概述
- 客户端检测绕过(JavaScript 检查)
- 服务端黑名单绕过(特殊可解析后缀)
- 服务端黑名单绕过(大小写绕过)
- 服务端黑名单绕过(点绕过)
- 服务端黑名单绕过(空格绕过)
- 服务器黑名单绕过(目录路径检测绕过)
- 服务端黑名单绕过(:$DATA绕过)
- 服务端黑名单绕过(双后缀名绕过)
- 服务端白名单绕过(MIME 类型检测绕过)
- 服务端白名单绕过(%00 及 0x00 截断绕过)
- 服务端内容检查绕过(文件头检查)
- 服务端内容检查绕过(突破 getimagesize 及 exif jimagetype 函数)
- 服务端内容检查绕过(二次渲染绕过)
- 服务端内容检查绕过(文件包含绕过)
- 代码逻辑(条件竞争绕过)
- 文件上传漏洞安全防范
XSS 漏洞攻防
- XSS 基本概念和原理介绍
- 反射型、存储型、DOM 型实战
- XSS 钓鱼及盲打演示
- XSS 平台搭建及 Cookie 获取
- 反射型 XSS(POST)获取用户密码
- XSS 钓鱼测试
- XSS 获取键盘记录
- XSS 盲打
- BeEF XSS
- XSS 防御绕过
- XSS 绕过之 htmlspecialchars() 函数
- XSS安全防御
文件包含漏洞
- 文件包含漏洞概述及分类演示
- 中间件日志包含绕过
- PHP 包含读写文件
- str._replace 函数绕过
- 包含截断绕过、fnmatch 函数绕过
- 文件包含漏洞防范措施
CSRF 攻防
- CSRF 漏洞概述及原理
- CSRF 快速拖库攻击还原
- CSRF 管理员密码修改还原
- CSRF 进行地址修改及钓鱼攻击还原
- CSRF漏洞安全防范
SSRF 漏洞
- SSRF 原理及寻找方法
- SSRF 攻防实战及防范方法
XXE 原理利用防御
- XXE 基础知识
- XXE 漏洞攻防测试
编辑器漏洞
- 常规编辑器漏洞介绍
- 常规编辑器漏洞攻击还原
越权漏洞
- 越权漏洞原理介绍
- 水平越权攻防还原
- 垂直越权攻防还原
- 越权漏洞修复
暴力猜解
- C/S 架构暴力猜解(系统、数据库、 第三方应用密码暴破)
- B/S 架构暴力猜解(常用 Web 密码暴破)
- Hydra 安装与使用
- 暴力猜解安全防范
社会工程学& APT 攻击
- 社会工程学介绍及敏感信息收集
- 社工邮件钓鱼分析
- APT 攻击简介及攻击方式还原
- APT 攻击防范
- 常规 CTF 比赛题讲解及还原
远程代码执行
- 远程代码执行原理介绍
- PHP 远程代码执行常用函数演示
- Log4j2 RCE 漏洞介绍及攻击还原
- Shiro RCE 漏洞介绍及攻击还原
- Struts2 RCE 漏洞介绍及攻击还原
- ThinkPHP RCE 漏洞介绍及攻击还原
- Weblogic RCE 漏洞介绍及攻击还原
- 远程命令执行漏洞修复
旁注、跨库、CDN 绕过
- 渗透测试之旁注
- 跨库与 CDN 查找
逻辑漏洞
- 逻辑漏洞概述
- 如何挖掘逻辑漏洞
- 交易交付中的逻辑问题
- 密码修改逻辑漏洞
- 个人项目逻辑漏洞分享
- 逻辑漏洞修复
验证码安全
- 验证码安全介绍及分类
- 验证码绕过(on client)
- 验证码绕过(on server)
- 验证码识别攻击还原
其他漏洞
- 渗透测试之其它漏洞
- 登录页面渗透测试常用的几种思路与总结
模块六:等级保护
等保基础
- 等级保护概念
- 等级保护依据
- 等级保护对象
- 等级保护等级
- 等级保护角色&职责
- 等级保护规定动作
- 等保 2.0 变化解读
等保要求
- 安全物理环境
- 安全通信网络
- 安全区域边界
- 安全计算环境
- 安全管理中心
- 安全管理制度
- 安全管理机构
- 安全管理人员
- 安全建设管理
- 安全运维管理
模块七:风险评估
风险评估基础
- 风险评估概念
- 风险要素关系
- 风险评估原理
- 风险评估流程
- 风险评估工作形式
- 信息系统生命周期内的风险评估
风险评估实施
- 准备阶段识别阶段
- 资产识别
- 威胁识别
- 脆弱性识别
- 已有安全措施确认
- 风险分析阶段
- 风险评价阶段
- 风险处理阶段
模块八:安全巡检
- 漏洞扫描(使用企业级扫描器对系统进行漏洞扫描,并编写报告)
- 策略检查(针对主机、系统,应用等进行安全配置检查)
- 安全巡检
模块九:信息安全工具使用(Kali 之 MSF 渗透测试)
Kali MSF 基本介绍
- Kali 问题解答及 MSF 初识
- 启动和使用 MSF
- MSF console Commands
MSF 漏洞利用
- MS08-067 漏洞攻防还原
- MS10-018 漏洞攻防还原
- MS17-010 漏洞与勒索病毒的深度解析
- MS17-010 漏洞攻防还原
- MSF 之 samba 服务漏洞攻防还原
- Bash Shellshock CVE-2014-6271(破壳)与 PHPCGI 漏洞还原
- MSF 之 CVE-2017-8464 震网三代、CVE-2018-4878 漏洞攻防还原与辅助模块讲解
- MSF 之后续权限提升
模块十:渗透测试进阶
WAF 绕过
- WAF 安装与配置
- WAF 绕过 SQL 注入及 XSS 攻击
- WAF 绕过文件上传
- WAF 绕过漏洞扫描
- WAF 绕过命令执行、绕过脚本免杀
- WAF 绕过其它安全性验证
Windos/Linux 权限提升
- Windows 提权前期相关事项
- Windows 提权常用命令
- Windows 提权实战、提权防范
- Windows 提权后期密码安全性测试
- Linux 权限提升及提权必备命令学习
- Linux 脏牛提权及 SUID 提权
数据库权限提升
- 如何获取 MySQL 帐号和密码
- UDF 提权
- MOF 漏洞及启动项提权
Webshell 后门分析
- 获取 Webshell 方法总结
- 代码层面后门分析
- 菜刀后门分析
- 网络层面后门分析
实战案例
- 利用 MSF 编写远控程序
- 利用 MSF 实现免杀
模块十一:应急响应
入侵排查篇
- Window 入侵排查
- Linux 入侵排查
- 常用的 Webshell 查杀工具
- 如何发现隐藏的 Webshell 后门
- 勒索病毒自救指南
权限维持篇
- Windows 权限维持(隐藏篇)
- Windows 权限维持(后门篇)
- Linux 权限维持(隐藏篇)
- Linux 权限维持(后门篇)
- Windows 命令行文件下载方式汇总
- 渗透测试框架权限维持技术
- 常见 Webshell 管理工具
日志分析篇
- Windows 日志分析
- Linux 日志分析
- Web 日志分析
- MySQL 日志分析
Windows 实战篇
- FTP 暴力破解
- 勒索病毒
- 挖矿病毒
Linux 实战篇
- SSH 暴力破解
- DDoS 病毒
Web 实战篇
- 网站被植入 Webshell
- 批量挂黑页
- 新闻源网站劫持
- 搜索引擎劫持
- 网站首页被篡改
- 管理员账号被篡改
- 编辑器入侵事件
- 应急响应报告模板
模块十二:代码审计
PHP 入门学习
- PHP 环境搭建、编写代码工具选择
- PHP 基本语法
- PHP 流程控制
- PHP 函数精讲、PHP 数组与数据结构
- PHP 正规表达式、PHP 文件系统
- PHP 文件上传、PHP 错误处理
- PHP 操作 MySQL 数据库
- switch 语句、while 循环、for 循环
- PHP 会话管理和控制
PHP 代码审计
- 为什么代码会有漏洞
- 什么是代码审计
- 代码安全审计技术详解、要求
- 应用程序功能和业务规则
- 敏感数据
- 应用角色和访问权限
- 应用类型
- 代码和设计
- 确定攻击面
- PHP 代码审计思路
- PHP 包管理软件
- ThinkPHP 框架讲解
实战案例
- PHP 函数漏洞实战
- 通过 PHP 编写 Web 登录程序
- 通过所学数据库搭建多个不同站点,并进行数据库相关操作
漏洞讲解
- 漏洞代码演示
- 漏洞修复代码讲解
- 漏洞审计思路
涉及漏洞:mail 函数漏洞、SQL 注入、命令执行、变量覆盖、XSS、XXE、CSRF、SSRF、重定向、文件上传、反序列化
Laravel 框架讲解
- 框架介绍
- 目录介绍
- 基本路由
- 路由参数
- 命名路由
- 路由组
- 框架漏洞审计
防护方案
- PHP 原生过滤方法
- PHP 框架修复方案
函数精讲
- extract 变量覆盖
- 绕过过滤的空白字符
- SQL 注入 _WITH ROLLUP 绕过
- ereg 正则 %00 截断
- strcmp 比较字符串
- sha() 函数比较绕过
- SESSION 验证绕过
- urldecode 二次编码绕过
- md5 加密相等绕过
- intval 函数绕过
- strpos 数组绕过
- md5() 函数绕过
- ereg() 函数 strpos() 函数绕过
- 不同进制比较绕过
- 数字验证正则绕过
- 弱类型整数大小比较绕过
模块十三:代码审计进阶
Java 基础
Java 语言概述
- Java 环境准备
- Hello World
基础语法
- BasicDataTypes 基本数据类型举例(int、boolean、char)
- Parameter 定义变量、初始化、赋值(初始化)
- MathOperators 运算符,着重算术运算符和优先级的掌握(++/--,优先级)
- RelationOperators 运算符,着重关系运算符的掌握(==/>/<)
- LogicalOperators 运算符,着重逻辑运算符的掌握(&/|/!,与或非)
流程控制
- IfDemo if分支(if/else)
- SwitchDemo switch分支(switch/case)
- ForDemo for循环(for)
- WhileDemo while循环(while/do.while)
数组和字符串
- array/ArrayDemo 数组初始化、遍历、工具类
- GetSecondMaxNum 获取数组中的次大数
- BubbleSort 冒泡排序(分析,思路,步骤,代码)
- string/StringDemo 字符串
类和对象
- ClassDemo 类和对象的概念
- PropertyDemo 成员变量
- MethodDemo 成员方法
- Constructor 构造函数
- ThisDemo this 在类中的使用
- StaticDemo static 静态变量、静态方法
- 三大特性:封装、继承、多态
- Packageldentity 封装,访问控制符(public、private)
- extendsDemo/PersonsMain 构造函数的继承及引用方式
- overloadVSoverride/Over-loadDemo 重载
- :overloadVSoverride/0verrid-eDemo 重写
- :multiStatus/MultiStatusDemo 多态,处理问题的方式
- abstractDemo/AbstractDemo 抽象类,关键字 abstract
- interfaceDemo/InterfaceDemo 接口
集合
- SetDemo 介绍 HashSet 的使用方式
- ListDemo 介绍 ArrayList 的使用方式
- MapDemo 介绍 HashMap 的使用方式
异常
- 异常概念说明:Exception
- WhatsException 什么是异常
- HandleException 简单处理异常(try/catch)
代码审计
SQL 注入
- 安全威胁
- 代码示例
- JDBC 连接方式及示例讲解
- JDBC 常用接口方法
- JDBC 使用预编译
主流 Java ORM 框架讲解
- Hibernate
- MyBatis
- JdbcTemplate
代码解决方案讲解
命令执行
- 安全威胁
- 代码示例
- Java 执行系统命令函数讲解
- 代码解决方案讲解
常见漏洞
- 安全威胁
- 代码示例
- 解决方案
涉及漏洞:XSS、XXE、CSRF、SSRF、重定向、文件上传、JSONP 劫持
反序列化
- 安全威胁
- 代码示例
- Fastjson 反序列化漏洞讲解及代码演示
- Fastjson 漏洞利用
- 解决方案
自动化代码审计
- RIPS 工具介绍及安装
- RIPS 工具使用
Cobra
- 什么是“源代码安全审计(白盒扫描)”
- Cobra 为什么能从源代码中扫描到漏洞
- Cobra 和其它源代码审计系统有什么区别或优势
- Cobra 支持哪些开发语言
- Cobra 能发现哪些漏洞
- Cobra 安装
- Cobra CLl 模式使用
- Cobra APl 接口
- Cobra 规则详解
- Cobra 扫描方式详解
- 自定义 Cobra 扫描规则
- 如何使用多规则匹配模式进行扫描
实战案例
商城系统源代码审计
模块十四:Kubernetes 安全
- Kubernetes 简介
- Kubernetes 组件介绍
- Kubernetes 安全机制讲解
- Kubernetes 安全加固
- 云原生安全
- 云安全架构
模块十五:安全开发
Python 介绍、安装及语法
- Python 介绍安装注释
- Python 字符串 str
- Python 变量、类型
Python 基本语法
- 基本数据结构
- 函数
- 条件语句
- 错误与异常处理
- 循环语句
- 面向对象编辑
- 文件输入输出
- 模块
Python 安全应用编程入门
- Python 正则表达式
- Python 网络编程
- Python Web 编程
- Python 数据库编程
- Python 多线程
Python 爬虫技术实现
- 爬虫基础简介
- requests 模块高级操作;
- 高性能异步爬虫
- 数据解析
- selenium 模块应用
- 验证码识别
- Scrapy 框架
Python 信息收集工具编写
- 密码字典生成器编写
- 子域名扫描程序
- Web 目录扫描程序
- 指纹识别工具开发
- C 段 Web 服务扫描
扫描与爆破
- Python 协议暴力破解框架
- Python MySQL 暴力破解
- HTTP 表单暴力破解
- Python 爆破 SQL Server
- Python 端口扫描程序
信息安全面试问题总结
- XSS 防御相关
- CSRF 相关
- XXE 漏洞相关
- SQL 注入漏洞相关
- CRLF 注入
- SSRF
- WAF 绕过
- 浏览器安全
- PHP 安全
- Java 家族安全
- 企业安全相关
- Python 相关
- 应急响应、红蓝对抗
- 安全开发
- 认证
大型实战项目
项目一:系统漏洞扫描项目
项目介绍
使用自动化扫描工具对系统进行漏洞扫描,掌握 AWVS、Nessus、AppScan 使用方法,对企业进行漏洞扫描并输出扫描报告。
掌握技能
- 掌握 AWVS、Nessus、AppScan 的使用方法,对扫描结果进行误报排除,输出完整扫描报告
- 掌握企业级漏洞报告编写
- 掌握扫描器漏洞扫描原理
项目二:渗透测试项目
项目介绍
掌握渗透测试的流程和方法,对企业网站进行全面渗透测试,发现安全问题。
掌握技能
- 掌握自动化扫描器的使用方法
- 掌握信息收集方法,对企业资产进行全面排查
- 掌握 SQL 注入、XSS、CSRF、SSRF、文件上传等漏洞的利用方法
- 掌握 WAF 绕过方法
- 掌握渗透测试报告的编写方法
项目三:企业级应急响应项目
项目介绍
掌握应急响应流程,熟练进行日志分析、入侵排查,能够在 Windows、Linux 系统上进行入侵检查、后门分析。
掌握技能
- 掌握 Windows、Linux 入侵排查能力
- 掌握 Webshell 排查与清除,掌握各种病毒原理
- 掌握系统日志、数据库日志分析
- 撰写标准应急响应报告
项目四:企业级代码审计项目
项目介绍
掌握代码审计流程、方法,能够独立进行代码审计工作;掌握各种漏洞原理与代码修复方式,能够在不同场景下提供安全解决方案。
掌握技能
- 掌握 Java、PHP 代码审计能力
- 掌握代码层面漏洞产生原理及对应修复方案
实战案例-小项目(基础)
- 制作克隆页面形成钓鱼网站
- Tomcat PUT 方法任意写文件漏洞(CVE-2017-12615)
- S2-048 远程代码执行漏洞(CVE-2017-9791)
- JBoss 5.x/6.x 反序列化漏洞(CVE-2017-12149)
- Nmap 实现系统指纹识别
- Web/主机层面漏洞扫描
- 利用 SQL 注入实现 Getshell
- BeEF-XSS 钓鱼网站攻击
- L0g4j2 RCE 漏洞(CVE-2021-44832)
- ShiroRCE 漏洞介绍及攻击还原
- Fastjson 远程命令执行漏洞
实战案例-小项目(进阶)
- 永恒之蓝漏洞攻防还原深度解析(MS17-010)
- 震网三代远程命令执行漏洞(CVE-2017-8464)
- Flash 0day 漏洞攻防还原(CVE-2018-4878)
- WAF 安装与配置、绕过攻击
- 操作系统&数据库权限提升操作系统权限维持
- Webshell 后门分析
- 编写远控程序、实现免杀 PHP 函数漏洞实战
- Python 编写密码字典生成器商城系统源代码审计
- 自动化代码审计
与爆破
-
信息安全面试问题总结
-
大型实战项目
-
项目一:系统漏洞扫描项目
-
项目二:渗透测试项目
-
项目三:企业级应急响应项目
-
项目四:企业级代码审计项目
-
实战案例-小项目(基础)
-
实战案例-小项目(进阶)