aname プラグインに XSS 脆弱性

  • ページ: BugTrack
  • 投稿者: masao
  • 優先順位: 緊急
  • 状態: 完了
  • カテゴリー: 本体バグ
  • 投稿日: 2003-03-20 (木) 05:07:17
  • バージョン: 1.4pre6, 1.3.4

メッセージ

aname プラグインの引数をそのまま出力している部分があります(1.3, 1.4とも)。

例:

#aname("><s>test</s>)
#aname: Invalid ID string: "><s>test</s>

  • 正規表現の指定ミスだね。下記のようにすればOK。-- reimy 2003-03-20 (木) 10:09:54
      $id = $args[0];
      $body = (func_num_args() > 1) ? $args[1] : '';
    
    - if (!preg_match('/[A-Za-z][\w\-]*/',$id)) {
    + if (!preg_match('/^[A-Za-z][\w\-]*$/',$id)) {
        return FALSE;
      }
  • cvsに投入しました。cvs:plugin/aname.inc.php(v1.4:r1.9) -- ぱんだ 2003-03-22 (土) 07:51:22
  • 修正ありがとうございます。ただ、1.3 系も以下のような修正が必要な気がしますが、いかがでしょうか。 -- masao 2003-03-22 (土) 22:54:13
       if (eregi("^[A-Z][A-Z0-9\-_]*$", $aryargs[0]))
         return "<a name=\"$aryargs[0]\" id=\"$aryargs[0]\"></a>";
       else
    -    return "Bad Aname!! -- ".$aryargs[0]."\n";
    +    return "Bad Aname!! -- ".htmlspecialchars($aryargs[0])."\n";
     }
     ?>
  • 見落としていました。直します。 -- ぱんだ 2003-03-23 (日) 00:14:34
  • cvsに投入しました。cvs:plugin/aname.inc.php(v1.3.4:r1.6.2.1) -- ぱんだ 2003-03-23 (日) 00:15:19

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2003-03-23 (日) 01:48:55
Site admin: PukiWiki Development Team

PukiWiki 1.5.2+ © 2001-2019 PukiWiki Development Team. Powered by PHP 5.6.40-0+deb8u7. HTML convert time: 0.185 sec.

OSDN