端口扫描数据一旦落入坏人之手,可能会成为更大规模恶意活动的一部分。因此,了解如何检测和防御端口扫描攻击至关重要。
端口扫描用于确定网络上的端口是否开放以接收来自其他设备的数据包,这有助于网络安全团队加强防御。但恶意行为者也可以利用这一过程来寻找易受攻击的端口。
在深入研究什么是端口扫描攻击以及如何预防和阻止它们之前,让我们先看看什么是端口和端口扫描。
什么是端口?
端口是一个通信端点,数据单元(称为数据包)通过它流动。传输层协议使用端口号码进行通信和交换数据包。最著名的传输层协议是传输控制协议(TCP)和用户数据报协议(UDP),前者是一种面向连接的协议,在发送数据之前需要建立连接;后者是一种无连接协议,不需要建立双向连接即可开始通信。
TCP和UDP使用的每个端口都与一个特定的进程或服务相关联。端口的取值范围是0 ~ 65535,在网络连接的设备之间是标准化的。端口0在TCP/IP网络中是保留的,不应该在TCP或UDP消息中使用。端口1到1023是众所周知的端点,用作Internet协议的默认值,由互联网数字分配机构(IANA)定义。
端口1024 ~ 29151是为在IANA注册的端口预留的号码,用于关联特定协议。49152 ~ 65535范围内的端口是临时端口,用于动态连接。
一些最常用的端口包括:
- 用于HTTP协议的TCP 80端口和UDP 80端口;
- 用于HTTPS协议的TCP 443端口和UDP 443端口;
- 用于邮件服务器(如SMTPTCP)的TCP 465端口;
- 用于DNS的TCP 53端口和UDP 53端口。
端口扫描及其用途
端口扫描是由某人发送的一系列消息,以了解给定计算机提供的计算机网络服务。
端口扫描器是识别连接互联网的设备上哪些端口和服务打开或关闭的应用程序。端口扫描器可以在所有65,536个端口上向目标计算机发送连接请求,并记录哪些端口响应以及如何响应。从端口接收到的响应类型表明它们是否在使用中。
企业防火墙一般以以下三种方式响应端口扫描:
- 打开。如果一个端口是打开的,或者正在监听,它就会响应请求。
- 关闭。一个关闭的端口会用一条消息进行响应,表明它收到了"打开"的请求,但拒绝了它。这样,当一个真正的系统发送一个"打开"的请求时,它知道请求已被接收,但无需不断重试。然而,这个响应也揭示了在被扫描的IP地址后面存在一台计算机。
- 没有响应,也称为过滤或丢弃,这既不涉及确认请求也不发送回复。没有响应向端口扫描器表明防火墙可能过滤了请求数据包,端口被阻塞或没有端口。例如,如果端口被阻塞或处于隐身模式,则防火墙不会响应端口扫描程序。有趣的是,被封锁的端口违反了TCP/IP行为规则,因此,防火墙必须抑制计算机关闭端口的回复。安全团队甚至可能发现公司防火墙并没有封锁所有的网络端口。例如,如果标识协议(Identification Protocol)使用的113端口被完全阻塞,那么与某些远程Internet服务器(如internet Relay Chat)的连接可能会被延迟或完全拒绝。由于这个原因,许多防火墙规则将端口113设置为关闭,而不是完全阻止它。
端口扫描的一般目标是绘制出系统的操作系统及其运行的应用程序和服务,以便了解其保护措施及可能存在的潜在漏洞。
端口扫描的类型
由于TCP和UDP是最常用的传输层协议,因此它们经常用于端口扫描。
根据设计,TCP发送一个确认(ACK)数据包,让发送方知道是否收到了数据包。如果接收不到信息、被拒绝或接收错误,则发送一个否定ACK(negative ACK)报文。另一方面,UDP在接收数据包时不发送ACK;如果没有收到信息,它只会响应"ICMP(Internet控制消息协议)端口不可达"消息。
具体来说,主要存在以下几种类型的端口扫描技术:
- Ping扫描或Sweep扫描,扫描几台计算机上的相同端口,以查看它们是否处于活动状态。这包括发送ICMP回显请求,以查看哪些计算机响应。
- TCP SYN扫描或TCP半开放扫描,是最常见的端口扫描类型之一。它通过发送TCP同步报文来发起通信,但不完成连接。
- TCP连接(也称为全连接扫描)类似于TCP SYN扫描,因为它发送TCP SYN包来启动通信,但这种扫描通过发送ACK来完成连接。
- 频闪(Strobe)扫描是尝试只连接到选定的端口,通常少于20个。
- UDP扫描查找打开的UDP端口。
- 在FTP bounce扫描中,FTP服务器被用来扫描其他主机。通过FTP服务器进行的扫描尝试会伪装端口扫描器的源地址。
- 在分段扫描(fragmented scan)中,TCP标头被分成几个包,以防止被防火墙发现。
- 隐形扫描(Stealth scans)包括多种扫描技术,试图阻止连接请求被记录。
什么是端口扫描攻击?
端口扫描并不一定意味着网络攻击。了解为什么要收集端口扫描信息以及这些信息的用途非常重要。
作为侦察过程的一部分,端口扫描是恶意行为者常用的一种信息收集方法。攻击者可以使用通过端口扫描收集的数据来查找设备正在运行的服务,并了解正在使用的操作系统。然后,这些数据可以帮助攻击者标记易受攻击的系统,意图利用它们获得对网络的访问权限。
安全团队和渗透测试人员还使用端口扫描数据来识别漏洞、网络上可能需要注意的新设备、潜在的错误配置和安全覆盖中的其他缺口,以加强防御。
当路由器报告多次暴力探测的周期性事件时,它会记录来自端口扫描器的端口请求。这可能是恶意的,也可能不是,因为大多数面向互联网的系统每天都会被扫描。
端口扫描的做法与互联网一样古老。虽然协议随着时间的推移而变化,安全工具和系统也随着时间的推移而发展,但检测和处理端口扫描警报仍然很重要,特别是当未经授权的恶意行为者扫描自己的系统时。
如何检测端口扫描攻击?
端口扫描攻击需要在检测到端口扫描攻击后才能阻止。如果正确安装和配置,现代安全设备可以通过跟踪访问本地网络中的系统的尝试来有效地检测端口扫描。
大多数安全设备都可以链接来自同一源的正在进行的重复扫描尝试,无论它们针对的是单个主机还是多个主机。为了实现效率最大化,端口扫描攻击可能需要在相对较短的时间内探测许多不同系统上的许多不同端口,这使得攻击尝试更容易被检测到。
为了逃避检测,一些攻击者可能会在较长的时间范围内探测开放端口,在这种情况下,检测端口扫描攻击会变得更加困难。然而,对攻击者来说,这样做的缺点是可能需要数小时、数天甚至更长时间才能找到一个易受攻击的系统。
如何防止网络中的端口扫描?
防止端口扫描是不可能的。任何人都可以选择一个IP地址并扫描它的开放端口。
为了保护企业网络,安全团队应该自行开展内部扫描,以找出攻击者在其网络的端口扫描期间会发现什么。但是,请注意,针对许多云托管服务(如AWS)的安全评估和渗透测试需要在扫描之前获得批准。
一旦安全管理员发现哪些端口响应为打开,他们就可以进一步检查这些端口是否有必要从公司网络外部访问。如果没有必要,安全管理员应该关闭或阻止它们。如果认为开放端口是必要的,管理员应该开始研究网络中存在哪些开放的漏洞,并应用适当的补丁来保护网络。
某些类型的防火墙拥有自适应行为,这意味着如果可疑的IP地址正在探测它们,它们会自动阻止先前打开和关闭的端口。防火墙还可以配置为在管理员检测到来自单个主机的多个端口的连接请求时向管理员发出警报。然而,攻击者可以通过在频闪或隐身模式下进行端口扫描来绕过这种保护机制。
总之,组织可以通过始终配置防火墙和入侵检测系统,来检测并阻止不寻常的连接尝试和请求。例如,在端口扫描完成后,攻击者可能会发起一些探测攻击,以验证先前的研究结果或获取所需的额外信息,以巧妙地发动主攻。此外,将异常活动输入SIEM系统可以提供实时反馈并改进对事件的自动响应。
如果没有调整端口防护策略的技术怎么办?
调整端口策略防护,对维护人员的技术是一种考验,在调整的过程中肯定是会影响到端口正常访问,所以是需要寻找到其他更合适的防护方案。
DDoS高防IP的防护服务是以省骨干网的DDoS防护网络为基础,结合德迅自研的攻击检测和智能防护体系,向您提供可管理的DDoS防护服务,端口精准过滤拦截,自动快速的缓解网络攻击对业务造成的延迟增加,访问受限,业务中断等影响,从而减少业务损失,降低潜在攻击风险。
自定义清洗策略
支持从结果、交互,时间,地域等维度对流量进行画像,从而构建数千种可自定义拦截策略,同时防御不同业务、不同类型的CC攻击。
指纹识别拦截
指纹识别可以根据报文的特定内容生成独有的指纹,并以此为依据进行流量的合法性判断,达到精准拦截的恶意流量的目的。
四层CC防护
德迅引擎可以根据用户的连接、频率、行为等特征,实时分析请求,智能识别攻击,实现秒级拦截,保障业务的稳定运行。
支持多协议转发
支持TCP、HTTP、HTTPS、WebSocket等协议,并能够很好地维持业务中的长连接。适配多种业务场景,并隐藏服务器真实 IP。
丰富的攻击详情报表
秒级的即时报表,实时展示业务的访问情况、流量转发情况和攻击防御情况,监控业务的整体安全状况,并动态调整防御策略,达到最佳的防护效果。
源站保护
通过反向代理接入防护服务,隐藏真实源站服务器地址,将清洗后的干净业务流量回送到源机
DDoS高防IP防护可有效解决市面上常见的端口攻击、DDoS攻击。
近年来,随着网络攻击的威胁和影响不断变化,端口攻击变得越来越复杂。尽管容量攻击完全相同,但是针对特定应用程序的攻击和针对性的高强度攻击的数量有所增加。
防护软件解决方案旨在消除这些攻击的停机时间并增强网站可用性,以保持企业的生产力和效率。面向小型、中型和大型企业的内部部署、云计算和混合软件解决方案是未来的发展方向。