IT 基础设施安全评估需要回答一个比“网络是否做了分段”更精确的问题:某个明确的源端,能否通过生产实际使用的路径,向某个明确的目标服务发起指定连接。要得出可信结论,必须分别覆盖 IPv4 与 IPv6、新建与已建立连接、直连与代理路径,并区分网络策略拒绝、服务故障和应用层拒绝。

IPv4 与 IPv6 是两个独立的地址族,可能经过不同路由并命中不同过滤策略。有状态控制会记录流,并可能把返回流量视为已建立连接的一部分,而不是新的连接。因此,IPv4 上的拒绝不能证明 IPv6 也被拒绝;规则变更后仍存活的会话,也可能反映连接状态,而非新连接当前会得到的决定。

本文给出的是分段验收证据方法,而不是扫描操作指南。它只使用指定的测试客户端、合成监听服务、书面授权、流量上限,以及系统负责人预先认可的矩阵。更完整的项目阶段可参考基础设施渗透测试方法;本文只讨论如何证明真实路径上的分段决定。

分段主张必须明确两端

“办公用户不能访问生产网”过于模糊,无法验收。可验证的主张至少要写明源区域、用户或工作负载身份、源接口、地址族、目标服务、传输协议、发起方向、中间路径,以及预期允许或拒绝。任一要素改变,结果都可能改变。

即使防火墙只匹配 IP 地址,身份也应进入主张。同一子网里的员工终端、备份代理和通过受管跳板机操作的管理员可以拥有不同权限。网络可达性与资源授权是两种控制:TCP 路径允许后,应用仍可拒绝身份;身份感知代理也可以在不开放私网直连的情况下提供获批的应用访问。

还要写明业务目的。“备份服务器可访问数据库”应细化为:“指定备份代理可在批准窗口内向指定备份端点发起 TLS;交互式管理和数据库客户端直连保持拒绝。”这样的陈述才能转换成可执行、可复核的测试行。

用端点对矩阵定义验收范围

矩阵的每一行代表一个独立主张,测试后也成为一个独立结果。可以把大量系统归为代表性类别,但前提是已经证明它们共享路由、策略对象、主机控制和责任人。代表样本的结果不能自动覆盖未测试的例外。

下表是测试定义示例,不是实际观察结果。合成名称用于明确这一点。

左右滑动查看对照

源区域、身份、接口与地址族目标服务协议与发起方实际路径预期决定正向对照应采集证据观察决定与效果
用户区 / test-client-A / eth0 / IPv4app-test:443TCP,源端发起接入交换机 → 防火墙 → 应用区允许获批客户端访问同一监听器客户端事件、防火墙决定、监听器事件待测试
用户区 / test-client-A / eth0 / IPv6mgmt-test:22TCP,源端发起IPv6 网关 → 防火墙 → 管理区拒绝获批 IPv6 跳板机访问同一监听器A/AAAA、路由、客户端事件、策略日志、目标抓取待测试
备份区 / test-agent-B / IPv4backup-test:443TCP/TLS,备份代理发起出站过滤 → 获批代理 → 监听器经中介允许代理健康检查与已知正常代理转换前后五元组、代理身份、监听器事件待测试
用户区 / test-client-A / IPv4mgmt-test:22TCP,源端发起直连路由路径拒绝跳板机访问同一监听器源端记录、命中策略、目标抓取待测试
管理区 / test-jump-C / IPv6mgmt-test:22TCP,源端发起管理防火墙允许本地监听器健康检查身份、源接口、两端事件、策略决定待测试

每一行都应保存唯一测试编号、负责人、窗口、规则或策略对象以及证据位置。预期结果要在执行前冻结,否则意外放行可能在事后被重新解释为“原本就允许”。

先确认路径和每个控制看到的身份

主动测试前先收集只读证据:路由表、有效防火墙或云策略、安全组与网卡的关联、代理配置、负载均衡监听器、NAT 规则、DNS 记录、主机防火墙和近期变更。按实际顺序标出强制执行点。源主机、子网边界、云控制、转发设备、代理和目标主机可能给出不同决定。

