開発日記
for v1.4 (一部v1.3)
- BugTrack/586 - edit_form() に XSS 脆弱性 (完了)
- cvs:init.php (v1.4:1.77, v1.3:1.20.2.13-1.20.2.14) 前作業+α
- 既存のコードの整理: $get, $post, $vars の内容を一致させる様に努める
- 入力チェックの追加: cmd=, plugin= に英数字 (/^[a-zA-Z][a-zA-Z0-9_]*$/) 以外の入力を許さない
- cvs:html.php (v1.4:1.100)
- edit_form() は、テキスト整形のルールを表示させるためのハイパーリンクについて cmd=edit であることを仮定している様であるのに、未チェックのまま $vars['cmd'] を出力していたため、これを cmd=edit 固定としました。
- どちらの修正でもこの問題は回避できますが、回避であって解決ではありません。
- 解決させるためのサニタイジングは出力の直前ですべきである、という原則?からすると、今後も本体が出力する部分なら本体側、プラグインが出力する部分ならプラグイン側で個別対応する、ということでよろしいですよね。
for 1.3
- error_reporting(E_ALL) にすると出てくる大量のWarningの処理
検討のみ
Last-modified: 2004-06-28 (月) 21:31:17