mtftpd <= 0.0.3 format string vulnerability number: #15 author: darkeagle date: xx.10.04 vendor: http://mtftpd.sourceforge.net status: mtftpd doesn't supported overview: mtftpd - simple ftp daemon in Unix like systems. details: 1st of all... i wanna said, that this bug was stollen by setnf. i said to him about this bug.. and he released ( without my agree ) it under some team name. continue... format string vulnerability was founded in this ftpd. remote user can execute evil code and gain root access. /home/darkeagle/research/mtftpd-0.0.3/src/log.c: static void log_do(const int err, const int prd, const char *fmt, va_list ap) { #define MAXLINE 4096 int errno_save; char buf[MAXLINE]; ... #else syslog(prd, buf); <------- format string vulnerability #endif } as you can see, vulnerability exist in syslog function. /home/darkeagle/research/mtftpd-0.0.3/src/cmd.c: CMD_P(cwd) { int ret; #if MT_DEBUG log_msg("session: %d. You are into cmd_cwd()", ses->ses); #endif .... log_ret("chdir error to dir %s", path); ... } so, from source code we can see, that vulnerability function using when remote user try to change directory with "CWD" function. NOTE: mtftpd is vulnerable only if statistic option is enable. by default it's disabled. exploit: An exploit is avaible to download from our site ( http://unl0ck.org ). An exploit send special crafted data and binds shell on 2003 port. greetz: all unl0ckerz, nosystemz, rosielloz etc.. (c) uKt Research 2004-2005 http://unl0ck.org darkeagle [at] linkin-park [dot] cc darkeagle [at] unl0ck [dot] org