質問箱/3099

カテゴリ
サマリattachプラグインを利用したXSS対策後、attachrefプラグインにて動作不具合
バージョン1.4.5_1
投稿者oggy?
状態完了
投稿日2005-06-08 (水) 23:29:53

質問

はじめまして、以下の問題が出たのでソース追いかけたりしてましたが、そろそろ自己能力の限界なので投稿してみました。 事象としては、attachプラグインを利用したXSS対策として「定数 PLUGIN_ATTACH_UPLOAD_ADMIN_ONLY の値を TRUE にする」との対処を行ったところ管理者パスワードを入力しての登録ができなくなりました。 (pukiwiki.ini.phpの記述ミスやパスワード入力時のタイプミス等はありません)

以下、この辺かなーと思ったところです。対応状況を見たところ1.4.3までの対応プラグインとのことで対象外かもしれませんが、ご確認よろしくお願いします。

  1. plugin/attachref.inc.php 318行目付近

    入力されたパスワードをMD5暗号化

    $pass = array_key_exists('pass',$vars) ? md5($vars['pass']) : NULL;
  2. plugin/attach.inc.php 175行目付近

    pkwk_loginをコールしている

    } else if (PLUGIN_ATTACH_UPLOAD_ADMIN_ONLY && $pass !== TRUE && ($pass === NULL || ! pkwk_login($pass))) {
            return array(
                    'result'=>FALSE,
                    'msg'=>$_attach_messages['err_adminpass']);
  3. lib/func.php 699行目付近

    暗号化前パスワードとpukiwiki.ini.php指定のパスワードを指定している

    global $adminpass;
    if (! PKWK_READONLY && $pass != '' && md5($pass) == $adminpass) {

結果、MD5暗号化されたものがもう一度MD5暗号化に掛けられてしまう?

回答

  • 1.4.6_rcでも同様の問題を確認しました。PLUGIN_ATTACH_UPLOAD_ADMIN_ONLYをFALSEにした場合は動作していたので、やはり暗号周りの問題でしょう。 -- 2005-07-24 (日) 01:21:09
  • これでどうですかね?自分は使ってないので試してませんがとりあえず。
    --- attachref.inc.php.orig    2005-07-24 01:25:06.000000000 +0900
    +++ attachref.inc.php    2005-07-24 01:32:16.000000000 +0900
    @@ -176,7 +176,7 @@
             {
                 return array('msg'=>'attach.inc.php not found or not correct version.');
             }
    -        $pass = array_key_exists('pass',$vars) ? md5($vars['pass']) : NULL;
    +        $pass = array_key_exists('pass',$vars) ? $vars['pass'] : NULL;
             $retval = attach_upload($file,$vars['refer'],$pass);
             if ($retval['result'] == TRUE)
             {

やってることを見る限り大丈夫そうですけど。 -- okkez 2005-07-24 (日) 01:34:43

  • 同変更方法を採られていた方から書き込みがあり、コメントも記載したのですが消えてしまったようです。 -- oggy? 2005-07-26 (火) 14:41:59
  • okkezさんの修正でうまく動作することを確認しました。 -- 2006-01-16 (月) 10:27:23


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2006-12-12 (火) 02:49:26
Site admin: PukiWiki Development Team

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

OSDN