NAT 与代理会改变下游控制看到的对象。入站云过滤可能在目标地址转换后评估私有地址;出站过滤可能在源地址转换前评估私有地址。正向代理会用自己的地址建立新连接,同时在应用层携带用户或工作负载身份。以 AWS 为例,经过中间设备路由的路径可能需要按对端私有地址或 CIDR 放行,仅引用对端安全组未必建立预期连接。报告应记录每一跳实际看到的五元组和身份,不能假定原始客户端始终可见。

获批中介也要明确建模。管理门户、跳板机、备份代理或部署代理可以合法跨区,同时保持直连拒绝。混合云安全审计指南讨论更广的信任链;在本矩阵中,直连和中介路径应是两行,拥有不同预期。

五步方法把设计规则连接到运行事实

所有主动检查都应获得书面授权,列明客户端、监听器、地址、端口、协议、数据包或请求上限、测试窗口、运行监控负责人、停止条件、证据保留方式,以及谁可以修改规则。只使用合成服务和测试数据。不要通过扫描发现目标,只执行矩阵中的指定端点对。

分段验收证据链
  1. 定义冻结端点对主张、预期决定、负责人和例外
  2. 采集只读导出路由、有效策略、地址转换、DNS 和主机控制
  3. 准备验证指定客户端、合成监听器、时间同步和正向对照
  4. 执行按地址族、方向和连接状态运行有界的允许与拒绝测试
  5. 关联连接源端、执行点和目标证据,分类结果并安排复测

正向对照是测试的一部分。如果拒绝行指向合成监听器,就要从获批源端用相同地址族和协议证明监听器健康。各系统时间应可关联,并为每次尝试生成唯一标记,从而在不查看业务数据的情况下连接客户端、策略、代理和目标事件。

允许行需要同时验证预期服务响应和控制决定。拒绝行只发送最小的约定连接尝试,并查找预期执行证据。重复次数只需排除约定范围内的瞬时丢包,不能演变为端口或主机遍历。

先确定响应来源,再分类结果

TCP 超时不能证明防火墙阻断。无路由、主机静默过滤、监听器故障、非对称路由、丢包、过期 DNS 或主动丢弃都可能造成相同现象。至少要把源端与目标端或相关执行点关联;最强证据包含三者。

最终使用五种状态:

  • 允许: 新连接按预期路径到达,目标服务或获批中介产生预期效果。
  • 阻断: 指定执行点记录预期拒绝,目标未看到禁止的新连接,并且正向对照证明目标和证据链健康。
  • 不可达: 路由、邻居发现、名称解析或其他前置条件让测试尚未到达待评估的策略决定。
  • 未知: 证据缺失、矛盾或不足以归因。只有超时而没有控制或目标证据时属于此类。
  • 例外: 访问通过有负责人、用途、到期时间和补偿措施的批准中介或临时规则发生。例外不是自动“通过”;还要单独记录它是否符合批准条件。未登记绕过属于发现项。

还要把即时效果与状态分开,并先证明响应来自哪里。TCP RST 可能来自关闭的目标端口,也可能来自采用拒绝动作的中间控制。确认由目标端返回的 401、403、SSH 登录拒绝或客户端证书拒绝,只能证明到该响应端点的网络可达性以及随后发生的应用层或 TLS 层拒绝。代理生成的响应不能证明私有后端已被访问。

新建流与已建立流必须分开测试

有状态控制会区分新发起流、返回流量和已跟踪连接。因此,重要的规则变更场景需要两个探针:变更后发起一个全新连接,并在预先批准的无害协议上观察一个已有授权会话。报告要写明具体控制产品、层级和有效配置。

不同产品的语义不能互相替代。AWS 文档说明,安全组跟踪的连接可能持续到状态超时,而某些由宽泛规则放行但未跟踪的流在规则删除后会立即中断。Azure 网络安全组把更新后的规则用于新连接,现有流可以继续。Azure Firewall 虽然对返回流量使用状态,但其文档说明把规则改为拒绝时会丢弃相关现有会话。因此,“有状态防火墙”这个标签不足以预测规则变更效果。

