PHPが話題らしい

思いつき(妄言)をメモ

[pukiwiki]
-[[Matzにっき: Attacking PHP:http://www.rubyist.net/~matz/20080126.html#p04]]
-[[404 Blog Not Found:「PHPなめんな」と「(Perl|Python|Ruby)をなめんな」の違い:http://blog.livedoor.jp/dankogai/archives/50993137.html]]
-[[Matzにっき:PHP使いの反論:http://www.rubyist.net/~matz/20080129.html#p01]]
-[[港区赤坂四畳半社長:スクリプト言語の美学:http://blog.so-net.ne.jp/shi3z/2008-01-30]]
-[[ぐらめぬ・ぜぷつぇんのはてダ:http://d.hatena.ne.jp/msakamoto-sf/20080129]]

PHPでセキュアなプログラムを書くのは思われているよりは意外な落とし穴があいてて、バッドノウハウが多く必要で大変。なのかも。(たまにしか使わないから知らんけど。。。という人も必要に迫られてやむなく使うからアレなんでしょうけれども。)

たまにしか使わない人が、たまたま時間が無いなかで、でも必要に迫られてコードを書くときに、何も考えないで書いてもセキュアなWebアプリが書ける(後方互換性を考えない)PHPのサブセットが有ると便利なのかも。

-[[[Z]PHPは定期的にネタにされる:http://zapanet.info/blog/item/1217]]
“どういうところで脆弱になりやすいのか、どこで初心者がミスしやすいのか、そこら辺を周知徹底させることが大事です。

たまにしか触らない(けど、たまに使わなきゃいけない)(私のようなズボラな)人間にとっては、情報収集自体が大変だったりするので。。。
それよりも、最初から落とし穴が無いPHPっぽいサブセットの言語が欲しい。

他のことは何もできなくていいから、MVCフレームワーク専用ミニミニ言語。

JAVAに対する、JAVAアプレット、みたいなサンドボックス。

たとえば、ORマッパーを標準でひとつ持つ代わりに、ファイルアクセスは基本禁止、生SQL禁止、外部への接続も基本禁止、とか。
(ホワイトリスト方式で許可)。

高速な正規表現処理と、バイナリ用のベクトル演算エンジンがあれば標準関数は全部マクロでいいんじゃね?とか。

どうせ標準関数が多すぎて憶えられないし、とか。(って、それじゃPerl)

で、aspやactionscript 1.0 みたく、onClick(event)~とか、決め打ちの関数名を書くと、コールバックになる。
(Ajaxを考えると、 onMouseMove()~、onRollOver~ なんかも欲しい。っていうか、インターフェースが決まってると、Ajaxなwidget側にも対応してもらいやすいし。)

MVCのVの部分も、mailform(あて先, ((項目名,文字数),,)みたいなコード一行でメールフォーム出現。
(最近のMVCフレームワークは、既にそうなってるみたい。)

fread(fp,読み込みサイズ)みたいなコードを書かなくてもオーバーフローしないように内部でバッファ処理。
で、エラーハンドリングは基本書かせない。
(要らないわけじゃないけど。。。想定外のデータが来たらアタックだと判断して、処理しない。)

コード量は、Web1ページにつき、一行80文字で、100行~200行。
イベント処理が簡素で、エラーハンドリングを書かずに済めば、これぐらいでおさまるんじゃないかな、とか。

[/pukiwiki]

コメントを残す

メールアドレスが公開されることはありません。