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

HOME | LastUpdate: 2005-03-20

目次


2005.03.20(Sun)

>>セキュリティ関係

*Mozilla

Mozilla 1.7.5 以前、Mozilla Firefox 1.0.1 以前、Mozilla ThunderBird 1.0.0 以前のバージョンで、右クリックで表示されるメニューから "Save Link As..." を選択した場合、ステータスバーに表示されていた保存先とは違うリンクをダウンロードしてしまう問題が報告されています。

この問題は、Mozilla 1.7.6、Mozilla Firefox 1.0.2、Mozilla Thunderbird 1.0.2 で修正される予定になっています。

*Gentoo Linux
*その他

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

▲ 目次へ戻る


2005.03.13(Sun)

>>PHP 関連

*PHP のソースコード整形ライブラリ

PHP のソースコード整形を行うライブラリである、PEAR::PHP_Beautifier を使ってみました。その時の簡単なメモです。PEAR::PHP_Beautifier は、まだベータ版ですので、何か問題があるかもしれません。また、使用するためには PHP 5.0.0 以上、PEAR:Log 1.8 以上などが必要です。詳しくは、Package Information: PHP_Beautifier の Dependencies を参照してください。

インストールは、以下のように、パッケージを取得してから、PHP 5 の pear コマンドを使用しました。

$ wget http://pear.php.net/get/PHP_Beautifier-0.1.3.tgz
$ sudo /usr/local/php5/bin/pear install PHP_Beautifier-0.1.3.tgz

PHP_Beautifier-0.1.3.tgz を展開すると、PHP_Beautifier-0.1.3/scripts/php_beautifier というコマンドラインから使用できる PHP スクリプトが含まれています。スクリプトの 1 行目を #!/usr/local/bin/php5(PHP 5 の CLI 版のパス) に書き換えてから /usr/local/bin/ にコピーしました。

$ tar zxvf PHP_Beautifier-0.1.3.tgz
$ vi PHP_Beautifier-0.1.3/scripts/php_beautifier
$ sudo cp PHP_Beautifier-0.1.3/scripts/php_beautifier /usr/local/bin/

以下のようにコマンドラインから実行すると、整形済みの PHP スクリプトが表示されます。また、オプションにより、フィルタの適用やインデントをスペースにするか、タブにするかの設定なども行えます。

$ php_beautifier index.php

PEAR のコーディングスタイルとして整形するには、以下のように実行させれば良いようです。

$ php_beautifier -l "Pear()" index.php

コマンドラインから使用する場合の使用方法については、PHP_Beautifier : Command Line use を参照してください。

以下のように、PHP スクリプト中でファイルを読み込んで整形することも可能です。

<?php
require( 'PHP/Beautifier.php' );
$beautifier = new PHP_Beautifier();
$beautifier->addFilter( 'ArrayNested' );
$beautifier->setInputFile( 'index.php' );  // 整形する PHP ソースコードファイルを指定
$beautifier->process();
$beautifier->show();
?>

addFilter() で使用可能なフィルタについては、PHP_Beautifier_Filter : Direct descendents を参照してください。

少し試してみたところでは、環境の問題なのかもしれませんが、switch 文に defalut: が含まれていた場合、インデントが崩れるという問題がありました。それでも、読み慣れないインデントになっている PHP のソースコードなどを読む必要がある場合には便利なライブラリ、ツールとして使えるかもしれません。

*Pearified

Pearified という人気のある PHP のツールやライブラリなどを PEAR パッケージとして提供するサイトが立ち上がりました。これを利用するには、PEAR-1.4.0a4(アルファ版扱い) 以上が必要ですが、pear コマンドで簡単にインストール、バージョンアップが行えるようになります。

現在は、PHP では有名なテンプレートエンジンの Smarty が登録されています(Pearified Smarty 2.6.7 Released)。

>>セキュリティ関係

*Windows
*その他

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

▲ 目次へ戻る


2005.03.06(Sun)

>>PHP 関連

*PHP "readfile()" Denial of Service

PHP4 の readfile() 関数に問題があり、DoS 攻撃を引き起こすことが可能という問題が報告されています。ページサイズの数倍を超えるようなサイズのファイルを開こうとすると、PHP が HTTP サーバをクラッシュさせてしまう可能性があるようです。

SUSE Linux では既に修正されていたパッケージが公開されたようですが、公式には修正されたバージョンは公開されていません。

回避方法として、信頼できないファイルを readfile() で開かないという方法が挙げられています。

*Magic Quotes Headaches

Magic Quotes Headaches (sitepoint) から。

Magic Quotes は POST や GET などのリクエストに'(シングルクォート)、"(ダブルクォート)、\(バックスラッシュ)、\0(NULL バイト) が含まれていた場合、自動的にエスケープを行うという機能ですが、自動的にそれを行うということの弊害についての解説と対処方法が書かれています。

Magic Quotes は無効にしておき、必要に応じてエスケープを行う方が良いということのようです。設定で変更できない場合のために無効になっているのと同様の状態にするサンプルスクリプトも紹介されています。

Magic Quotes は PHP のインストール時にコピーする php.ini-dist では有効に、php.ini-recommened では無効になっています。無効にする場合は、php.ini で以下のように設定します。

magic_quotes_gpc = Off

または、Apache の httpd.conf や .htaccess では以下の設定を加えることで無効にすることができます。

php_flag magic_quotes_gpc Off
*Services_Trackback

Proposal for "Services_Trackback" から。

PEAR に Trackback ping の送受信を行うことができるライブラリが申請されています。以前に申請されたのですが、公式リリースにはならなかった Net_Trackback を置き換えることになるようです。

>>セキュリティ関係

*Mozilla

Firefox 1.0.1 が公開されたのに合わせて修正されたセキュリティ情報が公開されています。Mozilla 1.7.5 以前や Thunderbird 1.0 以前でも影響を受けるものがあるそうです。次のバージョンで修正される予定になっています。

Firefox 1.0.1 の不具合とされた問題は Firefox 1.0 では zip 版を使用していてそれを 1.0.1 のインストーラで上書きインストールした場合のみ発生するそうです。リリースノートにこの問題の回避方法が書かれています。

*Squid

特定の条件下で Set-Cookie ヘッダが別のユーザに漏れる可能性のある問題が報告されています。Squid STABLE9 に対する Patch が公開されています。

*Sylpheed

Sylpheed 1.0.2 以前のほぼ全てのバージョンで、ASCII 以外の文字を含む特定のヘッダをもつメッセージに返信したときに、Buffer Overflow が起きる可能性のある問題が見つかったそうです。緊急で Sylpheed 1.0.3 が公開されました。Sylpheed 1.0.3 にアップデートすることが強く推奨されています。開発版にはこの問題はないそうです。

2005.03.13 追加

*その他

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

▲ 目次へ戻る


更新履歴

2005.03.20

2005年 3月20日分を追加。

2005.03.13

2005年 3月13日分を追加。

2005.03.06

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

▲ 目次へ戻る

LastUpdate: 2005-03-20 | HOME