眠る開発屋blog ある開発屋の雑感。日々勉強。

2007/6/9 土曜日

PHPはセキュリティ的にダメダメなの

Filed under: 技術メモ — dev0000 @ 20:04:06

RubyよりPHPを好む初心者
なんかコメント欄を眺めていると、
「PHP = セキュリティ的にダメダメなアプリケーションしか作れない」
みたいに読めてしまえるのだが、それってどうなのよ。

確かにRailsとかフレームワークの導入により、
コードの適用範囲に制限をかける => あやうげな処理は実行されない => セキュアな環境を確保
というのはなんとなく理解できる。

ただまぁPHP自体がまるで無策だったというわけではなくて、magic_quote_gpcがSQLインジェクション対策として採用されていたり(効果はちょっとアレだが)、safe_modeが存在していたり(バグ報告が多くて、PHP6からなくなるんだっけ)。
なんていうか当初は初心者ラブを強く意識しすぎたあまり、あまりWebアプリに詳しくなくても「それなりに問題なさそうな」セキュリティ対策をとっていたのだとは思う。
それに「簡単であること」を重視しすぎた為にセキュリティをおざなりにしていた部分もあるわな。register_globals とか。
ただ、広く世の中に浸透するうちにやっぱりそのスタイルは相当ムリがあると分かってきたので、ここ最近は軌道修正を行って・・・利便性を多少犠牲にしつつ、セキュリティについては実装者が注意を払ってね、みたいになっている今日この頃ではないかと。

ってか、PHPの既存のセキュリティ機構はアテにならなくて、自分達でそれなりのものを実装するか信頼性の高いフレームワークないしライブラリを採用したほうがいいのだろうが、別に他の言語でもそれは変わらない気もするのだよ。
また、広範囲に渡り採用されているという件で考えると、一時期「FirefoxはIEよりセキュリティホールが少ない」という神話が喧伝されていたのだけど、それに近いものもあるのではないのかな。
広く出回っているが故にPHPがターゲットになりやすいのは事実ではありますが。

こっちも参考になるかも。
なぜPHPアプリにセキュリティホールが多いのか?

一番危ういのは「PHPではなく〇〇だからセキュリティはより万全」という考え方って思うのだけど。

Powered by WordPress