主机枚举是获得关于一个已定义主机的具体细节的过程。仅仅知道一个服务器或无线接入点的存在是不够的;相反,我们需要通过识别开放的端口、基本的操作系统、正在运行的服务和支持的应用程序来扩大攻击面。这个行为是具有高度侵入性的,需要非常小心谨慎,否则这种活动将被目标组织发现并记录下来。
第一步是对目标地址空间进行网络ping扫描,寻找活跃的特定目标且能够响应的。从历史上看,ping通常是指使用ICMP;然而,TCP、UDP、ICMP和ARP流量也可用于识别活跃的主机。
各种扫描器可以在互联网的远程运行,以识别实时主机。虽然比较流行的扫描器是nmap,但Kali提供的其他几个应用程序也很有用,如表3.5所示。
表3.5 Kali Linux中用于发现实时主机的工具
对于渗透测试者或攻击者来说,从实时主机发现返回的数据将确定攻击的目标。
在进行渗透测试时,运行多个主机发现扫描是很好的做法,因为某些设备可能与时间有关。在一次渗透测试中,我们发现系统管理员设置了一台服务器在正常工作时间后玩游戏。因为这不是一个被批准的商业系统,管理员没有遵循正常的程序来保护服务器;服务器存在多个易受攻击的服务,而且它没有安装必要的安全补丁。测试人员能够利用管理员用于玩游戏的服务器中的漏洞破坏该服务器,并获得对底层企业网络的访问权限。