前期交互

前期交互是为实际渗透测试做准备的阶段。在此阶段,双方会提出诸多问题并达成一些合同协议。客户告知我们他们希望测试的内容,我们则详细说明如何使测试尽可能高效。

渗透测试流程:前期交互、信息收集、漏洞评估、渗透攻击、后渗透攻击、横向移动、概念验证、后期交互。

0-PT-Process-PRE

整个前期交互过程包含三个基本组成部分:

  • 范围界定问卷
  • 前期交互会议
  • 启动会议

在详细讨论任何一项之前,所有相关方必须签署保密协议。NDA 有几种类型:

类型描述
单边 NDA此类 NDA 仅约束一方承担保密义务,并允许另一方与第三方共享所接收的信息。
双边 NDA在此类型中,双方均有义务对由此产生及获取的信息保密。这是最常见的保护渗透测试人员工作的 NDA 类型。
多方 NDA多方 NDA 是指超过两方的保密承诺。如果我们要为一个合作网络进行渗透测试,则所有相关方和责任方都必须签署此文件。

在紧急情况下也可有例外,例如我们直接跳入启动会议,该会议也可通过在线会议进行。必须了解公司内部谁有权与我们签订渗透测试合同。因为我们不能接受所有人的订单。

以下是可能有权聘请我们进行渗透测试的公司成员示例列表(非详尽)。这可能因公司而异,在大型组织中,C 级别高管可能不直接参与,责任可能落在 IT、审计或 IT 安全高级管理层等身上。

  • 首席执行官
  • 首席技术官
  • 首席信息安全官
  • 首席安全官
  • 首席风险官
  • 首席信息官
  • 内部审计副总裁
  • 审计经理
  • IT/信息安全副总裁或总监

在此过程早期确定谁拥有合同和交战规则文件的签署权至关重要,同时还要确定谁是问题升级的主要联系人、次要联系人、技术支持人员和联系人。

此阶段还需要在渗透测试执行前准备若干文件,这些文件必须由客户和我们共同签署,以便在需要时能够出示书面形式的同意声明。否则渗透测试可能违反《计算机滥用法》。这些文件包括但不限于:

文档创建时机
1. 保密协议初次接触后
2. 范围界定问卷前期交互会议前
3. 范围界定文件前期交互会议期间
4. 渗透测试提案(合同/工作范围)前期交互会议期间
5. 交战规则启动会议前
6. 承包商协议(物理评估)启动会议前
7. 报告渗透测试期间及之后

注:我们的客户可能会提供单独的范围界定文件,其中列出范围内的 IP 地址/范围/URL 以及任何必要的凭证,但这些信息也应作为附录记录在 RoE 文件中。

重要提示:

这些文件在准备完毕后应由律师审阅和调整。

范围界定问卷

与客户初步接触后,我们通常会向他们发送一份范围界定问卷,以更好地了解他们寻求的服务。此问卷应清晰解释我们的服务,通常可能要求他们从以下列表中选择一项或多项:

  • ☐ 内部漏洞评估
  • ☐ 外部漏洞评估
  • ☐ 内部渗透测试
  • ☐ 外部渗透测试
  • ☐ 无线安全评估
  • ☐ 应用安全评估
  • ☐ 物理安全评估
  • ☐ 社会工程学评估
  • ☐ 红队评估
  • ☐ Web 应用安全评估

对于每一项,问卷应允许客户更具体地说明所需的评估。他们需要的是 Web 应用还是移动应用评估?安全代码审查?内部渗透测试是否应为黑盒且半规避的?他们是否只想要社会工程学评估中的网络钓鱼评估,还是也包括语音钓鱼电话?这是我们解释服务深度和广度的机会,确保我们理解客户的需求和期望,并确保我们能够充分交付他们所需的评估。

除了评估类型、客户名称、地址和关键人员联系信息外,其他一些关键信息包括:

  • 预计有多少存活主机?
  • 范围内有多少 IP/CIDR 范围?
  • 范围内有多少域名/子域名?
  • 范围内有多少无线 SSID?
  • 有多少 Web/移动应用程序?如果测试需要认证,有多少种角色(标准用户、管理员等)?
  • 对于网络钓鱼评估,将针对多少用户?是客户提供列表,还是需要我们通过 OSINT 收集?
  • 如果客户要求物理评估,有多少个地点?如果多个站点在范围内,它们是否地理分散?
  • 红队评估的目标是什么?是否有任何活动(如网络钓鱼或物理安全攻击)超出范围?
  • 是否需要单独的 Active Directory 安全评估?
  • 网络测试是从网络上的匿名用户还是标准域用户进行?
  • 我们需要绕过网络访问控制吗?

最后,我们需要询问信息披露和规避性(如果适用于评估类型):

  • 渗透测试是黑盒(不提供信息)、灰盒(仅提供 IP 地址/CIDR 范围/URL)还是白盒(提供详细信息)?
  • 他们希望我们以非规避、混合规避(开始时安静,逐渐“喧闹”以评估客户安全人员检测到我们活动的水平)还是完全规避的方式进行测试?

