HTG解释:什么是端口扫描?

端口扫描有点像摇动一堆门把手来查看哪些门是锁着的。扫描仪了解路由器或防火墙上的哪些端口处于打开状态,并可以使用此信息来查找计算机系统的潜在弱点。

什么是港口?

当一台设备通过网络连接到另一台设备时,它会指定一个介于0到65535之间的TCP端口号或UDP端口号。但是,有些端口的使用频率更高。TCP端口0到1023是提供系统服务的“众所周知的端口”。例如,端口20是FTP文件传输,端口22是安全外壳(SSH)终端连接,端口80是标准HTTP Web流量,端口443是加密的HTTPS。因此,当您连接到安全网站时,您的Web浏览器正在与侦听该服务器的端口443的Web服务器对话。

服务并不总是必须在这些特定端口上运行。例如,如果您愿意,可以在端口32342上运行HTTPS Web服务器,或者在端口65001上运行安全外壳服务器。这些只是标准默认值。

什么是端口扫描?

端口扫描是检查IP地址上的所有端口以查看它们是打开还是关闭的过程。端口扫描软件将检查端口0、端口1、端口2,并一直检查到端口65535。它只需向每个端口发送请求并请求响应即可。在其最简单的形式中,端口扫描软件询问每个端口,一次一个。远程系统将作出响应,并告知端口是打开的还是关闭的。然后,运行端口扫描的人员将知道哪些端口是打开的。

任何挡住去路的网络防火墙都可能阻塞或丢弃流量,因此端口扫描也是一种查找该远程系统上哪些端口可以访问或向网络公开的方法。

nmap工具是用于端口扫描的常用网络实用程序,但还有许多其他端口扫描工具。

为什么人们要运行端口扫描?

端口扫描对于确定系统的漏洞非常有用。端口扫描会告诉攻击者系统上哪些端口是打开的,这将帮助他们制定攻击计划。例如,如果检测到Secure Shell(SSH)服务器在侦听端口22,则攻击者可以尝试连接并检查弱密码。如果另一种类型的服务器正在监听另一个端口,攻击者可能会刺探该端口,看看是否存在可利用的缺陷。也许旧版本的软件正在运行,并且存在一个已知的安全漏洞。

这些类型的扫描还可以帮助检测在非默认端口上运行的服务。因此,如果您在端口#65001而不是端口22上运行SSH服务器,端口扫描会发现这一点,攻击者可以尝试在该端口上连接到您的SSH服务器。您不能仅仅将服务器隐藏在非默认端口上来保护您的系统,尽管这确实会使服务器更难找到。

端口扫描不仅仅被攻击者使用。端口扫描对于防御性渗透测试非常有用。组织可以扫描其自己的系统,以确定哪些服务向网络公开,并确保安全地配置这些服务。

端口扫描有多危险?

端口扫描可以帮助攻击者找到攻击和闯入计算机系统的弱点。不过,这只是第一步。仅仅因为您发现了一个开放的端口并不意味着您可以攻击它。但是,一旦找到运行侦听服务的开放端口,就可以扫描它的漏洞。这才是真正的危险。

在您的家庭网络上,几乎可以肯定您与Internet之间有一台路由器。互联网上的某个人只能通过端口扫描您的路由器,除了路由器本身的潜在服务外,他们找不到任何其他东西。该路由器充当防火墙-除非您已将路由器中的各个端口转发到某个设备,在这种情况下,这些特定端口会暴露在Internet上。

对于计算机服务器和公司网络,可以将防火墙配置为检测端口扫描并阻止来自正在扫描的地址的流量。如果所有暴露在互联网上的服务都是安全配置的,并且没有已知的安全漏洞,端口扫描甚至不会太可怕。

端口扫描的类型

在“TCP全连接”端口扫描中,扫描程序向端口发送SYN(连接请求)消息。如果端口打开,远程系统会回复SYN-ACK(确认)消息。然后,扫描仪用其自己的ACK(确认)消息进行响应。这是一个完整的TCP连接握手,如果发生此过程,扫描程序知道系统正在接受端口上的连接。

如果端口关闭,远程系统将使用RST(重置)消息进行响应。如果网络上没有远程系统,则不会有响应。

一些扫描仪执行“TCP半开放”扫描。它们无需经历完整的SYN、SYN-ACK和ACK周期,只需发送SYN并等待SYN-ACK或RST消息作为响应。不需要发送最终ACK来完成连接,因为SYN-ACK会告诉扫描仪它需要知道的一切。它更快,因为需要发送的数据包更少。

其他类型的扫描包括发送陌生的、格式错误的数据包,并等待查看远程系统是否返回关闭连接的RST数据包。如果是,则扫描仪知道该位置有远程系统,并且该远程系统上的一个特定端口已关闭。如果没有接收到数据包,则扫描仪知道端口必须打开。

一个简单的端口扫描,软件逐个请求每个端口的信息,很容易发现。网络防火墙可以很容易地配置来检测和阻止这种行为。

这就是为什么一些端口扫描技术的工作方式不同。例如,端口扫描可以扫描较小范围的端口,也可以在更长的时间内扫描整个范围的端口,因此更难检测。

当涉及到渗透(和保护)计算机系统时,端口扫描是一种基本的基本安全工具。但它们只是一个让攻击者找到可能易受攻击的端口的工具。它们不允许攻击者访问系统,并且安全配置的系统肯定可以经受住全端口扫描而不会造成损害。

图片来源:xfilePhots/Shutterstock.com,Casezy Idea/Shutterstock.com。

相关文章