calendar_viewer プラグインに XSS 脆弱性

メッセージ

1.3系、1.4系とも、 $vars['date_sep'] や $vars['file'] をそのまま出力している箇所があります。

以下のような修正が必要だと思います。 (動作確認はしてませんが。。。)

diff -u -b -r1.5 calendar_viewer.inc.php
--- calendar_viewer.inc.php	2 Mar 2003 06:37:40 -0000	1.5
+++ calendar_viewer.inc.php	3 Mar 2003 01:29:44 -0000
@@ -235,13 +235,14 @@
 
   }
   //リンク作成
+  $s_date_sep = htmlspecialchars($date_sep);
   if ($left_YM != ""){
-    $left_link = "<a href=\"$script?plugin=calendar_viewer&amp;file=$enc_pagename&amp;date=$left_YM&amp;date_sep=$date_sep&amp;mode=$mode\">$left_text</a>";
+    $left_link = "<a href=\"$script?plugin=calendar_viewer&amp;file=$enc_pagename&amp;date=$left_YM&amp;date_sep=$s_date_sep&amp;mode=$mode\">$left_text</a>";
   }else{
     $left_link = "";
   }
   if ($right_YM != ""){
-    $right_link = "<a href=\"$script?plugin=calendar_viewer&amp;file=$enc_pagename&amp;date=$right_YM&amp;date_sep=$date_sep&amp;mode=$mode\">$right_text</a>";
+    $right_link = "<a href=\"$script?plugin=calendar_viewer&amp;file=$enc_pagename&amp;date=$right_YM&amp;date_sep=$s_date_sep&amp;mode=$mode\">$right_text</a>";
   }else {
     $right_link = "";
   }
@@ -285,14 +286,14 @@
   $return_vars_array["body"] = call_user_func_array("plugin_calendar_viewer_convert",$args_array);
 
   //$return_vars_array["msg"] = "calendar_viewer ".$vars["page"]."/".$page_YM;
-  $return_vars_array["msg"] = "calendar_viewer ".$vars["page"];
+  $return_vars_array["msg"] = "calendar_viewer ".htmlspecialchars($vars["page"]);
   if ($vars["page"] != ""){
     $return_vars_array["msg"] .= "/";
   }
   if (preg_match("/\*/",$page_YM)){
     //うーん、n件表示の時はなんてページ名にしたらいい?
   }else{
-    $return_vars_array["msg"] .= $page_YM;
+    $return_vars_array["msg"] .= htmlspecialchars($page_YM);
   }
 
   $vars['page'] = $page;


トップ   編集 凍結 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2003-03-04 (火) 13:18:26
Site admin: PukiWiki Development Team

PukiWiki 1.5.4+ © 2001-2022 PukiWiki Development Team. Powered by PHP 8.2.12. HTML convert time: 0.192 sec.

SourceForge