レンタルサーバー
BIG-server.com
簡単・はやい・大容量・どんな目的にもマッチするレンタルサーバー
HOME プライス お見積もり・プラン選択 お申し込み ユーザーサポート お問い合わせ

■ FreeBSD 7.0 セキュリティパッチの適用方法(rtld7.patch)2009/12/4

FreeBSD 7.0 セキュリティパッチの適用方法

バージョン7.0以降のFreeBSDで、ローカルでルート権限が使用される脆弱性が発見されました。

BIG-server.comでは、緊急にFreeBSD 7.0以降のOSを使用しているサーバーにセキュリティパッチを適用し、
全サーバーでローカルからルート権限を使用できないよう対策しました。

今回のセキュリティパッチの適用方法をご案内いたします。

1、セキュリティパッチの取得

今回のセキュリティパッチは以下のURLで公開されています。

FreeBSD Security Advisory FreeBSD-SA-09:16.rtld
http://docs.FreeBSD.org/cgi/mid.cgi?200912030930.nB39UhW9038238

セキュリティパッチへのリンク
http://security.freebsd.org/patches/SA-09:16/rtld7.patch

このセキュリティパッチを /usr/src に置いてください。

# cd /usr/src
# fetch http://security.freebsd.org/patches/SA-09:16/rtld7.patch

2、/usr/src/libexec/rtld-elf にある rtld.c にパッチを適用する

以下のコマンドでセキュリティパッチを適用してください。

# patch < rtld7.patch
Hmm... Looks like a unified diff to me...
The text leading up to this was:
--------------------------
|Index: libexec/rtld-elf/rtld.c
|===================================================================
|--- libexec/rtld-elf/rtld.c
|+++ libexec/rtld-elf/rtld.c
--------------------------
Patching file libexec/rtld-elf/rtld.c using Plan A...
Hunk #1 succeeded at 358.
done
#

/usr/src/libexec/rtld-elf に rtld.c と rtld.c.orig が作成されるので、
diff コマンドでパッチが適用されている事を確認してください。
# cd /usr/src/libexec/rtld-elf
# diff rtld.c rtld.c.orig
361,366c361,365
<   if (unsetenv(LD_ "PRELOAD") || unsetenv(LD_ "LIBMAP") ||
<     unsetenv(LD_ "LIBRARY_PATH") || unsetenv(LD_ "LIBMAP_DISABLE") ||
<     unsetenv(LD_ "DEBUG")) {
<       _rtld_error("environment corrupt; aborting");
<       die();
<   }
---
>   unsetenv(LD_ "PRELOAD");
>   unsetenv(LD_ "LIBMAP");
>   unsetenv(LD_ "LIBRARY_PATH");
>   unsetenv(LD_ "LIBMAP_DISABLE");
>   unsetenv(LD_ "DEBUG");
#

3、バイナリを更新する

バイナリの更新を確認するため、/libexec にある ld-elf.so.1 の日付を確認してください。
# ls -l /libexec
-r-xr-xr-x 1 root wheel 171656 Mar 31 2009 ld-elf.so.1
#

/usr/src/libexec/rtld-elf で、make を実行してください。
# make obj && make depend && make && make install
/usr/obj/usr/src/libexec/rtld-elf created for /usr/src/libexec/rtld-elf
rm -f .depend
mkdep -f
(省略)
/usr/libexec/ld-elf.so.1 -> /libexec/ld-elf.so.1
#

make コマンドを実行後、再度 /libexec にある ld-elf.so.1 を確認してください。
更新前のファイルは ld-elf.so.1.old にリネームされています。
# ls -l /libexec
-r-xr-xr-x 1 root wheel 172200 Dec 3 18:54 ld-elf.so.1
-r-xr-xr-x 1 root wheel 171656 Mar 31 2009 ld-elf.so.1.old
#

ld-elf.so.1 が make を実行した時間、ld-elf.so.1.old が元のld-elf.so.1ファイルの時間
になっている事を確認してください。

以上でセキュリティパッチの適用は完了です。

ご質問などございましたらお気軽におい問い合わせください。
server@maido3.com

BIG-server.com

Core 2 Duo + SATA 250GB RAID 1 T-Bananaサーバー 完全帯域保証+無制限 わずらわしい設定は一切不要

いま一番お得なページ! 解析
Copyright (C) 1997-2012, BIG-server.com. All Rights Reserved.
レンタルサーバー BIG-server.com
Powered By Maido3.com