セキュリティホールmemoにも出てますが、wu-ftpdのfile globbingにDOS攻撃
を許す脆弱性が見つかったそうです。
で、同memoでは、「wu_fnmatch.cのwu_fnmatch()で'*'を処理しているところ
の再帰に原因がある」というiDEFENSE Advisoryの指摘に疑義を示していますが、
ちょっと調べてみたところやはり違っているようで、本当の原因はglob.cの
amatch()での'*'の処理における再帰にあるようです。wu_fnmatch.cの
wu_fnmatch()で'*'を処理しているところは、'*'が連続しているときのoptimize
処理をしていますから、それと同様なことをamatch()でもやるように直してみた
ら、少なくとも手元では、報じられている現象は出なくなりました。下のような
パッチです。
このごろwu-ftpdは公式パッチが出るのが遅いような気がするので、とりあえ
ず報告まで。
ni...@ics.nara-wu.ac.jp
--- wu-ftpd-2.6.2.orig/src/glob.c Fri Nov 30 02:01:38 2001
+++ wu-ftpd-2.6.2/src/glob.c Sun Feb 27 18:05:29 2005
@@ -437,6 +437,7 @@
continue;
case '*':
+ while(*p == '*') ++p; /* CAN-2005-0256 */
if (!*p)
return (1);
if (*p == '/') {
自己フォロー。同memoに続報が出ていました。buqtraqにも同じ指摘が出てい
たようです。さすがにそっちの方が先だなあ。
ni...@ics.nara-wu.ac.jp