個人的なメモと備忘録 2005年 5月

HOME | LastUpdate: 2005-05-05

目次


2005.05.05(Thu)

最近、時間的な余裕がないため、更新が滞っています。今後もしばらくは更新は不定期になるかもしれません。

PHP と Web アプリケーションのセキュリティについてのメモに、以下の項目を追加しました。

>>PHP

*register_globals が On の環境でも Off と同様の状態にする方法

(IN)SECURE Digital Security Magazine という PDF の雑誌の Security vulnerabilities in PHP Web applications という章に register_globals について、興味深い記事があったのでメモしておきます。

register_globalsOn の環境で、変更できない場合でも register_globals によるグローバル変数の汚染を PHP スクリプト側で防ぐ方法です。雑誌に載っていたスクリプトは間違っていましたので、少し書き換えました。PHP スクリプトの最初で実行すると、グローバル変数の汚染を防ぐことができます。

if ( ini_get( 'register_globals' ) ) {
     foreach( array_keys( $_REQUEST ) as $key ) {
         unset( $GLOBALS[$key] );
     }
}

register_globals の弊害については、第 28章グローバル変数の登録機能の使用法(PHP マニュアル)を参照してください。

register_globals はグローバル変数汚染の問題から Off にすることが推奨され、PHP 4.2.0 以降ではデフォルトで Off になっています。ただ、PHP の古いスクリプトでは register_globalsOn であることが前提となっているものもあり、互換性への配慮から php.ini や .htaccess などで register_globalsOn になっていることがあります。設定を変更して Off にできれば良いのですが、設定ファイルを変更するような権限がない、または事情により、変更できない場合、上記のスクリプトで register_globalsOff になっているのと同様の状態にすることができます。

*Hardened PHP v0.2.7 公開

Hardened-PHP project より PHP 4.3.10 / PHP 4.3.11 / PHP 5.0.4 に対するセキュリティ強化のための Patch 集が公開されています。

同ページで以前のバージョンの PHP に存在したセキュリティ問題についての Advisory や exploit コードが公開されています。

*PHP Namazu モジュール

PECL : Package : namazu で公開されていた PHP の Namazu モジュールはライセンス問題により、php-i18nに移動して公開されました。PECL で公開されていた時点からの変更は無いようですが、バージョンは php-namazu-2.3.1 になっています。

*その他

PHP Conference session slides :: a programmer's best friend で、PHP Conference で発表されたスライドの一部が公開されています。

  • Go OO! - Real-life Design Patterns in PHP5
  • Component and Event-Driven Architectures Building Flexible Applications in PHP5

>>セキュリティ関係

>>気になったニュース、ツールなど

2005.04.04 から 2005.05.05 までの間に公開、更新されたツールなどです。

▲ 目次へ戻る


更新履歴

2005.05.05

このページを作成。2005年 5月 5日分を追加。

▲ 目次へ戻る

LastUpdate: 2005-05-05 | HOME