AqibTayyab/Security-Engineer-Roadmap-2026

GitHub: AqibTayyab/Security-Engineer-Roadmap-2026

一份覆盖进攻性安全、防御工程和紫队三大方向的结构化学习路线图,帮助零基础学习者在 12 到 18 个月内成长为具备职场竞争力的安全工程师。

Stars: 1 | Forks: 0

# 🔐 从零到符合职场要求的安全工程师:2026 路线图 ![角色](https://img.shields.io/badge/Role-Security_Engineer-red?style=for-the-badge&logo=hackthebox) ![学习路线](https://img.shields.io/badge/Track-AppSec_%2B_Purple_Team-purple?style=for-the-badge) ![框架](https://img.shields.io/badge/Frameworks-OWASP_%7C_MITRE_ATT%26CK_%7C_NIST-blue?style=for-the-badge) ![时间线](https://img.shields.io/badge/Timeline-12--18_Months-orange?style=for-the-badge) ![许可证](https://img.shields.io/badge/License-MIT-green?style=for-the-badge) ![理念](https://img.shields.io/badge/Philosophy-Learning_In_Public-blueviolet?style=for-the-badge) 一份从零到符合职场要求的结构化技术路线图,旨在培养 **安全工程师** —— 涵盖进攻性安全、防御性工程和紫队。基于 OWASP、MITRE ATT&CK v14、NIST SP 800-53 Rev 5 以及 SANS Institute 课程体系构建。 **目标职位:** Application Security Engineer | 渗透测试员 | Detection Engineer | 紫队分析师 | 安全运营工程师 ## 📖 目录 - [基本规则](#ground-rules) - [阶段 1:基础](#phase-1-foundations-the-non-negotiables) - [1.1 网络基础](#11-networking-fundamentals) - [1.2 Linux 精通](#12-linux-mastery) - [1.3 Windows 内部机制](#13-windows-internals) - [1.4 安全编程](#14-programming-for-security) - [阶段 2:进攻性安全](#phase-2-offensive-security) - [2.1 侦察](#21-reconnaissance) - [2.2 网络攻击](#22-network-attacks) - [2.3 Web 应用程序安全](#23-web-application-security-appsec-core) - [2.4 系统漏洞利用](#24-system-exploitation) - [2.5 Active Directory 攻击](#25-active-directory-attacks) - [阶段 3:防御性工程](#phase-3-defensive-engineering) - [3.1 SIEM 与检测工程](#31-security-operations-and-siem) - [3.2 威胁狩猎](#32-threat-hunting) - [3.3 DFIR](#33-digital-forensics-and-incident-response-dfir) - [3.4 安全架构](#34-security-architecture-and-hardening) - [阶段 4:紫队](#phase-4-purple-teaming-and-advanced-specializations) - [4.1 紫队行动](#41-purple-team-operations) - [4.2 云安全](#42-cloud-security) - [4.3 安全代码审查](#43-secure-code-review) - [4.4 API 安全](#44-api-security) - [阶段 5:认证、作品集与求职](#phase-5-certifications-portfolio-and-job-preparation) - [阶段 6:持续发展](#phase-6-continuous-development) - [漏洞实验环境](#vulnerable-lab-environments) - [90 天快速启动计划](#90-day-quick-start-schedule) - [其他资源](#additional-resources) - [作者](#author) ## ⚡ 基本规则 | 规则 | 详情 | |---|---| | **实践重于理论** | 每一个概念都必须亲手实践。光看不练是不够的。 | | **专用实验机** | 至少 16GB 内存,500GB SSD。使用 VMware Workstation Pro 或 VirtualBox。 | | **安全日记** | 记录你发现的每一个漏洞利用、绕过方法和检测机制。 | | **GitHub 反映你的工作** | 雇主看重的是你的提交记录,而不仅仅是证书。 | ## 🏗️ 阶段 1:基础 —— 不可妥协的基石 **持续时间:** 6 到 8 周 **目标:** 构建所有安全概念赖以存在的技术基石。没有捷径。 ### 1.1 网络基础 **概念:** TCP/IP 协议栈、协议与数据包分析 **技术深度:** - OSI 模型(全部 7 层)—— 理解在攻击期间每一层会发生什么故障 - TCP 3 次握手、连接状态、RST/FIN 攻击 - IP 寻址、子网划分 (CIDR)、路由表、NAT - DNS:完整的解析链、区域传送、DNS over HTTPS - HTTP/1.1、HTTP/2、HTTP/3 —— 请求头、方法、状态码、keep-alive - TLS 1.2 与 TLS 1.3 的对比 —— 密码套件、证书链、握手过程 - ARP、ICMP、DHCP —— 它们是如何被滥用的(ARP 欺骗、ICMP 隧道) - 协议:FTP、SMTP、SSH、RDP、SMB 及其设计上的弱点 **实验与资源:** | 资源 | 侧重点 | |---|---| | Wireshark | 在你的家庭网络中捕获并分析真实流量 | | TryHackMe: "Pre-Security" + "Network Fundamentals" | 引导式学习路线 | | OverTheWire: Bandit | 嵌入在战争游戏中的网络概念 | | 书籍:Computer Networks by Tanenbaum (第 1-5 章) | 深入的理论 | | pfSense 作为虚拟防火墙 | 动手进行路由和检查流量 | ### 1.2 Linux 精通 **概念:** Linux 操作系统内部机制与命令行熟练度 **技术深度:** - 文件系统层级结构:`/proc`、`/sys`、`/etc`、`/var/log` —— 文件都在哪里以及为什么 - 文件权限:`rwx`、SUID/SGID 位、粘滞位、ACLs - 进程管理:`ps`、`top`、`htop`、`/proc/[PID]/`、进程间通信 - 用户/组管理、`sudo` 机制、PAM (可插拔认证模块) - Bash 脚本编写:循环、条件判断、函数、正则表达式结合 `grep`/`sed`/`awk` - `cron`、`systemd` 服务、init 系统 —— 持久化机制就存在于此 - 网络工具:`netstat`、`ss`、`ip`、`iptables`、`nftables`、`tcpdump` - 日志文件:`/var/log/auth.log`、`/var/log/syslog`、`journalctl` **实验与资源:** | 资源 | 侧重点 | |---|---| | OverTheWire: Bandit (全部 34 关) 然后 Narnia | 通过战争游戏学习 Linux 基础 | | TryHackMe: "Linux Fundamentals" (全部 3 部分) | 引导式学习 | | TryHackMe: "Linux Privilege Escalation" | 攻击性 Linux | | Kali Linux 或 Parrot OS 作为主要实验虚拟机 | 攻击平台 | | `linpeas.sh` | 研究它执行的每一项检查并理解原因 | ### 1.3 Windows 内部机制 **概念:** Windows 操作系统架构与 Active Directory 基础 **技术深度:** - Windows 架构:内核模式与用户模式的对比、WIN32 API、NTDLL - 注册表:配置单元结构、运行键、常见的恶意软件持久化位置 - NTFS:备用数据流、文件权限、继承 - Windows 身份验证:NTLM、Kerberos (TGT、TGS、PAC)、SAM 数据库 - Active Directory:林、域、信任关系、OU、GPOs、LDAP 结构 - 关键事件 ID:`4624` (登录)、`4625` (登录失败)、`4688` (进程创建)、`4776` (NTLM 身份验证) - PowerShell:执行策略、受限制的语言模式、AMSI - Windows Defender 内部机制:它如何进行检测,以及会遗漏什么 **实验与资源:** | 资源 | 侧重点 | |---|---| | TryHackMe: "Windows Fundamentals" (全部 3 部分) + "Active Directory Basics" | 核心 Windows 知识 | | 域环境中的 Windows Server 2019 + Windows 10 虚拟机 | 亲手实践的 AD 实验 | | Sysinternals Suite (Process Monitor、Autoruns) | 深入的操作系统可见性 | | HackTheBox: "Active" 和 "Forest" | 针对 AD 的初级靶机 | ### 1.4 安全编程 **概念:** 用于安全自动化的 Python、Bash 和 PowerShell **技术深度:** - Python:套接字、`subprocess`、`os`/`sys`、用于数据包构造的 `requests`、`scapy`、JSON/XML 解析、编写漏洞利用程序 - Bash:侦察自动化脚本、日志解析、通过管道串联工具 - PowerShell:cmdlets、WinRM 远程操作、.NET 访问、AMSI 绕过技术、红队单行命令 - 基础 C/C++:内存布局 (栈、堆、BSS)、指针 —— 为后续的漏洞利用开发奠定基础 - 阅读并理解现有的漏洞利用代码 (Python、Ruby Metasploit 模块) **实验与资源:** | 资源 | 侧重点 | |---|---| | 从零开始编写一个 Python 端口扫描器 (不使用 nmap) | 核心技能培养 | | 编写一个 Python 子域名爆破工具 | 自动化实践 | | 书籍:Black Hat Python by Justin Seitz | 通读每一章 | | 需要自定义脚本的 HackTheBox 挑战 | 应用脚本编写 | ## ⚔️ 阶段 2:进攻性安全 **持续时间:** 10 到 14 周 **目标:** 以足够深入的技术深度理解每一个主要的攻击类别,从而能够对其进行漏洞利用并实施检测。 ### 2.1 侦察 **概念:** OSINT 与主动侦察技术 **技术深度:** - 被动 OSINT:WHOIS、证书透明度日志 (`crt.sh`)、Shodan、Censys、LinkedIn、GitHub dorking - Google dorks:`site:`、`filetype:`、`inurl:`、`intitle:` —— 构建复杂的 dork 链 - DNS 枚举:区域传送、子域名爆破、记录分析 (A、MX、TXT、CNAME、SRV) - 主动侦察:Nmap (SYN、UDP、版本、脚本扫描)、服务指纹识别 - Web 技术指纹识别:Wappalyzer、WhatWeb、HTTP 请求头、Cookie 分析 - 云侦察:S3 存储桶枚举、暴露的 Azure/GCP 端点 - GitHub/GitLab 侦察:泄露的 API 密钥、`.env` 文件、包含敏感数据的提交历史 **需掌握的工具:** `Nmap` `Amass` `Subfinder` `theHarvester` `Shodan CLI` `dnsrecon` ### 2.2 网络攻击 **概念:** 网络级漏洞利用与流量操纵 **技术深度:** - ARP 欺骗与中间人攻击 (MITM):拦截局域网流量、SSL 剥离 - VLAN 跳跃:双重标签、交换机欺骗 - 嗅探:从 Telnet、FTP、HTTP、SMTP 捕获凭据 - 服务漏洞利用:EternalBlue (MS17-010)、BlueKeep —— 理解漏洞本身,而不仅仅是运行 Metasploit - 密码攻击:使用 Hydra、Medusa 对 SSH、RDP、SMB、FTP 进行爆破 - 无线网络:WPA2 4 次握手捕获、使用 Hashcat 进行离线破解、PMKID 攻击、邪恶双子 AP **实验:** | 资源 | 侧重点 | |---|---| | Metasploitable 2/3 | 存在已知漏洞的靶机 | | HackTheBox: "Blue" (EternalBlue)、"Legacy" | SMB 漏洞利用 | | Ettercap、Bettercap | MITM 实验操作 | ### 2.3 Web 应用程序安全 (AppSec 核心) **OWASP Top 10 —— 完整的技术利用与防御** 以下每一部分都是一个独立的精通单元。 #### 2.3.1 注入攻击 **OWASP A03:2021** **技术深度:** - SQLi:报错型、布尔盲注、时间盲注、UNION 注入、带外注入 - WAF 绕过:注释变体、编码、大小写变换、分块传输 - 命令注入:`;`、`&&`、`||`、`|`、反引号执行、基于时间延迟的盲注 - NoSQL 注入:MongoDB 操作符注入 (`$where`、`$gt`、`$regex`) - LDAP 注入身份验证绕过、信息泄露 - 修复方法:参数化查询、使用 ORM、输入验证 —— 在代码中实现它们 ``` -- Vulnerable query (never do this) SELECT * FROM users WHERE username = '" + userInput + "'; -- Secure parameterized query SELECT * FROM users WHERE username = ?; ``` **实验:** PortSwigger "SQL Injection" (全部 18 个实验) | DVWA | Juice Shop | WebGoat #### 2.3.2 身份验证与会话攻击 **OWASP A07:2021** **技术深度:** - 会话固定、通过 XSS 进行的会话劫持、Cookie 窃取 - JWT:`alg:none` 攻击、RS256 到 HS256 混淆、弱密钥爆破、`kid` 请求头注入 - OAuth 2.0:开放重定向滥用、OAuth 流程中的 CSRF、Referer 请求头中的 token 泄露 - 密码重置流程攻击:可预测的 token、Host 请求头注入 - 通过响应时间差异、错误消息、响应大小进行账号枚举 - MFA 绕过:OTP 重用、备用验证码暴露 **实验:** PortSwigger "Authentication" (全部 14 个实验) | PortSwigger "JWT Attacks" (全部 8 个实验) | Juice Shop #### 2.3.3 跨站脚本攻击 (XSS) **OWASP A03:2021** **技术深度:** - 反射型 XSS:输入反射、过滤器绕过 (编码、Polyglot、HTML 实体) - 存储型 XSS:持久化的数据库攻击载体、对管理面板的影响、蠕虫传播 - 基于 DOM 的 XSS:`document.write`、`innerHTML`、`eval`、`location.hash` 接收点 - 进阶技术:从 XSS 到 CSRF、从 XSS 到会话劫持、通过 `fetch` 从 XSS 进行内部端口扫描 - CSP 绕过:`unsafe-inline`、`unsafe-eval`、JSONP 端点、Script Gadgets、nonce 绕过 ``` // DOM-based XSS sink example — never pass user input to these document.write(location.hash); element.innerHTML = userInput; eval(userControlledData); ``` **实验:** PortSwigger "Cross-Site Scripting" (包含 DOM 和 CSP 绕过在内的全部 30 个实验) | Juice Shop #### 2.3.4 访问控制失效 **OWASP A01:2021 (第一名)** **技术深度:** - IDOR:连续 ID 操纵、GUID 预测、破解 ID 哈希 - 水平越权:在同一权限级别访问其他用户的数据 - 垂直越权:以普通用户身份访问管理功能 - 大规模赋值:参数污染以设置 `isAdmin=true`、`role=admin` - 路径遍历:`../` 序列、空字节注入、URL 编码绕过 - BOLA (对象级别授权失效):在 REST API 中占主导地位的特定于 API 的 IDOR - JWT `sub` 声明操纵以访问其他账户 **实验:** PortSwigger "Access Control" (全部 13 个实验) | OWASP crAPI | Juice Shop #### 2.3.5 安全配置不当与 XXE **OWASP A05:2021** **技术深度:** - XXE:文件读取、通过 XXE 实现 SSRF、利用带外交 exfiltration 的盲注 XXE、通过文件上传 (SVG、DOCX、XLSX) 实现的 XXE - SSRF:访问位于 `169.254.169.254` 的 AWS 元数据、通过重定向链和 DNS 重绑定绕过过滤器 - 安全配置不当:默认凭据、调试端点、堆栈跟踪暴露、目录列表 - 云资源配置不当:公开的 S3 存储桶、暴露的 Azure Blob 存储、GCP 存储桶 ACL - 缺少 HTTP 安全请求头:HSTS、X-Frame-Options、CORS、Referrer-Policy ``` ]> &xxe; ``` **实验:** PortSwigger "XXE Injection" (全部 9 个实验) | PortSwigger "SSRF" (全部 7 个实验) #### 2.3.6 加密失败 **OWASP A02:2021** **技术深度:** - 识别弱算法:MD5、SHA1、DES、ECB 模式 —— 为什么它们都被破解了 - Padding Oracle 攻击:CBC 模式解密、POODLE、BEAST - 哈希破解:彩虹表、加盐与未加盐哈希、bcrypt/argon2 中的开销因子 - TLS 错误配置:DROWN、ROBOT、BEAST、Heartbleed (CVE-2014-0160) - 数据暴露:日志中的明文密码、URL 参数中的个人身份信息 (PII)、未加密的数据库字段 - 不安全的随机数生成:可预测的会话 token、API 密钥 **实验:** CryptoHack (`cryptohack.org`) | PortSwigger "Cryptography" | Hashcat 练习 #### 2.3.7 高级 AppSec 主题 **技术深度:** - SSTI:Jinja2、Twig、Freemarker —— 识别模板引擎、RCE payload、沙箱逃逸 - 不安全的反序列化:Java gadget chains (ysoserial)、PHP 对象注入、Python pickle RCE - 竞态条件:金融交易中的 TOCTOU 漏洞、优惠券重用、限制绕过 - WebSocket 安全:劫持、注入、身份验证绕过 - GraphQL:内省滥用、批量查询 DoS、字段级授权绕过 - HTTP 请求走私:CL-TE、TE-CL 不同步、缓存中毒 - 原型链污染:JavaScript 客户端和服务器端 **实验:** PortSwigger "SSTI" (全部 7 个) | "Insecure Deserialization" (全部 10 个) | "HTTP Request Smuggling" (全部 22 个) ### 2.4 系统漏洞利用 **概念:** 漏洞研究、漏洞利用开发与后渗透 **技术深度:** - Metasploit Framework:架构 (模块、payload、处理程序)、编写自定义模块 - 手动漏洞利用:在不使用 Metasploit 的情况下使用和修改公开的 PoC 代码 - 缓冲区溢出 (32 位 Linux):栈布局、使用 `pattern_create` 查找偏移量、控制 EIP、ret2libc - Shellcode:Staged 与 Stageless payload 对比、NASM 基础 - 后渗透:Meterpreter、跳板 (`route`、`socks4a`)、端口转发、文件 exfiltration - 凭据获取:`hashdump`、Mimikatz (`sekurlsa::logonpasswords`、`lsadump::sam`)、LSASS 转储 - Linux 提权:SUID 滥用、sudo 配置不当、可写入的 `/etc/passwd`、cron 任务、PATH 劫持 - Windows 提权:未加引号的服务路径、Token 模拟、AlwaysInstallElevated、Potato 攻击 ``` # 寻找 SUID binaries 以进行 privilege escalation find / -perm -4000 -type f 2>/dev/null # Mimikatz credential dump(仅限 lab) sekurlsa::logonpasswords lsadump::sam ``` **实验:** TryHackMe "Buffer Overflow Prep" | HackTheBox "Lame"、"Legacy"、"Devel"、"Grandpa" | PWNCollege ### 2.5 Active Directory 攻击 **概念:** AD 枚举、凭据攻击与域控制 **技术深度:** - AD 枚举:BloodHound/SharpHound —— 基于图形的攻击路径分析、PowerView cmdlets - Kerberoasting:请求 SPN 的 TGS、离线提取和破解服务账户哈希 - ASREPRoasting:攻击禁用了预身份验证的账户 - Pass-the-Hash (PtH):无需破解直接重用 NTLM 哈希、SMBexec、WMIexec、PSexec - Pass-the-Ticket (PtT):使用 Mimikatz 注入 Kerberos TGT/TGS 票据 - 黄金票据:使用 KRBTGT 哈希伪造 TGT —— 域持久化 - DCSync:复制域控制器以在无需本地访问权限的情况下提取所有哈希 - ACL/ACE 滥用:WriteDACL、GenericAll、GenericWrite —— 滥用 AD 权限 ``` # 使用 Impacket 进行 Kerberoasting python3 GetUserSPNs.py domain.local/user:password -dc-ip 192.168.1.1 -request # ASREPRoasting python3 GetNPUsers.py domain.local/ -usersfile users.txt -no-pass ``` **实验:** 构建你自己的 AD 实验室 (Windows Server 2019 DC + 2x Windows 10 Pro) | HackTheBox "Active"、"Forest"、"Sauna"、"Resolute" ## 🛡️ 阶段 3:防御性工程 **持续时间:** 8 到 10 周 **目标:** 为阶段 2 的每一种攻击匹配相应的检测规则和防御控制。建立紫队思维。 ### 3.1 安全运营与 SIEM **概念:** 日志分析、SIEM 架构与检测工程 **关键 Windows 事件 ID:** | 事件 ID | 含义 | |---|---| | `4624` | 登录成功 | | `4625` | 登录失败 | | `4688` | 进程创建 | | `4776` | NTLM 身份验证 | | `4768/4769` | Kerberos TGT/TGS 请求 | | `7045` | 安装了新服务 | | `4698` | 创建了计划任务 | **技术深度:** - 日志源:Windows 事件日志、Linux `auth.log`/`syslog`、Web 服务器日志、DNS 日志、防火墙日志 - Sysmon:安装、配置、了解所有 30 种事件类型 (事件 ID 1:进程、3:网络、8:CreateRemoteThread、10:ProcessAccess) - SIEM 平台:Splunk (SPL)、Elastic Stack (ECS、KQL)、Microsoft Sentinel (KQL) - Sigma 规则格式 —— 将 Sigma 转换为特定于 SIEM 的查询语言 - 日志聚合管道:Beats → Logstash → Elasticsearch → Kibana - 警报分类:真阳性与假阳性、警报疲劳、优先级调优 ``` # Sigma rule 示例 — 检测 LSASS 访问(Mimikatz 指标) title: LSASS Memory Access status: experimental logsource: product: windows category: process_access detection: selection: TargetImage|endswith: '\lsass.exe' GrantedAccess: '0x1010' condition: selection ``` **实验:** TryHackMe "Splunk: Basics"、"Investigating with ELK 101"、"Sysmon" | HELK Project | Sigma GitHub ### 3.2 威胁狩猎 **概念:** 使用 MITRE ATT&CK 进行主动威胁狩猎 **需狩猎的关键 TTP:** | ATT&CK TTP | 信号 | 狩猎查询重点 | |---|---|---| | T1003 (凭据转储) | LSASS 访问、SAM 配置单元读取 | 对 lsass.exe 的 ProcessAccess | | T1059 (脚本执行) | PowerShell 调用、编码命令 | 编码的 `-enc` 参数 | | T1071 (C2 协议) | DNS、HTTP、HTTPS 中的信标活动 | 周期性的出站连接 | | T1021 (横向移动) | 异常的 SMB、WMI、PSexec 模式 | 网络登录事件 | | T1543 (系统进程) | 新服务、计划任务 | 事件 ID 7045、4698 | **实验:** ATT&CK Navigator | ThreatHunter-Playbook (GitHub) | Splunk BOTS (Boss of the SOC) | EVTX-ATTACK-SAMPLES ### 3.3 数字取证与事件响应 (DFIR) **概念:** 证据获取、取证分析与事件处理 **技术深度:** - 磁盘取证:证据保管链、`dd`/FTK Imager、Autopsy、MFT 分析、已删除文件恢复 - 内存取证:Volatility 3 —— `pslist`、`netscan`、`cmdline`、`malfind`、`dlllist` - 网络取证:在 Wireshark 中进行 PCAP 分析、使用 Zeek 进行网络日志记录 - 痕迹分析:Windows prefetch、shimcache、amcache、LNK 文件、浏览器历史记录 - 恶意软件分类:静态分析 (字符串、PE 头、VirusTotal)、动态分析 (any.run、Cuckoo) - IR 流程:PICERL 框架 (准备、识别、遏制、根除、恢复、经验教训) - 勒索软件 IR:隔离受感染系统、识别零号病人、证据保全 ``` # Volatility 3 — 检测 memory 中的 injected code python3 vol.py -f memory.dmp windows.malfind # 从 memory 中提取 network connections python3 vol.py -f memory.dmp windows.netscan ``` **工具栈:** `Autopsy` `Volatility 3` `Wireshark` `Eric Zimmerman Tools` `REMnux Linux` **实验:** TryHackMe "Volatility"、"Autopsy"、"Redline" | CyberDefenders | BlueTeamLabs Online ### 3.4 安全架构与加固 **概念:** 实施映射到 NIST 800-53 的纵深防御控制 **技术深度:** - 网络分段:VLANs、微分段、零信任网络架构 (ZTNA) - 端点加固:适用于 Windows/Linux 的 CIS Benchmarks - 应用加固:CSP、HSTS、X-Frame-Options、WAF 配置、代码级别的输入验证 - 身份加固:MFA、特权访问工作站、AD 分层模型 - 漏洞管理:CVE/CVSS 评分补丁优先级划分、从扫描到打补丁的 SLA - Secret 管理:HashiCorp Vault、AWS Secrets Manager —— 消除硬编码的凭据 - 容器安全:非 root 容器、只读文件系统、seccomp、Kubernetes RBAC、Trivy 扫描 **实验:** CIS Benchmarks (免费 PDF) | 带有 GuardDuty + CloudTrail 的 AWS 3 层应用 | HashiCorp Vault 本地安装 ## 🟣 阶段 4:紫队与高级专业化方向 **持续时间:** 8 到 10 周 **目标:** 将进攻性和防御性知识整合为统一的专业实践。 ### 4.1 紫队行动 **概念:** 映射 ATT&CK 的对手模拟与检测验证 **技术深度:** - 紫队方法论:协调的红/蓝对抗与非协调的红队 - Atomic Red Team:执行特定的 ATT&CK 技术测试、验证 SIEM 覆盖率 - VECTR:跟踪紫队演练、记录检测覆盖率 - 对手模拟:使用 ATT&CK 评估方法学模拟 APT29、FIN7 - 差距分析:ATT&CK Navigator 叠加 —— 已覆盖技术与未覆盖技术的对比 - 突破与攻击模拟 (BAS) 工具:Caldera、Prelude Operator - 构建紫队报告:执行摘要 + 技术证据 + 检测覆盖率指标 **实验:** Atomic Red Team (GitHub) | CALDERA (MITRE Engenuity) | VECTR (vectr.io) | TryHackMe "Purple Team" 学习路径 ### 4.2 云安全 **概念:** AWS/Azure 云攻击与防御 **技术深度:** - AWS 攻击:IAM 权限提升、S3 存储桶攻击、Lambda 滥用、EC2 元数据 SSRF (`169.254.169.254`)、CloudTrail 规避 - Azure 攻击:密码喷洒、Token 窃取、PRT 窃取、托管身份滥用 - 云 IAM:最小权限原则、跨账户角色 - 云取证:CloudTrail 分析、S3 访问日志、VPC Flow Logs - Kubernetes 攻击:RBAC 配置错误、服务账户 token 窃取、容器逃逸、etcd 访问 **实验:** CloudGoat (Rhino Security Labs) | flaws.cloud | flaws2.cloud | CONVEX (Azure) | PMapper ### 4.3 安全代码审查 **概念:** 手动与自动化源代码安全分析 **需要识别的危险函数模式:** ``` # Python — 危险 functions eval(user_input) exec(user_input) os.system(user_input) subprocess.call(user_input, shell=True) pickle.loads(user_data) # Deserialization RCE ``` ``` // JavaScript — dangerous sinks element.innerHTML = userInput; // XSS document.write(userInput); // XSS eval(userInput); // Code injection ``` **技术深度:** - SAST 工具:Semgrep (编写自定义规则)、Bandit (Python)、SonarQube、CodeQL - 依赖扫描:OWASP Dependency-Check、Snyk、`npm audit` - Secret 扫描:TruffleHog、GitLeaks —— 在代码仓库中寻找暴露的 secret - 威胁建模:STRIDE、PASTA、攻击树 —— 在设计阶段对威胁进行建模 - DAST 集成:在 CI/CD 管道中使用 OWASP ZAP、Burp Suite Enterprise **实验:** Semgrep playground | OWASP Code Review Guide (免费 PDF) | 在利用之前对 DVWA 源代码进行审查 ### 4.4 API 安全 **概念:** REST 与 GraphQL API 安全测试 —— OWASP API Top 10 (2023) | OWASP API 风险 | 描述 | |---|---| | API1: BOLA | 对象级别授权失效 —— 访问其他用户的对象 | | API2: 身份验证失效 | API 密钥管理薄弱、JWT 缺陷 | | API3: 对象属性级别授权失效 | 大规模赋值、过度数据暴露 | | API4: 无限制的资源消耗 | 无速率限制、通过过量查询造成 DoS | | API5: BFLA | 功能级别授权失效 —— 水平越权 | | API6: 无限制的敏感业务流程 | 绕过预期的业务逻辑限制 | | API7: SSRF | 通过 API 参数实现的服务器端请求伪造 | | API8: 安全配置不当 | 默认配置、暴露的 Swagger/GraphQL 内省 | | API9: 不当的资产管理 | 影子 API、未记录的端点 | | API10: 不安全的 API 消费 | 未经验证即信任第三方 API 响应 | **实验:** OWASP crAPI (Docker) | DVWS | vAPI (GitHub: roottusk/vapi) | TryHackMe "OWASP API Security Top 10" ## 📜 阶段 5:认证、作品集与求职准备 **持续时间:** 4 到 6 周的积极准备 (与阶段 3 和 4 并行进行) ### 认证路线图 | 认证 | 侧重点 | 优先级 | 提供方 | |---|---|---|---| | `eJPT` | 初级渗透测试 | 从这里开始 | eLearn Security | | `CompTIA Security+` | 广泛的安全基础知识 / HR 筛选 | 早期阶段 | CompTIA | | `PNPT` | 实用网络渗透测试 | 中级 | TCM Security | | `eWPTXv2` | Web 应用渗透测试专家 | AppSec 专家 | eLearn Security | | `OSCP` | 进攻性安全认证专家 | 行业黄金标准 | Offensive Security | | `CRTO` | 认证红队操作员 | Active Directory / C2 | Zero-Point Security | | `GWEB` | GIAC Web 应用渗透测试员 | AppSec + 蓝队 | SANS | | `AWS Security Specialty` | 云安全 | 云方向 | AWS | **按目标划分的推荐路径:** - **AppSec Engineer:** Security+ → eWPTXv2 → GWEB → OSCP - **红队:** eJPT → PNPT → CRTO → OSCP - **紫队 / 检测:** Security+ → BTL1 → CRTO → OSCP - **云安全:** AWS SAA → AWS Security Specialty → OSCP ### 作品集 —— 真正能让你被录用的东西 | 作品集项目 | 构建什么 | |---|---| | **Bug Bounty 报告** | HackerOne 或 Bugcrowd 的提交。记录每一个发现,包括未被接受的发现。 | | **CVE 研究** | 在开源项目中找到一个漏洞。进行负责任的披露,获得 CVE 编号。 | | **GitHub: 自定义安全工具** | 自动化的子域名侦察管道、SSRF 扫描器或用 Python 编写的 JWT 审计工具。 | | **GitHub: 检测规则** | 映射到 ATT&CK 技术并带有测试用例的 Sigma 规则。 | | **技术博客** | 10 篇深度文章。每篇文章都将一种攻击从漏洞利用解释到检测。 | | **实验室文档** | 记录你的 AD 实验室设置、运行的攻击以及编写的 SIEM 查询。包含截图和配置。 | | **HTB/THM 档案** | 在 HackTheBox 上达到 Pro Hacker 等级。在 TryHackMe 上位列前 10%。 | ### 面试准备 **AppSec 面试:** - “请带我走一遍从发现到数据提取的盲注 SQLi 攻击流程” - “Padding Oracle 攻击在数学上是如何运作的?” - “BOLA 和 BFLA 之间有什么区别?” - “你将如何测试 OAuth 2.0 实现的安全性?” **基础设施 / 红队面试:** - “从 Windows 身份验证协议的角度解释 Kerberoasting” - “你在 Linux 机器上拥有一个低权限 shell。请向我介绍你的提权方法” - “DCSync 是如何工作的?它需要哪些 AD 权限?” **蓝队 / 检测面试:** - “你会针对 Pass-the-Hash 攻击对哪些 Windows 事件 ID 发出警报?” - “你将如何在你的 SIEM 中检测 Kerberoasting?” - “编写一个用于检测 LSASS 内存转储的 Sigma 规则” ## 🔁 阶段 6:持续发展 **持续时间:** 持续进行。这个阶段永远不会结束。 ### 保持前沿 | 资源 | 频率 | |---|---| | NVD/CVE 数据库 | 每周审查高严重性/严重 CVE | | MITRE ATT&CK 更新 | 每年两次的主要版本 —— 审查所有新增内容 | | SANS Internet Stormcast | 每日 5 分钟播客 | | PortSwigger Research Blog | 最佳的 AppSec 研究出版物 | | Project Zero Blog | 高级零日研究 | | BleepingComputer / The Hacker News | 每日的数据泄露和漏洞新闻 | **社区:** Discord (TryHackMe、HackTheBox、TCM Security、NahamSec) | Reddit (`r/netsec`、`r/netsecstudents`、`r/blueteamsec`) ### 高级研究方向 (达到职场要求后 —— 选择一个) | 方向 | 核心技能 | 工具 | |---|---|---| | 漏洞利用开发 | 二进制漏洞利用、内核漏洞、浏览器漏洞 | pwndbg, ROPgadget, angr, IDA Pro/Ghidra | | 恶意软件分析 / 逆向工程 | 静态/动态分析、脱壳、去混淆 | x64dbg, IDA Pro, FLARE VM, Ghidra | | 云原生安全 | AWS/Azure 内部机制、无服务器、CSPM | Pacu, ScoutSuite, Prowler | | 移动 AppSec | Android/iOS 分析、Frida、流量拦截 | Frida, Objection, Apktool, jadx | | 红队基础设施 | C2 框架、可变配置文件、检测规避 | Cobalt Strike, Havoc C2, Sliver | | 检测工程 | SIEM 工程、自定义检测逻辑、威胁狩猎 | Elastic, Sentinel, Splunk ES | ## 🧪 漏洞实验环境 | 环境 | 类型 | 安装方法 | 侧重点 | |---|---|---|---| | Metasploitable 2 | Linux 虚拟机 | 下载 OVA | 网络服务漏洞利用 | | Metasploitable 3 | Windows 虚拟机 | Vagrant | Windows 漏洞利用、Web 应用 | | DVWA | Web 应用 | Docker / XAMPP | OWASP Top 10 基础 | | Juice Shop (OWASP) | Web 应用 | `docker run -d -p 3000:3000 bkimminich/juice-shop` | 完整的 OWASP Top 10 + API | | WebGoat (OWASP) | Web 应用 | Docker | 引导式 AppSec 训练 | | Windows 7 SP1 (x86) | 虚拟机 | 手动安装 | 传统漏洞利用、EternalBlue | | Windows Server 2019 | 虚拟机 | 微软评估版下载 | AD 攻击 | | crAPI | API | Docker Compose | API 安全 | | CloudGoat | AWS | Terraform | 云攻击与防御 | | VulnHub 靶机 | 各种虚拟机 | vulnhub.com | 多样化的目标 | ## ⏱️ 90 天快速启动计划 | 周 | 侧重点 | 每日时间 | |---|---|---| | 1 到 2 | 阶段 1:网络 + Linux (完成 OTW Bandit) | 2 到 3 小时 | | 3 到 4 | 阶段 1:Windows 内部机制 + Python 脚本编写 | 2 到 3 小时 | | 5 到 6 | 阶段 2:侦察 + 网络攻击 (Metasploitable 2) | 3 小时 | | 7 到 9 | 阶段 2:Web AppSec —— SQLi、XSS、Auth (PortSwigger + Juice Shop) | 3 到 4 小时 | | 10 到 11 | 阶段 2:系统漏洞利用 (Metasploitable 3 + Windows 7) | 3 到 4 小时 | | 12 | 阶段 2:Active Directory 攻击 (家庭 AD 实验室) | 4 小时 | | 13 到 14 | 阶段 3:ELK 设置、日志分析、编写检测规则 | 3 小时 | | 15 到 16 | 阶段 3:DFIR (对挑战镜像使用 Volatility + Autopsy) | 3 小时 | | 17 到 18 | 阶段 4:紫队演练 (在实验室中进行 Atomic Red Team) | 3 到 4 小时 | ## 🔗 其他资源 - 📺 **观看系列视频:** [乌尔都语/印地语网络安全深度探索](https://www.youtube.com/@MuhammadAqibTayyab) - 🛡️上一模块:** [OSI 模型:网络架构与安全深度剖析](https://github.com/AqibTayyab/OSI-Model-Security-Deep-Dive) - 🌐 **上一模块:** [TCP 与 UDP:协议深度剖析](https://github.com/AqibTayyab/TCP-UDP-Protocol-Deep-Dive) - 💼 **联系:** [LinkedIn: Muhammad Aqib Tayyab](https://www.linkedin.com/in/muhammad-aqib-tayyab-ethical-hacker/) ## 🙋‍♂️ 作者 **Muhammad Aqib Tayyab** — AppSec 与紫队学生 | 认证道德黑客 | Bug Bounty 猎人 我是一名 **巴基斯坦 NUML 大学 BS-IT 专业** 的本科生,秉持 *"公开学习"* 的理念,记录我的网络安全技术之旅,并为社区构建高质量、易于获取的资源。 [![LinkedIn](https://img.shields.io/badge/LinkedIn-Muhammad_Aqib_Tayyab-0077B5?style=for-the-badge&logo=linkedin)](https://www.linkedin.com/in/muhammad-aqib-tayyab-ethical-hacker/) [![YouTube](https://img.shields.io/badge/YouTube-@MuhammadAqibTayyab-FF0000?style=for-the-badge&logo=youtube)](https://www.youtube.com/@MuhammadAqibTayyab) [![GitHub](https://img.shields.io/badge/GitHub-AqibTayyab-181717?style=for-the-badge&logo=github)](https://github.com/AqibTayyab) `#Cybersecurity` `#SecurityEngineer` `#AppSec` `#PurpleTeam` `#EthicalHacking` `#OWASP` `#MitreAttack` `#PenetrationTesting` `#LearningInPublic` `#Pakistan` `#NUML`
标签:Active Directory攻击, AI合规, API接口, Beacon Object File, CISA项目, Cloudflare, CSV导出, CTI, DNS 反向解析, DNS 解析, GitHub, Go语言工具, IP 地址批量处理, MITRE ATT&CK, MIT许可证, Modbus, Mr. Robot, NIST 800-53, PE 加载器, SANS, StruQ, Web报告查看器, Windows内部机制, XXE攻击, 域名收集, 多线程, 子域名变形, 学习路线图, 安全培训, 安全工程师, 安全架构, 安全运营, 实时处理, 密码管理, 库, 应急响应, 应用安全, 开源软件, 扫描框架, 插件系统, 搜索语句(dork), 数字取证, 数据包嗅探, 数据泄露, 无线安全, 模拟器, 流量嗅探, 漏洞利用检测, 知识库安全, 紫队, 编程安全, 网络信息收集, 网络安全基础, 网络安全审计, 网络安全工程师, 网络欺骗, 职业规划, 自动化脚本, 误配置预防, 请求拦截, 足迹分析, 进攻性安全, 逆向工具, 配置审计, 防御性工程, 防御绕过, 零基础转行