[問題]
OracleTrace機能を使用する場合は、以下の2つの問題にご注意ください。
1)バッファのオーバーフローが発生するという不具合が存在します。
2)$ORACLE_HOME/bin/otrcrepにSETUIDビットがたっている場合は、1)の不具合によってセキュリ
ティー問題が発生し得ます。
[対象リリース]
問題が発生するリリース :Oracle Database 7.3.x, 8.0.x, 8.1.x, 9.0.1
問題を修正したリリース :Oracle9i Database Release2(9.2)
問題を修正予定のPSR :なし
[対象プラットフォーム]
全てのUNIXプラットフォーム
[原因]
1) バッファオーバーフローの不具合
以下の両方の条件に該当する場合、$ORACLE_HOME/bin/otrcrepが環境変数ORACLE_HOMEを文字列に変
換する際に、バッファのオーバーフローが発生します。
・OracleTrace機能を使用している。
・環境変数ORACLE_HOMEの文字列が240byte以上である。
本不具合は、Oracle9i, Release 2 にて修正されております。
2) セキュリティー問題
$ORACLE_HOME/bin/otrcrepにSETUIDビットがたっている場合(*1)、バッファのオーバーフローを利用
すると、権限のないユーザがotrcrep所有ユーザ(Oracleインストールユーザ)のOS権限を使用出来てし
まいます。
その結果、共有メモリ上の変数を書き換えたり、任意のコードを実行出来る危険性があります。
[対処]
1) バッファオーバーフローの不具合
環境変数ORACLE_HOMEの文字列が240byte以上である場合は、OracleTrace機能をご使用にならないで
下さい。(oracle_trace_enable=Falseとする。デフォルトFalseです。)
2) セキュリティー問題
以下のファイルにはSETUIDビットをたてないようにお願いします。
% cd $ORACLE_HOME/bin
% chmod -s otrccol otrccref otrcfmt otrcrep
% chmod 751 otrccol otrccref otrcfmt otrcrep
[良くある質問と回答]
Q. SETUIDビットがたっているかはどのようにして確認するのですか。
A. 以下の手順でご確認ください。(otrccolのSETUIDビットを確認する例)
% cd $ORACLE_HOME/bin
% ls -l otrccol
<SETUIDビットがたっている場合>
-rwsr-s--x 1 oracle dba 1350728 6月 4日 1999年 otrccol*
^ ^
<SETUIDビットがたっていない場合>
-rwxr-x--x 1 oracle dba 1372772 6月 29日 2000年 otrccol*
[更新履歴]
2004/08/12 文書管理情報を更新
2003/08/13 9.2でのFixについての情報を追加
2001/11/06 [良くある質問と回答]を追加
2001/10/31 対象Versionに7.3.xを追加
|