« ホワイトリストはどう作る?OpenIDのライブラリにはCSRFに脆弱な物が多い »

5 comments

Comment from: つきみやきりゅ。 [Visitor] · http://angelicwing.net/
個人的には
・新プロジェクト
 PHP4系でやる意味はもはや無し。PHP5.2.xスタート。
・現在PHP4.4.xで動いているプロジェクト
 5.3.xのリリースを待って移行

かなぁと思ってるんですが、2点ほど不安なことが。
・PHP5.3.0の提供時期
 なんか結構揉めてる印象でいつになるやら。
・何を持って「実用レベルに達してる」と言うか
 毎回悩みます。
・SRAのサービスを使うにしても・・・
 仕方ないとはいえ「可能であればバックポートした修正パッチを提供します。」と保険がかけてあって
 じゃあ、不可能な場合はどうするの?と不安が。

うーんうーん。
2008/02/05 @ 08:29
Comment from: Yasuo Ohgaki [Member] Email · http://www.ohgaki.net/
ご無沙汰しております。

>・新プロジェクト
> PHP4系でやる意味はもはや無し。PHP5.2.xスタート。

もちろん新規プロジェクトをPHP4で始めるのはナンセンスです。(本文に追加しました)

アプリケーションはそのままでPHP4からPHP5に移行するだけのユーザの場合、コストをかけてPHP5に今移行するより、アプリの改修時などのタイミングに合わせてPHP5に移行するのが最良だと思います。
開発会社としては「単純にPHP5に移行するだけではもったいない。もう少し予算を付けて新システムリリースできるよう新機能も追加し、拡張性や安全性向上の為にコードのリファクタリング等も盛り込みましょう」と提案する方が良いと思います。発注側にもメリットがある提案だと思います。

> かなぁと思ってるんですが、2点ほど不安なことが。
>・PHP5.3.0の提供時期
> なんか結構揉めてる印象でいつになるやら。

何時になるかは今の所だれも分からない、と思います。
PHP6 - Unicode = PHP 5.3
という構図ある以上、個人的には、少なくともPHP6のα版くらいはリリースされないとPHP 5.3のリリースは無いはず、と思っています。

となるとPHP6アルファ版は何時?と言う話になると思いますが、開発している方の気持ちは遅くとも年内だと思います。

実用になるのは2年くらいかかるかも知れないと考えていると安全かと思います。取り合えずその2年間はPHP4アプリはそのままにして、新規案件だけはPHP5.2で作っておく、のが妥当な選択かと思います。2年経ってもPHP4のままの物はPHP5へ移行するのが良いかと思います。
# 全てのユーザが取れる選択肢ではないですが
# 同じサーバでPHP4とPHP5を動かす方法には
# - CGI版(FCGIが好ましい)とモジュール版の両方を使う
# - ポートを変えて両方を動作させ、プロキシで透過的にアクセスさせる
# などがあります。こうすればサーバリソースも無駄になりません。



>・何を持って「実用レベルに達してる」と言うか
> 毎回悩みます。

少なくともPHP 5.3.1までは待つ方が良いかと思います。(本当はPHP 6.1がリリースされるまで待つの吉かと思っています... PHP 5.0の惨状をご存知の方は良く分かる話だと思います。PHP 6.1がリリースされてもPHP 5.3のままである可能性は非常に高いと思います。もちろん最新版がPHP 5.4になっている可能性も捨てきれませんが、PHP 5.3からPHP5.4への移行は比較的容易になるだろうと予想できます) やはり自分でテストしてみるのが一番だと思います。現状のPHP 5.2でも仮想ホストを利用している環境では、ini設定がおかしくなる問題があったりしますが、このような問題は実際の運用環境に近い状態で検証しないと分かりません。
# こういう事があるので企業ユーザはPHP4からPHP5への移行は
# 難しいですよね... オープンソースなら取り合えずリリース、バグ報告
# はユーザから、で良いのですけど。


>・SRAのサービスを使うにしても・・・
> 仕方ないとはいえ「可能であればバックポートした修正パッチを提供します。」と保険がかけてあって
> じゃあ、不可能な場合はどうするの?と不安が。

専用の攻撃コードをPHPスクリプトとして実行しなければならないような問題は別として、リモートコード実行ができるようなバグは何があっても修正パッチが出るはずです。
実はバックポートだけでない、パッチも既にあったりします。このあたりは今までのPHP4のサポートよりパッチが早くてより安全だと言えると思います。

2008/02/05 @ 09:54
Comment from: つきみやきりゅ。 [Visitor] · http://angelicwing.net/
フォローありがとうございます。
>PHP 5.0の惨状をご存知の方は良く分かる話だと思います。
これは自らが踏みまくってるので何とも言えない・・・(苦笑
流石に5.3はあの時ほど酷くはならないかなぁとは思うものの
PHP4から移行しようと思うとやっぱりリスキーですね・・・。
(何よりシステムの移行をしたあと、問題がないことを証明するのが難しい)

>実はバックポートだけでない、パッチも既にあったりします。
>このあたりは今までのPHP4のサポートよりパッチが早くてより安全だと言えると思います。
なるほどー。
出来たらそういうことはもうちょっとアピールしてほしいなぁ、と感じます。
2008/02/05 @ 14:04
Comment from: かのみ [Visitor]
セキュリティホールmemoから来ました。

>PHP6 - Unicode = PHP 5.3
>という構図ある以上、個人的には、少なくともPHP6のα版くらいはリリースされないと

この間、Zendジャパンのセミナーにいってきたのですが、5.3にUnicodeが入るようです。
6のテスト版が5.3って感じかもですね。
2008/02/06 @ 11:29
Comment from: Yasuo Ohgaki [Member] Email · http://www.ohgaki.net/
PHP 5.3にはUnicodeサポートが入るのではなくICU機能のサポートが入る(予定)です。

少なくともPHP開発者の間でUnicodeサポートと言うと、ZendEngineのUnicodeサポートの事を意味します。

ZendEngineのUnicodeサポートはICUを使って実装されていますが、ICUの別の機能(ロケールやエンコーディング変換)などはZendEngineと関係ない部分もあります。これらの部分がPHP 5.3にもバックポートされる予定です。

ですから、UnicodeサポートがPHP 5.3に入る、と言う表現はあまり適切でないと思います。

PHP6のUnicodeサポート

- binaryの導入
- string型の場合、文字列がUnicodeとして扱われる
- 互換モードの提供
- string型がUnicode文字列の場合、モジュール関数が文字列をUnicode文字列として認識するように変更
 (代表例がstrlen)

といったところが代表的な違いです。ZendEngineのバージョンが異なるので、当然ですがこれらはPHP 5.3では実装されません。
2008/02/06 @ 12:29

Leave a comment


Your email address will not be revealed on this site.

Your URL will be displayed.
PoorExcellent
(Line breaks become <br />)
(Name, email & website)
(Allow users to contact you through a message form (your email will not be revealed.)