这些信息将有助于我们确保分配正确的资源并根据客户的期望交付项目。这些信息对于提供准确的项目时间线(例如,漏洞评估将比红队评估花费少得多的时间)和成本(针对 10 个 IP 的外部渗透测试成本将远低于具有 30 个 /24 网络的内部渗透测试)的提案也是必要的。

基于从范围界定问卷获得的信息,我们创建概览并在范围界定文件中总结所有信息。

前期交互会议

一旦我们对客户的项目需求有了初步了解,我们就可以进行前期交互会议。此次会议与客户讨论渗透测试前所有相关和必要的组件,并向客户解释。我们在本阶段收集的信息,连同从范围界定问卷收集的数据,将作为渗透测试提案(也称为合同或工作范围)的输入。我们可以将整个过程视为一次去看医生,了解计划中的检查。此阶段通常通过电子邮件以及在线电话会议或面对面会议进行。

注:在我们的职业生涯中,可能会遇到正在经历首次渗透测试的客户,或者直接客户对接人不熟悉该过程。在前期交互会议中部分或逐步审查范围界定问卷并不罕见。

合同 – 检查清单

检查点描述
NDA保密协议是指客户与承包商之间关于订单/项目所有书面或口头信息的保密合同。承包商同意将所有接触到的机密信息视为严格保密,即使在订单/项目完成后也是如此。此外,保密性的任何例外、权利和义务的可转让性以及合同处罚应在协议中规定。NDA 应在启动会议前签署,最晚在会议期间详细讨论任何信息之前签署。
目标目标是在订单/项目期间必须实现的里程碑。在此过程中,目标设定从重大目标开始,逐步细化到小目标。
范围讨论并定义要测试的各个组件。这些可能包括域、IP 范围、单个主机、特定账户、安全系统等。我们的客户可能期望我们自己找出一些点。然而,测试各个组件的法律依据在此具有最高优先级。
渗透测试类型在选择渗透测试类型时,我们展示各个选项并解释优缺点。由于我们已经了解客户的目标和范围,我们也可以并且应该就我们建议的内容提出推荐,并相应说明理由。最终使用哪种类型由客户决定。
方法论示例:OSSTMM, OWASP, 内部和外部网络组件的自动化和手动未认证分析,网络组件和 Web 应用的漏洞评估,漏洞威胁向量化,验证和利用,以及便于规避技术的漏洞利用开发。
渗透测试地点外部:远程(通过安全 VPN)和/或 内部:内部或远程(通过安全 VPN)
时间估算对于时间估算,我们需要渗透测试的开始和结束日期。这提供了一个精确的时间窗口来执行测试,并帮助我们规划流程。明确确定攻击每个阶段(如利用、后利用和横向移动)的时间窗口持续时间也至关重要。这些可以在正常工作时间内或之外进行。在正常工作时间之外测试时,重点更多地放在应能抵御我们攻击的安全解决方案和系统上。
第三方对于第三方,必须确定客户通过哪些第三方提供商获取服务。这些可能是云提供商、ISP 和其他托管提供商。我们的客户必须获得这些提供商的书面同意,说明他们同意并知悉其服务的某些部分将受到模拟黑客攻击。强烈建议要求承包商将第三方许可转发给我们,以便我们实际确认已获得该许可。
规避测试规避测试是对规避和通过客户基础设施中的安全流量和安全系统的测试。我们寻找能让我们了解内部组件信息并攻击它们的技术。这取决于我们的承包商是否希望我们使用此类技术。
风险我们还必须告知客户测试所涉及的风险及可能后果。基于风险及其潜在严重性,我们可以共同设定限制并采取某些预防措施。
范围限制与约束确定哪些服务器、工作站或其他网络组件对客户及其客户的正常运作至关重要也至关重要。我们必须避免影响这些组件,并且不得进一步影响它们,因为这可能导致严重的技术错误,从而可能影响客户在生产中的客户。
信息处理HIPAA, PCI, HITRUST, FISMA/NIST 等。
联系信息对于联系信息,我们需要创建包含每个人姓名、职位、工作职务、电子邮件地址、电话号码、办公室电话号码以及升级优先级顺序的列表。
沟通渠道应记录用于客户与我们之间交换信息的通信渠道。这可能涉及电子邮件通信、电话或面对面会议。
报告除了报告结构外,还需讨论报告应包含的任何客户特定要求。此外,我们澄清报告将如何呈现,以及是否需要进行结果演示。
付款条款最后,解释价格和付款条件。

本次会议最关键的元素是向客户详细介绍渗透测试及其重点。正如我们所知,每个基础设施在很大程度上都是独特的,每个客户都有其特别重视的特定偏好。找出这些优先级是本次会议的重要组成部分。

我们可以将其视为在餐厅点餐。如果我们想要一份三分熟的牛排,而厨师因为他认为全熟更好而给了我们一份全熟的,那将不是我们所希望的。因此,我们应该优先考虑客户的意愿,并按照他们点餐的方式上菜。

