如果无法将全世界的理论转化为实践,并将我们的知识应用于现实世界的实际操作情境中,那么所有这些理论对我们都毫无用处。频繁运用我们在渗透测试工程师学习路径中学到的战术、技术和程序(TTPs),是我们保持技能娴熟的最佳方法,并能确保当需要在客户环境中实际运用这些技能时,我们对自己及自身行为可能产生的影响充满信心。然而,技术技能只是成功的一半。我们还需要出…
与项目正式启动前(测试开始前)需要进行大量准备工作类似,在我们的扫描、利用、横向移动和后渗透活动完成后,我们也必须执行许多活动(其中许多具有合同约束力)。没有两次评估是完全相同的,因此这些活动可能略有差异,但通常必须执行这些活动才能完全结束一次评估。 渗透测试流程包括:前期交互(Pre-Engagement)、信息收集(Information Ga…

概念验证 (Proof-of-Concept)

概念验证(Proof of Concept, PoC)或原理证明(Proof of Principle)是一个项目管理术语。在项目管理中,它用于证明某个项目在原则上是可行的。判断标准可以基于技术或商业因素。因此,它是后续工作的基础,就我们而言,即通过确认已发现的漏洞来保护企业网络所需采取的步骤。换句话说,它作为决定后续行动方向的决策基础。同时,它能…

横向移动 (Lateral Movement)

如果一切顺利,我们成功利用(Exploitation)并渗透进企业网络,收集了本地存储的信息并提升了权限(后渗透,Post-Exploitation),接下来我们就进入了横向移动(Lateral Movement)阶段。此阶段的目标是测试攻击者在整个网络内部能够采取哪些行动。毕竟,主要目标不仅仅是成功利用一个公开系统,还要获取敏感数据,或者找出攻击…

后渗透(Post-Exploitation)
利用

假设我们在利用(Exploitation)阶段成功利用了目标系统。与利用阶段一样,在后渗透阶段,我们必须再次考虑是否使用规避性测试(Evasive Testing)。在后渗透阶段,我们已经身处系统内部,这使得避免触发警报变得困难得多。后渗透阶段的目标是从本地视角获取敏感和安全相关信息,以及业务相关信息,在大多数情况下,这需要比标准用户更高的权限。此…
在利用阶段,我们寻找如何将这些弱点调整以适应我们的用例,以达到预期目标(例如,获取初始立足点、提升权限等)。如果我们想获得一个反向shell,我们需要修改漏洞验证概念代码(PoC)来执行代码,以便目标系统通过加密连接(理想情况下)回连到我们指定的IP地址。因此,漏洞利用程序的准备主要是利用阶段的一部分。 渗透测试流程:前期交互、信息收集、漏洞评估、…

漏洞评估

在漏洞评估阶段,我们检查并分析信息收集阶段所搜集的信息。漏洞评估阶段是一个基于发现结果的分析性过程。 渗透测试流程:前期交互、信息收集、漏洞评估、渗透攻击、后渗透攻击、横向移动、概念验证、后期交互。 分析是对某个事件或过程的详细检查,描述其起源和影响,并说明在特定预防措施和行动的帮助下,可以触发该事件或过程以支持或预防其未来发生。 任何分析都可能非…

信息收集

前期交互阶段完成后,各方已签署所有合同条款与条件,信息收集阶段随即开始。信息收集是任何安全评估的重要组成部分。在此阶段,我们收集关于公司、其员工、基础设施以及其组织方式的所有可用信息。信息收集是整个渗透测试过程中最频繁且至关重要的阶段,我们会反复进行此项工作。 渗透测试流程包括:前期交互、信息收集、漏洞评估、渗透攻击、后渗透攻击、横向移动、概念验证…

前期交互

前期交互是为实际渗透测试做准备的阶段。在此阶段,双方会提出诸多问题并达成一些合同协议。客户告知我们他们希望测试的内容,我们则详细说明如何使测试尽可能高效。 渗透测试流程:前期交互、信息收集、漏洞评估、渗透攻击、后渗透攻击、横向移动、概念验证、后期交互。 整个前期交互过程包含三个基本组成部分: 范围界定问卷 前期交互会议 启动会议 在详细讨论任何一项…

渗透测试流程
在社会科学中,流程被视为一系列有方向的事件序列的术语。在运营和组织语境中,流程更精确地被称为工作流程、业务流程、生产流程或价值创造流程。在计算机系统中,流程也是运行程序的别称,这些程序通常是系统软件的一部分。 区分确定性流程和随机性流程也至关重要。确定性流程是指每个状态都因果依赖于并由先前的状态和事件所决定的流程。而随机性流程则是指一个状态仅以某种…
