First appeared: June 4, 2000
Last update: Oct 12, 2002
Copyright (C) 2000-2002 Hideaki Goto


Solaris7 固有の問題

1. umask が 0000 で端末エミュレータが立ち上がる
あまり知られていないようですが、Solaris7(SPARC) には 重大なセキュリティホールを誘発するような不具合があります。 (Intel版は未確認)
Sun はこの不具合を認識していますが(Bug ID: 4215659,4275562)、 2000年5月の時点で Recommended Patch Cluster にはまだ パッチが含まれていないようです。

rootで共通デスクトップ環境(CDE)でログインして、 フロントパネルから「このホスト」(dtterm)を起動すると(下図参照)、 umask が 0000 のシェルが立ち上がります。 この状態 で dtterm からファイルを作成すると、パーミッションが -rw-rw-rw- になり、誰でも変更可能なファイルになります。

Front Panel

Dtterm

もし /.rhosts や /etc/hosts.equiv, /etc/dfs/dfstab などの 重要なファイルを group や other に書き込み許可の状態で作成 してしまうと、重大なセキュリティホールになります。 rootでCDEで作業をする時は十分に気を付けましょう。

なお、CDEの「コンソール」や、コンソールログインでは umask が 022 (正常) です。また、CDEで前回起動されて セッションが保存されていた dtterm でも umask が 022 に なっていて、これも正常です。 CDE の背景でマウスを右クリックし、ワークスペース・メニュー から端末エミュレータ(dtterm)を立ち上げても、umask は 022 に なります。 /.profile に umask 022 と書いてあっても、 「このホスト」から起動された dtterm には反映されません。

既に稼働しているWSでも、危険なパーミッションのファイルを誤って 作成していたりしないか調べておくべきです。 other writable になっているファイルとディレクトリは、下の例の ようにして、find で探すことができます。
    # find . -perm -2 -type f -print
    # find . -perm -2 -type d -print
group writable になっているファイルとディレクトリを探すには、 次のようにします。
    # find . -perm -20 -type f -print
    # find . -perm -20 -type d -print
元々 group writable になっているファイルやディレクトリもある ので、注意しましょう。 また、悪意をもったユーザによって 既に owner が変更されている場合もありえます。 もし不正に root 権限が使われた形跡があれば、他にも色々なバックドア を作られている可能性が高いので、システムを再インストール すべきです。

← 戻る