FreeBSD-SA-04:01 mksnap_ffs模块错误清除文件系统flag (BSD,补

来源:岁月联盟 编辑:zhuzhu 时间:2005-07-09
FreeBSD-SA-04:01 mksnap_ffs模块错误清除文件系统flag (BSD,补丁)

发布日期: 2004-2-3
涉及程序:
FreeBSD mksnap_ffs模块

描述:
FreeBSD-SA-04:01 mksnap_ffs模块错误清除文件系统flag

详细:

挂接的文件系统通常都有一系列flag说明,许多flag对文件系统的实现和可靠性都会有一定程度的影响。

FreeBSD 5.1/5.2中的指令mksnap_ffs( )用于创建一个文件系统的快照(snapshot)。 snapshot 的目的和作用很多,但最主要的是使在激活的文件系统上运行指令fsck( ) 和dump( )。

创建一个文件系统快照的核心接口和改变文件系统flag是一样的。但是由于mksnap_ffs( )在执行时的疏忽而仅仅只调用了快照的flag设置程序,导致该文件系统的其他flag值被重置到缺省值。

指令mksnap_ffs( )的这一缺陷,可导致当对一个激活的文件系统频繁调度备份或由于其他原因需要使用mksnap_ffs( )指令时,会清除掉该文件系统的相关的许多flag,使该文件系统的实现和可靠性受到影响。

当然,mksnap_ffs( ) 指令缺省只有超级用户和"operator"组成员有执行权限,所以用户不必担心恶意安全者可利用此缺陷进行权限提升。

受影响系统:
FreeBSD 5.1-RELEASE
FreeBSD 5.2-RELEASE


安全方法:
暂无有效安全代码

解决方案:
厂商已提供补丁,建议用户立即下载:

[FreeBSD 5.1 systems]
# fetch ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/patches/SA-04:01/mksnap_ffs_5_1.patch
# fetch ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/patches/SA-04:01/mksnap_ffs_5_1.patch.asc

[FreeBSD 5.2 systems]
# fetch ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/patches/SA-04:01/mksnap_ffs_5_2.patch
# fetch ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/patches/SA-04:01/mksnap_ffs_5_2.patch.asc

下载后,以root用户运行该指令进行安装:
# cd /usr/src
# patch < /path/to/patch
# cd /usr/src/sbin/mksnap_ffs
# make obj && make depend && make && make install


临时解决方案:
* 不要使用指令mksnap_ffs( ),即使在使用指令dump( )时也不要使用选项”-L”.
* 如果可以的话,建议删除mksnap_ffs模块:
# rm /sbin/mksnap_ffs

图片内容