Appearance
了解PT
什么是PT
渗透测试(Penetration Testing)是一种“受控的攻击性安全测试”。它不是为了搞破坏,而是站在攻击者视角,验证系统在现实攻击下到底能不能被打穿
渗透测试 = 在授权前提下,模拟真实攻击者,对系统进行系统化入侵尝试,以发现可被实际利用的安全风险。 渗透测试可以分为三种类型:
- 白盒渗透测试(White Box Penetration Testing)
- 黑盒渗透测试(Black Box Penetration Testing)
- 灰盒渗透测试(Gray Box Penetration Testing)
渗透测试的流程
渗透测试的流程不是“找洞”,而是“构造并验证一条可落地的攻击路径”。
- 目标明确
- 信息收集
- 漏洞探测
- 漏洞验证
- 信息分析
- 获取所需
- 信息整理
- 形成报告
渗透测试工具
Nmap 工具
目标:快速扫描网络、端口、服务、操作系统等信息
擅长:
- 端口扫描
- 服务扫描
- 操作系统扫描
- 版本扫描
- 脚本扫描
- 网络拓扑图
- 网络爬虫
- 网络指纹识别
- 网络欺骗
- 网络嗅探
Metasploit 工具(MSF)
目标:快速验证漏洞是否可被利用(Exploit 验证平台)
擅长:
- 漏洞利用 PoC / EXP 执行
- 获取初始 Shell / Session
- 快速复现已知漏洞风险
MSF框架由多个模块组成
- Auxiliaries(辅助模块)
该模块不会直接在测试者和目标主机之间建立访问,它们只负责执行扫描、嗅探、指纹识别等相关功能以辅助渗透测试。 - Encoders(编码模块)
对 payload 进行编码,以防止被杀毒软件、防火墙、IDS及类似的安全软件检测出来 - Exploits(漏洞利用模块)
漏洞利用是指由渗透测试者利用一个系统、应用或者服务中的安全漏洞进行的攻击行为。流行的渗透攻击技术包括缓冲区溢出、Web应用程序攻击,以及利用配置错误等,其中包含攻击者或测试人员针对系统中的漏洞而设计的各种POC验证程序,用于破坏系统安全性的攻击代码,每个漏洞都有相应的攻击代码。 - Nops(NOP 指令模块)
用于生成 NOP sled(无操作指令序列)。 主要服务于内存破坏类漏洞(如栈溢出)。 现代场景中使用变少,但它是 MSF 低层攻击模型的一部分 - Payloads(载荷模块)
攻击载荷是我们期望目标系统在被渗透攻击之后完成实际攻击功能的代码,成功渗透目标后,用于在目标系统上运行任意命令或者执行特定代码,在Metasploit框架中可以自由地选择、传送和植入。攻击载荷也可能是简单地在目标操作系统上执行一些命令,如添加用户账号等。 - Post(后渗透模块)
该模块主要用于在取得目标系统远程控制权后,进行一系列的后渗透攻击动作,如获取敏感信息、实施跳板攻击等 - Stagers(引导模块)
这是“分段投递器”。 当 payload 很大、网络条件受限时,先投一个小的 stager, 它只负责一件事: 把真正的 payload 拉下来并执行。 你可以把它理解为“第一阶段 loader” - Evasion(逃逸模块)
用于绕过杀软、EDR、行为检测等防护机制
Cobalt Strike工具(CS)
目标:高级持续威胁模拟和渗透测试
擅长:
- 持续性后门植入
- 内网横向移动
- 高级 EVADE 技术
- 模拟真实攻击场景
工具对比
MSF 关心“能不能打进去”,CS 关心“打进去以后怎么活下来、怎么扩散”。 如果把它们放进完整渗透流程:
- 前期漏洞利用:Metasploit 更合适
- 中后期内网控制:Cobalt Strike 更强
例如:用 Metasploit 拿初始权限 → 把控制权交给 Cobalt Strike
名词解释
持续更新中...
| 名词 | 语义 | 解释 |
|---|---|---|
| Proof of Concept(POC) | 概念验证代码 | 证明某个漏洞"确实存在、理论成立" |
| Exploit(EXP) | 漏洞利用程序 | 稳定触发漏洞,获取明确结果(Shell、权限、数据) |
| PAYLOAD | 真正"干活"的部分 | 反弹 Shell、执行命令、上传下载文件 |
| EVADE | 绕过检测 | 绕过防火墙、IDS、WAF、安全网关、安全设备 |
| 0day / 1day | 未公开 / 已公开 | 漏洞是否公开 |
| RCE | 远程命令执行 | 通过网络访问服务器,执行任意命令 |
| LPE | 本地权限提升 | 通过本地服务器,执行任意命令 |
| EoP | 提权 | 通过本地服务器,获取管理员权限 |