基于合同检查清单和在范围界定中共享的输入信息,创建渗透测试提案(合同)和相关的交战规则

交战规则 – 检查清单

检查点内容
引言本文档描述。
承包商公司名称、承包商全名、职位。
渗透测试员公司名称、渗透测试员全名。
联系信息所有客户方和渗透测试员的邮寄地址、电子邮件地址和电话号码。
目的描述执行渗透测试的目的。
目标描述渗透测试应实现的目标。
范围所有 IP、域名、URL 或 CIDR 范围。
沟通渠道在线会议、电话、面对面会议或电子邮件。
时间估算开始和结束日期。
每日测试时间一天中进行测试的时间。
渗透测试类型外部/内部渗透测试/漏洞评估/社会工程学。
渗透测试地点描述如何建立与客户网络的连接。
方法论OSSTMM, PTES, OWASP 等。
目标/标志用户、特定文件、特定信息等。
证据处理加密、安全协议。
系统备份配置文件、数据库等。
信息处理强数据加密。
事件处理与报告联系人情况、渗透测试中断、报告类型。
状态会议会议频率、日期、时间、参与方。
报告类型、目标读者、重点。
复测开始和结束日期。
免责声明与责任限制系统损坏、数据丢失。
测试许可已签署的合同、承包商协议。

启动会议

启动会议通常在约定时间、在所有合同文件签署后当面进行。会议通常包括客户对接人(来自内部审计、信息安全、IT、治理与风险等,取决于客户)、客户技术支持人员(开发人员、系统管理员、网络工程师等)以及渗透测试团队(管理层人员(如实践负责人)、实际渗透测试员,有时还有项目经理甚至销售客户主管或类似角色)。我们将讨论渗透测试的性质及其进行方式。通常,不会进行拒绝服务测试。我们还会说明,如果发现关键漏洞,将暂停渗透测试活动,生成漏洞通知报告,并联系紧急联系人。通常,这些报告仅在为关键漏洞(如未认证远程代码执行、SQL 注入或其他导致敏感数据披露的漏洞)进行外部渗透测试时生成。此通知的目的是让客户能够内部评估风险,并确定问题是否需要紧急修复。通常,我们只会在内部渗透测试中停止测试并提醒客户,如果系统无响应、我们发现非法活动证据(如文件共享上的非法内容)或网络中存在外部威胁行为者或先前入侵的迹象。

我们还必须告知客户渗透测试期间的潜在风险。例如,我们应提及渗透测试可能会在其安全应用程序中留下大量日志条目和警报。此外,如果使用暴力破解或任何类似攻击,也值得提及我们可能会意外锁定在渗透测试中发现的一些用户。我们还必须告知客户,如果渗透测试对其网络产生负面影响,他们必须立即联系我们。

解释渗透测试过程能让所有参与者清楚了解我们的整个流程。这展示了我们的专业方法,并使提问者相信我们清楚自己在做什么。因为除了技术人员、CTO 和 CISO 之外,这对非技术专业人士来说听起来像某种魔法,非常难以理解。因此,我们必须注意听众,针对技术经验最浅的提问者,以便与我们交谈的每个人都能理解我们的方法。

所有与测试相关的要点都需要讨论和澄清。精确响应客户/客户的愿望和期望至关重要。每个公司结构和网络都不同,需要调整方法。每个客户都有不同的目标,我们应根据他们的意愿调整测试。我们通常可以在通话早期看出客户在经历渗透测试方面的经验丰富程度,因此我们可能不得不将重点转向更详细地解释事情,并准备回答更多问题,或者启动通话可能非常快速和直接。

承包商协议

如果渗透测试还包括物理测试,则需要额外的承包商协议。因为这不仅是虚拟环境,还涉及物理入侵,此处适用完全不同的法律。也可能有许多员工未被告知测试。假设我们在物理攻击和社会工程学尝试中遇到安全意识非常高的员工,并被抓住。在那种情况下,员工在大多数情况下会联系警方。这种额外的承包商协议在这种情况下是我们的“免死金牌”。

承包商协议 – 物理评估检查清单

  • ☐ 引言
  • ☐ 承包商
  • ☐ 目的
  • ☐ 目标
  • ☐ 渗透测试员
  • ☐ 联系信息
  • ☐ 物理地址
  • ☐ 建筑名称
  • ☐ 楼层
  • ☐ 物理房间标识
  • ☐ 物理组件
  • ☐ 时间线
  • ☐ 公证
  • ☐ 测试许可

设置

在完成以上所有要点并获取必要信息后,我们规划我们的方法并准备一切。我们会发现渗透测试的结果仍是未知的,但我们可以为所有场景和情况准备我们的虚拟机、VPS 和其他工具/系统。关于如何准备这些系统的更多信息可以在“设置”模块中找到。

问题
回答以下问题以完成本节并赚取积分!
渗透测试总共需要准备多少份文件?

答案:

此处内容需要输入密码才查看
仅限华巅网安兴趣小组成员获取密码查看。

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