攻防技术-单包攻击防范:扫描、畸形、特殊(HCIP)

单包攻击类型介绍

一、扫描窥探攻击

1、地址扫描攻击防范

攻击介绍

  • 运用ping程序探测目标地址,确定目标系统是否存活。也可使用TCP/UDP报文对目标系统发起探测(如TCP ping)

防御方法

  • 检测进入防火墙的ICMP、TCP和UDP报文,根据源IP地址获取统计表项的索引,如果目的IP地址与前一报文的IP地址不同,则将表项中的总报文个数增加1。如果在一定时间内报文的个数达到设置的阑值,记录日志,并根据配置决定是否将源IP地址自动加入黑名单。

2、端口扫描攻击防范

攻击介绍

  • Port Scan攻击通常使用一些软件,向大范围主机的各个TCP/UDP端口发起连接,根据应答报文判断主机是否使用这些端口提供服务。

防御方法

  • 检测进入防火墙的TCP报文或UDP报文,根据源IP地址获取统计表项的索引,如果目的端口与前一报文不同,将表项中的报文个数增1。如果报文的个数超过设置的闯值,记录日志,并根据配置决定是否将源IP地址加入黑名单。

二、畸形报文攻击

1、SUMRF攻击防范

攻击介绍

  • Smurf攻击方法是发送ICMP请求,该请求包的目标地址设置为受害网络的广播地址,源地址为服务器地址。该网络的所有主机都回应此ICMP请求,回应报文全部发往服务器,导致服务器不能正常提供服务。

防御方法

  • 检查ICMP应答请求包的目的地址是否为子网广播地址或子网的网络地址,如果是,则直接拒绝,并将攻击记录到日志。

2、LAND攻击防范

攻击介绍

  • 把TCP 的源地址和目标地址都设置成某一个受害者的IP地址。这将导致受害者向它自己的地址发送SYN-ACK消息,结果这个地址又发回ACK消息并创建一个空连接,占用系统资源或使目的主机崩溃。

防御方法

  • 对每一个的IP报文进行检测,若其源地址与目的地址相同,或者源地址为环回地址(127.0.0.1),则直接拒绝,并将攻击记录到日志。

3、Fraggle攻击防范

攻击介绍

  • Fraggle类似于Smurf攻击,使用UDP应答消息而非ICMP。UDP端口7(ECHO)和端口19(Chargen)在收到UDP报文后,会产生大量无用的应答报文,占满网络带宽。

防御方法

  • 检查进入防火墙的UDP报文,若目的端口号为7或19,则直接拒绝,并将攻击记录到日志,否则允许通过。

4、IP Fragment攻击

攻击介绍

  • IP报文中有几个字段与分片有关:DF位、MF位、Fragment offsetLength 。如果上述字段的值出现矛盾,而设备处理不当,会对设备造成一定的影响,甚至瘫痪。

防御方法

  • 检查IP报文中与分片有关的字段(DF位、MF位、片偏置量、总长度)是否有以下矛盾,若发现含有以下矛盾,则丢弃。将攻击记录到日志:
    • DF位为1,而MF位也为1或Fragment Offset不为0。
    • DF位为0,而Fragment Offset + Length > 65535。

DF不要分片、MF要分片偏移量。

5、IP Spoofing攻击防范

攻击介绍

  • 为了获得访问权,或隐藏入侵者的身份信息,入侵者生成带有伪造源地址的报文,并使用该伪造源地址访问攻击目标,进行扫描、窥探等预备攻击。

防御方法

  • 检测每个接口流入的IP报文的源地址与目的地址,并对报文的源地址反查路由表,入接口与以该IP地址为目的地址的最佳出接口不相同的IP报文被视为IP Spoofing攻击,将被拒绝,并进行日志记录。

一台主机X去访问Y,正常路由器收到报文是根据目的路由去查路由表,也就是路由表中查去往Y的路由,不关心去往源X的,启用了IP Spoofing防护之后,X去往Y的路由从Eth1口收到后,不但会查路由表去往Y怎么走,还会反向查询路由表去往X是否是从Eth1口学到,如果X路由是从其他接口学到或者是根本没有X路由就会把这个访问干掉。

6、Ping of Death攻击

攻击介绍

IP报文的长度字段为16位,即IP报文的最大长度为65535 B。Ping of Death利用一些长度超大的ICMP报文对系统进行攻击。

防御方法

