
网络主机端口扫描(Connect与FIN)及报告
5星
- 浏览量: 0
- 大小:None
- 文件类型:None
简介:
本报告深入探讨了网络中常用的两种端口扫描技术——连接扫描(connect)和FIN扫描,并分析其原理、优势以及应用场景。通过详细的数据对比,为网络安全评估提供有效参考。
在进行FIN扫描时,可以通过抓包程序捕获发送的数据包与接收的数据包。需要注意的是,FIN扫描的结果不会直接显示在列表控件中。
TCP connect() 扫描是一种最基本的TCP端口扫描方法。它利用操作系统的connect()系统调用尝试连接到每个感兴趣的计算机目标的端口。如果该端口处于监听状态,则connect()会成功建立连接;否则,说明此端口未提供服务。这种方法的一个显著优点是不需要特殊权限——任何用户都可以使用这个功能。此外,通过同时打开多个套接字可以加快扫描速度,并且可以通过设置非阻塞I/O来进一步提升效率。然而,这种方式也存在明显的缺点:它容易被检测到并可能遭到过滤,目标计算机的日志文件中会显示大量连接尝试失败的记录。
TCP SYN 扫描是一种“半开放”技术,即在完成完整的三次握手之前就终止了扫描过程。具体来说,在发送SYN数据包后,等待对方回应。如果接收到的是SYN|ACK,则表明该端口正在监听;如果是RST,则表示端口未打开或关闭。当收到SYN|ACK时,需要再发一个RST来结束连接尝试。这种扫描方式的一个关键优势在于不会在目标系统上留下明显的记录,但同时也要求执行者具备root权限以发送原始的TCP数据包。
最后是TCP FIN 扫描技术,在某些情况下即使使用了SYN扫描也可能会被一些防火墙或过滤器识别并阻止。而FIN类型的探测包则可能更容易通过这些防护措施。此方法基于这样一个假设:关闭状态下的端口会对收到的FIN请求回应一个RST,而打开的端口通常会忽略这种类型的数据包。不过需要注意的是,并非所有系统都会遵循这一行为模式(即某些系统无论端口是否开放都一律发送RST作为响应),因此这种方法的有效性可能因具体实现有所不同;同时,在区分Unix与Windows NT系统时该方法表现尤为有用。
全部评论 (0)


