论文部分内容阅读
在互联网普及度越来越高的今天,网络服务的种类也趋于多元化,其依托于主机端口来对外提供如HTTP、FTP、IEC-104等服务。作为一把双刃剑,网络服务在丰富我们日常生活的同时也潜藏着隐患与危害,故需要更有效的手段来对网络中各种服务进行实时的监管与统计。大规模端口扫描技术的研究已较为成熟,但国内外还尚未提出如何实时主动地对特定服务进行探测的工具。本课题的研究建立在上述背景下,并结合实际工程需求与端口扫描技术进行系统开发。在分析现有扫描工具的优缺点后,发现全连接扫描效率低但结果全;半连接扫描器效率高,但局限性在于无法完成基于连接的服务探测任务。且由于服务状态变化较快,现有服务探测工具难以在较短时间内完成大规模探测任务。因此本文提出大规模交互式服务探测系统予以解决,通过本系统进行服务探测,可实现基于半连接的、连接状态可维护的扫描模式。利用本文提出的“模式集探测语法”,可指导扫描器组件根据探测过程中应答包状态的不同而做出不同回复,以实现多次交互式服务探测或协议模拟,摒除了在服务探测器内部硬编码协议特征这一扩展瓶颈。此外,控制系统实现探测任务与目标地址集冗余化与随机分配的功能,以此提高系统健壮性。本文对系统整体架构、各子系统的设计与实现进行了详细论述,同时为解决分布式节点部署繁杂的痛点,将内部各个组件实现容器化操作,并使用Docker Swarm Mode对集群及分布式节点进行合理编排。文章在最后对系统整体性能进行多组对照和压力测试,且结果对系统的使用和评估有积极的指导意义。