检测ICMP请求报文长度是否超过65535 B,若超过,则丢弃报文并记录日志。

7、TCP Flag攻击

攻击介绍

  • TCP报文包含6个标志位:URG、ACK、PSH、RST、SYN、FIN ,(最经典的标志位:ACK、RST、SYN、FIN)不同的系统对这些标志位组合的应答是不同的,可用于操作系统探测。

防御方法

  • 检查TCP报文的各个标志位,若出现以下任意一种情况,直接丢弃该报0文并记录日志
    • 6个标志位全为1或6个标志位全为0。
    • SYN和FIN位同时为1;SYN和RST同时为1。
    • FIN和URQ同时为1,RST和FIN同时为1。

8、Teardrop攻击

攻击介绍

  • 利用在TCP/IP堆栈中信任IP碎片报文头所包含的信息实现。

防御方法

  • 缓存分片信息,每一个源地址、目的地址、分片ID相同的为一组,最大支持缓存10000组分片信息。

9、WinNuke攻击范围

攻击介绍

  • WinNuke攻击通常向装有Windows系统的特定目标的NetBIOS端口(139)发送000B(out-of-band)数据包,引起一个NetBIOS片断重叠,致使已与其他主机建立连接的目标主机崩溃。还有一种是IGMP分片报文,一般情况下,IGMP报文是不会分片的,所以,不少系统对IGMP分片报文的处理有问题。

防御方法

  • WinNuke攻击1:检测数据包目的端口是否为139,并且检查TCP-URG位是否被设0置。
  • WinNuke攻击2:检测进入的IGMP报文是否为分片报文,如果是分片报文,则直接丢弃。

三、特殊报文攻击

1、超大ICMP报文攻击防范

攻击介绍

超大ICMP报文攻击是指利用长度超大的ICMP报文对目标系统进行攻击。对于有些系统,在接收到超大ICMP报文后,由于处理不当,会造成系统崩溃、死机或重启。

防御方法

用户可以根据实际网络需要配置允许通过的ICMP报文的最大长度,当实际ICMP报文的长度超过该值时,防火墙认为发生了超大ICMP报文攻击将丢弃该报文。

2、ICMP不可达报文攻击防范

攻击介绍

  • 不同的系统对ICMP不可达报文的处理方式不同,有的系统在收到网络或主机不可达的ICMP报文后,对后续发往此目的地址的报文直接认为不可达,从而切断了目的地与主机的连接。攻击者利用这一点,伪造不可达ICMP报文,切断受害者与目的地的连接,造成攻击。

防御方法

  • 启动ICMP不可达报文攻击防范功能,防火墙对ICMP不可达报文进行丢弃并记录攻击日志。

3、Tracert报文攻击防范

攻击介绍

  • Tracert报文攻击是攻击者利用TTL为0时返回的ICMP超时报文,和达到目的地址时返回的ICMP端口不可达报文来发现报文到达目的地所经过的路径,它可以窥探网络的结构。

防御方法

  • 对于检测到的超时的ICMP报文或UDP报文,或者目的端口不可达的报文给予丢弃处理。

四、URPF

1、URPF技术

URPF技术:单播逆向路径转发的简称,其主要功能是防止基于源地址欺骗的网络攻击行为。有两种模式

  • 严格模式:X访问Y,路由器从ETH1口收到报文,路由表可以查到Y的路由,并且路由表反向查询也有X的路由,并且X的路由也是通过入接口ETH1口学到的。
  • 松散模式:X访问Y,路由器从ETH1口收到报文,路由表可以查到Y的路由,并且路由表反向查询也有X的路由。

2、URPF处理流程图

URPF的处理流程如下:

  • 如果报文的源地址在USG的FIB表中存在。
  • 如果报文的源地址在USG的FIB表中不存在,则检查缺省路由及URPF的allow-default-route参数。

