Development
Canonicalで重複URLを統一
http://googlewebmastercentral.blogspot.com/2009/02/canonical-link-element-presentation.html では、サーチエンジンに登録されるURLをまとめる為に <link rel="canonical" href="http://example.com/page.html"/…
Zend_Toolの使い方 – パスに入れない
Zend_ToolのzfコマンドがZendFrameworkのバージョンによって使えたり、使えなかったりする問題で困っていたのですが原因が分かりました。 Zend_Toolのzfコマンドでプロジェクトを作成すると $ zf create project ZendFrameworkのファイルをカレントディレクトリのlibraryに全てコピーします。プロジェクト…
PHP:既知のセキュリティ脆弱性 – Session Adoption
追記:より新しい情報については間違いだらけのHTTPセッション管理とその対策をどうぞ。 PHPには広く知られているにも関わらず放置されている既知のセキュリティ脆弱性が幾つかあります。その一つがセッションモジュールのセッションアダプション(Session Adoption)脆弱性です。この脆弱性は現在広く利用されているWebアプリケーションの安全性に、非常に大…
PHP4.4.9のセキュリティ状態
PHP4のサポートは2008/8/8を持って終了しました。サポート終了に合わせて、最後のPHP4リリースとなる4.4.9がリリースされています。サポートが終了していますが、稼動中のPHPの半分はまだPHP4であるとる統計情報もあり、まだまだ現役です。
PHP 5.3の名前空間仕様が変更されました
名前空間に関する議論は5年以上も行われていたのですが、今度こそ結論が出たようです。 何故このようなエントリを書くかというと、Software Design(技術評論社)の11月号にPHPの最新情報としてα版PHP 5.3を紹介しているからです。入稿後に仕様変更があったので最新号の記事ですが既に内容が古くなってしまいました。 # とは言ってもまだ新しい仕様のP…
ホワイトリストとブラックリスト – Firewallの場合
ホワイトリストとブラックリストの議論はFirewallの利用が一般的になる過程で十分に議論され、90年代に議論され尽くした、と思っていました。しかし、解説の余地はまだまだあるようです。Firewallによるセキュリティ対策を簡単に振り返り、セキュアコーディングの現状を考察したいと思います。 追記:このエントリはネットワークFirewallのポートフィルタリン…
JavaScript無しでフォームをコントロール
言われてみれば、そう言えばそんな機能があったね、と思うような機能はよくあります。 JavaScript無しでフォームを制御する方法はHTML4が策定されている時に追加された機能です。 http://www.w3.org/TR/html401/interact/forms.html#h-17.2.1 (さらに…)
プログラミングではホワイトリスティングが基本
「ホワイトリスト方式の優位は神話」と題するエントリに私のブログホワイトリストはどう作る? が引用されている事を教えていただきました。 誤解されないように書こうとすると、どうしても長文になります。暇な方だけお付き合いください。
PHPのSessionモジュールの脆弱性
たまたま目に止まったブログがあるので紹介します。 PHP:session_set_save_handlerリファレンスマニュアルのサンプルにパス・トラバーサル脆弱性 http://www.tokumaru.org/d/20080818.html#p01 [php]session_set_save_handlerのパストラバーサルで任意コマンドの実行が可能 h…