旧HAIK forum (参照のみ)

« back RSS

[613]dlexecの脆弱性 2016/12/07(Wed) 8:04:24
name : evil hacker
plugin/dlexec.phpにはサーバー上の好きなファイルをダウンロードできる脆弱性がある

選択肢1: &dllink(/etc/passwd); と自分のサイトに書き込む
選択肢2: www.haik-cms.jp/index.php?HAIKserver で実験する

****
ここに書かれていたコードは問題がありますので、管理者権限で削除しました。

tomzo 20016/12/07
****
  status : 解決済!
pass :

[637]Re:dlexecの脆弱性 2016/12/09(Fri) 7:30:35
name : いしまる [home] [設置先]
利用方法によっては、足りないのですが、46行目に次のような
判別を挿入。

dllink.inc.php の
if (!preg_match('/\.(pdf|jpg|png|gif|doc|docx|xls|xlxs|zip)$/i',$filename)) {
return $qm->replace('plg_dlbutton.err_bad_filetype', '');
}



dlexec.phpの70行目に以下の様な判別を挿入

if (!preg_match('/\.(pdf|jpg|png|gif|doc|docx|xls|xlxs|zip)$/i',$filename)) { header('HTTP/1.1 404 Not Found');
error_msg('Error : bad file type1');
exit;
}
if (preg_match('/^\//',$filename)) {
header('HTTP/1.1 404 Not Found');
error_msg('Error : bad file type2');
exit;
}
if (preg_match('/\.\./',$filename)) {
header('HTTP/1.1 404 Not Found');
error_msg('Error : bad file type3');
exit;
}


等をすると、少し良くなると思いますが、まだまだでしょうか。
スキルの高い方、添削お願いします。

dllink.inc.phpからdlexec.phpを呼び出して?使うようなので、
dlexec.phpだけ対応すれば良いのかもしれません。
 
pass :
[631]Re:dlexecの脆弱性 2016/12/08(Thu) 16:00:51
name : いしまる [home] [設置先]
私が使っていたopen-QHMのVer4.73には、今回の二つのファイルは
ありませんでした。
 
pass :


[1][2]

res form

name
mail (表示されません)
home
設置先
subject
message
  ファイルアップロードは1 MBまで可能です。
file 1 file 1 へ添付可能なファイルは、 .txt.zip.lzh です。
file 2 file 2 へ添付可能なファイルは、 .jpg.gif.png です。
password
Solved! 解決した場合はチェックを入れてください。

+ P forum 1.33 +
このHAIK forumは、QHMユーザフォーラムが閉鎖されため、その代わりにtomzoが個人的に作成しているものです。
どうぞご自由にお使いください。当フォーラムはシステム不調により、新規書き込みは禁止とします。新HAIK forumをお使いください。 2016.9.22作成
一歩先を行くhaikユーザのためのTips