onNotify() - Device=D8:37:**:**:**:07 handle=24 2025-12-17 21:37:33.408 29133-29133 BLE_Mesh_Activity com.example.ble I onDataReceived: 0101001ED30D1E468CCB0A00000000D4948542491923C4 2025-12-17 21:37:33.416 29133-29133 handleNotifications com.example.ble I Received PDU: 0101001ED30D1E468CCB0A00000000D4948542491923C4 2025-12-17 21:37:33.419 29133-29133 MeshManagerApi com.example.ble D Received mesh beacon: SecureNetworkBeacon { KeyRefreshActive: false, IV Index: IV Index: 0, IV Update Active: false, Authentication Value: 0xD4948542491923C4} 2025-12-17 21:37:33.420 29133-29133 MeshManagerApi com.example.ble D Secure Network Beacon authenticated. 2025-12-17 21:37:33.421 29133-29133 MeshManagerApi com.example.ble D Last IV Index: 0 2025-12-17 21:37:33.421 29133-29133 MeshManagerApi com.example.ble I Setting IV Update Active to: false 2025-12-17 21:37:33.478 29133-29133 HwViewRootImpl com.example.ble I removeInvalidNode all the node in jank list is out of time 2025-12-17 21:37:35.314 29133-29133 MeshTransport com.example.ble V Src address: 0001 2025-12-17 21:37:35.314 29133-29133 MeshTransport com.example.ble V Dst address: 0001 2025-12-17 21:37:35.315 29133-29133 MeshTransport com.example.ble V akf: 0 2025-12-17 21:37:35.315 29133-29133 MeshTransport com.example.ble V aid: 0 2025-12-17 21:37:35.315 29133-29133 MeshTransport com.example.ble V aszmic: 0 2025-12-17 21:37:35.315 29133-29133 MeshTransport com.example.ble V Sequence number: 9 2025-12-17 21:37:35.316 29133-29133 MeshTransport com.example.ble V Access message opcode: 8008 2025-12-17 21:37:35.316 29133-29133 MeshTransport com.example.ble V Access message parameters: 00 2025-12-17 21:37:35.317 29133-29133 AccessLayer com.example.ble V Created Access PDU 800800 2025-12-17 21:37:35.318 29133-29133 UpperTransportLayer com.example.ble V Device nonce: 02000000090001000100000000 2025-12-17 21:37:35.319 29133-29133 UpperTransportLayer com.example.ble V Encrypted upper transport pdu: 0175B20F248B31 2025-12-17 21:37:35.319 29133-29133 LowerTransportLayer com.example.ble V Unsegmented Lower transport access PDU 000175B20F248B31 2025-12-17 21:37:35.319 29133-29133 NetworkLayer com.example.ble V Sequence Number: 000009 2025-12-17 21:37:35.320 29133-29133 NetworkLayer com.example.ble V Encrypted Network payload: C11076CEDF024EF18775C91DC8AD 2025-12-17 21:37:35.333 29133-29133 BLE_Mesh_Activity com.example.ble I onNetworkUpdated 2025-12-17 21:37:35.338 29133-29133 BLE_Mesh_Activity com.example.ble I onMeshPduCreated: 0008D66D7FA5034CC11076CEDF024EF18775C91DC8AD 2025-12-17 21:37:35.342 29133-29133 BLE_Mesh_Activity com.example.ble I onMeshPduCreated发送PDU: 0008D66D7FA5034CC11076CEDF024EF18775C91DC8AD 2025-12-17 21:37:35.344 29133-29133 sendPdu com.example.ble I Sending pdu: 0008D66D7FA5034CC11076CEDF024EF18775C91DC8AD 2025-12-17 21:37:35.344 29133-29133 BluetoothGatt com.example.ble D writeCharacteristic() - uuid: 00002add-0000-1000-8000-00805f9b34fb 2025-12-17 21:37:35.345 29133-29133 BLE_Mesh_Activity com.example.ble I onMeshMessageProcessed-dst: 1 2025-12-17 21:37:35.346 29133-29133 BLE_Mesh_Activity com.example.ble I onMeshMessageProcessed-MeshMessage: null 2025-12-17 21:37:35.346 29133-29133 BLE_Mesh_Activity com.example.ble I onMeshMessageProcessed-MeshMessage: ConfigCompositionDataGet 2025-12-17 21:37:35.348 29133-29149 BluetoothGatt com.example.ble D onCharacteristicWrite() - Device=D8:37:**:**:**:07 handle=22 Status=0 2025-12-17 21:37:35.378 29133-29133 BLE_Mesh_Activity com.example.ble I onDataSent: 0008D66D7FA5034CC11076CEDF024EF18775C91DC8AD 2025-12-17 21:37:35.380 29133-29133 MeshManagerApi com.example.ble V MeshNetwork pdu sent: 0x0008D66D7FA5034CC11076CEDF024EF18775C91DC8AD下发指令之后没有接收到设备返回到信息
最新发布
12-18
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

数通工程师小明

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值