vuln.sg  

vuln.sg Vulnerability Research Advisory

Core FTP の FTP クライアントにおけるディレクトリトラバーサルの脆弱性

by Tan Chew Keong タン チュー ケオン
Release Date: 2008-05-23

   [en] [jp]

概要

Core FTP の FTP クライアントには、ディレクトリトラバーサルの脆弱性が存在します。悪意のある人は、この脆弱性を利用し FTP クライアントの作業ディレクトリを越えたディレクトリにファイルを転送する事ができます。


問題を確認したバージョン
問題

Core FTP の FTP クライアントには、ディレクトリトラバーサルの脆弱性が存在します。悪意のある人は、この脆弱性を利用し FTP クライアントの作業ディレクトリを越えたディレクトリにファイルを転送する事ができます。

Core FTP の FTP クライアントは、LIST コマンドに対するレスポンスを適切に検査しないから、ディレクトリトラバーサルの脆弱性が存在します。ユーザーが、FTP サーバーから悪意のあるディレクトリをダウンロードしたら、攻撃者にユーザーの権限で FTP クライアントの作業ディレクトリを越えたディレクトリに任意のファイルを作成される可能性があります。


脆弱性のテスト

脆弱性のテストのためのファイルは こちらです。テストの方法は下記です。


Instructions:

  1. Unzip the POC file into a directory. This gives CoreFTPPOC.exe and CoreFTPPOC-forward.exe.
  2. CoreFTPPOC.exe and CoreFTPPOC-forward.exe are POC FTP servers that will send filenames with directory traversal characters in response to LIST commands.
  3. CoreFTPPOC.exe sends filenames with backslash directory traversal characters, whereas CoreFTPPOC-forward.exe sends filenames with forward-slash traversal characters.
  4. Go to the command prompt and run CoreFTPPOC.exe or CoreFTPPOC-forward.exe on a system. It will listen on FTP Port 21.
  5. Ensure that CoreFTP is configured to use Passive mode.
  6. Use CoreFTP to connect to the POC FTP server. You can use any username/password.
  7. You'll see a directory named /testdir on the POC FTP server (see below).
  8. If you traverse into that directory you'll see a file (testfile.txt) with directory traversal characters in its filename (see below).
  9. Now, if you attempt to download the /testdir directory into C:\aaaa\bbbb\cccc\etc, you'll notice that testfile.txt will be written into C:\ instead of into C:\aaaa\bbbb\cccc\etc\testdir\testfile.txt.

Hence, by tricking a user to download a directory from a malicious FTP server, an attacker can potentially leverage this issue to write files into a user's Startup folder and execute arbitrary code when the user logs on.

 


対策

Version 2.1 Build 1568 へのバージョンアップをしてください。


発見と報告の経緯

2008年05月15日 - 脆弱性の発見。
2008年05月15日 - ベンダーに報告しました。
2008年05月15日 - ベンダーから答えを受け取りました。
2008年05月22日 - ベンダーは バージョン 2.1 Build 1568 をリリースしました。
2008年05月23日 - 本脆弱性の公開。


Contact
For further enquries, comments, suggestions or bug reports, simply email them to