ProFTPd CVE-2015-3306 mod_copy脆弱性のメモ
ちょっと前に公開された、ProFTPD の mod_copy モジュールにおける任意のファイルを読み書きされる脆弱性を調べてみた
なんといっても「基本値: 10.0 (危険) [NVD値] 」なので気になる
概要
-
- http://jvndb.jvn.jp/ja/contents/2015/JVNDB-2015-002727.html
- ProFTPD の mod_copy モジュールにおける任意のファイルを読み書きされる脆弱性
- 基本値: 10.0 (危険) [NVD値]
SBTの調査:とても詳しい。何がおきるかはとにかくここ見ればよい!!!
元情報
mod_copy moduleの説明は
修正版
配布元では、修正版はまだリリースされていない
- http://bugs.proftpd.org/show_bug.cgi?id=4169
- ※暫定patchはgithubで公開されている
ディストリビューションでは修正版出てきている
- debian : https://www.debian.org/security/2015/dsa-3263
- ubuntu : まだ(2015/05/22) http://www.ubuntu.com/usn/
- fedora, EPEL : https://bugzilla.redhat.com/show_bug.cgi?id=1212386 : fedora, epel 共にUpdate済RHEL : 元からない(EPELを利用)
調査
結果
- RedHat系 (ferora, EPEL) ではデフォルトの設定だと、mod_copy は無効になっている(loadしていない)
- SITE CPFR, SITE CPTO なんてまず使わないので、わざわざ有効にする事もまずなさそう
- ※EPEL6 (CentOS6, RHEL6)だと、mod_copy自体が入っていない
公式最新版で試してみる
http://www.proftpd.org/docs/ 1.3.5
ソースからのmakeの場合、デフォルトのconfigure ではmod_copyは入らない
CentOS 6 (EPEL6)だと
epel6 のProFTPdでも mod_copy は有効になっていない ※インストール自体されていない
/usr/libexec/proftpd% ls mod_ban.so mod_ifsession.so mod_quotatab_sql.so mod_sftp_pam.so mod_sql_passwd.so mod_wrap2_sql.so mod_ctrls_admin.so mod_load.so mod_radius.so mod_sftp_sql.so mod_tls_shmcache.so mod_exec.so mod_quotatab.so mod_ratio.so mod_shaper.so mod_wrap.so mod_facl.so mod_quotatab_file.so mod_rewrite.so mod_site_misc.so mod_wrap2.so mod_geoip.so mod_quotatab_radius.so mod_sftp.so mod_sql.so mod_wrap2_file.so /usr/libexec/proftpd% ls | grep copy
って、EPEL6は1.3.4だから入っていないのか(mod_copyが入ったのは1.3.4から)
fedora でupdateがでているのは、、、、 https://admin.fedoraproject.org/updates/ より fc20,21,22,el7
EPEL 7 (RHEL7, CentOS7) のSRPMを見てみる
デフォルトのconfだとloadしていない
proftpd.confから抜粋
# SITE CPFR and SITE CPTO commands (analogous to RNFR and RNTO), which can be # used to copy files/directories from one place to another on the server # without having to transfer the data to the client and back # (http://www.castaglia.org/proftpd/modules/mod_copy.html) # LoadModule mod_copy.c
実際に使えない
$ telnet localhost 21 Trying ::1... Connected to localhost. Escape character is '^]'. 220 FTP Server ready. site cpfr /etc/passwd 500 'SITE CPFR' not understood quit 221 Goodbye. Connection closed by foreign host.