不要用生产管理员会话测试。应建立由负责人监控的合成长连接。如果控制变更风险过高,可将配置和厂商语义作为设计证据,并把运行时会话持续性明确标为未验证,而不是强行测试。

IPv4 与 IPv6 需要独立覆盖

双栈名称和主机会产生两个策略面。分别查询 A 与 AAAA,保存返回地址及 TTL 背景,再对每个适用地址族执行指定行。“域名可连接”不足以证明双栈,因为客户端可能只选择了一种地址族,或在另一种失败后回退。

每个地址族都要单独记录源接口、所选地址、路由、命中的策略对象、主机监听地址和事件。为了让样本可复核,还应记录客户端构建版本、解析结果时间和测试编号。IPv6 地址与设备的关联可以结合邻居缓存、交换机接口和身份事件;不要假定单一租约来源足以解释所有环境。

策略等价并不等于机械复制 IPv4 规则。ICMPv6 对建立和维持 IPv6 通信具有必要作用,而完全放开也会带来风险;验收应验证所需消息按本地拓扑策略处理。重点是两个地址族对目标业务路径产生等价的安全决定,同时保留各自的协议依赖证据。

单独覆盖管理、备份与反向连接

管理网和备份网往往拥有最广的合法范围,因此区域名称不能替代端点对测试。应覆盖跳板机到服务器管理、监控查询、备份代理到仓库、恢复方向、虚拟化或编排管理、DNS 与时间服务、紧急访问。每个允许行旁边放一个相邻拒绝对照:错误身份、绕过代理的直连、错误目标类别,或反方向发起的新连接。

方向取决于谁发起连接。有状态防火墙可以允许响应包,却不允许目标区向源区建立新会话。反向发起必须用新五元组作为独立行测试。UDP 等协议也要事先定义什么算请求和有效响应,不能套用 TCP 会话措辞。

身份感知网关可以让用户访问应用,而不把私有监听器暴露给用户区。必须证明两个主张:网关为指定身份完成认证和授权,直连仍被拒绝。备份与部署代理同理。这样可以避免把必要中介误判为广泛跨区访问。

报告要支持决策、失效判断与精确复测

交付物应包括冻结矩阵、路径图、带采集时间的只读配置、测试编号、源端/执行点/目标关联证据、带负责人和到期时间的例外,以及每个失败行的复测说明。发现项应明确端点对、地址族、方向、执行点、实际效果、预期决定和证据缺口。仅证明可达时,不应直接写成“防火墙失效”。

证据有有效期。路由、策略关联、代理链、DNS、主机监听绑定或连接状态发生变化时,受影响行必须重测。保留配置对象 ID、策略版本或构建、采集时间和样本选择依据;结论只能覆盖已证明共享控制的对象,不能从一个样本扩展到整个区域。

未授权路径可按目标敏感度、潜在源范围、身份限制、是否绕过中介以及后续访问能力排序。未知行表示尚未完成验证的范围,不能记为通过。整改关闭需要重复同一有界测试和正向对照;新规则截图不能证明运行效果。

工作量和价格取决于信任路径、独立规则集、地址族、NAT 与代理、身份上下文、管理和备份中介、证据可得性、生产约束、测试窗口与复测轮次。资产数量本身只是较弱的估算因子。团队可先用范围规划工具整理这些输入。

在规模较小且负责人能够独立提供源端、控制和目标证据的环境中,内部验收可能已经足够。当矩阵跨越多个运维团队、云与本地控制或高影响管理路径时,独立评估更适合形成可辩护的证据链。Pentest.red 可通过基础设施与 Active Directory 渗透测试服务约定这类验证,并把主动操作严格限制在批准的合成端点对和流量边界内。

PENTEST.RED

讨论渗透测试范围与报价

首先明确系统、访问权限、限制条件和预期证据。

准备测试范围

本文以深入研究为基础,经过编辑整理,注重清晰表达和实际应用。

PENTEST.RED / RED JOURNAL