[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[FDclone-users:00788] Directory Traversal in FDclone



 しらいです。

 先日来ちょっと気に掛かっている問題があって成行きを見守って
いるんですが、どうも進展が見られないので、誰か状況に明るい人
がいたら教えて下さい。


 directory traversal と呼ばれる security 攻撃があります。相
対 path 表記で「../」を用いることで、意図しない directory に
file を作成させるような攻撃法です。
 FDclone でも、以前「../../../../etc/passwd」のような file
を含む archive の中身を参照しようとすると、TMPDIR の指定を越
えて /etc 以下が書換えられてしまうという指摘がありました。
 この時は、それは tar や lha 等の外部 command の問題であっ
て、FDclone 側ではどうしようもないという結論に至っていると思
います。

 最近 directory traversal で槍玉に挙げられたソフトに FFFTP
という Windows の FTP client があります。
 悪意ある FTP site が「../」を含む filename を返した際に、
FFFTP は download 先に指定した direcroty ではなく、「../」で
相対 path として指定された directory に download します。
 この詳細は下記 URL で参照出来るので、興味のある方は読んで
みて下さい。
	http://vuln.sg/FFFTP196b-jp.html

 FTP の LIST command が返す filename は path delimiter を含
まないという前提で program を組んでいるという点では、FDclone
も同じです。
 ということで FDclone も同じような脆弱性を持っているのでは
ないかと思われるのですが、如何せんそういう FTP site が身近に
ないので確認には至っていません。
 上記報告 site には検証用の exploit が置いてあったらしいの
ですが、私が見た時には既に削除されてしまっていたので、テスト
してみることも出来ないんですね。

 対処としては、URL drive に access した場合は「/」を含むよ
うな filename は無視するようにしようと考えていて、一応そうい
う code は書いてみました。
 FTP の LIST command にしろ Apache の mod_autoindex にしろ、
filename として「/」を含む文字列を出力しない筈なので、そうい
う filename を弾いても通常は実害ないと思います。


 という訳で、後はその対処法の有効性が検証出来れば大丈夫なの
ですが、どこかにそういう exploit を仕込んだ FTP/HTTP server
はありませんかね?

                                               しらい たかし