CVE-2026-40613Coturn是一款开源的TURN和STUN服务器实现。在4.10.0版本之前,其STUN/TURN属性解析函数在ns_turn_msg.c中存在不安全的指针强制转换,且缺乏必要的对齐检查。当处理特制的STUN消息时,会在ARM64架构上触发未对齐的内存读取,引发SIGBUS信号,导致服务进程崩溃。未经身份认证的远程攻击者可利用此漏洞通过发送单个UDP数据包使服务拒绝服务。
该漏洞的根本原因在于Coturn的STUN/TURN属性解析函数中存在指针类型转换的不安全操作。具体位于ns_turn_msg.c文件,代码直接将uint8_t *指针强制转换为uint16_t *进行解引用,且未插入必要的内存对齐检查。在x86架构上,未对齐内存访问通常由硬件容忍,但在ARM64(AArch64)架构下,若操作系统或硬件启用了严格对齐策略,这种操作会触发硬件异常,产生SIGBUS信号。由于Coturn未捕获该信号,导致turnserver进程立即退出。攻击者无需经过身份验证,只需向目标服务器发送一个精心构造的、包含奇数对齐边界的STUN UDP数据包,即可远程触发崩溃,造成服务不可用。