sourceプラグインにXSS脆弱性(IE/Opera限定)†
- ページ: BugTrack
- 投稿者: reimy
- 優先順位: 緊急
- 状態: 完了
- カテゴリー: プラグイン
- 投稿日: 2003-03-11 (火) 07:50:11
- バージョン: source.inc.php 1.6
メッセージ†
source.inc.phpではソースをtext/plainで出力しますが、Microsoft Internet Explorerではplainなテキストの中にJavaScriptや<object>を埋め込んだ場合でもJavaScriptやActiveXなどを実行してしまいます。Opera 6でも設定によっては同様の問題が発生します(Opera 7は不明)。
- (例)
- http://pukiwiki.sourceforge.jp/dev/?plugin=source&page=sample
簡単なIE対策法は、先頭行に<plaintext>*1を出力すること。
- (例)
- http://pukiwiki.sourceforge.jp/dev/?plugin=source&page=sample2
Operaの場合はOpera側の設定で「mime-typeで判断する」に設定しておけば防げるので、PukiWIki側での対策はとくに必要なし(でいいよね?)。
- 一番の安全策は、差分やバックアップ同様、サニタイズしたうえで<pre>で囲んでhtmlとして出力するパターンかな。 -- reimy 2003-03-11 (火) 13:09:18
- どうしましょ。とりあえずplugin=backup&action=sourceの出力形式に合わせてしまいますか。 -- ぱんだ 2003-03-12 (水) 12:41:07
- plugin=sourceの出力を利用してごにょごにょする外部プログラムは動かなくなりますが… -- ぱんだ 2003-03-12 (水) 12:51:04
- 外部プログラム側で対応してもらうしかないような… -- reimy 2003-03-12 (水) 22:52:30
- とりあえずcvs:plugin/source.inc.php(v1.4:r1.8)(v1.3.3:r1.4.2.1)を上げておきました。ソースをごにょごにょする場合は<pre id="source">~</pre>間を取り出し、HTMLエンティティを復元してください。 -- ぱんだ 2003-03-13 (木) 15:10:59