attach.inc.php プラグインで、ATTACH_PASSWORD_REQUIREを有効にした時に、
添付したファイルが削除できなくなる

  • ページ: BugTrack
  • 投稿者: jjyun
  • 優先順位: 普通
  • 状態: 完了
  • カテゴリー: プラグイン
  • 投稿日: 2004-08-13 (金) 14:21:00
  • バージョン: 1.4.3, 1.4.4rc1

メッセージ

attach.inc.php プラグインの設定で、 ATTACH_PASSWORD_REQUIRE を有効にしてファイルを添付した場合、 入力したパスワードはそのまま、logファイルに書き出されています。

一方、添付ファイルの削除の際に入力するパスワードは、 md5()を用いてハッシュ値に変換されてから比較されているため、 添付時に入力したパスワードと同じ文字列を入力しても、 「パスワードが違うため削除できない」という状況になってしまいます。

attach_upload() の部分を修正すればよいと思います。

   :
  $obj->getstatus();
- $obj->status['pass'] = ($pass !== TRUE and $pass !== NULL) ? $pass : '';
+ $obj->status['pass'] = ($pass !== TRUE and $pass !== NULL) ? md5($pass) : '';
  $obj->putstatus(); 
  return array('result'=>TRUE,'msg'=>$_attach_messages['msg_uploaded']);
 }

  • こんにちは。この機能はさっぱり使ったことがないのですが、こういう時はログに書き出すパスワードの方を md5ハッシュにすべきではないでしょうか? :) ログを見ることで、パスワードが漏れちゃいますからね。どう思われますか? -- henoheno 2004-08-13 (金) 21:54:16
  • あ、この差分はまさにそういうものかな(^^; どう直すべきかについて勝手に妄想してしまいました・・・(^^ -- henoheno 2004-08-13 (金) 21:57:04
  • 今回のそれは、まさしくログへの出力内容になる部分だと理解しています。修正よろしくお願いします。 -- jjyun 2004-08-14 (土) 00:12:52
  • ATTACH_PASSWORD_REQUIRE の利用者がどの程度いるのかわからないのですが、あるいは移行用のスクリプトが必要かも -- にぶんのに 2004-08-15 (日) 00:54:58
  • ここで説明されていることが正しいならば、動作確認まできちんとやった利用者は jjyun さんが初めてでしょうね。 -- henoheno 2004-08-15 (日) 07:36:24
  • 確かにご指摘の通りでした。ありがとうございました :) -- henoheno 2004-08-15 (日) 09:16:05
  • 復旧する場合、手作業で対応するならば、ログファイル(attach/*.log)の3行目をそれぞれmd5ハッシュと置き換えると良さそうです。 -- henoheno 2004-08-15 (日) 09:21:38
    • ※例えば3行目に「fsfs」とある場合: echo -n "fsfs" | md5sum の出力結果と入れ替える (-nオプションは必須)

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2004-08-15 (日) 09:22:49
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.253 sec.

OSDN