首页 -> 安全研究

安全研究

安全漏洞
FreeBSD IPFW 'Me'规则远程地址匹配漏洞

发布日期:2001-08-17
更新日期:2001-08-20

受影响系统:

FreeBSD FreeBSD 4.3-STABLE
FreeBSD FreeBSD 4.3-RELEASE
FreeBSD FreeBSD 4.x
描述:

ipfw是一个系统工具,可以实现IP包过滤、重定向、流量记帐等功能。ipfw 'me'规则
指定'me'的源或者目的地址,用来匹配在本地接口商配置的任一IP地址。

ipfw 'me'规则的实现中存在一个漏洞,当'me'规则用在点到点接口时,将导致点到点接口
的远端IP地址也被认为是本地IP地址。

因此,如果一个IP报文的源或者目的IP地址是点到点连接的远端IP地址,那么这个报文在
匹配'me'规则时会被错误处理。例如,存在如下的点到点接口:

  tun0: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1500
          inet 1.1.1.1 --> 2.2.2.2 netmask 0xff000000

存在下面的ipfw规则:

  00010 allow ip from me to any

尽管管理员试图只允许本地IP对外界的访问,但实际上,源IP地址为2.2.2.2(点对点接口
的远端IP)的报文也会被允许访问任意地址,包括本地主机。这可能导致未授权的访问。

<*来源:Igor M Podlesny (poige@morning.ru)
        FreeBSD-SA-01:53: ipfw `me' on P2P interfaces matches remote address
*>


建议:

FreeBSD已经提供了补丁下载.

1. 对于FreeBSD 4.x系统,可以下载源码补丁:

# fetch ftp://ftp.freebsd.org/pub/FreeBSD/CERT/patches/SA-01:53/ipfw.patch
# fetch ftp://ftp.freebsd.org/pub/FreeBSD/CERT/patches/SA-01:53/ipfw.patch.asc

# cd /usr/src
# patch -p < /path/to/patch
# install -c -m 0444 -o root -g wheel /usr/src/sys/netinet/in_var.h /usr/include/netinet/
# cd /usr/src/sbin/ipfw
# make depend && make all install

2. 对于FreeBSD 4.3-RELEASE用户,可以下载二进制升级程序:

# fetch ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/packages/SA-01:53/security-patch-ipfw-01.53.tgz
# fetch ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/packages/SA-01:53/security-patch-ipfw-01.53.tgz.asc
# pkg_add security-patch-ipfw-01:53.tgz



浏览次数:6904
严重程度:0(网友投票)
本安全漏洞由绿盟科技翻译整理,版权所有,未经许可,不得转载
绿盟科技给您安全的保障