通过 VPN 使用 Nessus:首次扫描前先确定扫描器位置
浏览器能打开 Nessus 控制台,并不证明扫描器能访问目标。启动前请核对进程所在位置、路由、范围和凭据。
浏览器旁边的 VPN 图标,并不能说明是哪个进程在发送扫描数据包。如果控制台和扫描器运行在不同主机上,浏览器走的是隧道,而扫描走的是另一条路。先确定执行点,再往外查路由、授权和凭据。这条区分排在清单第一项是有原因的。
这是一份启动前清单,不是扫描教程。每一步都会得出一个事实,你可以在任何一个数据包离开扫描器之前把它写进项目记录。
检查一:找到发送探测的进程
把三个角色明确画出来:A 笔记本电脑上的浏览器、B 主机上的扫描控制台、私有目标 C。如果 B 同时运行扫描引擎,浏览器只需要通往 B 的路径。如果由独立的扫描设备完成工作,那台设备才需要通往 C 的路径。
Browser on laptop A -> console on host B
Scanner process on B (or another appliance) -> private target C
连上 VPN 的浏览器能访问控制台,但它背后的扫描器可能仍没有通往 C 的路由。反过来也可能:扫描器在私有网络内,控制台在远端。改动任何网络控制之前,先弄清你实际运行的是哪种布局。在责怪网络之前,先在扫描配置里写明那台设备。
如果扫描器运行在 A 上,浏览器主机和扫描器共享同一环境,但前提是该进程保持相同的命名空间和路由表。容器或服务账户未必继承交互式浏览器看到的一切。控制台是管理界面,不是扫描引擎。
检查二:证实扫描器的路由和 DNS
在扫描器主机上做路由检查,而不是在笔记本上。向内核询问它会为目标地址使用哪个接口和网关,然后对目标主机名重复一次。为 IP 存在的路由,和解析到另一个地址的名称,是两种不同的故障。
确认将出现在目标处的源地址。VPN 客户端分配的地址可能与目标防火墙预期的不同,NAT 设备还可能再改写一次。目标负责人需要的是实际观察到的源地址,不是 VPN 配置里打印的地址。
也要检查回程路径。扫描器能到达目标却收不到任何回应,说明回程存在路由或防火墙问题,而这看起来与目标宕机完全一样。
检查三:取得范围与视角的授权
让目标负责人以书面形式写明系统、服务、环境、来源和时间窗口。确定这次评估代表哪个视角:外部 VPN 用户、获准的内部客户端,还是特定的扫描器网段。
私有路由不等于获准测试相邻网络。把目标清单收窄,列出排除的系统,并商定停止条件和可以叫停运行的联系人。扫描器会乐意探测它能够到的一切,正因如此范围必须明确。
把已批准的来源写进同一份文档。如果扫描器实际观察到的来源与批准的来源不一致,即使目标清单正确,这次运行也不代表约定的视角。
检查四:让凭据与评估深度匹配
连通性检查和带认证的评估是两种不同的测试。端口有响应只证明有东西应答,并不证明凭据检查真的跑过,也不证明应用授权了该账户。
只有在约定范围要求认证检查时才使用专用凭据。确认账户权限和锁定策略,并在扫描产生结果之前决定结果如何存储和共享。
如果凭据失败,不要悄悄退回未认证运行,再把报告标成计划的评估。那是另一种测试、另一种含义,这个差别必须写进报告。
检查五:保存计划,然后再启动
在 Nessus 的扫描流程中,选择模板、配置设置、保存或启动扫描是分开的步骤。利用这种分离,在任何流量开始之前复核目标清单、来源和计划。
在授权启动之前,先确认 VPN 允许哪个来源、承载哪些流量、隧道断开后如何恢复。不要仅因为一次预连接失败就放宽防火墙访问;找到拒绝它的那一层,修好那一层。
运行结束后,记录扫描器主机、观察到的来源、目标清单,以及任何未能完成的检查。来自不同来源或没有预期凭据的报告不代表原计划,把这一点说出来本身就是交付的一部分。
收回项目访问权限,并按约定流程处理留存的结果。只有当证据与你批准的路径相符时清单才算完成,而不是扫描返回了结果就算完成。