NetBSD/FreeBSD IPComp实现栈溢出远程内存破坏漏洞

- AV AC AU C I A
发布: 2025-04-13
修订: 2025-04-13

Bugtraq ID: 47123 IPcomp是一款IP有效载荷压缩协议,为IP层提供无损耗压缩。 源自NetBSD/KAME的IPComp实现,未压缩负载的注入其代码类似如下: algo = ipcomp_algorithm_lookup(cpi); /* ... */ error = (*algo->decompress)(m, m->m_next, &newlen); /* ... */ if (nxt != IPPROTO_DONE) { if ((inetsw[ip_protox[nxt]].pr_flags & PR_LASTHDR) != 0 && ipsec4_in_reject(m, NULL)) { IPSEC_STATINC(IPSEC_STAT_IN_POLVIO); goto fail; } (*inetsw[ip_protox[nxt]].pr_input)(m, off, nxt); } else m_freem(m); /* ... */ 这里的inetsw[]包含的是其所支持的协议,nxt是协议号,一般相关于ip->ip_p (查看 http://www.iana.org/assignments/protocol-numbers/protocol-numbers.xml),但是在这个情况却来自ipcomp->comp_nxt,m是用于调整未压缩有效负载指向的mbuf结构。 未压缩报文分派到ipcomp协议处理器所提供的相应的协议处理程序,这个递归实现没有正确检查栈溢出,因此可触发一个远程未验证内核内存破坏漏洞。 NetBSD/KAME网络栈用于多个操作系统,如Xnu, FTOS,嵌入设备和网络应用设备,早期的FreeBSD/OpenBSD版本。 NetBSD NetBSD 5.0.2 NetBSD NetBSD 5.0.1 NetBSD NetBSD Current NetBSD NetBSD 5.1 NetBSD NetBSD 5.0 RC3 NetBSD NetBSD 5.0 KAME KAME project 0 FreeBSD FreeBSD 6.0 .x FreeBSD FreeBSD 6.0 -STABLE FreeBSD FreeBSD 6.0...

0%
暂无可用Exp或PoC
当前有0条受影响产品信息